大纲或折叠模式,用于编辑Emacs Lisp代码

Håk*_*and 5 emacs elisp

是否可以与Emacs-Lisp模式结合使用一个次要模式,以便可以轻松地打开或关闭每个功能定义,而无需在文本文件中插入特殊代码?

例如

(defun test1()
  (message "Hi!"))

(defun test2()
  (message "Bye"))
Run Code Online (Sandbox Code Playgroud)

F1会将每个功能定义折叠为顶行/标题为

+ (defun test1()
+ (defun test2()
Run Code Online (Sandbox Code Playgroud)

按下+前面的符号将展开给定的功能并使其可编辑。按下F2将展开所有定义。

abo*_*abo 5

这是我的设置:

(require 'hideshow)
(global-set-key (kbd "C-M-h") 'hs-toggle-hiding)
(global-set-key (kbd "<f2> h h") 'hs-hide-all)
(global-set-key (kbd "<f2> h j") 'hs-show-all)
Run Code Online (Sandbox Code Playgroud)