Как сохранить подсветку и аннотации, созданные в Okular?
12
Я должен прочитать различные исследовательские работы, и во время курса я должен выделить и аннотировать. Но если я переименую файл позже или поменяю машину, основные моменты и аннотации будут отсутствовать, так как они хранятся отдельно. Как я могу сохранить эти основные моменты / аннотации, созданные в Okular, если я буду менять машины в будущем?
Начиная с KDE 4.2, Okular имеет функцию «архивирования документов». Это специфичный для Okular формат для переноса документа плюс различные метаданные, связанные с ним (в настоящее время только аннотации). Вы можете сохранить «архив документов» из открытого документа, выбрав «Файл» → «Экспортировать как» → «Архив документов». Чтобы открыть архив документов Okular, просто откройте его с помощью Okular, как, например, PDF-документ.
Начиная с версии Okular 0.15, вы также можете сохранять аннотации непосредственно в файлы PDF. Эта функция доступна только в том случае, если Okular был создан с версией 0.20 или более поздней из библиотеки рендеринга Poppler. Вы можете использовать Файл → Сохранить как ..., чтобы сохранить копию файла PDF с аннотациями.
Текущая версия Okular позволяет сохранить PDF с аннотациями, перейдя в Файл -> Сохранить как.
Тем не менее, я хотел что-то автоматизированное. Итак, я создал скрипт Autokey, чтобы каждый раз, когда я закрывал свой PDF, аннотации автоматически сохранялись в самом PDF. Обратите внимание, что этот скрипт сохранит ваш PDF, перезаписывая оригинальный PDF.
Скрипт автоключей
Сначала вам нужно будет установить autokey-gtkи xdotoolсначала:
sudo apt-get install autokey-gtk xdotool
Теперь в autokey перейдите в New -> Script. Добавьте следующий код в ваш новый скрипт:
#This is used to save PDF in okular so that the annotations persist in the PDF file itself#We have to use to `xdotool` to bring the dialogs back into focus, otherwise they are losing focus import subprocess
keyboard.send_keys("<ctrl>+<shift>+s")
time.sleep(0.4)
subprocess.call(["xdotool","windowfocus","`xdotool getwindowfocus`"])
time.sleep(0.1)
keyboard.send_key("<enter>")
time.sleep(0.1)
subprocess.call(["xdotool","windowfocus","`xdotool getwindowfocus`"])
time.sleep(0.1)
keyboard.send_key("<tab>")
time.sleep(0.1)
keyboard.send_key("<enter>")
time.sleep(0.1)
subprocess.call(["xdotool","windowfocus","`xdotool getwindowfocus`"])
time.sleep(0.5)
keyboard.send_keys("<ctrl>+q")#Quit Finally
Теперь вы можете назначить фильтр окна и горячую клавишу этому сценарию. В окне фильтра добавить .*okular.*. И в горячих клавишах, я использовал <ctrl>+s. Вы можете использовать все, что вы предпочитаете.
Итак, теперь, когда мне нужно выйти из okular, я использую CtrlS, и okular завершает работу после сохранения моего pdf.
@HermanJaramillo: Я рад, что это помогло :) Однако, помните, что это довольно взломать. Я все еще ищу более надежный подход.
Шивамс
1
Это лучшее программное обеспечение, которое я когда-либо видел! Это как скрипт оболочки, но для приложений с графическим интерфейсом! :)
Матье
2
Я думаю, что у меня есть ответ. После запуска этой простой команды find в вашем домашнем каталоге:
find -type d -iname "*okular*" -print
Вы найдете этот каталог:
/home/YOUR_USER_NAME_HERE/.kde/share/apps/okular
под ним находится каталог:
docdata
Этот docdataкаталог содержит XML-файлы для каждого документа, который вы открыли с помощью Okular. Просто сделайте резервную копию этой папки, перенесите ее на новую машину и вставьте туда же. Ваши аннотации сохранены!
Я думаю, что у меня есть ответ. После запуска этой простой команды find в вашем домашнем каталоге:
find -type d -iname "*okular*" -print
Вы найдете этот каталог:
/home/YOUR_USER_NAME_HERE/.kde/share/apps/okular
под ним находится каталог:
docdata
Этот
docdata
каталог содержит XML-файлы для каждого документа, который вы открыли с помощью Okular. Просто сделайте резервную копию этой папки, перенесите ее на новую машину и вставьте туда же. Ваши аннотации сохранены!источник