综合练习

回忆上节课内容

  • 上次我们学到了各种的替换模式

    • r,替换当前光标的字符

      • R,进入替换模式
      • ~,改变大小写
  • 这次来个综合练习吧!
  • 我们这次要完成这样一个任务

    • 我们有的时候需要写日志

      • System.out.println("[debug]1=====");
    • 但是这些日志,如何快速插入
    • 并且自动编号呢?
    • 我们来试试

加法操作

  • 首先输入好基本内容,如上图
  • 并且在System那一行yy
  • 然后p进行粘贴
  • 然后ctrl+a
  • 将具体的数字加1
  • 这到底是为什么?

查询帮助

  • h CTRL-A查询快捷键作用

  • 然后再p进行粘贴
  • 然后3ctrl+a,将原来的1加3得到4
  • 如果是减法的话,可以用ctrl+x实现

减法操作

  • 首先是已经存在的内容,如图

  • 我希望快速添加一条 .news 的记录,其中 margin:30px;

    • 首先y2j复制3行
    • 然后G到最后一行
    • 小写p把新内容粘贴在后面
    • l向右移动到b字符
    • cw,剪切blog
    • 并把模式切换到插入模式
    • 输入newsesc
    • j,向下1行
    • f4,光标跳转到4
    • r3,光标所在字符修改为3

还是刚才的操作

  • u撤销回来
  • 在margin行的任意位置
  • 最后一步变成 10ctrl+x
  • 试一下效果
  • 查看帮助

  • ctrl+a都在Normal正常模式下做的
  • 如果是在插入模式下做
  • 什么效果呢

重复插入

  • 先来搜索一下
  • :h i_CTRL-a

  • 我们来试试

来试试

  • 打开oeasy.java

  • i进入插入模式
  • 插入 oeasy
  • ctrl+c结束插入模式
  • 这个时候寄存器".中的内容为 oeasy
  • 正常模式下把光标移动到下面位置
  • 再进入插入模式

  • 然后ctrl+a就可以把".寄存器的内容插上去了
  • 相当于插入模式下ctrl+r .
  • 也相当于正常模式下".p
  • 就是把.寄存器里面的东西粘贴上来

一次命令

  • 插入模式下有一种 一次命令模式
  • 快捷键是 ctrl+o
  • :h i_ctrl-o

  • 插入模式下,执行一次命令
  • 然后回到插入模式
  • 比如光标在如下位置,模式为插入

  • 原来的方法是

    • ctrl+c
    • 先退回到正常模式
    • d2w可以把两个单词删除
    • i并进入插入模式
  • 不止一种思路
  • 灵活多变

试试一次命令模式

  • ctrl+o

  • 执行一次正常模式命令d2w
  • 执行之后还是保持在插入模式

  • 如果想删到oeasy之前的位置就可以

    • ctrl+o
    • d/oeasy 回车
    • 然后会自动回到插入模式
  • 也许你可试试如何才能让按键更少
  • 就像用更少的杆数让高尔夫球进洞一样

总结

oeasy教您玩转vim - 44 - # 综合练习的更多相关文章

  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教您玩转linux010107那啥在哪 whereis

    回忆上次内容 上次讲了 ls 的参数 (arguement) 和选项 (option) 的设置. 现在我们要制作这样一个列表:

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

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

随机推荐

  1. 使用interface化解一场因操作系统不同导致的编译问题

    场景描述 起因: 因项目需求,需要编写一个agent, 需支持Linux和Windows操作系统. Agent里面有一个功能需要获取到服务器上所有已经被占用的端口. 实现方式:针对不同的操作系统,实现 ...

  2. 记一次Idea无法打开记录(idea升级)

    记一次Idea无法打开记录 前言,本来今天是打算升级Idea,然后体验一波的,结果升级完之后,发现无法打开idea(双击之后并没有任何打开的反应). 原因排查,打开idea所在目录,找到idea.ba ...

  3. 算法金 | 再见,PCA 主成分分析!

    ​大侠幸会,在下全网同名[算法金] 0 基础转 AI 上岸,多个算法赛 Top [日更万日,让更多人享受智能乐趣] 1. 概念:数据降维的数学方法 定义 主成分分析(PCA)是一种统计方法,通过正交变 ...

  4. C# asp.net mvc 创建虚拟目录

    使用背景: 虚拟目录(virtual directory),计算机术语,每个 Internet服务可以从多个目录中发布.通过以通用命名约定 (UNC) 名.用户名及用于访问权限的密码指定目录,可将每个 ...

  5. SQL练习之打卡记录数据统计类问题

    最近老婆的公司,关闭了OA系统中,各类打卡时间数据统计的功能,为了不麻烦老婆手算,就做了一个简单的打卡系统,方便自动统计老婆想要知道的各类数据. 做的过程中就遇到了几个还挺有意思的SQL,这里写成一篇 ...

  6. LeetCode 40. Combination Sum II 组合总和 II (C++/Java)

    题目: Given a collection of candidate numbers (candidates) and a target number (target), find all uniq ...

  7. LeetCode 208. Implement Trie (Prefix Tree) 实现 Trie (前缀树)(C++/Java)

    题目: Implement a trie with insert, search, and startsWith methods. Example: Trie trie = new Trie(); t ...

  8. centos 7 mysql8 安装和卸载

    cent os 7 安装 mysql 8--install-start官网下载MySQL的RPM源,地址:https://dev.mysql.com/downloads/repo/yum/ 下载这个项 ...

  9. Spring Boot 使用 拦截器 实现 token 验证

    Spring Boot 使用 拦截器 实现 token 验证 整体思路:1.写一个工具类封装生成.校验和解析 token 的方法:2.在注册和登录时生成 token ,生成的 token 存入 red ...

  10. 硬件开发笔记(二十):AD21导入外部下载的元器件原理图库、封装库和3D模型

    前言   在硬件设计的过程中,会遇到一些元器件,这些元器件在本地已有的库里面没有,但是可以从外部下载或者获取到对应的.  本篇就是引入TPS54331D电源芯片作为示例,详细描述整个过程.   创建T ...