代码在Emacs折叠[复制](Code folding in Emacs [duplicate])

2019-07-31 03:09发布

可能重复:
如何实现代码折叠在Emacs效果

Dreamweaver中的一个极好的功能是任何文本行代码折叠 -递归!

这太棒了,我可以折叠任何文本或代码,无论语言。 我与现有系统工作; 我没有在一个语言等编辑精心编写代码或代码大多HTML与神知道的什么混合。 折叠线使得了解了很多更容易和更快。 可悲的是,这是我在Dreamweaver中唯一喜欢的功能。

是否有任何的代码相似的目标折叠Emacs的?

Answer 1:

有折叠模式 ,未成年人模式。 不幸的是它的侵入:你有专门的评论,手动标注的褶皱,其杂波,当你不使用模式(或与他人谁不使用它共享代码时)的代码。 一个更好的模式不会改变你的代码工作。

我再补充:有这种重复是值得一看: 如何实现在Emacs代码折叠效果 。



Answer 2:

隐藏秀( hs-minor-mode )是一种轻微的模式,会做这样的事情...

默认键绑定触发折叠Cc @ Cc我觉得这很繁琐。 但我不使用它了,无论是。



Answer 3:

你可能想查找的功能set-selective-display和变量selective-display 。 不是你想要什么,但它可以让你隐藏基于缩进水平线条。



Answer 4:

我用折叠dwim.el。 从emacs的维基:

折叠式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-轻微的模式,折叠模式,等等,但我觉得它更容易使用它们这种方式。



Answer 5:

别的东西,你可能会考虑是nxhtml模式 ; 它并不折叠码,但它确实突出混合码(即HTML和PHP)不同,这取决于它的类型。 这让你在可理解类似的增益,又不折叠模式的尴尬。 我觉得这种方法更适合于Emacs的,无论如何,首先是因为代码折叠好像不能很好适应基本键盘为中心的Emacs接口的鼠标为导向的理念,其次是因为Emacs的简化导航的大文件在一定程度上该代码,而无需在您的方式获得可以保持可见。



Answer 6:

如果你确实需要“的东西隐藏而不是它试图来理解语法给定区域”(基于解析不像隐藏显示和其他解决方案)和你“不想看到编辑[你]代码”(不像折叠) ,那么,我想,你的意思是你不想要的区域是不同的编辑会话之间持续。 然后,你可以使用http://www.emacswiki.org/emacs/HideRegion隐藏用户选择的区域...

(但是,这是奇怪的。与持续性标志的折叠镜模式似乎是一个更为便捷的解决方案。)



文章来源: Code folding in Emacs [duplicate]