本文一般情况下用(里边的字母一般大小有所谓,除非特别注明)—表示按住ctrl同时按下相关字母,命令前加一个i表示在插入模式下用这个命令
1、 基本概念
vim下每一个打开的文件对应一个缓冲区(buffer)。
多文件编辑会有两种情形,一种是在进入 vim 前所用的参数就是多个文件(这种情形称为 argument list)。另一种情形是进入 vim 后另外再开其它的文件(称为buffer list)。不过都可以统称为buffer。
2、打开文件
a、vi flname1flname2… flnameN
将多个文件调入缓冲,是 argumentlist。
b、:e filename
这是在进入 vim 后,在不离开 vim 的情形下再打开其它文件,只要您要编辑的档案是在目前目录,Tab 补全键还是可以使用。是buffer list。
注意: :e 后边可以跟目录,这样就可以在目录下慢慢找要打开的文件了
3、文件之间的跳转
:ls 来显示缓冲区中的文件,编号后边有#的代表是前一个文件,有%a的代表是当前文件
:rew 回到首文件
:e# 或Ctrl-^ 编辑前一个档案,用于两文件互相编辑时相当好用。这种用法不管是 argument list 或bufferlist 档案间皆可使用。 使用Ctrl-^ 命令更便捷,但如终端类型不正确该功能将无效。
:b文件名或编号 转至该文件。
:n 编辑下一个文件。
:2n 编辑下二个文件。
:N 编辑前一个文件。注意,这种用法只能用于 argumentlist 的情形。
4、移除文件
:bd 文件名或编号,bd(etele)
5、重新编辑
放弃一修改过的文件,重新编辑。
(1)使用命令 :q!强行退出后再vi flname重新进入。
(2)使用命令 :e!强行重新编辑。这样是会重新打开文件,但会放弃目前对编辑文件的一切修改
6、其他命令
:ls 会列出目前 buffer 中的所有文件。
:f 或ctrl加g 显示目前编辑的文件名、是否经过修改及目前光标所在之位置。
:f 文件名 改变编辑中的文件名。(file)
:r文件名 在光标所在处插入一个文件的内容。(read)
7、窗口命令
:split 文件名 同时在一个页面显示多个文件的内容,类似多窗口,用切换当前窗口
:close 关闭分割窗口可以用,剩下只有一个窗口的话就不能关了。
Ctrl-W + 扩大窗口(需加shift)
Ctrl-W - 缩小窗口