Как сделать так, чтобы evince открывал последний документ при запуске?

Как сделать так, чтобы evince открывал последний документ при запуске?

Есть ли способ сделатьдоказывать 3.10автоматически загружать последний открытый документ при запуске?

решение1

Вы можете сделать это, написав скрипт для сохранения состояния Evince при выключении системы и перезагрузки при запуске системы. Я не уверен, как это сделать, просто закрывая Evince. Я работал над похожим решением, основанным на других предложениях в похожих вопросах, которое пока выглядит так (но не полностью функционально):

сохранение состояния

#!/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); 
}

восстановление состояния

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

решение2

Для пользователей Ubuntu, основываясь на других ответах, я пишу простое приложение для загрузки последних открытых документов:репозиторий github. Он использует lsofкоманду для периодической проверки файлов PDF, открытых процессом evince, и сохраняет сеанс (открытые файлы PDF) либо за 15–30 секунд до закрытия последнего окна evince, либо при запуске второй программы (например, кнопки-переключателя для загрузки и закрытия сеанса evince).

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