VIM 的基本使用

2018-02-03  本文已影响0人  handsomeFu

VIM 有三种模式,分别为:命令模式、输入模式、末行模式。刚进去的时候是处于命令模式的状态下

VIM 模式之间的切换 - HandsomeFu

以下的一些操作都是基于命令模式

常用操作

<!-- 复制 -->
yy      复制一行
(n)yy   复制多行  eg: 6yy  复制6行
y$      复制光标到行末(包括光标)
y^      复制光标一直到行首(不包括光标)

<!-- 粘贴 -->
p       粘贴

<!-- 剪切/删除 -->
dd      剪切/删除一行
(n)dd   剪切/删除多行  eg: 6dd  剪切/删除6行
d$      剪切/删除光标到行末(包括光标)
d^      剪切/删除光标一直到行首(不包括光标和空格)
D       剪切/删除光标到行末(包括光标)
d0      剪切/删除光标一直到行首(包括空格但是不包括光标)
x       删除光标所在的字符(往后删除)
X       删除光标的前一个字符 (往前删除)

<!--撤回-->
u       撤回
ctrl+r  反撤回
.       重复上一次操作

<!-- 修改 -->
r       修改光标所在的字符
R       进入替换状态,修改多个

<!-- 整行后移 -->
>>      整行往后移 
<<      整行往前移

<!-- 选中一块代码 -->
v      从光标开始位置选中多行
V      选中多行

<!-- 查找和替换 -->
:%s/str1/str2/g         用str2替换全文的str1
:12,20s/str1/str2/g     找出第12行到第20行的str1,并用str2替换

光标操作

<!-- 上下左右 -->
h   左  
j   下 
k   上
l   右

<!-- 翻页 -->
ctrl+d    向下半页
ctrl+f    向下一页
ctrl+u    向上半页
ctrl+b    向上一页

<!-- 快速定位 --> 
G       光标快速定位最后一行
gg      光标快速定位第一行    
H       光标快速定位可视区域内首行  
M       光标快速定位可视区域内中间 
L       光标快速定位可视区域内末行 
<!-- 移动 -->
0       光标跳到行首
^       光标跳到第一行的第一个非空白符
$       光标跳到行末
w       光标移动到下一个单词的第一个字母
b       光标移动到上一个单词的第一个字母

保存操作

:q      退出,如果内容以改变,则不退出
:q!     强制退出,不保存更改
:w      保存更改
:wq     保存并退出
:x      保存并退出
上一篇 下一篇

猜你喜欢

热点阅读