Skip to content
Alick Zhao edited this page Nov 9, 2012 · 5 revisions

有关文本编辑器 Vim

历史

vi by Bill Joy

Bram Moolennar on Amiga machine (TODO)

特性

  • 强大的编辑功能,如文本对象(:help text-objects)
  • 语法高亮
  • 补全功能
  • 支持编写脚本做插件

模式

Vim 是多模式(mode)的编辑器。

  • 敲命令 vim 或者 gvim 启动后,进入的是正常模式
  • 此时按 i/a/o/O 进入插入模式,按 v 进入可视模式,按 : 进入命令模式(或曰末行模式)。
  • 任何模式下,按 <Esc> 键回到正常模式。

命令

  • D = d$ 删除到行尾
  • gf, Ctrl-W f, Ctrl-W gf (:find, :sfind, and :tabfind) (当前buffer中、分割窗口中、新标签页中)编辑(光标下或命令参数指示的)文件

正则表达式

非贪婪:\{-n,m} 表示至少 n 至多 m 个,且尽量少的匹配。 特别地,\{-} 为 0 或更多,尽量少的匹配。

Misc Tips

  • "/ 最近搜索模式寄存器,* 过后想替换(:s) 时会有用。

插件

用于插件管理的插件

用于插件管理的插件(插件管理器):Pathogen

个人配置放在 git 仓库中,插件的管理我使用 git submodule。

此外还有 VAM(vim-addon-manager), Vundle 等可供选择。

LaTeX Suite

功能(可能过于)强大的插件,可以把 Vim 变成 LaTeX 的 IDE。 有许多 LaTeX 环境、命令等的映射,有占位符, 可以方便地在占位符位置间跳转(Ctrl-j)。

snipmate and snippets

用来快速输入各种编程语言和常见类型文件中的常用结构,如 C 语言中的 for 循环块等。

autofmt

实现了 Unicode 断行算法,对于 CJK 文字排版(gq)颇有意义。

Clone this wiki locally