vim编辑器使用

目录

vim的模式

vim内常用的命令操作

命令模式(初始模式)

底行模式

编辑模式(插入模式)

vim内具体的命令操作

删除与修改

光标移动

查找与替换

可视模式

文档保存及退出

其他操作

光标定位

多窗口

多标签

代码格式对齐使用


vim的模式

vim分为三种模式:命令模式,编辑模式和底行模式。

在底行模式下,所键入的字符系统均作命令来处理,如:q代表退出,而编辑状态则是用来编辑文本资料的。当你进入vim时,会首先进入命令模式。
左下角有INSERT字样就是编辑模式,否则就是命令模式

注意这几个模式之间相互转换的触发按键:

vim编辑器使用_第1张图片

vim内常用的命令操作

命令模式(初始模式)

h左移光标 l右移光标 j下移光标 k上移光标,Esc
如果误删除了,可以在普通模式下面按u进行回退
nx可以删除一个字符,可以指定删除多少个字符,n代表字符的数目
ndw删除一个单词,可以指定删除多少个单词,n代表字符的数目
ndd删除一行,删除n行
gg可以直接跳转到本文本的首行
shift + g (G) 可以来到文本的尾部
nyy拷贝一行,
p代表的是粘贴

底行模式

从命令模式转到底行模式
shift + : 

编辑模式(插入模式)

从命令模式进到编辑模式
小写的i (insert) 在光标的前面进行插入
大写的I 在光标对应的行首进行插入
小写a (append)在光标的后面进行插入
大写的A 在光标对应的行尾部进行插入
小写o (字母o,不是数字0)在光标对应的下一行进行编辑
小写O (字母o,不是数字0)在光标对应的上一行进行编辑

vim内具体的命令操作

删除与修改

x 删除光标处的字符
dd  删除光标所在的整行
3dd   删除光标所在行以及下面的两行(删除3行)
D或d$ 删除光标到行尾的文本,常用语删除注释语句 (等价于d$)
d^   删除光标到行首的文本
dw 删除一个字
d3w   删除三个字
yy 复制光标所在的整行
[n]yy 从光标开始往下复制n行,[n]表示一个整数
p 将复制后的文本粘贴到光标处
u 撤销上次操作

光标移动

^ 光标移动到行首
$ 光标移动到行尾
ctrl+d    向下翻半页(down)
ctrl+f    向下翻一页(forward)
ctrl+u    向上翻半页(up)
ctrl+b    向上翻一页(backward)
gg 光标定位到文档头
G 光标定位到文档尾

h左移光标 l右移光标 j下移光标 k上移光标
H 光标定位到当前页首(head)
L 光标定位到当前页的最后一行的行首(lastline)
w 光标往后移一个字 (word)

b 光标往前移一个字 (block)
[n]+ 光标向后移动n行,[n]表示一个整数 10+
[n]- 光标向前移动n行,[n]表示一个整数  10- 
[n]G 光标定位到第n行行首, [n]表示一个整数 20G

查找与替换

/[str]  查找字符串str,[str]表示要查找的字符串
回车后会加亮显示所有找到的字符串,接着输入n移动到下一个找到的字符串,输入N移动到上一个找到的字符串
:s/[src]/[dst]/[i忽略大小写][g全部匹配] 用dst替换字符串src
:s/hello/world/ig 替换一行
:x,y s/[src]/[dst]/ig(x-y行中找)
:3,6 s/hello/world
:%s/[src]/[dst]/g 将文档中所有src的字符串替换为dst字符串
:%s/^ //g 将文档每一行的行首的空格去掉
:%s/^\t//g 将文档每一行的行首的制表符去掉

可视模式

v 进入可视模式
ctrl+v 竖向选择模式

进入可视模式以后,可以使用光标移动指令来移动光标,并且会选中区域
批量注释代码,输入步骤如下:

首先按ctrl+v,竖选选中要注释的行
输入I(注意是大写的I,表示在选中区域的前方),然后输入//
再按下ESC,就会看到选中的行被注释了

文档保存及退出

:q 在未修改文档的情况下退出
:q! 放弃文档的修改,强行退出
:w 文档存盘
:wq  文档存盘退出

其他操作

:help 查看该命令的帮助提示(不常用,当不小心按F1时,通过:q进行退出)
:%!xxd 十六进制模式
:%!xxd –r 返回文本模式,注意中间有一个空格

如果在编辑过程中不小心按了ctrl+s,vim会处于僵死状态,按ctrl+q可以恢复

光标定位

执行 vim +3 main.c  表示定位到main.c的第3行
执行 vim +/printf main.c 表示定位到第一个printf处

多窗口

:new 2.c  再打开一个vim,是横向的
:vnew 2.c 再打开一个vim,是纵向的
也可以通过:split,vsplit,sp,vsp
ctrl+w,w(连续按两次w) 两个窗口之间进行切换的方式

多标签

:tabnew 文件名 再打开一个vim标签
gt 切换到下个标签
gT 切换到上个标签

代码格式对齐使用

使用 = 可以进行代码对齐
gg=G  对齐全文件
gg=10gg 对齐第一行到第十行
在可视模式选中代码块,再按下=也能对齐代码块

你可能感兴趣的:(linux,编辑器,vim,linux)