[英]Add functionality to emacs major mode
我寫了一個elisp函數和一些defvar
用於交互式添加boost單元測試宏。 由於它與Boost一起使用,因此只需要在c ++模式下使用它。 目前它位於我的init文件中,因此它始終在每種模式下加載。
我該怎么做才能使這個功能只在c ++模式下可用,就像我把它添加到主模式本身一樣。
如果您希望只在需要時加載您編寫的代碼,可以將其放入自己的文件中(比如boost-unit-test.el
),然后從.emacs
添加:
(eval-after-load "cc-mode" '(require 'boost-unit-test))
注意,這假設文件在您的load-path
並且(provide 'boost-unit-test)
作為其中一行。
現在,一旦加載了這個文件,那些變量和那些命令就全局定義了,這就是Emacs的方式。 這與您在.emacs
文件中保留代碼的情況沒什么不同。 並且,無論哪種方式,它只會被加載/評估一次(除非你強制它加載多次 - 但你必須努力這樣做)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.