
Eine nette Funktion von Evince ist, dass beim Schließen des Programms und späteren erneuten Öffnen derselben PDF-Datei automatisch auf die Seite gesprungen wird, die Sie gerade gelesen haben. Mein Problem ist, dass ich E-Books oft auf mehreren Computern lese und herausfinden muss, wo ich auf dem letzten Computer war, auf dem ich die PDF-Datei gelesen habe. Ich denke, die Synchronisierung dieser Lesezeichen in UbuntuOne wäre eine tolle Funktion für Leute wie mich, die PDF-Dateien auf verschiedenen Computern lesen.
Durch ein wenig Recherche fand ich heraus, wo evince diese Daten speicherte. Es ist in derGVFS-Metadatenund kann für ein bestimmtes Dokument aufgerufen werden durch Eingabe von
gvfs-ls -a "metadata::evince::page" myEbook.pdf
Anstatt eine bestimmte Datei abzufragen, möchte ich die gesamte Metadatendatei im ~/.local/share/gvfs-metadata/home
Stammverzeichnis abfragen, für jede Datei, bei der dieses bestimmte Attribut auf einen bestimmten Wert gesetzt ist. Das größte Problem besteht darin, dass GVFS-Metadaten in Binärdateien gespeichert sind und wir alle wissen, dass es nicht einfach ist, etwas aus einer Binärdatei herauszuholen.
Kennen Sie eine Möglichkeit, die GVFS-Metadaten nach bestimmten Attributen abzufragen?
Antwort1
Um es richtig zu machen, müsste man wahrscheinlich den Backend-Code, der Metadaten bedient, durch ein CouchDB-Backend ersetzen. Sie können auch auf alle Metadaten aus dem Code zugreifen, wenn Sie etwas programmieren möchten, um dieses Killer-Feature zu lösen.