Questions tagged «folding»

通过用单个轮廓线替换文本文件的内容,可以直观地隐藏(和切换)文本文件区域的功能。

1
如何在JSON文件中折叠文本?
我有一个很大的JSON文件。一次处理所有文件并不容易。我想折叠一些内容,以便可以处理JSON文件的一部分。 例如: { obj: {+}, // folded section obj:{ // unfolded section } } 是否可以在Vim中折叠JSON结构?
25 gvim  folding 

8
是否有折叠vimrc文件的最佳实践
我最近意识到我vimrc现在已经超过400行(IMO太多了,我会尽量减少它),并且为了使其更易于浏览,阅读和编​​辑,我决定研究一下vim中的可折叠概念(我不熟悉)。 我尝试将folding方法设置为,indent但是我不喜欢结果(这太混乱了,主要是因为我的很大一部分vimrc都没有真正缩进)。 我也尝试设置foldmethod为expr,syntax但无法正确折叠任何东西。 在这里,diff用作折叠方法似乎无关紧要。(或者如果我不明白如何使用它) 因此,marker由于我在文件中发现了“ "{{{和” "}}}标记,因此目前我使用的方法并不完全令我满意。 因此,我想知道是否存在有关正确折叠的最佳实践或通用准则vimrc。 注意1:众所周知,SO不是论坛,也不是收集个人意见,这也不是我想要的:当然,我猜有些人有他们的偏好,但我想知道为什么使用例如,标记比使用缩进可提高可读性。 注2:我的主要目标也是使自己vimrc尽可能清晰,因此,如果存在其他最佳做法来创造一个好的,vimrc我对此很好奇。 编辑1:我应该明确指出,我的vimrc内容已经细分为(主要是 常规选项 插件(每个插件及其配置包含一个小节) 映射 导航(也包含小节) 颜色 等等... 正是这种结构让我想到了折叠:我觉得能够只在特定点上输出我感兴趣的部分非常方便。 编辑2:vimrc在几个文件中提及细分的答案是有效的,但出于个人喜好,我宁愿使用折叠,因为我认为在包含我的dotfile的git repo中仅维护一个文件会更容易。那只是个人喜好,我知道也可以使用这种方法,但是我更喜欢使用折叠。
21 vimrc  folding 

3
如何折叠评论?
语法foldmethod很棒,但有时我只想将注释折叠到源文件中。 同样,注释的语法折叠仅适用于C样式注释,例如: /* ... */ 但不用于注释样板: // // // ... // 甚至对于非C类语言的注释块,例如: # # # ... # 如何用vim配置它?
16 folding 

1
折叠所选行
如何折叠和展开在可视模式下选择的线条? 可以说我有三个段落,我想将前两个或最后两个折叠成一行: Test ==== Lorem Ipsum es simplemente el texto de relleno de las imprentas y archivos de texto. Lorem Ipsum ha sido el texto de relleno estándar de las industrias.. Lorem Ipsum es simplemente el texto de relleno de las imprentas y archivos de texto. Lorem Ipsum ha sido …

1
我可以保存褶皱吗?
今天,我学习了如何在Vim中折叠/展开。非常方便。 出乎意料的是,当我退出文件并重新输入文件时,我创建的折痕消失了(展开)。 在我们公司的大型项目中,有很多粘性(旧式)代码块,这些代码块已经过时但必不可少。 我真的需要几乎永久折叠它们。 有没有一种简单的方法可以告诉Vim保存我的文件折叠首选项?
13 folding 

2
将vim折叠为一行,类似于Atom或Sublime Text
我喜欢Atom和Sublime Text处理行折叠的方式,其中每个折叠的第一行都是可见的(语法高亮显示完整),并且在该行的末尾附加了一个标记来指示折叠。 请参阅下面的屏幕快照,比较Vim的缩进折叠(顶部)与Atom的折叠(底部): Vim为每折指定两行。第一行用作标题,第二行描述有关折页的一些信息(折页内的行数和文本)。 Atom仅使用一行,并在该行的末尾使用一个小标记来指示折叠,并在左侧的行号中添加颜色。Atom的折叠样式使用的屏幕空间更少,但仍可以传达我真正需要的所有信息。 我偏爱Atom折叠样式。我认为,这看起来更干净,更一致,尤其是当连续列出多个方法或属性时(如上图所示)。 有没有办法大致估算Vim中Atom的折叠样式?
13 folding 

1
按正则表达式搜索模式折叠
我得到了一个纯文本文件,其中用空格分隔值的列。像这样: AU 3030 .... ... .... AU 3031 .... ... .... AU 3032 .... ... .... AU 3033 .... ... .... IT 48100 ... .. ..... IT 40100 ... .. ..... IT 48123 ... .. ..... UK 3333 ... ... ..... UK 4444 ... ... ..... UK 5555 ... ... …

2
如何自动折叠功能?
有没有一种方法可以根据函数声明的语法来制作Vim折叠函数? 例如,让vim打开如下函数: def foobar(foo,bar): if foo > bar: print "foo" elif foo < bar: print "bar" elif foo == bar: print "foobar" 变成这个: +----- 7 lines: def foobar(foo,bar): ------------------------------------------------------------- 我可以在.vimrc文件中使用一些命令或函数来完成此操作吗?
12 folding 


3
如何写一个fold-expr?
我已经阅读了有关fold-expr(:h fold-expr)的帮助页面,但没有解释表达式中使用的语法。 有四个示例: :set foldexpr=getline(v:lnum)[0]==\"\\t\" :set foldexpr=MyFoldLevel(v:lnum) :set foldexpr=getline(v:lnum)=~'^\\s*$'&&getline(v:lnum+1)=~'\\S'?'<1':1 :set foldexpr=getline(v:lnum-1)=~'^\\s*$'&&getline(v:lnum)=~'\\S'?'>1':1 我知道这v:lnum是需要缩进级别的行,表达式2是对函数的调用。 表达式1、3和4呢?有人可以向我解释一下吗?
10 folding 

2
问题:垂直移动线会关闭折痕
当我用m(例如:m+1)移动线时,所有折叠都关闭了。然后,我可以再次打开折叠,zv光标将位于我移动到的位置。我使用带{{{ }}}标记的折叠功能,并且set foldmethod=marker在我的.vimrc文件中使用。 如何在移动线时防止vim关闭折叠?
9 folding 

2
折叠失败:vim找不到任何折叠
我正在尝试折叠一些PHP代码,并且在文章结尾处包含了一些我想折叠的代码的简化版本。 我尝试了以下vim命令,但仅以下ex命令有效。non-ex命令不起作用,并在状态行中产生一条红色的白色消息:我找不到任何折叠。 :help folding :help fold-commands :help foldmethod :set foldmethod=syntax zi - toggle folding zj - move to top of next fold zk - move to bottom of previous fold za - toggle current fold open and closed zo - open current fold zc - close current fold zA - …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.