欲进入 vim 编辑器(从终端输入):1)vim 文件名 <回车>,文件有则打开,无则创建,光标定位在首行
2)vim 文件名 + <回车> 光标定位在文件末行在命令模式下修改命令的格式通常是:
operator [number] motion
其中 operator 是操作符,代表要做的事情,比如 d 表示删除
[number] 可以附加的数字,代表所操作动作重复的次数
motion 动作代表在所操作的文本上的移动,如 w 代表单词、e代表单词末尾、$ 代表行末
1、光标移动:
在命令模式下,使用 h 左移、 j 下移、 k 上移、 l 右移,前加数字移动多次,
如:下移10行 --> 10 j
行内移动:1)w、b、e 以单词为单位移动,大写的W、B、E 会忽略标点符号
2w 表示向前移动2个单词,光标定位在下一个单词首字符
2b 表示向后移动2个单词
2e 表示向前移动2个单词,光标定位在本单词最后一个字符
2)数字0 移动光标至行首
^ 移动光标到行首第一个单,此即行首有空格的情况,不会移动到空格前,
第一个单词之前
$ 移动光标到行末
行间跳转:1)ctrl + g 显示当前文件名和光标所在行的行号
2)G 跳转到文件最后一行
数字 + G 跳转到指定行, :数字 跳转到指定行
3)gg 跳转到文件的第一行
数字 + gg 跳转到指定行
段落跳转:{ 上一段, } 下一段, 前加数字移动多段
翻页跳转:ctrl b 向上翻页
ctrl f 向下翻页
屏幕跳转:H 当前屏幕顶部
M 当前屏幕中部
L 当前屏幕底部
标记跳转:可用m 在一行增加一个标记,标记名称可以是a-z 或A-Z 之间一个字母,
'标记 直接跳转到标记行
如果添加标记的行被删或在其他行添加了相同的标记,之前的标记会被删除
n 查找下一个匹配到的字符串,N 向上查找匹配到的字符串,
使用?代替/,可以进行逆向查找字符串
要回到之前的位置按ctrl-o, ctrl-i 返向ctrl-o
2)* 向下查找当前光标所在单词,# 向上查找当前光标所在单词
2、编辑模式:
在命令模式下6个插入命令:
i 在光标位置插入文本
I 在行首插入文本
a 在光标下一个位置插入文本
A 在行末插入文本
o 在光标所在行换行,插入文本
O 在光标所在行上方换行,插入文本
输入 ESC 退出编辑模式,今日命令模式,注意当前的输入法
3、可视模式:
v 可视模式,从光标位置开始按照命令模式选中文本
V 可视行模式,选中光标经过的完整行
ctrl v 可视块模式,垂直方向选中文本
可视模式下,可以和移动命令连用,例如:ggVG 能够全选所有内容
4、删除命令:
在命令模式下,删除其实就是剪切
行内删除:1)x 删除光标所在的一个字符
2)d 配合h、j、k、l移动命令,进行删除操作
3)d 配合w、b、e ,以单词为单位进行删除,大写的W、B、E 会忽略标点符号,
可配合数字使用
dw 表示在光标位置向前删除1个单词,光标定位在下一个单词首字符
d2b 表示在光标位置向后删除2个单词
d2e 表示在光标位置向前删除2个单词,光标定位在下一个单词之前
4)d 配合数字0、^、$ 可进行行内删除
d0 从光标处删除到行首
d^ 从光标处删除到行首,若在行首有空格的情况下,不会移动到空格前
d$ 从光标处删除到行末
5)dd 删除整行
6)D 从光标处删除到行末
行间删除:1)d{ 从光标处删除到段末
2)d 配合可视模式进行删除操作
3)d 配合 行号G、行号gg 或 :行号,从光标处删除到指定行
4)d 配合标记,从光标处删除到标记处
5、复制命令:
y 和 d 命令用法基本一致
y2w 表示复制两个单词
y^ 表示复制至行首
y$ 表示复制至行尾
yG 表示复制至文件尾
y数字1 表示复制至文件首
y配合可视模式进行复制等
6、粘贴命令:
p 将最后一次删除或复制的内容在命令模式下粘贴到光标位置
删除 + p = 剪切 + 粘贴
7、撤销命令:
u 撤销在一次改动
U 撤销在一行中所有改动
ctrl 配合 R 恢复一次以前的撤销命令,恢复以前的操作结果
8、修改命令:
r 替换当前字符
R 替换当前光标后的字符,按ESC退出
c 和 d 命令用法基本一致,只是删除后进入插入模式而已
9、替换命令:
:s/old/new 在一行内替换一个字符串old 为新的字符串new
:s/old/new/g 在所选行内替换所有的字符串old 为新的字符串new
:%s/old/new/g 在文件内替换所有的字符串old 为新的字符串new
:%s/old/new/gc 在进行全文替换时询问用户确认每个替换需添加c标志
10、缩排:
>> 向右缩印
<< 向左缩印
. 重复执行命令
11、文件命令:
:e . 会打开内置文件浏览器,浏览当前目录的文件
:e 文件名 打开已存在的文件
:n 文件名 新建文件
:w 保存当前文件
:w 文件名 另存为,不会切换文件
切换文件之前必须保证这个文件已经被保存
12、分屏命令:
使用分屏命令,可以同时编辑和查看多个文件
:sp 文件名 横向增加分屏
:vsp 文件名 纵向增加分屏
分屏窗口都是基于ctrl 配合 w 这个命令的
w 切换到下一个窗口
r 互换窗口
c 关闭当前窗口,但是不能关闭最后一个窗口
q 退出当前窗口,如果最后一个窗口,则关闭vi
o 关闭其他窗口
13、退出vi/vim 编辑器:
进入命令模式
:q <回车> 没有保存不能退出
:q! <回车> 放弃所有改动
:wq <回车> 保存并退出 等同于 :x