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

用于编辑Emacs Lisp代码的大纲或折叠模式,emacs,elisp,folding,Emacs,Elisp,Folding,是否有一个次要模式可以与Emacs Lisp模式结合使用,这样每个函数定义都可以轻松打开或关闭,而无需在文本文件中插入特殊代码 比如说 (defun test1() (message "Hi!")) (defun test2() (message "Bye")) 按F1键将根据需要将每个函数定义折叠到顶行/标题中 + (defun test1() + (defun test2() 按前面的+标志将展开给定功能并使其可编辑。。 按F2键将展开所有定义。大纲次要模式执行此操作。看看菜单

是否有一个次要模式可以与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)
(需要隐藏)
(全局设置键(kbd“C-M-h”)“hs切换隐藏)
(全局设置键(kbd“h”)‘hs隐藏全部)
(全局设置键(kbd“h j”)‘hs显示全部)

大纲次要模式
的一种变体,允许您使用
组织模式
语法,它比普通的
大纲模式
更强大

谢谢!在使用
C-C@C-t
隐藏所有内容之后,如何扩展一个特定的函数def?我尝试了
C-C@
,但无法使其工作..大纲->显示绑定到
C-C@C-e
的条目。那是一个装订!您可以使用
显示模式
,这样将光标移动到隐藏文本中会自动取消隐藏(“显示”)它。除了
C-C@C-e
(显示一个条目)外,还可以使用
C-C@C-s
(显示整个子树)。谢谢!看起来也不错。它看起来类似于
大纲次要模式
hs次要模式
outline次要模式
之间的实际区别是什么?谢谢,这看起来很有趣。。我已经下载了。但是我在哪里可以找到关于哪些键绑定可用的信息呢?如果您已经在使用该模式,那么可以使用C-m或C-b获取绑定。如果没有,则它们位于outshone.el的源代码中,大约在第1500行。我尝试了
C-m
C-b
,但它们不起作用。(似乎绑定到
换行符
向后字符
)。是否有任何与
hs次要模式下的
C-C@C-M-h
等效的命令?啊,输入错误!我是说
C-hm
C-hb
,对不起!它们分别是
descripe模式
descripe绑定
命令。好的,谢谢,
C-hb
有效。。我现在尝试使用以下简单文件
t.el
(defun test()(message“ok”)
,将光标定位在定义中,然后键入
C-C@C-C
运行
隐藏条目
,但它只在回显区域的第一个标题之前给出消息
。。