Vim简明使用手册(学习笔记)

Vim简明使用手册(学习笔记)
Vim简明使用手册(学习笔记)

Vim简明使用手册

~jizhi 2011.12.6

(一)打开vim

(1)vim是vi的升级版,比vi好用多了。下载vim:

sudo apt-get install vim (此时会安装最新版)

(2)打开vim(以下的new.txt=未有文件名,had.txt=已有文件名,后缀.txt只不过

让看起来更像一个文件名,并无他意):

1、在终端输入 [ vim ],则打开一个空vim

2、在终端输入 [ vim new.txt ],则新建一个名为newfile.txt的文档

3、在终端输入 [ vim had.txt ],则打开已有的名为had.txt的文档

4、一个vim分屏打开多个文档:先打开一个文档,然后命令模式下输入 [ :sp other.txt ](注意sp前有 : 表示行末模式),则在原来的文档上方打开名为other.txt的文件。不

同文件间切换用 [ Ctrl+w+w ]

(3)打开已有文档时要求光标处于指定行数 [ vi +n had.txt ],其中[ n ]是指定的行数,如 [ vi +5 had.txt ]则打开后光标在第5行行头。若要打开后光标直接在最后一行,则

不要数字n,[ vi + had.txt ]

(4)标出行号 [ : set number ],注意有[ : ],表示行末模式。标出的行号只在屏幕显示,不会写到实际文档中。若要求打开文档时总有行号而不需要每次都输入这个命令,

则修改vimrc即可 [ sudo gedit /etc/vim/vimrc ],加入 [ :set number ],保存

(二)保存和退出vim

(1)保存并退出:

1、输入大写 [ ZZ ]

2、输入 [ : x ]或 [ : wq ],注意,这里是行末模式的[ : x ],有个[ : ]号,而不是命令模式下的删除指令。

这三个保存并退出指令效果一样,因此最好用的当属[ : x ]。

(2)保存但不退出 [ : w ]。

(3)另存为:

1、[ : w othername.txt ]

2、强制覆盖已有文件 [ : w! 覆盖后的文件名 ],注意后面有个[ ! ]

(4)不保存直接退出 [ : q! ],这里也有[ ! ]。

(三)移动光标

光标移动只能在命令模式下进行!

(1)上下左右移动:可用那4个箭头,但实际使用中用字母hjkl更方便,h左,j下,k上,l右。开始可能不太习惯,但用多了觉得非常方便,因为手不用大幅度移动。

(2)对于英文,光标移动一个“英文单词”的距离:

1、[ b ] 光标左移到前一个单词的首字母

2、[ w ] 光标右移到下一个单词的首字母

3、[ e ] 光标右移到下一个单词的末字母(没有移到前一个单词的末字母)

注意,所有标点都是一个独立的单词,单词之间用空格或标点分开,因此,光标有

可能移到标点上。

(3)对于中文,光标移动一个“中文句子”的距离:

1、[ b ] 光标左移到前一个句子的第一个字

2、[ w ] 光标右移到下一个句子的第一个字

3、[ e ] 光标右移到下一个句子的最后一个字(没有移到前一个句子的最后一个字)注意,所有标点都是一个独立的句子,句子之间用空格或标点分开,因此,光标有可能移到标点上。另外,两个汉字之间用空格公开如“我 们”,则变成两个句子,一句一个字。

(4)光标移到一段:首先要清楚如何叫一段。这里的段落用“空行”分开,空行与空行之间那块文字就叫一段而不理那块文字里面如何布局

1、[ ( ] 上移到上一段的段首

2、[ ) ] 下移到下一段的段首

注意,都是移到段首。

(5)光标在“空行”间移动(与移一段差不多)

1、[ { ] 移到上一个空行首

2、[ } ] 移到下一个窄首

(6)光标移到指定行 [ : 行号n ]

(7)光标移到行头行尾:

1、[ 数字0 ] 光标移到行头

2、[ $ ](Ctrl+4)光标移到行尾

(8)光标移到文档第一行和最后一行:

1、[ gg ] 光标移到文档第一行

2、[ G ] 光标移到文档最后一行

(9)光标一次移多行

1、[ Ctrl+u ](组合键)光标上移6行

2、[ Ctrl+d ] 光标下移6行

3、[ Ctrl+f ] 上翻一页

4、[ Ctrl+b ] 下翻一页

(四)插入文字

插入文字有 A a I I O o 六个命令,它们的功能如下:

(1)光标前后插入:

1、[ i ] 光标前插入文字

2、[ a ] 光标后插入文字

(2)行头行尾插入:

1、[ I ](大写i)光标所在的行头插入文字

2、[ A ] 光标所在的行尾插入文字

(3)插入空行:

1、[ O ] 光标所在行的上方插入空行

2、[ o ] 光标所在行的下方插入空行

(五)替换文字

替换文字有 R r cw 三个命令,它们功能如下:

(1)[ r ] 只替换光标所有的那个字

(2)[ R ] 从光标开始一直往后逐个字逐个字替换,直到按[ Esc ]为止

(3)[ cw ](两个小字字母按顺序按)则替换一个单词,按[ Esc ]返回时多余的字母会自动去掉

(六)删除文字

删除文字有 x Delete键dw dd S s 六个命令,它们功能如下:

(1)[ x ] 或 [ Delete键] 删除光标所在的字

效果:删除光标所在的字,然后后面的字补上,因此删一个字后,光标在所删字后面的那个字上。因此,若要删除连续的几个字,光标应该放在最前的那个字上。两者分别有注意事项:在命令模式下两者没有任何分别,但在文本模式下两者完全不同。在文本模式下,[ x ]只是一个字母而非命令,而[ Delete ]还是删除命令。但在文本模式下按[ Delete ],对于中文,按第一下时没有任何变化,按第二下才删(实际上按第一下时换到命令模式了);但对于英文,在文本模式下按[ Delete ],光标前的英文会有变化——小写变大写、大写变小写,这是我们不想要的结果。因此,在文本模式下用[ Delete ]删除文字,只能在中文中

(2)[ dw ] 删除整个单词

所谓“单词”是从光标所在字母算起的,如calibration is need,光标在calibration的b字母上,则 [ dw ] 命令只认为单词是bration而非calibration。因此

在用 [ dw ] 命令删除一个单词前先将光标移到单词首字母

(3)[ dd ] 完全删除整行,连空行都不留下

如何算一行?一个行号对应一行!

(4)[ S ] 删除这行的文字,但留下空行,并进入文本模式

(5)[ s ] 光标所在的字或字母变成[ $ ]号,之后进入文本模式,所打的字或句在[ $ ]号中插入

(七)剪切、复制、粘贴

(1)剪切 [ x dw dd ] 所有删除命令都是剪切命令

(2)复制:

1、复制自选文字段:先按[ Ctrl+v ] 使进入选择模式,按上下左右选取要复制的文字,然后按[ y ] 复制

2、[ yw ] 复制一个单词,注意单词还是从光标所在字母算起

3、[ yy ] 复制整行,一个行号对应一行

4、[ y$ ] 复制从光标到行尾这段文字($=Ctrl+4)

(3)粘贴:

1、[ p ](小)光标后粘贴

2、[ P ](大)光标前粘贴

(八)重复、上一步、下一步

(1)在命令前加上数字表示重复做该命令多少次。如 [ 5 p ] 表示重复粘贴5次,[ 23 h ] 表示光标向左移动23个字母(中文字),对于其他命令也一样

(2)[ u ] 上一步(后退),按多次u则不停上一步,也可 [ 5 u ] 之类

(3)[ Ctrl+r ] 下一步,当上一步按错了,则用 [ Ctrl+r ] 恢复

(九)查找

(1)从光标开始向下查找:

[ / 要找的字符],先按[ / ] 键,vim下方会出现[ / ]符号,然后输入要查找的字符

(2)从光标开始从上查找:

[ ? 要找的字符],先按[ ?] 键,vim下方会出现[ / ]符号,然后输入要查找的字符

其他

(1)合并行 [ J ]

[ J ](大写J而非下移光标的小写j)将下一行文字移到光标所在行的后面

相关主题
相关文档
最新文档