Wie kann man dafür sorgen, dass Evince beim Start das letzte Dokument öffnet?

Wie kann man dafür sorgen, dass Evince beim Start das letzte Dokument öffnet?

Gibt es eine Möglichkeit,Beweis 3.10zuletzt geöffnetes Dokument beim Start automatisch laden?

Antwort1

Sie können dies tun, indem Sie ein Skript schreiben, um den Status von Evince beim Herunterfahren des Systems zu speichern und beim Systemstart neu zu laden. Ich bin mir jedoch nicht sicher, wie ich dies tun kann, wenn ich Evince einfach schließe. Ich habe an einer ähnlichen Lösung basierend auf anderen Vorschlägen in ähnlichen Fragen gearbeitet, die bisher so aussieht (aber nicht voll funktionsfähig ist):

Zustand speichern

#!/usr/bin/awk -f
# Note: this won't work yet, just saved version from command line
# Need to adjust to work as stand alone script

# State can be restored with `$ { xargs -d "\n" -a ~/.openpdfs evince; } &`,
# but this is probably not the best option

BEGIN { 
    cmd = "lsof"; 
    while ((cmd | getline) > 0) 
        if ($1=="evince"                                   \
                && /\/home\/.+\.[^. ]+$/                   \
                && !/\.(ttf|cache|log|i686-pc-linux-gnu)$/ \
                && sub(/^[^\/]+/, "")) 
                print > "'$HOME'/.openpdfs"; 
    close(cmd); 
}

Wiederherstellungszustand

/usr/bin/xargs -d "\n" -a ~/.openpdfs /usr/bin/evince;

Antwort2

Für Ubuntu-Benutzer schreibe ich basierend auf anderen Antworten eine einfache Anwendung zum Laden zuletzt geöffneter Dokumente:das GitHub-Repo. Es verwendet den lsofBefehl, um die vom Evince-Prozess geöffneten PDFs regelmäßig zu überprüfen, und speichert die Sitzung (geöffnete PDFs) entweder 15 bis 30 Sekunden, bevor das letzte Evince-Fenster geschlossen wurde, oder Sie führen das zweite Programm aus (wie ein Umschaltknopf zum Laden und Schließen der Evince-Sitzung).

verwandte Informationen