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



有没有一种次要模式可以与Emacs-Lisp模式结合使用,这样就可以轻松地打开或关闭每个函数定义,而无需在文本文件中插入特殊代码?

例如

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

F1 会将每个函数定义折叠到顶行/标题中,如下所示

+ (defun test1()
+ (defun test2()

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

这是我的设置:

(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)

outline-minor-mode这样做。查看其菜单。而不是+符号,你会得到典型的省略号...。这应该不会有什么坏处。您可以自己执行键绑定。(我知道你足够聪明!

Outshine是outline-minor-mode的变体,可让您使用org-mode语法,这比普通outline-mode更强大。

最新更新