Vim 普通模式的一般性规律性总结

2018 年 2 月 12 日 Linux中国 作者:Onefishum
已经受不了网上无数 Vim 的教学,基本都是片汤话,抄来抄去。做为一名技术人员,应该能深入的去了解一个软件,然后总结出来经验和规律,而不是记录一个流水帐,这才是最佳的学习方式。
-- Onefishum

本文导航
转载自 | https://www.jianshu.com/p/0f36dea0c651
 作者 | 简书 / Onefishum

编者按:之前我们发了一些很基础的 Vim 教程,有同学说了,你这都是无聊的水文,学习 Vim 就应该总结规律,才能学会。愚也以为然,于是求得转载。本文对 Vim 的普通模式(Normal)做了一番总结,可能其中还有一些不足或疏漏,但是这个思路非常好,请大家无论是抛砖还是抛玉,请大家轻拍~~^_^

前言

已经受不了网上无数 Vim 的教学,基本都是片汤话,抄来抄去。做为一名技术人员,应该能深入的去了解一个软件,然后总结出来经验规律,而不是记录一个流水帐,这才是最佳的学习方式。计算机与人不同,能处理的东西一般都具有一定的规则性,无规则存在概率性的东西,不是计算机处理的强项,尤其对于软件设计来,良好的规律性,能大幅提升软件的可操作性。

对于 Vim 来讲,这个号称神器的东西,定不能放弃这种规律,结果让一些砖家讲的反而如同垃圾,需要死记硬背一堆命令,实则是没有真正了解 Vim,精华的东西却很少见。之所以称之神器,肯定不是简简单单的增删改查,通过命令组合,可以大幅提升文本编辑的速度,远比常规的鼠标操作快,达到手不离键盘。

本文仅仅总结一下普通模式Normal下 Vim 的一些规律性。

直接上硬货

普通模式下通用命令格式(在该模式下,大部分文本命令基本跳不出这个范围):

   
     
     
     
  1. [范围]命令[作用域][对象]

范围(可忽略)

一般存在以下几种:

◈ 数量或位置。例如: 2y2gg2d2fh(找查当前行,第 2 个  h 的位置)。
◈ 区域。例如: 20,30y 、 20,30d

命令(必填)

这部分没有什么可以说的,网上的片汤文章已经很多了一般来讲,就是增删改查复制粘帖之类的。

作用域(可忽略)

这个作用域,一般来讲,是指后面的[对象]范围,一般可以是数字或者一些“动词”。

数字:

d2wy2wf2,

动词:

测试用例:

   
     
     
     
  1. <H1>setopt(ch, "this is a test", 1);</H1>

◈  a(包含)
如果光标在括号内,删除包含括号在内的内容。
da),很神奇的包含括号在内的内容全部都被删除了,这比在传统的编辑器中,慢慢的按  del 键一个个来删,和用鼠标选择来删,要 精准快速得多。可以私下试试所有成对字符,例如: "']}等。
例如:比较经典的 daw,在语义上可以理解为删除一个单词,它与 dw的区别在于, dw 只能删除当前光标到单词的结尾,而 daw,则会删除整个单词。
◈  i(内嵌)
有了包含,就会有内嵌。例如  "" 内的内容(不包括  ""),例如 di"

(Vim 下可以参考帮助 :h text-object

对象(一般需组合作用域)

符号对象:

成对的符号,如上面所举 "')}],其中 ) 也可以用 b 来表示dab} 也可以用 B

文本对象:

◈  w 单词
◈  W 字符串
◈  s 句子
◈  p 段落

总结

本文作者是一个学理出身的,可能文字功底并不是很好。中心思想,只是希望大家使用计算机时,能尽量抛弃死记硬背,应该从中能找到规律性的东西,理解一个软件。通过以上文章,希望大家能在规律的基础进行排队组合,从而达到更好的效果。

码农和大拿的区别:思想。

推荐

《Vim 实用技巧》,这本书有电子版的,质量还不错。但真心推荐买一本,不贵但全书实货满满,空闲时看看,应该每次都能有一些收获,这本书更多注重的是思想,应该是我见过最好的 Vim 丛书,没有之一。

推荐文章

< 左右滑动查看相关文章 >

点击图片、输入文章 ID 或识别二维码直达




登录查看更多
0

相关内容

Vim 是从 vi 发展出来的一个文本编辑器。宏、跳转、代码补全、编译及错误跳转等方便纯文本编辑和编程的功能特别丰富,也支持使用不少的脚本语言进行功能定制和扩充,在程序员中被广泛使用。
一份简明有趣的Python学习教程,42页pdf
专知会员服务
76+阅读 · 2020年6月22日
【实用书】Python技术手册,第三版767页pdf
专知会员服务
234+阅读 · 2020年5月21日
干净的数据:数据清洗入门与实践,204页pdf
专知会员服务
161+阅读 · 2020年5月14日
【资源】100+本免费数据科学书
专知会员服务
107+阅读 · 2020年3月17日
【新书】Python中的经典计算机科学问题,224页PDF
专知会员服务
52+阅读 · 2019年12月31日
《迁移学习简明手册》,93页pdf
专知会员服务
134+阅读 · 2019年12月9日
已删除
AI掘金志
7+阅读 · 2019年7月8日
比Selenium快100倍的方法爬东方财富网财务报表
程序人生
8+阅读 · 2018年10月31日
推荐一些适合小白练手的Python项目
数据挖掘入门与实战
6+阅读 · 2018年5月17日
零基础小白,如何入门计算机视觉?
计算机视觉life
9+阅读 · 2018年3月8日
【每月好书】OpenCV算法精解
Python程序员
10+阅读 · 2017年11月21日
如何用Python做舆情时间序列可视化?
CocoaChina
11+阅读 · 2017年7月21日
【宁波站】网络爬虫与文本挖掘
数萃大数据
5+阅读 · 2017年7月19日
Implicit Maximum Likelihood Estimation
Arxiv
7+阅读 · 2018年9月24日
Arxiv
6+阅读 · 2018年2月6日
Arxiv
7+阅读 · 2018年1月10日
VIP会员
相关VIP内容
一份简明有趣的Python学习教程,42页pdf
专知会员服务
76+阅读 · 2020年6月22日
【实用书】Python技术手册,第三版767页pdf
专知会员服务
234+阅读 · 2020年5月21日
干净的数据:数据清洗入门与实践,204页pdf
专知会员服务
161+阅读 · 2020年5月14日
【资源】100+本免费数据科学书
专知会员服务
107+阅读 · 2020年3月17日
【新书】Python中的经典计算机科学问题,224页PDF
专知会员服务
52+阅读 · 2019年12月31日
《迁移学习简明手册》,93页pdf
专知会员服务
134+阅读 · 2019年12月9日
相关资讯
已删除
AI掘金志
7+阅读 · 2019年7月8日
比Selenium快100倍的方法爬东方财富网财务报表
程序人生
8+阅读 · 2018年10月31日
推荐一些适合小白练手的Python项目
数据挖掘入门与实战
6+阅读 · 2018年5月17日
零基础小白,如何入门计算机视觉?
计算机视觉life
9+阅读 · 2018年3月8日
【每月好书】OpenCV算法精解
Python程序员
10+阅读 · 2017年11月21日
如何用Python做舆情时间序列可视化?
CocoaChina
11+阅读 · 2017年7月21日
【宁波站】网络爬虫与文本挖掘
数萃大数据
5+阅读 · 2017年7月19日
Top
微信扫码咨询专知VIP会员