vim命令记录

1 篇文章 0 订阅

vi:visiual interface

vim:vi improved

 

移动命令:

j 向下

k 向上

h 向左

l 向右 

 

w word 向后移动一个单词

b back 向前移动一个单词

0 行首

^ 第一个不是空格的字符处

$ 行尾

 

gg 文件顶部

G 文件尾部

数字gg 移动到数字对应行

数字G 同上

:数字 同上

 

 

Ctrl+b 向上翻页

Ctrl+f 向下翻页

H M L 屏幕顶部,中部,下部

 

 

段落移动:

{ 上一段

} 下一段

 

 

% 在成对的() {} [] 左右跳转

 

标记跳转:

m[a-zA-Z]

'x定位到指定标记

 

选中文本:

v :可视模式,从光标开始位置选中文本

V:可视行模式,按照行选中文本

Ctrl+v:可视块模式,按照列选中文本

可与gg,G,{}连用

 

撤销和恢复:

u:undo 撤销

Ctrl+r:redo 恢复

 

删除文本:

x:删除光标所在字符,或者选中字符

nx:删除光标所在字符及起后面共n个字符

dd:删除光标所在行

ndd:删除光标及以下共n行内容

D:删除光标至行尾

如果使用可视模式已经选中了一些文本,使用x/d都可以将其删除

 

d + 移动命令 删除光标至移动到的位置

常见组合:

dw 从光标删除至单词末尾

d0 从光标删除到该行起始位置

d$ 从光标删除到该行末尾

d} 从光标删除至段落结束

ndd 向下删除连续n行

dnG 从光标删除至第n行

d'a 从光标删除至标记a处

 

复制和粘贴:

y 复制

yy 复制一行

nyy 复制多行,规则同上

p 粘贴

np 粘贴n次

可以粘贴使用d/x删除的内容(此删除基本等同于我们理解的剪切,是将被删除的内容移至vi缓冲区,故可以粘贴),不可以粘贴系统剪切板中的内容,vi缓冲区和系统缓冲区不是同一个,如要粘贴系统剪切板上内容,先进入编辑模式,再使用功能区粘贴,或者Shift+Insert粘贴

 

替换命令:

r:替换光标所在字符,处在命令模式

R:依次替换光标及后面的字符,处在替换模式

 

缩排及重复命令:

>> 向右增加缩进

<< 向左删除缩进

. 重复执行上次命令

可与可视模式结合使用,选中多行进行缩进处理

 

查找命令:

/str 查找str字符串

n 向下查找下一个

N 向上查找上一个

* 向后查找光标所在单词

# 向前查找光标所在单词

 

查找并替换:

1. 全局替换:

:%s/旧文本/新文本/g

2. 可视区域替换:

先选中需替换区域范围,使用:进入末行模式,会自动生成一些代码无需多管,再使用s/旧文本/新文本/g,进行替换

3. 确认替换:

把末尾的g改为gc,会出现提醒,强烈推荐使用!!!

:%s/旧文本/新文本/gc

1. y-yes,替换

2. n-no,不替换

3. a-all,全部替换

4. l-last,替换且此为最后一个替换,及替换后退出替换模式

5. q-quit,退出替换模式

6. ^E,Ctrl+e,向下滚屏

7. ^Y,Ctrl+y,向上滚屏

 

插入命令:

i-insert:在光标所在字符前开始插入
a-append:在光标所在字符后开始插入
o:在光标所在行的下面另起一新行插入
s-substitute:删除光标所在的字符并开始插入


I-INSERT:在光标所在行的行首开始插入 如果行首有空格则在空格之后插入
A-APPEND:在光标所在你行的行尾开始插入
O:在光标所在行的上面另起一行开始插入
S-SUBSTITUTE:删除光标所在行并开始插入

编辑命令与数字连用:

如要输入重复性较强的语句,如输入printf("Hello, World") 10遍

按下数字10,使用a/i等进入插入模式,输入需重复的语句printf("Hello, World"),Esc退出插入模式,即可发现此语句被输入了十遍。

利用 可视块 给多行代码添加注释:

1. 移动光标至需被注释的代码第一行,按^移动光标至行首

2. Ctrl+v进入可视块模式

3. 使用j向下选中需被注释的代码行

4. 输入I进入插入模式,及在行首插入,一定是大写I

5. 输入#或者//注释

6. 按下Esc退出编辑模式

即可发现多行都被注释

 

 

分屏命令:

末行模式扩展:

:e 当前文件夹下文件名,edit,直接对其进行编辑

如不知道当前文件夹下文件名,即可使用:e . 打开vim内置文件浏览器,浏览当前文件夹下文件,选中后可对其直接编辑

:e ..浏览上一文件夹文件

以上编辑其他文件命令,如已对当前文件进行修改,则需要在保存当前文件之后进行操作,否则不可进行编辑其他文件

:n 文件名,new,新建文件并对其进行编辑

:w 文件名,write,编辑后的文件内容另存为,且继续编辑当前文件,不会切换至新文件

 

末行模式回顾:

:w 保存

:q 退出,如已修改必须加!强制退出,否则退出失败

:q! 不保存强制退出

:wq = :x 保存并退出

:%s///gc 查找并替换

在实际开发之中可常使用:w 文件名阶段性备份代码文件,防止丢失。

 

 

分屏命令:

同时编辑查看多个文件。

:sp 文件名,split,横向增加分屏

:vsp 文件名,vertical split,纵向增加分屏

切换分屏窗口:

分屏窗口命令都是基于Ctrl+w的,在按下Ctrl+w后再执行一下操作。

w-window:切换到下一个窗口

r-reverse:互换窗口

c-close:关闭当前窗口,但是剩下最后一个窗口时不能关闭

q-quit:退出当前窗口,如果剩下最后一个窗口则退出vim

o-other:关闭其他窗口

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值