用习惯了windows的word,notebook,sourceInsight编辑器,再使用vim,发现那么的不适应,windows编辑器中的ctrl-c,ctrl-v,不好用了,右键也不好用了,真是麻烦,必须得慢慢来学习。
这篇文字,将记录我学习vim的经历.我使用的环境是ubuntu10.04, gvim7.2
1. 模式
这个概念很重要,下面要反复用到。
vim中有几种模式,很常用
1)正常模式,也就是刚进入编辑器的模式,这个状态用于向其他模式转换,也可以接收一些简单的控制命令,按ESC键就可以进入这个模式.
2) Insert模式,在正常模式下按i键,进入这个模式。这个模式用于文本的输入,删除字符等操作。
3)命令模式.这个模式接受比较长的命令。在正常模式下输入“:”、“/”或“?”即可进入该模式。命令模式下的命令要输入回车键(Enter)才算完成。
“ :”为一般命令
“/”为正向搜索
“?”为反向搜索
2. 复制和粘贴
1)复制:
复制字符:
首选进入正常模式(按ESC就行),将光标移动到要复制的内容处。
然后按v(指定粘贴板为"1v 引号不能少),进入visual方式,然后就可以移动方向键选中文本,然后按y,就拷贝完成,
如果你要从光标处开始复制 4 个字符,可以按 4yl (复制光标后的)("14yl)("110yl 后面10个字符),4yh(复制光标前的) ,就复制了4个字符到缓冲区中了.
复制的其他命令:
yy复制游标所在行整行。或大写一个Y。
2yy或y2y复制两行。 (请举一反三好不好! :-)
y^复制至行首,或y0。不含游标所在处字元。
y$复制至行尾。含游标所在处字元。
yw复制一个word。
y2w复制两个字(单词)。
yG复制至档尾。
y1G复制至档首。
2) 粘贴
p(小写), 代表将复制的内容粘贴到光标后
P(大写),代表将复制的内容粘贴到光标前
注意:"复制的其他命令"和"粘贴"的命令都是在 "正常模式" 下输入的!!!!
3. 查找
正常模式下,输入/findword, 然后回车,这样就可以查找findword这个词汇了
如果想查找下一个,输入n,就可以了
说明: 1. /代表向后查找,也可以使用?,进行向前查找
2. 当光标在某个单词处时,可以输入*,来搜索这个单词(一个小技巧,很实用!!)
4. 替换
正常模式下,输入:%four/4/g
four为被替换的词语
4为要变为的词语
说明:命令中的%和g,是两个参数,代表替换文中所有出现的four词汇。有功夫可以研究一下其他参数!!
5. vim列编辑模式
6. 保存和退出
在正常模式下,可以使用下面命令:
命令 | 简单说明 |
:w | 保存编辑后的文件内容,但不退出vim编辑器。这个命令的作用是把内存缓冲区中的数据写到启动vim时指定的文件中。 |
:w! | 强制写文件,即强制覆盖原有文件。如果原有文件的访问权限不允许写入文件,例如,原有的文件为只读文件,则可使用这个命令强制写入。但是,这种命令用法仅当用户是文件的属主时才适用,而超级用户则不受此限制。 |
:wq | 保存文件内容后退出vim编辑器。这个命令的作用是把内存缓冲区中的数据写到启动vim时指定的文件中,然后退出vim编辑器。另外一种替代的方法是用ZZ命令。 |
:wq! | 强制保存文件内容后退出vim编辑器。这个命令的作用是把内存缓冲区中的数据强制写到启动vim时指定的文件中,然后退出vim编辑器。 |
ZZ | 使用ZZ命令时,如果文件已经做过编辑处理,则把内存缓冲区中的数据写到启动vim时指定的文件中,然后退出vim编辑器。否则只是退出vim而已。注意,ZZ命令前面无需加冒号“:”,也无需按Enter键。 |
:q | 在未做任何编辑处理而准备退出vim时,可以使用此命令。如果已做过编辑处理,则vim不允许用户使用“:q”命令退出,同时还会输出下列警告信息: No write since last change (:quit! overrides) |
:q! | 强制退出vim编辑器,放弃编辑处理的结果。如果确实不需要保存修改后的文件内容,可输入“:q!”命令,强行退出vim编辑器。 |
:w filename | 把编辑处理后的结果写到指定的文件中保存 |
:w! filename | 把编辑处理后的结果强制保存到指定的文件中,如果文件已经存在,则覆盖现有的文件。 |
:wq! filename | 把编辑处理后的结果强制保存到指定的文件中,如果文件已经存在,则覆盖现有文件,并退出vim编辑器。 |