我正在阅读的代码中有一些大的缩进段落,不能放在一个屏幕上,有时放在十个屏幕上(我使用的是大字体),如果我可以转到某一行并按键盘快捷键隐藏后面的所有内容,直到下一行从同一位置或更左边开始,就会更容易看到发生了什么。
我发现了许多Emacs的代码折叠包,但似乎都至少遇到了其中一个问题:
- 它们几乎没有什么功能,而且似乎维护不善
- 它们依赖于显式括号(如
{{{ ... }}}
)来知道在哪里 - 它们允许您折叠顶级代码,但不允许您从任意内部级别折叠
- 它们允许您折叠内部级别,但只能并行折叠——也就是说,如果您折叠一个级别1块中的一个级别2项目,则还必须折叠其余项目
对于Python,请使用elpy
-Emacs Python开发环境。它有一个内置的代码折叠模块:
Elpy通过增强内置折叠次要模式提供代码折叠隐藏显示。
当打开python缓冲区时,Elpy会用左边边缘的箭头。单击箭头将折叠相应的代码块。折叠的代码块可以通过单击行末尾的…按钮。
如果你不想使用鼠标,你可以实现同样的效果具有功能
C-c @ C-c (elpy-folding-toggle-at-point) Toggle folding for the thing at point, it can be a docstring, a comment or a code block.