如何将更改应用于emacs .el文件

ego*_*or7 2 lisp emacs elisp

如何将更改应用于emacs .el文件?

我做了以下事情:

  1. # locate buff-menu

/usr/share/emacs/22.1/lisp/buff-menu.el.gz
/usr/share/emacs/22.1/lisp/buff-menu.elc

  1. 修改/usr/share/emacs/22.1/lisp/buff-menu.el.gz- 在Buffer-menu-selectdoc部分添加一些自定义字母.

  2. # rm /usr/share/emacs/22.1/lisp/buff-menu.elc

  3. 字节编译 /usr/share/emacs/22.1/lisp/buff-menu.el.gz

启动emacs并查看旧说明 Buffer-menu-select

Rém*_*émi 8

如果您告诉我们您想要做什么,我们可以更轻松地回答您.事实上,自定义Emacs的正确方法永远不会改变Emacs系统库中的.el.

  • 你可以改变一个defun:

    • 使用建议(查看文档defadvice)
    • 使用defun你将要评估的新内容eval-after-load

      (eval-after-load 'buff-menu
         '(defun Buffer-menu-mark ()
             "do nothing"
             (interactive)))
      
      Run Code Online (Sandbox Code Playgroud)
  • 要添加密钥绑定,您可以再次使用eval-after-load:

        (eval-after-load 'buff-menu
           '(define-key Buffer-menu-mode-map "M" 'Buffer-menu-mark))
    
    Run Code Online (Sandbox Code Playgroud)