Vim的学习笔记

Vim的学习

  • 模式切换

普通模式

直接使用vim命令后进入vim的普通模式,在其他模式下,按下ESC即可返回普通模式

插入模式

在普通模式下i, I, a, A等键即可进入插入模式,插入模式下,按键则会输入

可视模式

在普通模式下,按下v, V, <Ctrl>+v即可进入

命令行模式

在普通模式下,按下:即可进入

Ex模式

在进入Vim时,加上-e参数即可进入

  • 普通模式游标移动

使用方向键或者h,j,k,l进行移动

按键方向
h,←
l,→
j,↓
k,↑

行内移动

在行内以移动游标

按键说明
w右移到下一个单词的开头
e右移到下一个单词的末尾
b左移到前一个单词的开头
0右移到本行的开始
$右移到本行的末尾
^左移到本行的第一个非空字符

在相邻页之间移动

按键说明
crtl+f前移一页
crtl+b后移一页

在页内快速移动

按键说明
H将光标移到该页的起始行
M将光标移到该页的中间行
L将光标移到该页的末尾行

大范围移动

按键说明
*将光标移到该单词的下一个位置
#将光标移到该单词的上一个位置
g将光标移到文件的第一行
G将光标移到文件的末尾行
  • 文档编辑

搜索

输入/+内容

指令说明
\+str向下搜索字符串str
n继续搜索
N反向搜索
?+str反向搜索字符串str

替换

替换命令之后,会进入插入模式,按下`ESC`即可返回普通模式

指令说明
s用输入的正文替换游标所在的字符
ns用输入的正文替换游标右侧n个字符
c$用输入的正文替换从游标开始到行尾的所有字符
c0用输入的正文替换从本行开始到游标的所有字符

删除

主要由dx完成删除操作

指令说明
x删除游标所在的字符
X删除游标所在前一个字符
dw删除游标右的单词
dd删除游标所在行
d0删除光标到行的开始
d$删除光标到行的末尾

复制

指令说明
yy复制游标所在行到缓冲区
nyy复制n行到缓冲区

粘贴

复制后,使用命令粘贴

指令说明
p粘贴到游标后
P粘贴到游标前

撤销

指令说明
u撤销上次操作

重复

指令说明
u重复上次操作
  • 插入模式

进入插入模式

指令说明
i在游标处插入
I在行首插入
a在游标右侧插入
A在行末插入
o在当前行后添加一行插入
O在当前行前添加一行插入

游标移动

按键方向

退出插入模式

指令说明
ESC退出插入模式
Crtl+[退出插入模式
  • 命令模式

首先需要进入命令模式:进入Vim后,输入:后·,即可进入

一些操作

打开文件

e+文件名
:e ehpc.txt
则可打开ehpc.txt文件

保存文件

使用命令w保存文件
:w other-ehpc.txt

退出Vim

未作修改,需要使用q进行退出

如果有修改内容,但不保存,则可以使用q!强制退出

如果想要保存内容,并退出,可以使用命令wq

行号操作

直接输入行号进行跳转:
: n:跳转到第n
结合其他命令:

  • :nw 文件名n行写入文件
  • :m,nw 文件名mn行写入文件
  • :m,.w 文件名m到当前行写入文件
  • :.,$w 文件名 将当前行到最后一行写入文件

文件操作

  • :r 文件名读取文件并插入到游标之后
  • :f 文件名重命名文件
  • :f输出当前文件名称和状态

内容替换

  • :%s/str1/str2/str2替换行中首次出现的str1
  • 通过g参数可以达到替换所有的操作:
    :s/str1/str2/gstr2替换行中出现的str1
  • 还可以指定行数,例如:
    :1,$ s/str1/str2/g 用字符串 str2 替换正文中所有出现的字符串str1
    上述操作也可以通过:g/str1/s//str2/g实现
  • 进阶

文件恢复

通过:recover可以恢复意外退出而没有保存的文件

选项设置

:set命令设置选项

选项说明
autoindent自动缩进
number显示行号
ignorecase忽略正则表达式的大小写
ruler显示游标位置

分屏

Vim中使用命令进行分屏操作:

命令说明
split ,sp水平分屏
vsplit,vsp垂直分屏

在启动Vim时分屏,在启动时加入参数:
vim -On file1 file2... 打开 file1 和 file2 ,垂直分屏
vim -on file1 file2... 打开 file1 和 file2 ,水平分屏

各屏幕间移动:

命令说明
Ctrl +w+h当前屏的左分屏
Ctrl +w+l当前屏的右分屏
Ctrl +w+j当前屏的下分屏
Ctrl +w+k当前屏的上分屏

diff

直接输入vimdiff file1 file2可以在Vim里分屏显示两个文件的差异
也可以通过diffsplit file与其他文件进行比较

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值