携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第13天,点击查看活动详情
vim 操作那些事
- 我们使用vim相信大多数朋友们都是用来打开文件然后箭头进行移动吧,有需要复制粘贴的活应该还是使用鼠标进行操作的吧,但是vim的诞生时为了解放我们的鼠标,里面很多快捷键都是代替鼠标的比如正常情况下小写代表一个功能,同字母的大写即位对立的功能。除了上面的八种字符外还有其他字符也可用于快速跳转。
0 移动到行首
$ 移动到行尾部
^ 本行第一个非空白字符
gg 移动到文件开头
G 移动到文件底部,配合数字可以实现移动到第几行
| 移动到光标所在行的第几列,这个定位很不错。
g^ 移动到屏幕位置中的行首
g$ 移动到屏幕位置中的行尾
- 为了提高我们移动的效率VIM还给我们提供了块移动,将屏幕一分为三,值得注意的是vim认为的底部并不是我们认为的底部,这个自己测试下就知道了。
字符 | 字符 | 功能 |
---|---|---|
H | Head | 将光标移动到屏幕顶部位置 |
M | Middle | 将光标移动到屏幕的中间位置 |
L | Lower | 将光标移动到屏幕底部位置 |
- 上面主要介绍了移动的相关知识,不仅仅是我们自己操作移动,上面的关键词也是我们在结合动作进行组合的关键词,比如说你想删除当前光标之后的三个单词你可以使用
d3w
abds sdf leove/computer/hello.so
- 面对上面的文本,此时光标在行首,执行
d3w
则从光标位置向前
删除3个单词,w
匹配的是单词,所以最终结果如下
leove/computer/hello.so
- 但是如果我们执行的
d3W
, 因为W
匹配的是单词的同时会忽略标点,他会认为leove/computer/hello.so
是一个单词,所以最终就会整行被删除。关于操作动作+motion
的操作基本上都可以互相组合。