范围控制

回忆上节课内容

  • 这次我们主要就是看命令行
  • 首先是选择一个 [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. PasteSpider之appsettings.json中的Serilog的配置,分流不同日志层级的信息!

    在实际使用Serilog中,我们通常会有不一样的需求,常见的比如 1.按照等级,高级哪个等级的才记录 2.记录文件每个多大,超过的划分到下一个文件中 3.不同等级的记录到不同的位置中 4.按照不一样的 ...

  2. go 通过指针修改结构体小写字段的值

    package main import ( "fmt" "unsafe" ) type W struct { b int32 c int64 } func ma ...

  3. 【Effective C++】设计与声明——reference篇

    以pass-by-reference-to-const替换pass-by-value 缺省情况下C++以by value方式传递对象至(或来自)函数.除非你另外指定,否则函数参数都是以实际实参的复件( ...

  4. MYSQL 移机重装步骤(windows11)

      MYSQL 移机重装步骤(windows11)   目的:已有电脑 A,D盘安装有mysql(安装方式为免安装) , 准备在另一台电脑B上,复制安装电脑A上的mysql(8.0.23版本) . 要 ...

  5. Matlab打印运行进度

      在运行matlab程序的过程中,有时候需要实时地掌握程序运行的进度,尤其对于一些耗时较长的循环操作,能够及时地输出运行进度,显得非常有必要.   打印进度条的实现方式就是不断地退格.输出.   退 ...

  6. 【WPF】Dispatcher 与消息循环

    这一期的话题有点深奥,不过按照老周一向的作风,尽量讲一些人鬼都能懂的知识. 咱们先来整个小活开开胃,这个小活其实老周在 N 年前写过水文的,常阅读老周水文的伙伴可能还记得.通常,咱们按照正常思路构建的 ...

  7. macbookrpro使用体验

    前言 之前用的电脑是拯救者y7000 2020,用了四五年,年前就有换电脑的打算.计划就是买一个苹果电脑,在查看了挺多电脑,多方面对比后,最终还是买了Macbook pro. 我买的笔记本的配置如下: ...

  8. 夜莺监控 V7 第二个 beta 版本发布,内置集成故障自愈能力,简化部署

    经过一个半月的打磨改进,夜莺监控 V7 第二个 beta 版本发布了,本次发布的主要亮点是内置集成故障自愈能力,简化架构,同时做了其他 19 项改进.一些重要的改进如下: feat: 集成故障自愈的能 ...

  9. Vue学习:17.组件通信案例-记事本

    通过上一节的学习,我们了解并掌握了组件通信的定义及一般使用.那么接下来,我们将之前练习过的案例使用组件化思想来实现一下吧. 实例:记事本(组件化) 实现功能 运用组件化思想,实现Vue学习:3.V标签 ...

  10. work11

    1,简述String类中的equals方法与Object类中的equals方法的不同点. /* Object 类 1,它是所有类的一个根类 2,其他类默认继承Object类 常用方法: 1,toStr ...