范围控制

回忆上节课内容

  • 这次我们主要就是看命令行
  • 首先是选择一个 [range] 这个范围
  • 然后进行相应的操作

    • :11,30d

      • :2,7y
    • 还可以指定寄存器

      • :"a3,40y
      • :"aP
  • 甚至可以用一行就复制或者剪切内容

    • :12,30t50,12-30行复制到50行
    • :3,6m30, 3-6行移动到30行
  • 这个 [range] 还有什么说法吗?

查看手册

  • :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

    • :用小指
    • /也用小指的,左右配合
    • .用的是无名指
    • 无名指也叫药师指
    • 感觉多用的话可以提高灵感

总结

oeasy教您玩转vim - 46 - # 范围控制的更多相关文章

  1. oeasy教您玩转vim - 56 - # 字符可视化模式

    ​ 可视化编辑 回忆上节课内容 我们学习了关于模式匹配中使用参数 单个参数 :%s/<h2>\(.*\)</h2>/ - \1/g 多个参数 :%s/<img src=\ ...

  2. oeasy教您玩转vim - 57 - # 行可视化

    ​ 可视化编辑 回忆上节课内容 上次我们了解到可视模式 其实可视化对应三种子模式 字符可视模式 v 行可视模式 大写V 块可视模式ctrl+v 我们先来了解字符可视化模式 快捷键 v 可配合各种mot ...

  3. oeasy教您玩转vim - 53 - # 批量替换

    查找细节 回忆上节课内容 我们温习了关于搜索的相关内容 /正向,?反向 n保持方向,N改变方向 可以设置 是否忽略大写小写 是否从头开始查找 是否高亮显示 还有一些正则表达式的使用方法 行头行尾 ^$ ...

  4. oeasy教您玩转linux010203显示logo

    我们来回顾一下 上一部分我们都讲了什么?

  5. oeasy 教您玩转linux010101查看内核uname

    linux([?l?n?ks]) 是什么????? 咱们这次讲点什么呢?这次咱们讲讲这个 linux([?l?n?ks]),什么是 linux([?l?n?ks])呢?这linux([?l?n?ks] ...

  6. oeasy教您玩转linux010202软件包管理apt

    顾一下 上一部分我们都讲了什么?

  7. oeasy教您玩转linux010201持续输出yes

    我们来回顾一下 上一部分我们都讲了什么?

  8. oeasy教您玩转linux010108到底哪个which

    到底哪个which 回忆上次内容 我们上次讲了查找命令位置whereis 我想找到whereis的位置怎么办?

  9. oeasy教您玩转python - 006 - # hello world

    ​ Hello World! 回忆上次内容 python3 的程序是一个 5.3M 的可执行文件 python3 里面全都是 cpu 指令 可以执行的那种指令 我们可以把指令对应的汇编找到 objdu ...

  10. oeasy教您玩转linux-010110内容回顾

    我们来回顾一下 我们都讲了什么?

随机推荐

  1. EasyUI组件新增方法与事件

    以window组件为例 事件 扩展事件直接定义在options中,可以再初始化组件时定义事件,也可以使用时临时定义事件.这里是组件初始化后在添加的. 使用情景:添加,插入功能.主界面表格分别点击添加和 ...

  2. Django与前端框架协作开发实战:高效构建现代Web应用

    title: Django与前端框架协作开发实战:高效构建现代Web应用 date: 2024/5/22 20:07:47 updated: 2024/5/22 20:07:47 categories ...

  3. 【U8】快速获取u8单据的类型key值

    win10下 打开 写字板,直接搜索栏搜索写字板打开. 登录u8,找到需要的单据,以基础档案存货为例,打开存货档案界面. 按住键盘ctrl+shift,鼠标左键单据单据上的某个按钮,以新增按钮为例,单 ...

  4. Django模型层的QuerySet对象

    def index(request): # 查询数据,返回QuerySet对象books books=Book.objects.filter(id__gte=1) # 打印books, 是一个Quer ...

  5. .Net6 winform 程序使用依赖注入

    .net Blazor webassembly 和 webAPI 内建支持依赖注入, Winform 和 Console 应用虽然不带有依赖注入功能, 但增加依赖注入也很简单. 本文将示例如何为 Wi ...

  6. QGIS开发笔记(三):Windows安装版二次开发环境搭建(下):将QGis融入QtDemo,添加QGis并加载tif遥感图的Demo

    前言   使用QGis的目的是进行二次开发,或者说是融入我们的应用(无人车.无人船.无人机),本片描述搭建QGis二次基础开发环境,由于实在是太长了,进行了分篇: 上半部分:主要是安装好后,使用QtC ...

  7. 编译安装mysql5.7.20

    curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo && \ ...

  8. 基于React的SSG静态站点渲染方案

    基于React的SSG静态站点渲染方案 静态站点生成SSG - Static Site Generation是一种在构建时生成静态HTML等文件资源的方法,其可以完全不需要服务端的运行,通过预先生成静 ...

  9. python-使用pyecharts绘制各省份985学校数量图

    1.环境 代码运行环境:python3.7 相关的库:pyecharts 1.7.1 代码编辑器:visual studio code 2.目的 通过使用pyecharts库,来绘制全国各省985高校 ...

  10. Unity 3D 的NEW (堆内存)

    用容器装 在AWEKE NEW 运行时NEW 会导致分配内存时界面卡住, new class 的时候 才刷新程序帧 AWEKE 是程序启动时还没走完第一帧的开头执行 AWEKE 里面的代码 常量也在A ...