Vim中的折叠功能

jfewjypa  于 12个月前  发布在  其他
关注(0)|答案(5)|浏览(125)

有没有什么方法或工具可以在Vim中折叠函数,比如Visual Studio或Eclipse?

eyh26e7m

eyh26e7m1#

Vim folding commands
---------------------------------
zf#j creates a fold from the cursor down # lines.
zf/ string creates a fold from the cursor to string .
zj moves the cursor to the next fold.
zk moves the cursor to the previous fold.
za toggle a fold at the cursor.
zo opens a fold at the cursor.
zO opens all folds at the cursor.
zc closes a fold under cursor. 
zm increases the foldlevel by one.
zM closes all open folds.
zr decreases the foldlevel by one.
zR decreases the foldlevel to zero -- all folds will be open.
zd deletes the fold at the cursor.
zE deletes all folds.
[z move to start of open fold.
]z move to end of open fold.

字符串
来源:Vim docs。

13z8s7eq

13z8s7eq2#

是的。Vim具有出色的折叠功能。我不喜欢学习太多的控制,我更喜欢自动化,所以下面是我个人使用的用途:
在我的.vimrc中:

set foldmethod=indent
set foldlevel=1
set foldclose=all

字符串
这会自动折叠你打开的文件,基于缩进,所有缩进超过1级的文件。foldclose选项会在我导航出文件夹后自动重新关闭文件夹。
文件内控制:

zo - opens folds
zc - closes fold
zm - increases auto fold depth
zr - reduces auto fold depth


如果你对褶皱感到厌烦,

: set foldmethod=syntax


或按下:

zR


让他们都消失

cwdobuhd

cwdobuhd3#

:set foldmethod=syntax

字符串
如果你有你语言语法文件,应该自动折叠所有函数和其他块。

cwdobuhd

cwdobuhd4#

Vim具有出色的折叠支持。在vim帮助系统中有很好的文档。只需打开vim并执行

:help usr_28.txt

字符串
阅读完后你还可以读

:help folding


了解更多信息。

x8diyxa7

x8diyxa75#

是的,它绑定到'z'键,例如zO打开所有折叠。更多信息请参见Vim中的“:help fold”。您可以根据非常简单的规则(如缩进)或代码语法进行折叠。

相关问题