作者宣布推出Vim的分支版本Vim Classic 8.3.0,并在vim-classic.org上发布公告。
本文介绍Vim的Runtime路径结构,涵盖plugin、ftdetect、ftplugin、indent、colors、syntax、doc、autoload和after等目录的功能与用法,并说明如何通过runtimepath选项自定义路径,帮助用户理解和定制Vim。
Vim 8内置插件管理器“软件包”,通过~/.vim/pack/目录管理插件。插件可放start/自动加载或opt/手动加载,后者用:packadd命令。支持按类型分组,如colors、syntax。适合极简用户,重度用户仍建议用vim-plug等管理器批量更新。
Vimrc是Vim的配置文件,用于设置插件、选项、自定义命令和键盘映射。Vim按特定路径顺序查找vimrc,首个找到的即被加载。配置时应避免盲目复制他人文件,需理解其功能。可通过划分文件或折叠来组织vimrc,并可用命令行参数控制加载方式。最佳实践是参考他人配置,逐步构建适合自己的vimrc。
Vim提供多种在多个文件中执行命令的方法,包括参数列表(argdo)、缓冲区列表(bufdo)、窗口列表(windo)、选项卡列表(tabdo)、快速修复列表(cdo/cfdo)和位置列表(ldo/lfdo)。这些方法通过创建列表并传递命令来批量操作,如全局替换。建议优先掌握argdo,再学习其他方法。
本文介绍Vim中视图、会话和Viminfo三种保存项目“快照”的方法。视图保存单个窗口设置,会话保存所有窗口布局,Viminfo存储历史记录和寄存器等内部数据。文章详细说明了各自的配置属性、保存加载命令及自动创建方法,并建议微型项目用视图,大型项目用会话,以在不同计算机间快速恢复工作环境。
Vim 通过 `:make` 命令编译代码,可自定义 `makeprg` 选项或使用 `:compiler` 切换编译器。错误信息存入 quickfix 窗口,支持自动保存。异步编译可通过插件如 vim-dispatch 实现,提升效率。Vim 的扩展性使其功能强大。
本文介绍如何将Vim与Git集成,提升版本控制效率。核心内容包括:使用vimdiff比较文件差异,通过:diffput和:diffget处理差异;配置Vim作为Git合并工具,利用LOCAL、BASE、REMOTE窗口解决冲突;在Vim中直接运行Git命令,并推荐vim-fugitive等插件,实现暂存、查看提交历史、blame等操作,简化工作流程。
本文介绍Vim的折叠功能,旨在隐藏无关文本以提升阅读效率。内容涵盖手动折叠(如zf、zo、zc命令)、六种折叠方法(手动、缩进、表达式、语法、差异、标志),以及通过mkview和loadview实现持久化折叠。建议从手动折叠入门,逐步掌握缩进、标志及高级语法和表达式折叠技巧。
Vim标签功能可快速跳转到代码定义,类似地址簿存储定义位置。使用Universal ctags生成标签文件,通过Ctrl-]跳转,:tag命令导航,支持标签堆栈和自动补全。可配置标签文件位置,处理重复标签优先级,用:tselect选择性跳转。保存时自动生成标签或使用vim-gutentags插件,提高代码浏览效率。
本文介绍Vim命令行模式的多种技巧,包括进入退出方式、重复命令、快捷键、寄存器插入、自动补全、历史记录窗口及更多指令。强调命令行模式是文本编辑的“瑞士军刀”,掌握后可大幅提升Vim编辑效率。
Vim的Bang命令可调用外部命令,实现读取输出、写入输入及执行命令三种功能。通过过滤文本,可结合管道处理数据,如排序、转换大小写。普通模式下也可用过滤运算符。掌握外部命令能扩展Vim功能,使其接近IDE。
全局命令是Vim中强大的多行操作工具,语法为`:g/pattern/command`,可对匹配行执行删除、替换等命令。支持反向匹配(`:v`)、范围限定、普通模式命令(`:normal`)、宏执行及递归使用。通过改变定界符、默认打印命令,可实现反转缓冲区、汇总待办、黑洞删除、合并空行和高级排序等功能。掌握它需熟悉命令行命令和正则表达式,能高效批量处理文本。
本文介绍Vim中搜索与替换的高级技巧,包括智能大小写匹配、行首行尾定位、重复搜索、字符组与重复字符搜索、预定义字符组、捕获文本示例、替换命令语法、范围与标志、特殊替换、贪婪与非贪婪模式,以及跨文件替换方法,强调掌握正则表达式对提升编辑效率的重要性。
本文介绍Vim可视模式的三种类型(字符、行、块),涵盖导航、语法、Ex命令应用、跨多行编辑、递增数字、选择上次区域、从插入模式进入及选择模式,并建议优先使用普通模式操作以提高效率。
vim-quickui 是一个数据驱动的对话框系统,旨在简化 Vim 和 NeoVim 用户的命令使用。通过可视化界面,用户可以轻松选择选项,降低学习门槛。该组件库完全用 VimScript 实现,无需外部依赖。
Vim的撤销系统功能强大,支持基本撤销(u)、重做(Ctrl-r)和行撤销(U),并可通过断点插入(Ctrl-G u)拆分修改。撤销树允许在多个分支间切换(g+、g-),保存撤销记录(:wundo/:rundo)和时间旅行(:earlier/:later)可恢复历史状态。建议先掌握u和Ctrl-r,再学习高级功能,并利用vim-mundo插件可视化撤销树。
本文介绍了Vim宏命令的基本用法,包括录制、执行、安全保护、命令行执行、多文件操作、递归执行、修改和拷贝宏,以及串行与并行执行。通过示例说明如何自动化重复编辑任务,并建议使用助记符命名宏以提高效率。
本文介绍了Vim中10种寄存器类型及其用法,包括匿名、编号、小删除、命名、只读、交替文件、表达式、选取拖放、黑洞和搜索模式寄存器。文章详细说明了每种寄存器的功能、存储规则及使用命令,并建议初学者优先掌握匿名、命名和编号寄存器,以提高编辑效率。
微软开源的命令行编辑器 Edit 2.0.0 版本新增语法高亮功能,支持多种编程语言,体积轻巧,适用于 Windows、Linux 和 macOS,提供查找与替换、自动换行等功能,适合网络不佳时使用。
完成下面两步后,将自动完成登录并继续当前操作。