`

vim折叠代码

    博客分类:
  • VIM
 
阅读更多
VIM设置代码折叠
2007-08-16 22:12

1. 折叠方式
可用选项 'foldmethod' 来设定折叠方式:set fdm=*****
有 6 种方法来选定折叠:
manual 手工定义折叠
indent 更多的缩进表示更高级别的折叠
expr 用表达式来定义折叠
syntax 用语法高亮来定义折叠
diff 对没有更改的文本进行折叠
marker 对文中的标志折叠

注意,每一种折叠方式不兼容,如不能即用expr又用marker方式,我主要轮流使用indent和marker方式进行折叠。

使用时,用:set fdm=marker 命令来设置成marker折叠方式(fdm是foldmethod的缩写)。
要使每次打开vim时折叠都生效,则在.vimrc文件中添加设置,如添加:set fdm=syntax,就像添加其它的初始化设置一样。

2. 折叠命令
选取了折叠方式后,我们就可以对某些代码实施我们需要的折叠了,由于我使用indent和marker稍微多一些,故以它们的使用为例:
如果使用了indent方式,vim会自动的对大括号的中间部分进行折叠,我们可以直接使用这些现成的折叠成果。
在可折叠处(大括号中间):
zc 折叠
zC 对所在范围内所有嵌套的折叠点进行折叠
zo 展开折叠
zO 对所在范围内所有嵌套的折叠点展开
[z 到当前打开的折叠的开始处。
]z 到当前打开的折叠的末尾处。
zj 向下移动。到达下一个折叠的开始处。关闭的折叠也被计入。
zk 向上移动到前一折叠的结束处。关闭的折叠也被计入。

当使用marker方式时,需要用标计来标识代码的折叠,系统默认是{{{和}}},最好不要改动之:)
我们可以使用下面的命令来创建和删除折叠:
zf 创建折叠,比如在marker方式下:
zf56G,创建从当前行起到56行的代码折叠;
10zf或10zf+或zf10↓,创建从当前行起到后10行的代码折叠。
10zf-或zf10↑,创建从当前行起到之前10行的代码折叠。
在括号处zf%,创建从当前行起到对应的匹配的括号上去((),{},[],<>等)。
zd 删除 (delete) 在光标下的折叠。仅当 'foldmethod' 设为 "manual" 或 "marker" 时有效。
zD 循环删除 (Delete) 光标下的折叠,即嵌套删除折叠。
仅当 'foldmethod' 设为 "manual" 或 "marker" 时有效。
zE 除去 (Eliminate) 窗口里“所有”的折叠。
仅当 'foldmethod' 设为 "manual" 或 "marker" 时有效。

zf%

分享到:
评论

相关推荐

    vim-flexagon:灵活实用的vim折叠切换器

    此外,我发现折叠对于代码可视化很有用,这不是 vim 折叠方法的主要目标。 与其努力寻找完美的折叠方法,我决定拥抱多样性,让添加和更改折叠方法变得容易灵感Reddit 上一个有趣且简短的评论线程,特别是用户/u/]...

    SimpylFold, Vim无 python 代码折叠.zip

    SimpylFold, Vim无 python 代码折叠 SimpylFold由于它依赖于显著的空白而不是显式块分隔符,正确折叠 python 代码很棘手。 Vim绑定的python 语法定义并不包含任何折叠指令,最简单的解决方法是 set foldmethod=...

    matlab代码续行-vim-matlab-fold:Matlab文件的Vim代码折叠

    matlab代码续行vim-matlab折叠 Matlab .m语法文件的Vim编辑器的代码折叠。 便于折叠以%%开头的任何缩进的matlab代码或编辑器单元格。 折痕基于代码中的缩进结构,以尊重end关键字和以...结尾的行继续... 。 因此,...

    vim超级配置

    +-- 42 lines: vim折叠功能------------------------------------------------------------------------------------ +-- 19 lines: 文件比较----------------------------------------------------------------...

    vim-fish, 用于编辑fish脚本的Vim支持.zip

    vim-fish, 用于编辑fish脚本的Vim支持 vim这是Vim为编辑 fish 脚本提供支持的插件。功能 aplenty语法高亮和文件类型检测,当然。基于关键字的控制结构自动缩进。end 终止鱼的所有自动折叠。使用 gq 运算符使用 fish_...

    实战Linux vim后门

    Vim 提供了代码折叠、语法高亮、自动补全等功能,适用于程序员和文本编辑爱好者。通过个性化配置和插件系统,用户可以定制快捷键、颜色方案等。Vim 还可以作为图形化编辑器,在不同操作系统上运行,并与版本控制系统...

    vim安装包,用于linux十分便捷

    选中代码块 按= 自动对齐 ctags -Rn . ctrl + ] ctrl + t 二、VIM编辑器的使用 vi vim (增强版vi,现在各版本的linux都带有vim) 三种模式: 普通模式:控制光标移动,删除字符,段落复制(按ESC) 编辑...

    vim插件和配置 for Linux 自动补全 IDE

    set foldlevel=100 "启动vim时不要自动折叠代码 set foldcolumn=5 "设置折叠栏宽度 常用命令: za 打开/关闭在光标下的折叠 zA 循环地打开/关闭光标下的折叠 zc 关闭close在光标下的折叠 zo 打开在光标下的折叠 ...

    vim插件打包

    "set foldmethod=syntax "代码折叠 "}} "conf for plugins {{ 插件相关的配置 "状态栏的配置 "powerline{ set guifont=PowerlineSymbols\ for\ Powerline set nocompatible set t_Co=256 let g:Powerline_symbols ...

    Vim/Gvim配置文件+配色方案_By Marslo

    自动载入保存fold(折叠)信息 --------------------------------------------------------------- tl: 显示taglist wm:显示winmanager ,v: 打开配置文件 ,te: 打开俄罗斯方块(熟悉HJKL键) tv: 在gvim中打开...

    linux vim手户手册

    |usr_29.txt| 在代码间移动 |usr_30.txt| 编辑程序 |usr_31.txt| 利用 GUI 调节 Vim |usr_40.txt| 创建新的命令 |usr_41.txt| 编写 Vim 脚本 |usr_42.txt| 添加新的菜单 |usr_43.txt| 使用文件类型 |usr_44.txt| ...

    learn-vim:vim基本学习

    Vim 基本功(Learn Vim...目录复制粘贴删除合并查找块操作缩进格式化窗口分屏标签页书签Vim宏录制Vim重复操作命令撤销重做位置跳转代码折叠Vim可视化模式编辑模式删除操作移动光标调整缩进复制寄存器自动补全输入非常用

    vim代码轮毂插件VOoM.zip

    VOoM 除了能 outline 折叠外,还可以 outline 其它,比如markdown, html等等. 标签:VOoM

    Vim 窗口增添漂亮状态行的插件:一个为 Vim 编辑器设计的插件,能够为每个 Vim 窗口添加漂亮的状态行

    一个为 Vim 编辑器设计的插件...状态行不仅提供了有用的信息,如当前文件名、光标位置和代码折叠状态,还可以通过主题和自定义进行个性化设置。这个插件使得 Vim 用户能够更直观地了解编辑环境的状态,提升了编辑体验。

    vim72/73配置vimrc

    1、语法高亮,自动补全 2、代码折叠,语法检测 3、taglist配置 4、nerd_tree设置 。。。。。。。。。ms让你爽出内伤!! 配置属于你自己的小V !!!!

    vim_配置文件(cpp,python,sublime主题)

    1.sublime 的主题风格 2.支持cpp,python 高亮/补全 {Ctrl+n} 3.代码跳转(需要安转ctags) {Ctrl+t,Ctrl+r: 创建.tags, ...4.代码折叠 {Ctrl+c: 聚会当前代码, Ctrl+o: 展开当前代码, Ctrl+n:展开所有, Ctrl+M:聚会所有}

    一个很好的vim配置(可鼠标操作,有目录,自动补全)

    插入按自动补全,检索方便,鼠标可操作,括号自动配对添加,代码折叠..更多惊喜要体验后才知道哦 要括号自动配对添加,.vimrc中需加这几句 (注意,从window贴过去可能会在每行后有^M就是\r ,需要去掉才行) set ...

    用Vim打造一个简单IDE系统

    使用VIM插件实现基础的IDE功能。 1. 代码自动补全 2. 代码异步检测(只有在你保存时检测,减少电脑资源消耗...5. 代码折叠(方便查看代码) 6. 最大亮点 -- 代码检测支持第三方库和自己的库文件,不只限于系统库和头文件

    vim-go:Vim的Go开发插件

    维哥产品特点该插件增加了对Vim的Go语言支持,具有以下主要功能: 与编译包:GoBuild ,与安装:GoInstall或测试:GoTest 。 使用:GoTestFunc运行一个测试。 使用:GoRun快速执行当前文件。 改进的语法突出显示和折叠。 ...

Global site tag (gtag.js) - Google Analytics