Vim 范围控制详解

回忆上节课内容🤔

图片描述

查看手册📕

图片描述

  • :h range 可以查看相应的细节

范围定义

  • {number},比如1,4,7等具体数字
    • :3 就是去第3
  • . 当前行
    • 1,.从第1行到当前行
  • $ 最后一行
    • .,$从当前行到最后1行
    • 1,$从第1行到最后1行
    • :1,$d
  • % 所有行
    • 相当于1,$
    • :%d

匹配相关的范围

  • /{pattern}[/] 向下查找到的匹配{pattern}的那行
  • 比如下图中,光标在第1行
  • :1,/asdf.*/y就会把从第1行到asdf行的内容复制进入剪切板

图片描述

  • ?就是向上搜索
  • 如果光标在第7行
  • :?asdf?,3d
    • 就是向上搜索到asdf的匹配行也就是第2行
    • 删除的就是2-3行

例子展示

图片描述

  • .+3
    • 光标之下 3
  • /that/+1
    • 向下找到匹配/that/的那行的下 1
  • .,$
    • 从头到尾相当于%
  • 0;/oeasy/
    • 从第 1 行往后找到的第一个 oeasy,包括第一行
  • 1;/oeasy/
    • 从第 1 行,开始往后找的第一个 oeasy,不包括第一行
  • 我们经常用到/?,
  • 什么才是正确的输入方法呢?

小细节

  • 输入/
    • 右手小指往下点一下
    • 注意这个时候右手的食指还在j的凸起上
    • 只挪动小指
  • ,
    • 右手中指往下点一下
    • 注意这个时候右手的食指还在j的凸起上
    • 只挪动中指
    • 保持基本手型基本架子
    • 坐姿或站姿保证尾闾中正
    • 调整呼吸
  • ?
    • 左手小指按下Shift
    • 右手小指按下/
  • :
    • 左手小指按下Shift
    • 右手小指按下;
  • 这种左右配合感觉非常美妙
    • Shift 尽量都左右配合
  • 以后可以强制练习一下
  • 比如http://oeasy.org
    • :用小指
    • /也用小指的,左右配合
    • .用的是无名指
    • 无名指也叫药师指
    • 感觉多用的话可以提高灵感

总结

  • 有了这个rangeaddress我们可以做很多事情
    • 跳转:44
  • 复制和剪切
    • 1,3d
    • 3,$y
    • %d o
  • 配合搜索
    • /oeasy/,$y
    • 5;/oeasy/d
  • 其实还有一种address
    • mark 标记
  • 还记得 mark标记 是什么意思?🤔
  • 下次再说 👋

教程来源于Github,感谢overmind1980大佬的无私奉献,致敬!

技术教程推荐

TypeScript开发实战 -〔梁宵〕

爱上跑步 -〔钱亮〕

跟着高手学复盘 -〔张鹏〕

性能优化高手课 -〔尉刚强〕

Redis源码剖析与实战 -〔蒋德钧〕

快手 · 移动端音视频开发实战 -〔展晓凯〕

Serverless进阶实战课 -〔静远〕

云计算的必修小课 -〔吕蕴偲〕

云原生架构与GitOps实战 -〔王炜〕