vim学习笔记(致敬vim作者)

vim cheat sheet

30. vim 删除大法

vim 删除某个字符之后改行的其他的字符?删除某行之后的其他行?删除某个字符之后的其他字符?【1】删除单个字符?

跳到要删除的字符位置

  1. 按下d键
  2. 然后按下shift + 4键

【2】删除某行之后的其他行?

按下d

按下shift + G

【3】删除某个字符之后的其他字符?(可以额拆解为)

  1. 按下v
  2. 按下shift + G
  3. 按下x

【4】删除单个字符?

x

【5】删除某个单词?

  • 先用'b'命令把光标先移动到词首,然后执行dw删除整个单词.按键3个
  • 执行反向删除命令'db'(会剩余最后的"e"字符),再执行'x'删除单个字符.按键3个
  • 直接执行daw,删除单词并会删除一个空格(其他的不会),光标停留在下一个单词末尾上.按键3个(推荐使用这个,方便快捷。)

【6】删除某一行中任意字符之间的数据

如何界定之间,你来界定

看下面的例子,需求: 删除第一个双引号之间的内容

bash 复制代码
if [ "${UbuntuCheck}" ] && [ "${UbuntuCheck}" -lt "16" ];then

光标移动到双引号上, dt" 即可

31、插入模式深入理解

【Normal】模式下如果需要往某行插入内容,一般是将光标移动到指定位置,然后【insert】模式插入。 这种操作是最容易理解的但并不是最优雅的。

a → 在光标后插入

o → 在当前行后插入一个新行

O → 在当前行前插入一个新行

cw → 替换从光标所在位置后到一个单词结尾的字符

32、光标移动大法

【1】% : 匹配括号移动,包括 (, {, [. (需要把光标先移到括号上)

【2】**#: 匹配光标当前所在的单词,移动光标到下一个(或上一个)匹配单词(是下一个,#是上一个) 对应的就是search模式的N和n。

【3】NG → 到第 N 行 (陈皓注:注意命令中的G是大写的,另我一般使用 : N 到第N行,如 :137 到第137行

【4】gg → 到第一行。(陈皓注:相当于1G,或 :1)

【5】G → 到最后一行。

【6】按单词移动

w → 到下一个单词的开头。

e → 到下一个单词的结尾

【7】移动到指定字符开始的位置

fa → 到下一个为a的字符处,你也可以fs到下一个为s的字符。

fs

fr ....

Fa 向前移动

【8】t, → 到逗号前的第一个字符。逗号可以变成其它字符。

超级好用,当你观察一下这行数据,可以去到任何你想去的地方。

如果是win的话可以需要鼠标才可以完成你想到的任何一个地方。

T, 是反方向

【9】3fa → 在当前行查找第三个出现的a。<ninesun: 查找域为光标之后>

33、复制大法

当掌握了移动大法之后,可以使用 随意进行复制

【1】复制一个单词

ye

【2】复制一整行

不论光标处于何处

0y$

  • 0 → 先到行头
  • y → 从这里开始拷贝
  • $ → 拷贝到本行最后一个字符

【3】 复制字符串之间的内容 very import

光标键在第一个 o的位置

bash 复制代码
(map (+) ("foo"))

vi" → 会选择 foo.

va" → 会选择 "foo".

vi) → 会选择 "foo".

va) → 会选择("foo").

v2i) → 会选择 map (+) ("foo")

v2a) → 会选择 (map (+) ("foo"))

相关推荐
云半S一36 分钟前
pytest的学习过程
经验分享·笔记·学习·pytest
AI视觉网奇1 小时前
ue5.7 配置 audio2face
笔记·ue5
微露清风1 小时前
系统性学习C++-第二十讲-哈希表实现
c++·学习·散列表
星火开发设计2 小时前
C++ queue 全面解析与实战指南
java·开发语言·数据结构·c++·学习·知识·队列
如果你想拥有什么先让自己配得上拥有3 小时前
近似数的思考学习
学习
崎岖Qiu3 小时前
【OS笔记35】:文件系统的使用、实现与管理
笔记·操作系统·存储管理·文件系统·os
ha20428941943 小时前
Linux操作系统学习记录之----自定义协议(网络计算器)
linux·网络·学习
振华说技能4 小时前
SolidWorks学习大纲-从基础到全面精通,请看详情
学习
曦月逸霜4 小时前
离散数学-学习笔记(持续更新中~)
笔记·学习·离散数学
hunter14504 小时前
windows server AD域与CA部署证书
笔记