2013-02-16 74 views

回答

1

write-*-functions見提供什麼before-save-hook可以做一個嚴格的超集。更具體地說,write-*-functions可以用替換正常的保存機制與另一個。這意味着添加到write-*-functions的函數可能最終不會使用,因爲某些早期函數已經保存了緩衝區。

0

那麼我會說before-save-hook是在這裏修改的內容。而write-*-functions負責編碼系統(壓縮文件內容或其他任何文件格式)和備份文件。

此外write-*-functions可能是緩衝區本地,而它似乎不是before-save-hook的情況。但是我不確定知道它意味着什麼。

+0

所以他們基本上可以交換? – RNA 2013-02-16 21:13:44

+0

我會說不。你的目標是什麼? – 2013-02-16 21:17:00

+0

您的解釋似乎表明它們通常用於不同的場景,而不是它們具有機械上的差異。我將它用於'delete-trailing-whitespace'來刪除不需要的空格,但我只是對它們的一般功能感興趣 – RNA 2013-02-16 22:22:58

2

write-file-functions可以可以用來簡單地做保存文件,但其宣稱的目的是爲了讓一些非默認的功能,實際上做的保存文件的工作(或者操縱內容之前,任意東西出於與儲蓄機制本身更直接相關的目的)。

如果修改保存文件的機制不是你想要做的,我強烈懷疑你應該使用before-save-hook

C-H我克(elisp) Saving BuffersRET

相關問題