经常用到的 VIM 命令

在使用 Vim 的过程中,经常需要粘贴、替换、跳转等操作,由于我脑子笨,时常记不住,总是依赖 google 帮忙才能完成。所以这次索性就把常用的命令集中梳理一下,通过写文章的方式来强迫自己记住:)

编辑

插入

i:在当前位置插入
a:在当前位置后插入
I:在当前行首插入
A:在当前行尾插入

删除

X:删除前一个字符
s:删除光标所在的字符,光标还在当前行(等同于 x)
S:删除光标所在的行,光标还在当前行(不同于dd)
dd:删除一行,光标到下一行
[N]d+Enter:删除当前行开始的 N 行
dw,dW:从当前光标处开始删除一个单词(大写包含标点)
d$:删除当前字符之后的所有字符(本行)
dk:删除当前行和上一行
dj:删除当前行和下一行
kdgg:删除当前行之前所有行(不包括当前行)
jdG(jd shift + g):删除当前行之后所有行(不包括当前行)
:1,10d:删除1-10行
:10d:删除第10行
:11,$d:删除11行及以后所有的行

移动和粘贴

ddp:交换光标所在行和其下紧邻的一行
xp:交换当前字符和其下一个字符
~:将当前字符变换为大写
[N]>>:一行或N行向右移动一个 tab
[N]<<:一行或N行向左移动一个 tab
[N]yy:复制一行或者N行
yw:复制一个单词
p:粘贴
shift+p:在当前行前粘贴
:1, 10 m 20 将第1-10行移动到第20行之后
:1,10 co 20 将1-10行插入到第20行之后
:1,$ co $ 将整个文件复制一份并添加到文件尾部

光标跳转

W,E,w,e:以单词为单位,向前跳动,大写包含标点(w 光标落在单词首字母,e 光标落在单词为字母)
B,b:以单词为单位,向后跳动,大写包含标点
O(大写字母O):在当前行上方开启新的一行
o(小写字母o):在当前行下方开启新的一行
^:移动到本行第一个非空白字符上
$:光标移动到一行的结尾
[N]$:移动到下面 N 行的行尾
0(数字0):光标移动到本行第一个字符上
gg:光标移动到文档的开头
G:光标移动到文档的结尾
Ctrl + e:向下滚动一行
Ctrl + y:向上滚动一行
Ctrl + d:向下滚动半屏
Ctrl + u:向上滚动半屏
Ctrl + f:向下滚动一屏
Ctrl + b:向上滚动一屏

搜索和替换:

查找很长的词,如果一个词很长,键入麻烦,可以将光标移动到该词上,按*或#键即可以该单词进行搜索,相当于/搜索;而#命令相当于?搜索。
/pattern:查找 pattern,按 n 健查找下一个,按 N 键查找前一个
?pattern:查找 pattern,反向查找,按 n 健查找下一个,按 N 键查找前一个
:set ignorecase  忽略大小写的查找
:set hlsearch  高亮搜索结果,所有结果都高亮显示,而不是只显示一个匹配。
:set incsearch  逐步搜索模式,对当前键入的字符进行搜索而不必等待键入完成
n:光标到达搜索结果的下一个目标
N:光标到达搜索结果的上一个目标
ra 将当前字符替换为a,当期字符即光标所在字符
s/old/new/ 用old替换new,替换当前行的第一个匹配
s/old/new/g 用old替换new,替换当前行的所有匹配
%s/old/new/g 用old替换new,替换整个文件的所有匹配

文件和窗口:

:split file 横向打开一个新窗口,光标停在顶层的窗口上
:vsplit file 纵向打开一个新窗口,光标停在顶层的窗口上
Ctrl+w 移动到下一个窗口
:close 关闭当前窗口
:open file 在新窗口中打开文件
:bn 切换到下一个文件
:bp 切换到上一个文件

其他

.:重复最后一个命令
:!command 执行 shell 命令
:suspend或Ctrl - Z 挂起vim,回到shell,按fg可以返回vim
:scriptnames  查看vim脚本文件的位置,比如.vimrc文件,语法文件及plugin等

个人觉得能够被经常用到的也就这么多,如果以后发现还有其他命令,就再补充吧。。。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 目录(?)[-] 关于Vim 1 Vim的几种模式 启动Vim 文档操作 光标的移动 1 基本移动 2 翻屏 3 ...
    SunnyLeong阅读 12,869评论 0 32
  • 命令历史 以:和/开头的命令都有历史纪录,可以首先键入:或/然后按上下箭头来选择某个历史命令。 启动vim 在命令...
    im蚂蚁阅读 30,976评论 3 48
  • 曾经在思科的工厂测试系统`KlemTest` (`SUSE`命令行模式)中使用`VI`/`VIM`超过2年半,现在...
    戈多在地狱阅读 5,861评论 1 13
  • 1. vim 选择文本,删除,复制,粘贴 文本的选择,对于编辑器来说,是很基本的东西,也经常被用到,总结如下:v ...
    路痴千行阅读 8,595评论 0 0
  • 1 最近和闺蜜小秋约会,她整个人都蔫拉吧唧的,委屈的不行,第一句话就是“简直是受不了三大姑八大婆的口水攻击,还不如...
    露露爱吃鱼阅读 2,532评论 0 0

友情链接更多精彩内容