#

一、命令行模式下简化删除 
1. 向后删除单个字符:【x】 
2. 向前删除单个字符:【X】 
3. 删除从光标开始到单词结尾:【dw】 
删除从光标后的2个单词:【d2w】 
4. 删除整个单词:【daw】 
仅当光标停留在一个单词开头,【dw】才能删除整个单词,否则只能删除一部分;而【daw】不考虑光标的停留位置,只要在该单词上,则会自动删除整个单词 
5. 删除光标停留的那整行:【dd】 
假设想连续删除多行,则用【4dd】连续删除4行 
6. 从光标处往前删除单词:【db】 
和【dw】的作用方向正好相反 
7. 删除光标位置到本行开头:【d0】 
8. 点命令【.】含义是重复上次修改,上次修改的单位可以是字符,整行,甚至整个文件。 
因此如果删除整行【dd】,配合【.】也可以起到重复操作的目的。 
点命令最大的用处在于,每次从输入模式到命令模式切换时,整个阶段vim会记录每一个按键操作,使用点命令可以重新执行所有的这些按键操作,就好像“一键回放”,我们可以把点命令当成一个宏。 
比如要给结构体语句添上‘;’号 
按照常规方法做会比较慢,这时候光标先移动到第一条语句上,【A】【;】【ESC】 
再反复使用【j】【.】即可。

二、简化行光标移动 
1. 光标移动到行尾 【】2.光标移动到行尾并进入输入模式,类似于【】2.光标移动到行尾并进入输入模式,类似于【】【a】: 【A】 
3. 光标移动到行尾并回车,再进入输入模式,类似于【$】【enter】【a】: 【o】 
小o的作用类似于新建一空白行 
4. 光标移动到行首【^】 
5. 光标移动到整个文件头部【gg】 
6. 光标移动到整个文件尾部【G】 
7. 跳转到指定的行 
在编辑模式下,输入ngg,或者nG;在命令模式下输入行号 :n 
(n为行号)

三、简化行内光标移动 
1. 光标移动到单个字符:【f】,也用于查找。比如要在本行移动光标至字符处,直接【f】即可 
2. 无需输入即可移动光标,查找:【*】 
3. 【w】移动光标到下一个单词开头,【b】移动光标到上一个单词开头,两者均可跨行 
4. 配合点命令【.】以及【*】星命令,就能实现快速的查找并替换。 
首先在需要被替换的单词上按【*】,然后【a】修改第一个单词,完成后【ESC】,此时vim已经记住了操作,剩下的就是重复【n】查找下一个,【.】回放操作。

仔细体会vim对重复操作的简化,追求的是一键移动,一键操作修改。

最新文章

  1. [Linux] Linux常用文本操作命令整理
  2. 通过FileHandle获取FileObject对象
  3. SQL 联合查询 + XML解析
  4. Windows常用技巧集锦
  5. duxcms SQL Injection In /admin/module/loginMod.class.php
  6. 【leetcode】Reverse Linked List II
  7. iOS获取状态栏和导航栏尺寸(宽度和高度)
  8. OC基础--分类(category) 和 协议(protocol)
  9. svn 提交错误 400 Bad Reqest MKACTIVITY 请求于XX失败 Conflict Unable to connect to a repository at URL
  10. Ajax异步请求PHP数据
  11. Delphi XE5 android listview
  12. Python基础 - 迭代
  13. xml-DTD相关
  14. Windows上mxnet实战深度学习:Neural Net
  15. Hadoop安全机制之令牌
  16. 使用Visual Studio Code和typescript 开发调试React Native项目
  17. sphinx+reStructuredText制作文档
  18. Java后端程序员都做些什么?
  19. Java 线程和多线程执行过程分析
  20. JavaScript视频分享,学无止境。

热门文章

  1. html重点标签总结
  2. 使用UrlConnection请求一个url地址获取内容
  3. 标签显示模式(display)
  4. NSTimer的使用
  5. HDOJ acm steps 3.1.1
  6. WebLogic11g- 集群化
  7. k8s之yaml文件详解
  8. 按照递推的思想求解next[]数组
  9. 帆软报表(finereport)雷达图钻取详细点新页面展示
  10. KafKa——学习笔记