命令历史 以 : 和 / 开头的命令都有历史纪录,可以首先键入 : 或 / 然后按上下箭头来选择某个历史命令。
启动 vim 在命令行窗口中输入以下命令即可
文件命令
1 2 3 4 5 6 7 vim file vim file1 file2 file3 ... :open file :split file :bn :bp :args
打开远程文件,比如 ftp 或者 share folder
1 2 :e ftp://192.168 .10.76 /abc.txt :e \\qadrive\test \1 .txt
Vim 的模式 正常模式 (按 Esc 或 Ctrl + [ 进入) —— 左下角显示文件名或为空 插入模式 (按 i 键进入) —— 左下角显示 –INSERT– 可视模式 (按 v 或 V 进入) —— 左下角显示 –VISUAL–
导航命令
插入命令
查找命令
vim 中有一些特殊字符在查找时需要转义 .*[]^%/?~$
1 2 :set ignorecase :set noignorecase
查找很长的词,如果一个词很长,键入麻烦,可以将光标移动到该词上,按 * 或 # 键即可以该单词进行搜索,* 相当于 / 搜索。而 # 命令相当于 ? 搜索。
1 2 3 4 5 :set hlsearch :set nohlsearch :nohlsearch :set incsearch :set wrapscan
替换命令 1 2 3 4 5 6 7 ra s/old/new/ s/old/new/g %s/old/new/ %s/old/new/g :10 ,20 s/^/ /g ddp
移动命令
以上四个命令可以配合数字使用,比如 20j 就是向下移动 20 行,5h 就是向左移动 5 个字符,在 vim 中,很多命令都可以配合数字使用,比如删除 10 个字符 10x,在当前位置后插入 3 个!,3a!,这里的 Esc 是必须的,否则命令不生效。
1 2 3 4 5 6 7 8 9 10 11 12 w b e ge ^ 0 ( 数字 0 ) <HOME> $ gg G ( shift + g ) f ( find ) F
跳到指定行,冒号 + 行号,回车,比如跳到 240 行就是 :240 回车。另一个方法是行号 +G ,比如 230G 跳到 230 行。
1 2 3 4 5 6 Ctrl + e Ctrl + y Ctrl + d Ctrl + u Ctrl + f Ctrl + b
撤销和重做
删除命令 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 x 3 x X dl dh dd dj dk 10 d D d$ kdgg jdG ( jd shift + g ) :1 ,10 d :11 ,$d :1 ,$d J ( shift + j )
拷贝和粘贴 1 2 3 4 5 6 7 yy nyy p shift + p :1 ,10 co 20 :1 ,$ co $
正常模式下按 v(逐字)或 V(逐行)进入可视模式,然后用 jklh 命令移动即可选择某些行或字符,再按 y 即可复制。
剪切命令 正常模式下按 v(逐字)或 V(逐行)进入可视模式,然后用 jklh 命令移动即可选择某些行或字符,再按 d 即可剪切。
1 2 3 ndd :1 ,10 d :1 , 10 m 20
退出命令
窗口命令 1 2 3 4 5 6 7 :split or new :split file or :new file split Ctrl + ww Ctrl + wj Ctrl + wk
关闭窗口
录制宏 按 q 键加任意字母开始录制,再按 q 键结束录制(这意味着 vim 中的宏不可嵌套),使用的时候 @ 加宏名,比如 qa。。。q 录制名为 a 的宏,@a 使用这个宏。
执行 shell 命令 1 2 3 4 5 :!command :!ls :!perl -c script.pl :!perl script.pl :suspend or Ctrl + Z
注释命令 perl 程序中 # 开始的行为注释,所以要注释某些行,只需在行首加入 # 。
1 2 3 4 3 ,5 s/^/3 ,5 s/^1 ,$ s/^/:%s/^/
帮助命令 1 2 3 4 5 6 :help or F1 :help xxx :help 'number' :help <Esc> :help -t :help i_<Esc>
帮助文件中位于 || 之间的内容是超链接,可以用 Ctrl + ] 进入链接,Ctrl + o ( Ctrl + t ) 返回。
其他非编辑命令 1 2 3 4 . :set ruler? :scriptnames :set list
Vim 教程 在 Unix 系统上
在 Windows 系统上
1 2 3 4 :syntax :syntax clear :syntax case match :syntax case ignore