`

vim折叠

    博客分类:
  • vim
vim 
阅读更多

转自<http://hahaxiao.techweb.com.cn/archives/769.html>

VIM 代码折叠
VIM代码折叠方式可以用”foldmethod”选项来设置,如: set foldmethod=indent

 

有6种方式来折叠代码

 

1. manual //手工定义折叠
2. indent //用缩进表示折叠
3. expr  //用表达式来定义折叠
4. syntax //用语法高亮来定义折叠
5. diff   //对没有更改的文本进行折叠
6. marker //用标志折叠

 

 

vim 配置文件分为全局配置文件用户配置文件

 

1. 全局配置文件查找,在.vim 中输入:echo $VIM,一般为:/usr/share/vim/vimrc
2. 用户配置文件在用户主目录下,如:/home/abeen/.vimrc

 

在vimrc文件中设置折叠方式:如set foldmethod=indent

 

选定折叠方式后,就可以使用折叠命令进行折叠操作了.常用的折叠方式为indent和marker.

 

indent折叠命令
indent方式,vim会自动利用缩进进行折叠,我们可以使用现成的折叠成果.
我们可以在折叠处输入以下命令:

 

zc 折叠
zC 对所在范围内所有嵌套的折叠点进行折叠
zo 展开折叠
zO 对所在范围内所有嵌套的折叠点展开
[z 到当前打开的折叠的开始处。
]z 到当前打开的折叠的末尾处。
zj 向下移动。到达下一个折叠的开始处。关闭的折叠也被计入。
zk 向上移动到前一折叠的结束处。关闭的折叠也被计入。

 

 

marker折叠命令
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” 时有效

分享到:
评论

相关推荐

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

    Flexagon,一种 Vim 折叠方法方法管理器vims 折叠的包装器可以在各种折叠方案和一些有用的预包装方案之间轻松切换,所有这些都旨在轻松发现和轻松切换。 Flexagon 还提供了一些自定义折叠展示和“气泡”插件映射来...

    vim超级配置

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

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

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

    VIM用户手册(英文)

    - **折叠功能 (Folding):** Vim 折叠功能的使用技巧。 - **在程序中移动 (Moving through programs):** 在编程环境中高效移动的技巧。 - **编辑程序 (Editing programs):** Vim 在程序开发中的应用。 - **利用...

    易于为[neo] vim定制折叠文本。-Linux开发

    易于为[neo] vim定制折叠文本。 Crease.vim为[neo] vim轻松定制折叠文本。 安装Vim软件包(自Vim 7.4.1528起)git clone https://github.com/scr1pt0r/crease.vim〜/ .vim / pack / plugins / start / crease ...

    vim-anyfold:与语言无关的vim插件,用于基于缩进进行折叠和运动

    `vim-anyfold`是一款针对Vim编辑器的插件,它的主要功能是在不依赖特定编程语言的情况下,基于代码的缩进来实现代码的折叠和运动操作。这一特性使得该插件在处理任何类型的文本或代码时都非常实用,无论你是编写...

    vim插件-配合数字电路systemverilog编程时使用

    通过`systemverilog.vim`,用户可以折叠和展开代码块,如模块、函数或条件语句,以保持代码整洁,便于理解和调试。折叠命令通常为`zo`(打开折叠)和`zc`(关闭折叠)。 Vim的查找和替换功能也是强大的辅助工具,...

    Linux中vim安装包

    5. **折叠代码**: `zo`展开折叠,`zO`关闭折叠,`zM`关闭所有折叠,`zR`展开所有折叠。 6. **插件管理**: Vundle、Pathogen和NeoBundle是流行的Vim插件管理器,可以帮助安装和管理第三方插件,提升Vim功能。 7. **...

    vim 常用快捷键笔记

    ### vim 常用快捷键知识点 #### 一、引言 Vim 是一款功能强大的文本编辑器,广泛应用于各种操作系统之中,特别是 Linux 和 Unix 平台。它源自 vi 编辑器,但添加了许多增强功能,使得它更加高效且易于定制。本文将...

    Modern_Vim_Craft_Your_Development_Environment_with_Vim_8_and_Neovim

    此外,还涵盖了针对不同编程语言的语法高亮、自动完成和代码折叠等增强功能的设置方法,以提升代码编辑体验。 针对现代开发环境,作者探讨了Vim与Git的集成,展示了如何高效地进行版本控制操作。同时,书中还讲解了...

    Pro Vim英文版

    通过安装插件,用户可以扩展Vim的功能,例如自动完成、代码折叠、语法高亮等。书中的插件部分将指导读者如何管理和使用这些插件,以提升开发环境的舒适度和生产力。 **4. Vim脚本编程** Vim支持自定义脚本,允许...

    vim用户手册和vim使用进阶

    - **语法高亮与代码折叠**: `syntax on`开启语法高亮,`foldmethod=indent`根据缩进折叠代码。 ## 4. vim与Bram Moolenaar Bram Moolenaar是vim的主要开发者,他的贡献使vim从原始的vi编辑器发展为现今的强大力量...

    linux-一键化打造VimIDE环境自动生成头信息自动补全自动折叠自动生成markdown目录

    为了将其转换为一个功能丰富的IDE(集成开发环境),我们需要配置一系列插件和设置,使得Vim具备自动生成头信息、自动补全、自动折叠以及自动生成Markdown目录等功能。本篇文章将详细介绍如何一键化打造这样的Vim ...

    vim-rpm安装集合包

    2. **代码折叠**:允许用户折叠代码块以提高可读性。 3. **自动缩进**:根据语言规范自动调整代码缩进。 4. **代码补全**:通过插件提供智能提示,加快编程速度。 5. **调试工具集成**:如GDB集成,方便程序调试。 6...

    FastFold, 仅在调用时更新折叠,以加速 Vim.zip

    FastFold, 仅在调用时更新折叠,以加速 Vim ,FastFold会做什么?自动折叠( 也就是说,折叠方法产生的褶皱与 manual 不同),在插入模式下有明显的VIM 。 他们也经常被重新计算过早( 例如,插入一个开放的折叠标记,...

    Vim 7.3 正式版

    6. **折叠功能**:Vim 7.3引入了代码折叠功能,允许用户将代码块折叠起来,以便于查看和管理大型代码文件。 7. **自动完成**:此版本提供了更智能的自动完成功能,对于编程语言的支持更加完善,能够帮助程序员快速...

Global site tag (gtag.js) - Google Analytics