Ce l'ho. Credo. Mi ci è voluto molto tempo, ma penso di aver capito cosa sta succedendo. Speriamo che questo possa essere utile a qualcun altro.
Prima di tutto ho notato che bloccare il file nel Finder sembrava interrompere l'anteprima ricordando una pagina diversa. Quindi, se avessi aperto il PDF a pagina 1 e poi scorressi a pagina 10, non avrei più ricordato che il PDF era a pagina 10 quando il file era chiuso e poi riaperto. Quello fu il primo indizio.
Ho quindi utilizzato fseventer che monitora i cambiamenti dei file in tempo reale e sono rimasto sorpreso per vedere che aprire un PDF in Anteprima, scorrere a una pagina diversa e quindi chiudere il PDF ha aggiornato il file stesso. Non registra letteralmente una variazione di orario nel Finder, la data rimane la stessa, ma fseventer ha gettato l'indizio 'Modificato xattr'.
Ok, ricordavo vagamente qualche menzione di questa caratteristica chiamata attributi estesi degli anni precedenti, sembra funzionare come un altro tipo di metadati, ma è piuttosto separata dai "normali metadati", e ora sto leggendo è stata una sostituzione per i vecchi fork delle risorse in OS 9. L'esecuzione di $mdls
(utilizzata per i normali 'metadati') in Terminale non mostrerà gli attributi estesi.
Devi usare il comando $xattr
per vedere questi attributi.
Quando ho corso $xattr /Volumes/mydisk/mypdf.pdf
ho ottenuto questo:
/Volumes/mydisk/mypdf.pdf: com.apple.Preview.UIstate.v1:
E un'altra riga su un bit di quarantena
Devi fare $ xattr -lv
per vedere i dati completi di questi attributi estesi. Produce un blob di output esadecimale per com.apple.Preview.UIstate.v1.
Quindi ho eseguito $ xattr -lv /Volumes/mydisk/mypdf.pdf
E copiato l'output. Quindi ho aperto il PDF in Anteprima, modificato la pagina e chiuso Anteprima.
Quindi ho eseguito nuovamente $ xattr -lv /Volumes/mydisk/mypdf.pdf
E poi confrontato i BLOB dell'output esadecimale per com.apple.Preview.UIstate.v1, che erano diversi tra le due occasioni.
Il test finale è stato quello di eliminare i dati degli attributi estesi:
$ xattr -c /Volumes/mydisk/mypdf.pdf
E questo è tutto! Torna alla pagina 1 quando lo apri in Anteprima
Sembra che l'ultima pagina visualizzata di un PDF sia archiviata in questi attributi estesi. Sono così felice!!