Emacs

縮短 ~/.emacs 讀取的 Emacs 超時時間

  • January 10, 2011

~/.emacs的啟動文件儲存在我的 AFS 主目錄中。通常,當我登錄到 linux 機器時,我會在嘗試使用 Emacs 編輯本地(非 AFS)文件之前忘記更新我的 AFS 憑據。

發生這種情況時,Emacs 將嘗試載入~./emacs但無法載入,因為它位於我無權訪問的 AFS 空間中。最終(大約一分鐘後)Emacs 將放棄嘗試載入~./emacs並繼續。但是等待 Emacs 超時很煩人(鍵入 Ctrl-Z 似乎不會中斷此超時)。

我想縮短 Emacs 在放棄之前等待的時間。我已經在這個站點上嘗試了這個建議,該建議說將以下程式碼放入site-start.el文件中:

(with-timeout (4)
(load remote-.emacs))

但是,當我這樣做時,Error in init file: Symbol's value as variable is void: remote-\.emacs每當啟動 Emacs 時都會出現錯誤。

如何縮短此超時時間?

您的範例失敗,因為沒有引用 remote-.emacs。這將起作用:

(with-timeout (4)

  (load “remote-.emacs”))

但是,來自emacs 文件

…只有當程序呼叫可以等待的原語時,計時器才能在 Lisp 程序中執行,超時不能在計算過程中停止執行主體…

我假設 emacs 被您的作業系統阻止,等待 AFS 上的遠端文件超時。因此我懷疑在 emacs 中設置超時可能沒有效果。

引用自:https://serverfault.com/questions/181785