Obecna wersja Okulara pozwala zapisać plik PDF z adnotacjami, przechodząc do opcji Plik -> Zapisz jako.
Chciałem jednak coś zautomatyzowanego. Stworzyłem więc skrypt Autokey, aby przy każdym zamknięciu pliku PDF adnotacje były automatycznie zapisywane w samym pliku PDF. Pamiętaj, że ten skrypt zapisze plik PDF zastępując oryginalny plik PDF.
Skrypt Autokey
Najpierw musisz zainstalować, autokey-gtk
a xdotool
najpierw:
sudo apt-get install autokey-gtk xdotool
Teraz w autokey przejdź do Nowy -> Skrypt. Dodaj następujący kod do nowego skryptu:
#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
Możesz teraz przypisać filtrowi okna i skrótowi do tego skryptu. W filtrze okna dodaj .*okular.*
. I w skrócie, którego użyłem <ctrl>+s
. Możesz użyć wszystkiego, co wolisz.
Więc teraz, ilekroć muszę wyjść z okularu, używam CtrlSi okular kończy po zapisaniu mojego pliku pdf.