Skim features

I noticed your comment on the Skim mailing list about how Eaglefiler could be made to better integrate with Skim. I thought I’d take this opportunity to post some ideas here since you took the time to ask.

  1. Skim notes are indexed in Spotlight but are not found in Eaglefiler. I added a unique word (“exigently”) to a random pdf file with Skim, and even though Spotlight is able to return the file in question, EF does not. I was under the impression that EF used the spotlight index for its search.

  2. for the PDFD bundles could EF use the embedded pdf for the thumbnail image.

  3. Skim can export RFTD bundles that include snapshots of the pdf. If EF could index and list the images included in a rftd bundle, it opens some exciting possibilities for managing research articles with Skim and EF.

Thanks.

EagleFiler maintains its own indexes, which are separate from Spotlight. This allows for faster searching, more extensive indexing, and the ability to copy a library (or restore it from backup) and search it instantly, without waiting for all the files to be indexed by Spotlight.

Skim includes a Spotlight importer for PDFD bundles, so their notes can be indexed. As far as I know, Skim notes in regular PDF files are not indexable because they are handled by Spotlight’s built-in PDF importer.

EagleFiler uses Spotlight importer plug-ins to read file formats that it does not natively understand. It has its own importers for PDF and PDFD, and in the next version these will know how to read and index Skim notes.

Which thumbnail are you referring to? EagleFiler already displays PDFD files like ordinary PDF documents; you’re not limited to viewing a thumbnail.

I don’t see how to access that export feature. Could you explain further? Or post an example Zip archive?

Yes, of course, you’re right. Skim has so many ways of saving (xttrs, skimnotes file, pdfd) and I haven’t settled on one yet, so I get their advantages and functions confused. Spotlight is NOT able to find notes in the xttrs, which is what I was implying that EF should be able to find. Obviously, if Spotlight can’t, that’s a bit of an unreasonable request of EF. :slight_smile:

That’s good to know. I’ll probably settle on pdfd. But wait…are you saying that EF will be able to read the notes in the PDF as well? (like Bibdesk?) That would be nice.

Did you sneak that in recently? Last time I tried out EF (about 3 weeks ago) I could have sworn that there was just a big pdfd icon in the preview pane.

  1. take a snapshot somewhere in the pdf with skim. With the cmd key pressed you can just drag a selection.

  2. the snapshot will open in another window.

  3. minimize it (don’t close it or it will be lost)

  4. make sure that the “remember snapshots” pref is checked. (I’m not sure that this is necessary.)

  5. Export as rftd

  6. Inside the bundle should be a tiff named “page”

[as an aside: snapshots were originally designed to mimic the way one might flip back and forth between pages while reading an article. For example, you might flip to the end to see which reference is #18 or to the next page to the see the figure being described. They were designed to be somewhat transient “looks” at different sections. However, once a pref was introduced that allowed snapshots to be remembered, then they could act as a type of visual summary of the article. You could grab 3-4 of the most striking graphs and figures that would once again remind you of the content of the article. I persuaded the Skim devs that these could act as visual notes if they could be exported along with the rtfs (actually I would have preferred a snapshots-only export option, but beggars can’t be choosers). Now my hope is to automate the collection and display of these snapshots into a reference collage, so that if you can’t remember the author or year, you can browse though the snapshots until one “clicks.” This is what I was implying by “exciting management possibilities.” I’m not entirely sure that this would become practical from within EF, but I though that I would throw it out there for discussion.]

Thanks,
Jeff

EagleFiler 1.3 will be able to index the xattr notes in PDFs (as well as the notes in PDFD bundles), but it will not display them. To do that, you would need to double-click the PDF to open it in Skim.

No. Support for viewing PDFD files was added in EagleFiler 1.2.6. However, PDFDs that were imported using an older version of EagleFiler will show up as just an icon.

Interesting. EagleFiler can, of course, display the RTFD file and its images. I’m not sure whether there’s enough data there for EagleFiler to easily map the snapshots back to the PDF, but that’s certainly an intriguing idea.

pdfds in EF
I have been interested in the possibility of using Skim’s pdfds with EagleFiler for a while, but I’ve been a bit hesitant to do so for a couple of reasons.

The first thing is that if I have a regular PDF file in my library and want to annotate it, I can open it in Skim, and add the annotations, but I am still very jittery about using extended attributes because I’m still not completely confident that at some point a copy or backup operation I do might fail to copy them. So, I much prefer the idea of using a pdfd bundle file instead. Then, the notes are saved as real files that even programs that are ignorant about extended attributes should know how to handle.

However, if I want to make a bundle, that means I’ll need to Save as… a bundle, then import the new bundle into EagleFiler, file it in the right place, and remove the original bare PDF file. A small procedure, but not a real obstacle. And I can’t see a particularly good way around this.

The main thing I’m worried about is what happens when you edit in Skim in a way that causes new things to be created inside the pdfd package – EagleFiler is usually pretty unhappy if you add/remove files to/from the library folder other than within EagleFiler itself, but I don’t know if this carries over to files hiding within a package. Also: if you change the Skim notes within a pdfd, is that a change that Verify will detect?

Having just taken a look at a pdfd bundle made with Skim 1.0.3, it does not actually appear as if anything I do has the effect of adding or removing files within the bundle, so perhaps my idea that this can happen is based on the behavior of an earlier version of Skim. If so, my concern might be moot anyway.

The first basic question I have is, I guess, is it safe to edit pdfds outside EagleFiler, verify, and update the checksum (in the same way one would do for other things like Word documents)? Does it matter if it were to happen that a file is added or removed within the pdfd package?

The second question I have about using Skim like this has to do with how duplicates are detected. It would be nice for my purposes if EagleFiler would detect and refuse to import a PDF that I already have, even if it is actually within a pdfd that has Skim notes added. One of the things I like about using EagleFiler to collect my many PDF files is that I can pretty much just drop anything I come across into EagleFiler, and it will generally keep me from getting a lot of duplicates. I worry that I would lose that ability if I start taking notes with Skim on bundles within the EagleFiler library.

It’s a tricky problem, of course. If I have two pdfds based on the same PDF but with different notes, I don’t think I’d want EagleFiler to reject the second one on the basis of having the first one in the library already. So, it might be that what I’m thinking about here would require a somewhat Skim-specific solution, such as: if the file being imported is a (bare) PDF file, check it against both the PDF files in the library, and the PDF files within pdfd bundles, but if the file being imported is a pdfd bundle, check it against the other pdfd bundles in the library in their entirety, including notes. I’m not sure if this is easy or challenging, or whether this is a behavior that everyone would want, or just me.

That sounds sensible. Extended attributes are really cool, but they’re a bit fragile due to some software not supporting them. Also, Spotlight can index the Skim notes in PDFD files.

Yeah, I guess it would be easiest to save the PDF as a package before importing it into EagleFIler.

It’s perfectly safe to edit the contents of a package. EagleFiler only cares about the filenames at the granularity that you see in its records list. So you’re free to add or remove files within a PDFD package. (The same goes for RTFD, of course.)

Yes. EagleFiler’s checksums detect changes to files (or their names) within a package. They do not track the contents of the extended attributes.

Yes.

No (though that would change the checksum).

That’s not going to work, because the PDFD package will have a different checksum than the lone PDF file (whether or not there are any notes).

There’s no good way to do this at present, and it may be too esoteric, but I’ll keep it in mind.

EagleFiler 1.3 can now index Skim notes (on PDF and PDFD files) for searching.