oeasy教您玩转vim - 44 - # 综合练习
综合练习
回忆上节课内容
上次我们学到了各种的替换模式
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 回车
- 然后会自动回到插入模式
- 也许你可试试如何才能让按键更少
就像用更少的杆数让高尔夫球进洞一样
总结
- 这次我们主要就是综合运用
- 很好玩的,更快速的解决问题
进行计算
ctrl+a,将具体的数字加1
- ctrl+x,将具体的数字减1
- 5ctrl+a,将具体的数字加5
一次命令模式
- ctrl+o
- 插入模式下执行一次命令,然后回到插入模式
下次我们进入新的领域
- 命令行编辑~
- 下次再说
- [Github地址] (GitHub - overmind1980/oeasyvim: 这是oeasy制作的的一套关于vim的教程 可以在 https://www.lanqiao.cn/teacher/courses/2840 做实验 邀请码FJWYIMGB 本教程从0基础开始,到精通vim配置,和高级命令。希望能让vim是你的开发更高效。)
[Gitee地址] (overmind1980/oeasyvim)
[蓝桥实验楼] (oeasy 教您零基础玩转编辑神器 Vim_Linux - 蓝桥云课)
oeasy教您玩转vim - 44 - # 综合练习的更多相关文章
- oeasy教您玩转vim - 56 - # 字符可视化模式
可视化编辑 回忆上节课内容 我们学习了关于模式匹配中使用参数 单个参数 :%s/<h2>\(.*\)</h2>/ - \1/g 多个参数 :%s/<img src=\ ...
- oeasy教您玩转vim - 57 - # 行可视化
可视化编辑 回忆上节课内容 上次我们了解到可视模式 其实可视化对应三种子模式 字符可视模式 v 行可视模式 大写V 块可视模式ctrl+v 我们先来了解字符可视化模式 快捷键 v 可配合各种mot ...
- oeasy教您玩转vim - 53 - # 批量替换
查找细节 回忆上节课内容 我们温习了关于搜索的相关内容 /正向,?反向 n保持方向,N改变方向 可以设置 是否忽略大写小写 是否从头开始查找 是否高亮显示 还有一些正则表达式的使用方法 行头行尾 ^$ ...
- oeasy教您玩转linux010203显示logo
我们来回顾一下 上一部分我们都讲了什么?
- oeasy 教您玩转linux010101查看内核uname
linux([?l?n?ks]) 是什么????? 咱们这次讲点什么呢?这次咱们讲讲这个 linux([?l?n?ks]),什么是 linux([?l?n?ks])呢?这linux([?l?n?ks] ...
- oeasy教您玩转linux010202软件包管理apt
顾一下 上一部分我们都讲了什么?
- oeasy教您玩转linux010201持续输出yes
我们来回顾一下 上一部分我们都讲了什么?
- oeasy教您玩转linux010108到底哪个which
到底哪个which 回忆上次内容 我们上次讲了查找命令位置whereis 我想找到whereis的位置怎么办?
- oeasy教您玩转linux010107那啥在哪 whereis
回忆上次内容 上次讲了 ls 的参数 (arguement) 和选项 (option) 的设置. 现在我们要制作这样一个列表:
- oeasy教您玩转python - 006 - # hello world
Hello World! 回忆上次内容 python3 的程序是一个 5.3M 的可执行文件 python3 里面全都是 cpu 指令 可以执行的那种指令 我们可以把指令对应的汇编找到 objdu ...
随机推荐
- RestTemplate 介绍和用法
RestTemplate 简介 RestTemplate 是从 Spring3.0 开始支持的一个 HTTP 请求工具,它提供了常见的REST请求方案的模版,例如 GET 请求.POST 请求.PUT ...
- 【c++】const 限定符
#include <iostream> int main() { using namespace std; cout << "Hello World!\n" ...
- linux扩展分区
linux扩展分区 1.准备工作 系统版本:ubuntu20.04 工具:一个安装了ubuntu系统的系统U盘或者ubuntu系统制作的启动盘 2.缩小分区 要扩展某一个分区,再没有空闲空间时需要从其 ...
- C++笔记(12) 标准模板库STL
STL提供了一组表示容器.迭代器.函数.函数对象和算法的模板.STL不是面向对象的编程,而是一种不同的编程模式--泛型编程. 容器:与数组类似的单元,可以存储若干个值,存储的值的类型相同: 算法:完成 ...
- itestwork(爱测试) 一站式接口测试&敏捷测试工作站 9.0.1 发布,ui 及Bug fix
(一)itest 简介 itest work (爱测试) 一站式工作站让测试变得简单.敏捷.itest work 包含极简的任务管理,测试管理,缺陷管理,测试环境管理,接口测试,接口Mock 6合1 ...
- uniapp 输入有值后按钮变色
我们在开发中难免会遇到一些登录注册输入框中的值为空时,按钮的状态变成为不可点击的状态,当输入框有值后就把按钮变为可点击的状态 代码部分: <input placeholder="请输入 ...
- 安装vmware17和下载红帽镜像
安装vmware17 一.下载 1.访问vmware官网 (也可以使用这个链接https://www.vmware.com/products/workstation-pro/workstation-p ...
- Pycharm import faker 和 colorlog提示“No module name faker/colorlog”
问题: Pycharm import faker / colorlog,下划线爆红,提示"No module name faker/colorlog" 排查,检查pycharm 该 ...
- 【主流技术】聊一聊消息队列 RocketMQ 的基本结构与概念
目录 前言 一.初识 RocketMQ 1.1基本模型 二.基本概念 2.1Producer 2.2Consumer 2.3Topic 2.4Tag 2.5Message 2.6Broker 2.7P ...
- 【译】了解17.10 GA 中最新的 Git 工具特性
我们相信提高开发和团队协作的生产力可以帮助您产生更好的软件解决方案.这就是为什么 Visual Studio 版本控制团队发布了新特性,简化了内部循环和代码审查体验.您将获得 AI 支持编写提交消息. ...