vim编辑器
vim编辑器
模式转换(编辑模式 输入模式 末行模式)
编辑--》输入
i:在当前光标所在字符的前面,转为输入模式
a:在当前光标所在字符的后面,转为输入模式
o:在当前光标所在行的下方,新建一行,并转为输入模式
I:在当前光标所在行的行首,转为输入模式
A:在当前光标所在行的行尾,转为输入模式
O:在当前光标所在行的上方,新建一行,并转为输入模式
末行模式
set nu:显示行号
10d:删除10行
一.打开文件
vim +行号:打开文件,并定位于第行
vim +:打开文件,定位至最后一行
vim +/pattern :打开文件定位至第一次被pattern匹配到的行的行首
二.关闭文件
1.末行模式关闭文件
:q :q! :w :w! :wq-->:x
2.编辑模式下退出
ZZ:保存并退出
三.移动光标
1.逐字符移动
h左 l右 j下 k上
3h:移动3个字符
2.以单词为单位移动
w:移至下一个单词的词首
e:跳至当前或下一个单词的词尾
b:跳至当前或下一个单词的词首
3w:移动3个单词
3.行内跳转
0:绝对行首
^:行首的第一个非空白字符
$:绝对行尾
4.行间跳转
#G:跳转至第#行
G:跳转最后一行
末行模式下,直接给出行号即可
四.翻屏
ctrl+f:向下翻一屏
ctrl+b:向上翻一屏
ctrl+d:向下翻半屏
ctrl+u:向上翻半屏
删除指令:
x 删除光标所在的字元
X 删除光标之前的字元
dd 删除整行
dw 删除一个word
dG 删除至文档尾
dgg 删除至档首
D 删除至行尾
d0 删除至行首
复制指令:
yy 复制整行
3yy 复制3行
y^ 复制至行首
y$ 复制至行尾
yw 复制一个word
y2w 复制2个word
yG 复制至档尾
y1G 复制至档首9.
p 粘贴至游标后
P 粘贴至光标前
五.删除单个字符
x:删除光标所在处的单个字符
#x:删除光标所在处及向后的共#个字符
六.删除命令:d
d命令跟跳转命令组合使用 #dw #de #db 如:3dw 删除3个光标后的字符
dd:删除当前光标所在行 #dd:删除包括当前光标所在行在内的#行
末行模式下:
startadd,endaddd
.:表示当前行
$:最后一行
+#:向下的#行
七. 粘贴命令p
p:如果删除或复制的为整行内容,则粘贴至光标所在行的下方,如果复制或删除的内容
P:如果删除或复制的为整行内容,则粘贴至光标所在行的上方,如果复制或删除的内容
八.复制y
九.修改:先删除内容,再转换为输入模式 c
十.替换:r
十一.撤销编辑操作 u
u:撤销前一次操作
撤销最近一次撤销:ctrl+r
十二.重复前一次编辑操作:.
十三.可视化模式
v:按字符选取
V:按矩形选取
十四. 查找
/pattern
?pattern
十五.查找并替换
ADDR1,ADDR2s/pattern1/string/gi i:忽略大小写
%:表示全文
例::%s/vivian/sky/g(等同于 :g/vivian/s//sky/g) 替换每一行中所有 vivian 为 sky
十六.使用vim编辑多个文件
vim FILE1 FILE2 FILE3
:next 切换至下一个文件
:prev 切换至前一个文件
:last 切换至最后一个文件
:first 切换至第一个文件
退出
:qa 全部退出
十七.分屏显示,窗口拆分
ctrl+w,s:水平拆分窗口
ctrl+w,v:垂直拆分窗口
在窗口间切换光标
ctrl+w,方向键
:qa 关闭所有窗口
十八.分窗口编辑多个文件
vim -o:水平分割显示
vim -O:垂直分割显示
十九.将当前文件中部分另存为另外一个文件
末行模式下使用w命令
:w
:wADDR1,ADDR2w /path/to/somewhere
二十.将另外一个文件的内容填充在当前文件中
:r /path/to/somefile
二十一.跟shell交互
:! COMMAND 比如说当写程序发现忘记路径了 可以通过此命令切换到shell中
二十二.高级话题
1.显示或取消行号
:set nu
:set nonu
2.显示忽略或区分字符大小写
:set ignorecase -->:set ic
:set no ignorecase --->:set noic
3.设定自动缩进
:set autoindent --->:set ai
:set noautoindent --->:set noai
4.查找到的文件高亮显示或取消
:set hlsearch
:set nohlsearch
5.语法高亮
:syntax on
:syntax off
二十三.配置文件
/etc/vimrc 修改这个所有用户生效
~/.vimrc 当前用户生效