Dive into vim

Dive Into VIM


VIM命令行模式

1、光标的移动

  • h,j,k,,l,分别使光标向左,下,上,右移动;
  • w,光标向前移动一个单词,b,光标向后移动一个单词;
  • e,到下一个单词的结尾;
  • 0,光标移动到行首;$,光标移动到行尾;
  • ^,光标移动到当前行的第一个字母;
  • ) ,移动光标到下一个句子;
  • (,移动光标到上一个句子;
  • ctrl+f ,光标移动到下一屏;
  • ctrl+b,光标移动到上一屏;
  • G, 移动到文件末尾;
  • numG,光标移动到指定行(eg.100G就是第100行),配合 se number,显示行号使用;
  • gg,移动到文件开始;
  • H,光标移动到屏幕上方;
  • M,光标移动到屏幕中间;
  • L ,光标移动到屏幕下方;
  • * ,读取光标处的字符串,并且移动光标到它再次出现的地方,向后搜索。有点类似搜索/find命令;
  • #,与*类似,只是向前搜索;
  • /text,搜索文本,重复上次的搜索按n
  • ?text ,与上面的类似,反方向;
  • ma,做书签标记。a代表书签名字,书签名字只能是小写字母。用户看不到书签的存在;
  • ``a`,到书签的a处;
  • ``.`,到上次编辑的地方,这个是默认的书签,不需要特别标记它。
  • dt",删除所有内容,直到遇到双引号,这个对码农很有用!
  • t,,到逗号前的第一个字符,逗号可以是任何字符;

2、插入命令

  • i,在当前字符的左边插入;

  • I,在当前行首插入;

  • a,在当前字符的右边插入;

  • A,在当前行尾插入;

  • o,在当前行下面插入新行;

  • O,在当前行上面插入新行;

  • c{motion},删除 motion 命令跨过的字符,并且进入插入模式。比如: c$,这将会删除从光标位置到行尾的字符并且进入插入模式。ct!,这会删除从光标位置到下一个叹号(但不包括),然后进入插入模式。被删除的字符被存在了剪贴板里面,并且可以再粘贴出来;

  • d{motion},和c{motion}类似,区别是不进入插入模式;

3、有效移动大段文本,可视化模式

  • v,按字符来选择大段文本可精确到字符,试试看,用h,j,k,,l来移动光标;
  • V,按行来选择大段文本精确到行,因此h,l,无效;
  • ctrl+v,块选择,这个太强大了,可以进行纵向编辑,有点像ultra editor里面的纵向编辑模式,比如想删除第一列的所有字符,用这个实在太方便了!!!
  • d,剪贴内容到剪贴板,但不进入插入模式;
  • y,拷贝内容到剪贴板;
  • c,剪贴内容到剪贴板,并且进入插入模式;

如果你很清楚在做什么,没必要进入可视化模式,前提是你必须知道你剪切拷贝了什么!

  • yy ,拷贝当前行;
  • dd,剪切当前行;
  • cc,剪切当前行并且进入插入模式;
  • D,剪切当前行到行尾;
  • Y,拷贝当前行,同yy;
  • C, 剪切当前行到行尾并进入插入模式;
  • x,剪切当前字符到剪贴板;
  • s,与x,类似,但是会进入插入模式;
  • p,粘贴;
  • .,这个命令很强大,意思是重复上一次的操作;

4、进阶命令

  • 文本替换,命令[range]s/from/to
    • 方式一、使用可视化模式选中一段文本,比如将这段文本中的python替换成java,选中文本之后输入:s/python/java ,回车后发现选中文本区的内容都被替换了。
    • 方式二、先用:se number命令展示出行号,然后使用指定行号的方式来替换,例如:40,100s/python/java,标识将第40行到100行中的python替换成java。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 命令历史 以:和/开头的命令都有历史纪录,可以首先键入:或/然后按上下箭头来选择某个历史命令。 启动vim 在命令...
    im蚂蚁阅读 30,963评论 3 48
  • 曾经在思科的工厂测试系统`KlemTest` (`SUSE`命令行模式)中使用`VI`/`VIM`超过2年半,现在...
    戈多在地狱阅读 5,848评论 1 13
  • 该文章转自:http://www.cnblogs.com/wangrx/p/5907013.html 一、插入命令...
    上心1997阅读 2,744评论 0 0
  • 目录(?)[-] 关于Vim 1 Vim的几种模式 启动Vim 文档操作 光标的移动 1 基本移动 2 翻屏 3 ...
    SunnyLeong阅读 12,863评论 0 32
  • 一、轮播图 1.传统轮播图: 运动的封装:(1)定时器的使用,创建定时器setInterval();每隔指定的时间...
    麦卡洛阅读 3,961评论 0 0

友情链接更多精彩内容