来源

实验楼(shiyanlou.com)的《Vim编辑器》课程的学习报告。

6种基本模式

普通模式

默认进入vi时的模式,使用编辑器命令,i h j k l 等等

插入模式

用户按下 ia 进入插入模式,在光标处进行编辑等操作。

可视模式

在此模式下使用移动命令 jl 等,回选择一片高亮区域,当用户再使用非移动命令时,此操作会作用于高亮区域。

选择模式

类似普通编辑器的编辑模式,可以使用鼠标选中文本,此时按下的按键属于替换文本,而不属于命令。如在此模式下鼠标选中dog然后输入i的话,就会用字符i把单词dog替换掉。

命令行模式

在此模式下,用户的输入会被解释执行,例如搜索(/?)或者过滤(!)。

Ex模式

在此模式下,用户可以一次执行多条命令。使用:visual离开。

常用操作

普通模式

  • 使用vi/vim命令刚进入vim
  • 在任何模式下连按多次Esc
  • 普通模式下shift + zz退出vim
  • 删除
  • x 删除当前光标所指字符
  • Del 等价于 xinsert键下面那个键
  • X 删除光标前字符
  • dd 删除光标所在行
  • dw 删除光标所在单词
  • d$D ,删除到行尾
  • d^ 删除到行首
  • dG 删到文档结尾(向后删,包括本行),对比如下

  • d1G 删到首行(向前删,包括本行),对比如下

插入模式

  • 普通模式下进入插入模式
  • i 在当前光标位置插入
  • I 在当前行首插入
  • a 在当前光标后插入
  • A 在当前行后插入
  • o 在当前行后插入新行
  • O 在当前行前插入新行

命令行模式

  • 插入模式下: 进入
  • : w 保存文件
  • : w filename 另存为
  • :saveas filename 另存为
  • :q 退出
  • ! 在命令末尾表强制
  • w q ! 组合
  • x 等价于 wq

最新文章

  1. linux限制ftp账户的访问路径
  2. function中的ajax怎么返回一个数
  3. Javascript设计模式之创建构造函数和方法
  4. 适合我胃口的angular.js学习资料
  5. android短信的接收和发送处理
  6. cf B Very Beautiful Number
  7. VS2010中的自动化测试(5)——Web性能测试
  8. ExtJs5_继承自定义一个控件
  9. POI导出Excel文档通用工具方法
  10. 游戏服务器设计之NPC系统
  11. AngularJS复习-----内置过滤器和内置服务
  12. 源码篇——Handler消息机制
  13. 十.nginx反向代理负载均衡服务实践部署
  14. jQuery设置时间格式
  15. [Python] 怎么把HTML的报告转换为图片,利用无头浏览器
  16. Leetcode(力扣) 整数反转
  17. i春秋第二届春秋欢乐赛RSA256writeup
  18. mysql 获取随机10条数据
  19. ACM学习历程—HihoCoder1309任务分配(排序 && 贪心)
  20. 巨蟒django之权限6: 权限控制表设计&&登录权限

热门文章

  1. perfectpixel 加载PSD图到网页中和已经写好的网页进行对比
  2. Homestead can not mount nfs on macos catalina
  3. learning scala generic classes
  4. luogu 1712
  5. Centos 如何扩充/增加磁盘
  6. IDEA构建支持cdh版本和scala的maven项目注意事项
  7. python 监视和控制鼠标键盘的输入(使用pynput 而非pyhook)
  8. Hadoop hadoop的介绍和几种模式
  9. 搞定TADA68机械键盘的固件修改
  10. Windows下OpenFOAM开发及使用环境配置指南 (1)【转载】