Как запросить метаданные gvfs для определенного атрибута?

Как запросить метаданные gvfs для определенного атрибута?

Хорошая функция evince заключается в том, что когда вы закрываете программу и позже снова открываете тот же pdf-файл, он автоматически переходит на страницу, которую вы читали. Проблема в том, что я часто читаю электронные книги на нескольких компьютерах и мне приходится искать, на каком компьютере я был в последний раз, когда читал pdf-файл. Я думаю, что синхронизация этих закладок в UbuntuOne была бы убийственной функцией для таких людей, как я, которые читают pdf-файлы на разных компьютерах.

Немного поразмыслив, я нашел, где evince хранит эти данные. Это вметаданные gvfsи к нему можно получить доступ для конкретного документа, введя

gvfs-ls -a "metadata::evince::page" myEbook.pdf

Вместо того, чтобы запрашивать конкретный файл, я бы хотел запросить весь файл метаданных, расположенный в ~/.local/share/gvfs-metadata/homeдомашнем каталоге, для любого файла, где этот конкретный атрибут установлен на какое-то значение. Самая большая проблема в том, что метаданные gvfs хранятся в двоичных файлах, а мы все знаем, что нелегко получить что-то из двоичного файла.

Итак, знаете ли вы какой-либо способ запросить метаданные gvfs для получения некоторого атрибута?

решение1

Что касается правильного выполнения, это, вероятно, будет включать замену кода бэкэнда, который обслуживает метаданные, на бэкэнд couchdb. Вы также можете получить доступ ко всем метаданным из кода, если хотите запрограммировать что-то для решения этой убийственной функции.

Связанный контент