vim编辑器
学习VIM编辑器的原因
1.所有的类UNIX系统都会vim编辑器其他的编辑器不一定有
2.很多的软件的编辑接口都会主动调用vi
3.vim具有程序编辑能力,可以主动变辨别语法并设置字体颜色高亮 ,检查语法正确性,方便程序设计。
4.程序精简,编辑速度相当快速。
vim编辑器介绍
vim编辑器是vi编辑器的一种高级版本,vim可以使用颜色和特殊的低纹来标注特殊的语法。
vim编辑器的三种模式
一般模式 命令模式 编辑模式
vim按键说明
- 一般模式下的使用按键
按键 | 作用 |
---|---|
Ctrl+d | 屏幕向下移动半页 d->down |
Ctrl+u | 屏幕向上移动半页 u-> up |
Shirt+”+” | 向下移动一行 |
n n->数字 | 光标向后移动n个字符 |
0或Home | 移到行首 0->起始 |
End或$ | 移到行尾 $->行尾 |
H | 移到屏幕第一行第一个字符 H-> High |
M | 移到屏幕中央那一行的第一个字符 M-> Middle |
L | 移到屏幕最后一行第一个字符 L-> Last |
G | 移到这个文件最后一行 G-> Go,没有指定行数,直接到末行 |
nG | n为数字,移到这个文件的n行 |
按键 | 作用 |
---|---|
/word | 向下寻找 |
?word | 向上寻找 |
n | n->next 配合/word或?word, 查找下一个word |
N | 作用与n相反 N->n的大写,作用相反 |
:n1,n2s/word1/word2/g | n1和n2为数字,在n1和n2行之间查找word1,并将所有查找结果都 替换为word2 s->string , g->grep |
:1,$s/word1/word2/gc | 第一行到最后一行间查找word1并将所有查找结果都替换为word2,并每一个查找结构都询问用户是否替换。 c->confirm |
按键 | 作用 |
---|---|
dd | 删除光标所在的一整行 dd->delete delete |
ndd | n为数字,删除光标所在的向下n行,包括光标所在行 |
d1G | 删除光标所在行到第一行的所有数据 |
dG | 删除光标所在行到最后一行的所有数据,G->没有指定行数,直接到末行 |
d$ | 删除光标所在位置到该行末尾之间的内容 |
d0 | 删除光标所在位置到该行行首之间的内容 |
yy | 复制光标当前行 y->copy |
nyy | n为数字,复制光标所在行及以下的n-1行 |
y1G | 复制当前行到第一行之间的所有内容 |
yG | 复制当前行到最后一行之间的所有内容 |
y0 | 复制光标当前位置到该行行首的内容 |
y$ | 复制光标当前位置到该行行尾的内容 |
p(小写) | 与“yy”联合用,在光标所在行的下一行开始粘贴已复制的内容 p->paste |
P(大写) | 与“yy”联合用,在光标所在行的上一行开始粘贴已复制的内容 |
u | 复原上一个操作 u->undo |
Ctrl+r或.(小数点) | 重做上一个操作 r->repeat,更常用的是按.(小数点) |
2. 命令行模式可用的按键
按键 | 作用 |
---|---|
:w | w-> write 将编辑的数据写入硬盘 |
:q | 离开vim q->quit |
:q! | 不保存修改的内容,离开vim !->感叹号有强迫的意思 |
:wq | wq->write and quit 保存并退出vim |
:w filename | 将编辑的文件另存为以filename为名的文件,该新建文件与当前编辑文件在同一目录下 |
:r filename | 将另一个文件的数据追加到当前光标所在行的后面 |
:n1,n2 w filename | 将n1到n2行的内容保存成以filename为名的这个文件,该新建文件与当前编辑文件在同一目录下 |
:! command | 暂时离开vim到命令行模式下去执行command命令。如 !ls 再按Enter键返回vim |
:set nu | nu->number显示行号,仅一次有效。退出vim后再用vim打开文件则没有行号 |
:set nonu | nonu->no number 不显示行号,,仅一次有效。 |
3. 编辑模式
按键 | 说明 |
---|---|
i | i->insert,在光标所在位置的前面插入 |
a | a->append, 在光标所在位置的后面插入 |
o | o->other line,另起一行插入 |
r R | r,R->replace进入替换模式。伴随输入,r只会替换光标所在字符一次;伴随输入,R则一直替换光标所在文字,直到按下Esc键为止 |
Esc | 退出编辑模式,返回一般模式 |
vim编辑器环境设置与记录
vim的环境设置参数(在命令行模式下输入)
vim的环境设置参数 | |
---|---|
:set nu:set nonu | 设置与取消行号 |
:set hisearch:set nohisearch | hisearch 的意思就是 high light seach (高亮度查找) 将查找的字符串设置为反白或不反白 |
:set autoindent:set noautoindent | 设置是否自动缩排 |
:set ruler | 设置显示不显示状态栏说明 |
:set showmode | 设置是否显示左下角状态栏,例如 ——INSERT– 之类的提示 |
set backspace =(012) | 设置退格键 backspace 的使用方法当值为0或1时仅可以删除刚刚输入的字符,无法删除已经存在的文字;当值为2时可以删除任意值 |
:set all | 显示当前所有的环境参数设置值 |
:set | 显示与系统默认的值不同的设置参数设置值 |
:syntax on:syntax off | 设置是否根据相关语法显示不同的颜色 |
:set bg=dark:set bg=light | 设置背景颜色 |
但是这些参数设置只在当前的shell里有效 以每次都要重新设置。
我们可以通过修改配置文件来直接规定我们的环境设置。整体的设置值一般是在、etc/vimrc 这文件中,不过,不建议你修改它。可以自行创建~/vimrc这个文件,将你的偏好的值设置进去(这些是在redhat 环境下)
举例:
[root@who~]#vim /.vimrc
"这个文件里的双引号"是注释
set hlsearch "高亮度显示
set backspace=2 "可以用退格键删除
set autoindent "自动缩进
set ruler "可以显示下方的状态栏的信息
set nu "显示行号
set showmode "显示左下角的状态信息
set bg=dark "显示不同的底色
syntax on "进行语法检查
参考内容
《鸟哥的Linux私房菜》基础学习篇第三版