Vim是什么?
Vim编辑器是许多开发者和高级用户的选择,它是一个模式化的文本编辑器,是建立在vi编辑器的基础上,作者是Bill Joy创作于1970年
在大多数文字处理器或文本编辑器中,数字键盘大多都只能用户输入数字,但是在vim中这些数字键既可以数字数字也可以在文档中用来移动光标.
例如许多文本编辑器和文字处理器需要使用菜单或点击某些图标或使用ctrl+s来保存你的文档,但是在vim中你甚至可以不用把手移开你的键盘就可以保存文档,例如从vim的输入模式点击“ESC”键,然后输入“:w”你就可以保存了
快速指南:
Vim 需要学习很多东西。然而,如果您熟悉了vim的话,您可以利用vim的高级特征非常熟练的操作文本。
您可以在终端中输入Vim来启动控制台模式下的vim. 输入之后会出现带vim信息的一个空白屏幕。然而,在该状态下输入任何文本都会失败!因此下面将介绍很多初学者都会混淆的特征 - 模式:
模式:
Vim最令人混淆的特征之一是她拥有3种模式.
- 输入模式
输入文本
- 编辑模式
执行命令,也称为正常模式。
- 末行模式
执行 冒号 命令
插入模式并不是缺省的模式,您必须按下i来进入插入模式,在屏幕上输入一些文字。按下<Esc>按钮将从插入模式转到编辑模式。
该模式用于移动和操纵文本,有时以非常有趣的方式进行。 末行模式用于执行冒号命令,比如保存,查找/替换以及配置vim等。
欲保存文本,您只需要在正常模式下输入:进入命令模式并输入:w filename<Enter>.退出vim请执行冒号命令:q.
总结如下:
模式转换:
编辑模式-->输入模式:
i:insert,在当前光标所在处前面转换为输入模式
I:在当前光标所在行的行首转换为输入模式
a:append,在当前光标所在处后面转换为输入模式
A:在当前光标所在行的行尾转为输入模式
o:实现在当前光标所在行的下方新建一个空白行并转换为输入模式
O:在当前光标所在行的上方新建一行,并转为输入模式
编辑模式-->输入模式:
按 ESC 键
末行模式-->输入模式:
键入冒号
光标跳转:
字符间跳转:
h:向左移动,n,h向左跳n个字符
l:向右移动
j:下
k:上
单词间跳转:
w:跳转到后一个单词的词首
e:跳转到当前或后一个单词的词尾
b:跳转到当前或前一个单词的词首
句子间跳转:
):下一句
(:前一句
段落间跳转:
}:下一段
{:上一段
行间跳转:
1G,gg:跳转到第一行
G:最后一行
nG:某一行
行内跳转:
^:行首 ,跳转到非空白字符
$:行尾
0:绝对行首
关闭文件:
在末行模式下:
:w 保存
:q 退出
:! 强制
:wq 保存退出
:x 保存退出
:qall 全部关闭
在编辑模式:
ZZ:保存退出
打开文件:
vim [options] [/path/file]
vim +n file:表示打开文件时,光标定位到第n行
vim -o 水平分割
vim -O 垂直分割
打开多个文件时:
:next 下一个文件
:last 最后
:first 第一个
:prev 上一个
编辑命令:
x: 删除单个字符
nx:删除光标所在处n个字符
d:删除命令
d^:删除至行首
d$:删除至行尾
dd:删一行
ndd:删除光标所在行,及向下n行
编辑撤销:
u:撤销,模式50次操作
撤销此前的撤销:ctrl+r
复制:y,yank
yy:复制一行
nyy:复制n行
粘贴:
整行操作:
p:在当前光标所在行的下方粘贴
P:在上方
非整行:
p:字符后方粘贴
P:前方粘贴
翻屏:
ctrl+d:向后翻半屏
ctrl+f:向后翻一屏
ctrl+u:向前翻半屏
ctrl+b:向前翻一屏
文本搜索:
/keywords 向后查找
?keywords 向前查找
n: 下一个
N: 前一个
选中文本:
v:选中光标所划过的字符
V:选中光标所划过的行
分割文档:
ctrl+w s:一个文件分屏显示,垂直
ctrl+w v:一个文件分屏显示,水平
窗口跳转:
ctrl+w,方向键
窗口属性:
显示,关闭行号:作用范围当前运行进程
set nu
set nonu
自动缩进
set ai
set ic, ignore case
set noic
获取帮助
set
enter:关闭帮助
显示匹配的括号
set showmatch,set sm
set nosm
语法着色
syntax on
syntax off
搜索结果高亮
set hlsearch,hight light
set nohlsearch
vim配置文件
全局:/etc/vimrc
个人:~/.vimrc
查找替换:
s:搜索
: 地址定界s/模式/替换成的内容/gi
g:global
i:ignore case
&:引用分组,例如: #:%s/[dD][eE][vV]/&ice/g
注意:分割符可以是@,#等特殊符号