Why no "File - Store Annotations in File" button?

edited April 1, 2022
I notice that there is no this button in version 6.0.5-beta.1+bb8858569, so how to store it? Is there only "Save As"?
  • You can still use export. If you routinely want to store annotations in files attached to Zotero, don't use the Zotero PDF reader, which is built on the assumption that you don't.
  • We've removed "Store Annotations in File" for 6.0.5. As adamsmith says, you can still export PDFs with embedded annotations using "Export PDF(s)" from the items list or "Save As" from the PDF reader.

    The people using "Store Annotations in File" seemed to mostly want it to be triggered automatically, which we're not going to implement, because of all the problems it creates that led us to design annotations the way we did. So then you're left with an option that has to be triggered manually after every change, which is tedious and dumb, for an end result that causes the same problems we were trying to avoid in the first place.

    The PDF reader stores annotations in the DB and provides various export options to guarantee data portability, and if you want annotations saved within the file you should use a PDF reader that works that way (which, of course, isn't all — choice is good!).
  • There are a couple of use cases that I consider very important that this change does not address:

    1) One may do notations on say hundreds of files in Zotero over the course of say a couple of months, and then wanted to switch back to using an external reader. How would I do a 'batch' store of annotations to an external PDF that would LINK up to the current database? If there is a way, please let me know. If there is no way, this is a large disincentive to give the new editor a solid try over a longer period of time. Even a week's worth of work to re-integrate from exported PDFs would be a major headache. The irony here is I do feel "locked in" if there is no easy way to get the PDFs to be linked and replace the original PDFs in Zotero.

    2) If you are a person that uses an external PDF reader, except for the iPad and iPhone case, you are seemingly at a loss here. If I wanted to read and annotate on those platforms, it's not really possible using an external reader, but it is if you use the internal reader. Yet, when I go back to the desktop version of Zotero, there will be no way to store those annotations into the PDF that is linked to the database. This is a fairly large loss in workflow.

    I know much of this has been considered (across several threads), so please take these comments in the spirit of me understanding this is not an easy problem to solve for such a complex set of variables, where the devil lies in the details. Without Zotero, I would be lost.
  • @madison437:

    Re: (1), you can always export a PDF with embedded annotations, move the existing attachment to the trash, and drag the exported PDF back onto the same parent item. Even if you have a couple dozen PDFs marked up with the built-in reader, it's not like we're talking more than ~10 minutes of work here. (It will be possible in an upcoming version to filter for attachments with annotations. For now, you could add any items you annotate within Zotero to a temporary collection if you're not sure you're going to stick with the built-in reader.)

    Re: (2), I'm not quite sure what you're saying. There's no "loss in workflow" compared to Zotero 5 — you can continue using whatever workflow you were using before. It's true that the new iOS app PDF reader is made to work with the new desktop PDF reader, because our goal is to provide a new, seamless experience that just works for most users. By the same token, the built-in desktop PDF reader doesn't currently work well if you want to annotate on a non-iOS mobile platform. If the new tools don't fit your needs, you can continue using Zotero just as before, opening PDFs externally on desktop and relying on plugins such as ZotFile for syncing with third-party mobile PDF readers, and hopefully we'll be able to offer something that works better for you in the future. But we don't want to offer an option that we think is just going to confuse and frustrate people in the meantime.
  • These arguments certainly make sense, but it seems to me that this greatly complicates collaborative workflows where different people have different PDF reader preferences. Right now, some of my collaborators use the new integrated editor, while others prefer external ones. Converting the annotations between zotero and the external PDF reader right now is simple and convenient. In the future, if I am not mistaken, we would have to export into a new pdf, delete the current attachment, and replace it by the new one. Is this correct, or am I overlooking something?
  • edited April 26, 2022
    @anhi0008: Not in the future — this option already been removed.

    But "Store Annotations in File" was never enabled in group libraries, where it would wreak havoc, so no, this doesn't change anything for that, if that's what you're referring to. Seamless collaborative annotation is one of the main reasons we designed the PDF reader the way we did, since trying to collaborate with file-level changes results in constant unresolvable conflicts.

    If you're referring to ad hoc collaboration, where you're, e.g., emailing files from a personal library, you'd have to use export, but that would generally be a more appropriate action anyway for sharing a file outside of Zotero.
  • (It's true that different PDF reader preferences within a group would present a problem, and it's possible that the PDF reader setting should be configurable on a per-group basis, but that's a discussion for another thread.)
  • FWIW, I still find some of the arguments for keeping the button quite reasonable (e.g., scenario 1 by madison347 above) and am still not convinced that removing the button was the right way to go.

    I understand the impetus and I think making the functionality hard to find so that people aren't *encouraged* to use it is perfectly fine, but I don't think you'd consider the workaround you provide for reverting back to an external reader acceptable for anything else in Zotero.

    Is the functionality available via the javascript API so that it'd be easy for Will to add it to Zutilo, say? I think that'd be a very reasonable solution.
  • Is the functionality available via the javascript API
    I don't think you'd consider the workaround you provide for reverting back to an external reader acceptable for anything else in Zotero.
    We offer "Convert Linked Files to Stored Files" — to migrate to the seamless, recommended workflow — but leave the inverse to manual migration or plugins. That seems fairly equivalent.
  • edited April 26, 2022
    We offer "Convert Linked Files to Stored Files" — to migrate to the seamless, recommended workflow — but leave the inverse to manual migration or plugins. That seems fairly equivalent.
    Yeah, as I said, I think a plugin solution (which obv. existed already for converting stored to linked files when you added the reverse option) is perfectly reasonable here.

    Zutilo would be the most natural place to implement this, so I'd suggest people who need this to ask (or submit PRs) on the github there. Otherwise this could also be a one-purpose add-on, of course.
  • @dstillman Thanks for taking the time to reply to my concerns.

    About use case #1, I may easily make 20 database entries per day. Just depends on what’s been researched. It really would not be practical to merge annotations into the PDF by exporting and re-importing manually.

    We definitely need a solution for doing this in a more automated fashion — I see the comments below my original posting as regards perhaps accessing the API through Zutilo — perhaps that would do the trick.

    About (case 2) — my apologies for being unclear. Yes, there is no loss of functionality as regards what was present in 5.x of Zotero, but what I meant was a loss in workflow *potential*.

    If you could annotate on iOS, and then go back to the Desktop version and store the annotations back to the original PDFs for those of us that use an external reader, it would be fantastic!

    Thanks again.
  • If you could annotate on iOS, and then go back to the Desktop version and store the annotations back to the original PDFs for those of us that use an external reader, it would be fantastic!
    But that's the whole point — there's no good workflow for that, which is why we removed this feature. If you transfer annotations to the file, you trigger a whole set of annotation deletions that have to be synced to all devices, and you trigger a file modification that causes the whole file to be uploaded, and those annotations become uneditable in the iOS app as long as they're in that state, and if you weren't fully in sync when you transferred the annotations out you might end up with deletion conflicts, and if you resolve them the wrong way you might end up with a bunch of duplicate annotations, and same if you accidentally import annotations from the same file on two different devices… So you have to constantly make sure you're fully synced everywhere and remember to do this annoying manual operation in both directions before working anywhere else and if you get it wrong at any point you have a mess on your hands.

    The new PDF readers are meant to work together. If you don't want to use them, that's fine, but then we recommend sticking to whatever workflow you were using previously and not trying to use a workflow that we specifically decided was too awkward and dangerous to support.
  • Thanks @dstillman.

    I appreciate you taking the time to explain the issues involved with my suggested workflow.

    The way I work now, everything is sunk again to Zotero when I make modifications to PDFs in external readers and it seems to be working well for me -- these modifications typically happen on initial read and rarely ever again. It works well across a couple of different machines. Sure, it’s possible I could run into some mod date issue and lose some annotations, but that has yet to be an issue for me.

    Hopefully Zotfile or other can add this functionality of exporting to the file currently referenced by the database item and let some of us take our chances. I however, don't consider this cavalier -- all of my Zotero database and source media data is backed up on an interval of 15 minutes, but I doubt that’s the case for most, and that is sorta besides the point.

    I’m glad though, that I still have the ability to still work in the original workflow, and consider it important that Zotero continues to do so. The PDF reader / annotation app is such a very personal choice, so much time is spent inside it.

    Thanks again for making such a great piece of software, and I’ll give the new PDF reader/annotation tool a workout to see if it makes most sense for my workflow!
  • Is there a way to make the "Save as" dialogue box to automatically open up showing the attachment folder location? It makes the process somewhat more time time consuming trying to find the attachment folder manually and then replacing it.
  • @ozelada: Then you would just end up with an attachment with duplicate annotations — one set in the database and one set in the file. Again, we removed this feature, because we don't think it makes sense. Don't keep asking us to help reproduce it.

    If you really want to transfer annotations to a file in your Zotero library, then you can do what I say above: export the file, drag it back to the parent item, and delete the original attachment.
  • Ok, I understand the decision to remove the feature. Alas, what you describe as "export the file, drag it back to the parent item, and delete the original attachment" seemed inconvenient to me when I need to do it for a bunch of pdfs that I've simultaneously worked on, especially if the items are under different collections/subcollections.
    But maybe as I get used to using Zotero as my primary annotation tool, I will not find it really necessary to keep annotations stored in the pdf itself.
  • Here's a single user use-case:
    1. download pdf and meta data, insert into zotero
    2. use zotfile to send it to OneDrive synced folder to read it on my external ebook reader via ("send to device")
    3. make annotations on the ebook reader
    4. get the file back via zotfile ("get from device")
    5. have a look at the annotations in Zotero, probably tweak them
    6. repeat 2-4 if I don't want to read it on the laptop... but now, annotations are not updated, which causes divergence issues

    That means, there's a dedicated sync step involved and it's single user only. Wouldn't that workflow benefit from an automated "save pdf with annotations" step, being a part of the "send to device" step? I understand I could use an external pdf reader, but I like the new internal one :)

    Could a "I'm sure what I do and understand there might occur conflicts checkbox" be a solution or am I missing something here?

    Thank you very much for this great software!

    PS, I know an Android app could solve couple of problems here, but I need to write my thesis now unfurtunately ;)

Sign In or Register to comment.