oeasy教您玩转vim - 9 - # 换行插入
插入新行
回忆上节课内容
- 上上次是
i
、I
在光标前面插入 又加了
a
、A
可以在光标后面插入a
是在光标后插入A
是在当前行最后插入
- 关于插入,还有什么命令吗?
- 我们继续去查阅 help
:h i
我们发现有这样一组命令
看起来的意思是
o
在- 当前行 下面 插入一个空行
- 然后切换到插入模式
O
- 在当前行 上面 插入一个空行
- 然后切换到插入模式
- 一个上面 ,一个
上方 插新行
当前绿色的光标在第6行中间
- 如果不显示行号,就输入
:set nu
- 当前模式是正常模式
- 如果不显示行号,就输入
如果我按下 o
- 就会在第 7 行插入一个新行
- 并且模式进入插入模式
按 ctrl+c
- 可以回正常模式
o、ctrl+c
- 可以反复切换
下方 插新行
- u 回到最初
- 回到第 6 行中间位置
我按下 O
- 就在第 6 行插入一个空行
- 原来的第 7 行,变成了第 6 行
- 并把模式改为输入模式
回忆以前学的切换
i、I和a、A
都可以进入插入模式- i 在光标前插入
- I 在本行最前插入
- a 在光标后插入
- A 在本行最后插入
- ctrl+ c退回到正常模式
现在又加了 o、O
- o 本行下方插入一个新行
- O 本行上方插入一个新行
再练练重复、撤销、重做
- 按几次 . 重复插入操作
- u 可以撤销
- ctrl+r 可以重做
保存并退出
用
:wq
保存并退出:w
是保存:q
是退出- 和在一起就是
:wq
- 保存并退出
- 我们可以使用
:help :wq
查看帮助
总结
- 我们这次学了两个新的东西
o
和O
o
是在当前行下方插入新行O
是在当前行上方插入新行- 这样我们就有大小写的
i
、a
、o
可以从正常模式切换到输入模式了。
- 我们还把
:w
、:q
合成了:wq
- 现在基本上简单的编辑没有什么问题了
- 下一步就是提高效率,用最快的方式在屏幕上移动
- 怎么做呢?
- 我们下次再说!
oeasy教您玩转vim - 9 - # 换行插入的更多相关文章
- 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教您玩转python - 006 - # hello world
Hello World! 回忆上次内容 python3 的程序是一个 5.3M 的可执行文件 python3 里面全都是 cpu 指令 可以执行的那种指令 我们可以把指令对应的汇编找到 objdu ...
- oeasy教您玩转linux-010110内容回顾
我们来回顾一下 我们都讲了什么?
随机推荐
- 通过XML标记生成word
思路 word生成可以通过标签,也可以通过XML元素. word文档实际上是由文档对象模型描述的,因此我们能够通过对文档对象进行操作去生成word. 由于word允许我们附加XML结构(元素),如下: ...
- wpf 双屏显示问题
// 在WPF中处理双屏显示问题,通常需要确保应用程序能够识别两个显示器,并在每个显示器上正确渲染内容.以下是一个简化的示例,展示如何在WPF应用程序中设置窗口,使其跨越两个显示器: using ...
- .net Core中实现SHA加密
#region 用SHA1加密字符串 /// <summary> /// 用SHA1加密字符串 /// </summary> /// <param name=" ...
- c#笔记(3) 委托回调
委托回调是刚接触c#时最头疼的东西,老看老忘,遂整理一下现在对委托回调的理解.如有错误,请指出,感谢. 委托 C# 中的委托(Delegate)类似于 C 或 C++ 中函数的指针.委托是存有对某个方 ...
- 震惊!docker镜像还有这些知识你都知道吗
震惊!docker镜像还有这些知识你都知道吗? 镜像搜索 语法 [root@hmm docker-hello]# docker search -h Flag shorthand -h has been ...
- kettle从入门到精通 第四十二课 kettle 1对多表拆分同步
1.在有的业务场景中,会涉及一对多表拆分同步的业务场景,也就是说原表是一张表,将原表字段进行拆分放入目标库中的多张表,如下面的示例将表student_third中的数据 同步到student.teac ...
- K8S部署ECK采集日志
1. 部署nfs 1. 安装nfs #所有节点安装 yum install -y nfs-utils 在master节点创建nfs共享目录 mkdir -pv /data/kubernetes 编写配 ...
- 高并发缓存中间件Redis
https://tech.meituan.com/2020/07/01/kv-squirrel-cellar.html 美团万亿级 KV 存储架构与实践 阿里云 redis文档 https://hel ...
- Vue学习:18.Vue插槽
Vue 中的插槽(slot)是一种灵活的机制,用于在父组件中将内容传递到子组件的特定位置.它允许我们在子组件中定义可以在父组件中传递任意内容的"插槽",从而实现更灵活的组件化. 在 ...
- Java基础(二)继承剖析
继承剖析 1 若是要直接调用父类的构造方法,不调用子类的方法则需要使用的是super()关键字 Publicclass Child extends Parent { Public C ...