Dreamweaver的一个很棒的功能是code folding of any lines of text - 递归!
这太棒了,我可以折叠任何文字或代码,无论语言如何。我使用现有系统;我不会用一种语言编写编写良好的代码或代码等。大多数HTML与神知道什么混合在一起。折叠线使您更容易,更快地理解很多。遗憾的是,这是我在Dreamweaver中喜欢的唯一功能。
Emacs是否有类似折叠的代码折叠?
答案 0 :(得分:9)
有folding mode,一种次要模式。不幸的是它具有侵入性:您必须使用专门的注释手动注释折叠,这样在您不使用模式时(或与不使用模式的其他人共享代码时)会使代码混乱。更好的模式不会改变您的代码。
让我补充一点:有一个值得一看的重复:How to achieve code folding effects in Emacs。
答案 1 :(得分:8)
hide-show(hs-minor-mode
)是一种次要模式,可以做这样的事情......
触发折叠的默认键绑定是C-c @ C-c
,我发现这非常麻烦。但是,我也不会使用它。
答案 2 :(得分:4)
您可能想要查找函数set-selective-display
和变量selective-display
。不完全是你想要的,但它可以让你根据缩进级别隐藏线条。
答案 3 :(得分:3)
我使用fold-dwim.el。来自emacs wiki:
fold-dwim.el是Emacs折叠/概述模式的统一用户界面。它支持folding.el,hideshow.el,outline.el,TeX-fold.el和nxml-outln.el
你可以在这里得到它:
http://www.emacswiki.org/emacs/FoldDwim
我的.emacs中有这个:
(require 'fold-dwim)
(global-set-key [(C kp-4)] 'fold-dwim-hide-all)
(global-set-key [(C kp-5)] 'fold-dwim-toggle)
(global-set-key [(C kp-6)] 'fold-dwim-show-all)
请记住,您仍然需要激活hs-minor-mode,折叠模式等,但我发现以这种方式使用它们更容易。
答案 4 :(得分:1)
您可能会研究的其他内容是nxhtml-mode;它不会折叠代码,但它会根据其类型突出显示混合代码(即HTML和PHP)。这样,在没有折叠模式的尴尬的情况下,可以获得类似的可理解性增益。我认为这种方法更适合Emacs,首先是因为代码折叠看起来像是面向鼠标的想法,不能很好地适应基本的以键盘为中心的Emacs接口,其次是因为Emacs可以轻松地导航大文件到一定程度该代码可以保持可见而不会妨碍您。
答案 5 :(得分:0)