Wie kann ich Okular so konfigurieren, dass es automatisch das letzte geöffnete Dokument lädt?
- Einleitung
- Standardverhalten und verfügbaren Optionen in Okular
- Möglichkeiten zur automatischen Wiederherstellung des letzten Dokuments
- 1. Nutzung der Desktop-Sitzungswiederherstellung
- 2. Start-Skript zur automatischen Öffnung des letzten Dokuments
- Fazit
Einleitung
Okular ist ein vielseitiger Dokumentenbetrachter, der vor allem unter KDE-Desktop-Umgebungen sehr beliebt ist. Gerade wenn man häufig mit PDF-Dateien oder anderen Dokumenten arbeitet, kann es sehr praktisch sein, wenn Okular automatisch das zuletzt geöffnete Dokument beim Start wieder lädt. Leider bietet Okular keine direkte Funktion oder Einstellung in den Optionen, die dieses Verhalten per einfachem Häkchen aktiviert. Dennoch gibt es Wege, um dieses Verhalten zu erreichen, beispielsweise durch Nutzung von Sitzungswiederherstellung des Desktops oder durch benutzerdefinierte Skripte.
Standardverhalten und verfügbaren Optionen in Okular
Okular speichert beim Schließen normalerweise die Position innerhalb eines Dokuments, wenn die Datei erneut geöffnet wird. Eine automatische Wiederherstellung des zuletzt geöffneten Dokuments beim Start ist jedoch nicht standardmäßig im Programm enthalten. In den Einstellungen von Okular finden Sie unter Einstellungen → Okular einrichten bzw. Einstellungen → Allgemein Optionen zum Speichern der letzten Position, aber nicht zum automatischen Öffnen des letzten Dokuments.
Möglichkeiten zur automatischen Wiederherstellung des letzten Dokuments
Um die Funktion zu simulieren, dass beim Start automatisch das zuletzt benutzte Dokument geöffnet wird, gibt es verschiedene Wege:
1. Nutzung der Desktop-Sitzungswiederherstellung
Viele Linux-Desktop-Umgebungen wie KDE oder GNOME bieten eine Sitzungsverwaltung, die beim Abmelden oder Herunterfahren alle geöffneten Programme inklusive deren Fensterzustände speichert und beim nächsten Anmelden wiederherstellt. Stellt man sicher, dass Okular beim Abmelden geöffnet ist mit dem gewünschten Dokument, so kann man das automatische Öffnen durch die Sitzungsspeicherung erreichen.
Unter KDE können Sie die Einstellung für die Sitzungswiederherstellung unter Systemeinstellungen → Sitzung und Startverhalten → Sitzung speichern konfigurieren. Hier gibt es die Option, die aktuelle Sitzung zu speichern und beim nächsten Start wiederherzustellen. Damit startet Okular dann mit den Dokumenten, die zum Zeitpunkt des Abmeldens geöffnet waren.
2. Start-Skript zur automatischen Öffnung des letzten Dokuments
Eine andere Möglichkeit besteht darin, ein kleines Skript zu erstellen, das Okular beim Start mit dem zuletzt geöffneten Dokument aufruft. Dazu müsste man zunächst eine Methode finden, um den Pfad des zuletzt geöffneten Dokuments zu speichern.
Okular legt seine Cookies und Konfigurationsdaten in der Regel im Verzeichnis ~/.local/share/okular* oder ~/.config/okular* ab. Dort gibt es eine Datei namens ~/.local/share/okular/docdata.xml, in der Metadaten zu geöffneten Dokumenten und deren Positionen gespeichert sind.
Leider verlangt dieses XML-File ein gewisses Parsing, um das zuletzt verwendete Dokument herauszufinden. Mit einem kleinen Bash- oder Python-Skript kann man das Dokument extrahieren und dann Okular damit starten.
Beispiel für ein einfaches Bash-Skript:
#!/bin/bashLAST_DOC=$(xmllint --xpath string(//entry /url) ~/.local/share/okular/docdata.xml | sed s|file://||)
if && ; then okular "$LAST_DOC"else okularfiLAST_DOC=$(xmllint --xpath string(//entry /url) ~/.local/share/okular/docdata.xml | sed s|file://||)
Dieses Skript liest mit xmllint die URL des zuletzt verwendeten Dokuments aus der docdata.xml aus, entfernt das Protokoll file://, überprüft, ob die Datei existiert, und öffnet sie mit Okular. Wenn kein Dokument gefunden wird, startet es Okular ohne Dokument.
Um dieses Skript beim Login auszuführen, kann man es beispielsweise als ausführbare Datei speichern (z.B. start-okular.sh) und im Autostart des Desktops einbinden.
Fazit
Okular verfügt nicht über eine direkte Einstellung, um automatisch das zuletzt geöffnete Dokument beim Programmstart zu laden. Möchte man dieses Verhalten trotzdem erreichen, kann man sich entweder auf die Sitzungswiederherstellung der Desktop-Umgebung verlassen oder ein eigenes kleines Skript erstellen, das die letzte Dokumenten-URL aus der Konfigurationsdatei ausliest und Okular damit startet. Beide Ansätze haben Vor- und Nachteile, sind jedoch praktikable Lösungen, um die Produktivität mit Okular zu verbessern.
Ich empfehle, zunächst die Sitzungswiederherstellung des Desktops zu nutzen, da sie ganz automatisch auch andere Anwendungen und den Arbeitszustand speichert. Wenn das nicht möglich oder nicht erwünscht ist, kann die Skriptvariante eine flexible Alternative darstellen.
