一,概念:
多模式的编辑器工具,也就是编写工具,
vim的配置:不同账户的配置文件不同,vim版本不同
配置的原理:在账号的家目录下,新建.vimrc配置文件(当前帐户的vim启动时访问的配置文件以打开文件) root账号的配置文件夹在/etc/vimrc
配置的插件及指令安装:打开配置文件;在配置文件中写入相关的vim指令;"注释指令
二,vim的模式
命令(默认)
底行
插入
三,模式的切换
四,vim的指令
命令
光标移动
行内
1光标至行右,行头 shif+4($)
2光标至行左,行尾 shif+6(^)
3(按词移动)+(hjkl)实现行内快速移动
W向右按词移至下词首字母 b向左按词
词:;连续的操作符
行间
1跳尾行 shif+g
2跳首行 gg
3跳到n行 n+shif+g
自由移动
1方向键
2 h向右左 j(jump)向下 k(King)向上 l向右
跨文件移动
ctri(不松)+w+w
光标指定某一行打开
文件打开时光标在n行
vim 路径/文件名 +n:(行号}
vim打开文件时光标在上次关闭时位置
复制
复制并拷贝当前行
复制当前行 在当前行输入yy
拷贝到下一行 p
自当前行向下复制多行
n+yy 当前行以1开始复制n行
拷贝多次
拷贝n次 n+p
指定行复制:在底行模式
撤销(有历史记录就能撤销,历史记录在文件关闭后,会清空,vs保存会清空)
u
撤销撤销
Ctrl+r
撤销Ctrl+r命令
u
删除
删除光标包含的字符,回退一格。
x
删除光标包含的字符及以后m-1,回退m格。
m+x
前删一格
shif+x(X)
前删n格
n+shif+x
删除当前行
dd
删除当前行及以下(n同n+p)
n+dd
大小写
当前字母大小写转换,光标右移
shif +`(~) 一下
实现多次*当前字母大小写转换,光标右移
shif +`(~) 不松
剪切
剪切当前行并拷贝
dd +p(在指定位置p)
替换
替换当前光标位置上的内容 为n
r+n
替换以当前光标位置为1及右边m-1个的内容 为n
m+r+n
进入替换模式,在光标处开始替换输入,即每次输入前默认给了r
shif+r
eg.在替换模式下,输入anas会识别成ra rn ra rs
Esc键退出
在低行模式
查找
亮显光标所在词 + 在亮显范围内跳转下一个
shif+3(#) + n
指定查找:底行模式
退出
shif+z+z(ZZ) (不推荐)
底行
保存并退出
:wq+回车 w写入 q退出
wq!强写+强退
执行shell命令
!shell命令
指定查找
/代码a (亮显的是代码段,非词) 亮显代码a
?代码a (亮显的是代码段,非词) 亮显代码a
取消高亮 shif+;+/+代码中没有的字符
指定行复制
:153,167 co 172
从253行复制到167行 ,并粘贴到172之后
指定行删除
:[start],[end]d
:.d 删除当前行
:$d 删除最尾行
:%d 删除所有行
:.,$d-从当前行到文件末尾。
:.,1d-从当前行到文件开头。
10,$d-从第十行到文件末尾。
指定字符删除行
:g/foo/d-删除所有包含字符foo,包括字符串的行
:g!/foo/d-删除所有不包含字符foo的行。
:g/^$/d-删除所有无不显字符空白行
:g/^\s*$/d-删除所有(有不显示字符)空白行
vs 文件名
退出多文件模式 逐一关闭各文件(shif+;+wq)
注:多屏显示
1,我们执行的执行的窗口看光标所在;
2,光标的跨文件移动:ctri(不松)+w+w
3,跨文件编辑:光标跨文件+文件编辑
行号
set nu 显示行号
set nonu 隐藏行号
批量替换
1当前行 & 第一个:s间隔符字符串间隔符要替换为字符
当前行 & 所有:s间隔符字符串间隔符要替换为字符间隔符g
所有行 & 第一个:%s间隔符字符串间隔符要替换为字符
所有行 & 所有:%s间隔符字符串间隔符要替换为字符间隔符g
a~b行 & 所有:a,bs间隔符字符串间隔符要替换为字符间隔符g
插入
i :打开
视图 visual block
批量注释
进入视图(Ctrl+v)
hjkl移动光标 (这是范围,亮显的是选中的)框选
[shift+i]进入插入模式 (注意此时会调回原处)
//
Esc
取消注释
Ctrl+v
l h 选中 //
jk选中要取消的上下
d
五,意外删除文件A
vim再打开,后D选项,删除.swap文件
显示当前路径下的隐藏的.swap文件