有什麼辦法可以讓證據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
命令定期檢查 evince 進程打開的 pdf,並在最後一個 evince 視窗關閉前 15~30 秒保存會話(開啟的 pdf),或執行第二個程式(如用於載入和關閉 evince 的切換按鈕)證據會話)。