我emacs的版本:GNU Emacs的24.3.1(x86_64的-紅帽Linux的GNU的,GTK +版本3.10.9)的2014年5月21日在buildvm-07.phx2.fedoraproject.org爲什麼我的幀標題格式不起作用?
我希望的Emacs的標題顯示當前文件的絕對路徑。我寫了下面的內容(來自互聯網):
;;;Emacs title bar to reflect file name
(defun frame-title-string()
"Return the file name of current buffer, using ~ if under home directory"
(let
((fname (or
(buffer-file-name (current-buffer))
(buffer-name))))
;;let body
(when (string-match (getenv "HOME") fname)
(setq fname (replace-match "~" t t fname)) )
fname))
;;; Title = 'system-name File: foo.bar'
(setq frame-title-format '("" system-name " File: "(:eval (frame-title-string))))
重新安裝FC20 +的Emacs之前,上面的內容能正常工作。現在除了我手動打開.emacs和eval frame-title-format,它不起作用,我不知道爲什麼我必須手動評估它。
不是你的問題相關,但你可以只用'縮寫文件-name',而不是試圖匹配的環境變量'HOME'等 – Drew 2014-09-01 14:30:26
我還沒有找到它爲什麼沒有工作,但這[回答](http://stackoverflow.com/a/12009623/1054800)作品! – abelard2008 2014-09-01 14:58:15
如果代碼在您手動評估時運行,則問題很可能位於其他位置。當你啓動Emacs時你有錯誤嗎?您的init文件中是否有其他代碼可能導致此問題?找到問題的一個好方法是儘量減少init文件。如果有效,那麼將其擴展到問題再次出現,這樣可以縮小問題的範圍。 – Lindydancer 2014-09-01 11:36:53