Questo è il metodo che ho usato su tutta la mia libreria Zotero (~ 3GB di PDF). Si noti che le sole annotazioni che uso sono evidenziazione (colore singolo) e commenti. Se questo converte correttamente annotazioni più complicate dipende dal dettaglio dello script skimembed, di cui non so molto.
Cosa ha funzionato
Lo script skimembed originale converte un singolo PDF con annotazioni skim (che hanno la forma di "attributo esteso") a un singolo PDF con annotazioni incorporate. È uno script di shell che si esegue dalla riga di comando (terminale) usando questa notazione
sh skimembed pdf_with_skim_annotations.pdf
o più in generale
sh /path/to/scripts/folder/skimembed /path/to/pdf/folder/pdf_with_skim_annotations.pdf
Qui, sh
è il programma di shell che usi per interpretare lo script skimembed
. Questo script è fondamentalmente un modo automatico di usare File > Export...PDF with embedded notes
dal menu Skim. Tuttavia, non fa una seconda copia del pdf; la nuova versione lo sostituisce e ha lo stesso nome.
Quindi ho cercato su Google uno script di shell che ti consenta di applicare lo skimembed in modo ricorsivo a tutti i file PDF in una cartella (incluse le sottocartelle):
#!/bin/bash
find $1 -type f -name "*.pdf" | while read f ; do
sh /path/to/scripts/filder/skimembed "$f"
done
Qui, $1
indica il percorso di una cartella, il primo (e unico) argomento che questo script si aspetta di ricevere. Il comando find
restituisce tutti i file normali ( -type f
) in quella cartella con il finale pdf ( name "*.pdf"
). I risultati vengono reindirizzati ( |
) a un ciclo while
indicizzato da f
.
Ho salvato il testo sopra in un file chiamato recursiveskiembed.sh e poi eseguito
sh recursiveskiembed.sh /path/to/pdfs/folder
Nel mio caso, la cartella che ho scelto era /Users/username/Library/Application Support/Zotero/Profiles/xxx123.default/zotero/storage
. Questo prende ogni singolo PDF con annotazioni Skim nella cartella e li sostituisce con normali annotazioni PDF incorporate.
Che cosa non ha funzionato
Ho provato gli script Skim inviati dagli utenti e in particolare il script skimalot (che è un successore di skimembed) e script FilingEagle e alcuni altri . Ma non riuscivo a far funzionare nessuno di loro. (Tieni presente che i file ospitati su sugarsync.com ora sono link morti.) Allo stesso modo, il mezzo dozzina AppleScript script sempre sembrano fallire con errori completamente imperscrutabili.
Lo script clobbergaurd dovrebbe controllare una grande directory per nomi di file che differiscono solo finendo per impedirti di sovrascrivere roba usando skimalot, ma non riuscivo a farlo funzionare. (Il link sugarsync è morto, ma una ricerca di Google ha restituito questa copia di Dropbox .) Quindi ho appena sostenuto su la mia libreria zotero e ho incrociato le dita.