[Github地址] (https://github.com/overmind1980/oeasyvim)
[Gitee地址] (https://gitee.com/overmind1980/oeasyvim)
[蓝桥实验楼 邀请码FJWYIMGB] (https://www.lanqiao.cn/courses/2840)
上次了解到块可视模式
-<kbd>ctrl</kbd>+<kbd>v</kbd>
左下角<code>-- 可视 块 --</code>
然后配合<code>motion</code>
<kbd>o</kbd>切换首尾
这个块可以有四个顶点
<kbd>O</kbd>横向切换
可以在选区内进行编辑和替换
可以直接<kbd>d</kbd>、<kbd>c</kbd>、<kbd>y</kbd>
或者<kbd>D</kbd>、<kbd>C</kbd>、<kbd>Y</kbd>
也可以直接编辑
<code>:'&lt;,'&gt;d</code>
<code>:'&lt;,'&gt;s/shiyanlou/oeasy/g</code> 范围内批量替换
可以在块·可视化模式下替换
<code>:'&lt;,'&gt;s/\%Vg/graphic/g</code>
'<,'>表示范围
s表示substitute
\%V表示在块内
文本编辑终于告一段落🤔
这次来总结总结
我们现在了解到有<code>5</code>种模式
默认模式 也叫正常模式 这是基础
想要从别的模式回到正常模式
<kbd>ctrl</kbd>+<kbd>c</kbd>
<kbd>esc</kbd>
从正常模式到命令行模式
<kbd>:</kbd>
从正常模式到插入模式者
<kbd>i</kbd> 前插
<kbd>I</kbd> 最前插
<kbd>a</kbd> 后插
<kbd>A</kbd> 最后插
<kbd>o</kbd> 下面插一新行
<kbd>O</kbd> 上面插一新行
从正常模式到替换模式
<kbd>R</kbd>
从正常模式到可视模式,分成三种
<kbd>v</kbd> 字符可视
<kbd>V</kbd> 行·可视
<kbd>ctrl</kbd>+ <kbd>v</kbd> 块·可视
基本的编辑是<code>基本操作</code>+<code>基本运动</code>
常用的基本操作都是动作
小写操作的是{range}
大写操作的是行
具体命令
删除
<kbd>d</kbd>、<kbd>D</kbd>
<kbd>x</kbd>、<kbd>X</kbd>
复制
<kbd>y</kbd>
粘贴
<kbd>p</kbd>、<kbd>P</kbd>
剪切并切换到插入模式
<kbd>c</kbd>、<kbd>C</kbd>
基本运动都是方向
首行<kbd>g</kbd> <kbd>g</kbd> 、末行<kbd>G</kbd> 、第n行<kbd>n</kbd> <kbd>G</kbd>
光标运动的方式是<kbd>h</kbd> <kbd>j</kbd> <kbd>k</kbd> <kbd>l</kbd>
这些方向都可以加上<code>[count]</code>翻倍
单词运动<code>wbe</code>
<kbd>w</kbd> 是到下一个<code>word</code>的开头
<kbd>b</kbd> 是到当前<code>word</code>的开头
<kbd>e</kbd> 是到当前<code>word</code>的结尾
除了<code>word</code>之外还有<code>WORD</code>
行头行尾
<kbd>^</kbd> 是到本行第一个非空字符
<kbd>0</kbd> 是到本行第一个字符,不管是不是空格
<kbd>g</kbd><kbd>_</kbd> 是到本行最后一个非空字符
<kbd>$</kbd> 跳到本行最后一个字符,即使他是空格
行内跳跃和贴靠
向<code>前</code>跳跃是<kbd>f</kbd>
向<code>后</code>跳跃是<kbd>F</kbd>
向<code>前</code>贴靠是<kbd>t</kbd>
向<code>后</code>贴靠是<kbd>T</kbd>
全文查找
查找的话就是<kbd>/</kbd>
反向查找的话就是<kbd>?</kbd>
文本区块
<kbd>{</kbd>、<kbd>}</kbd>按段落移动
<kbd>(</kbd>、<kbd>)</kbd>按句子移动
以in为范围的操作
<kbd>c</kbd><kbd>i</kbd><kbd>w</kbd>
<kbd>d</kbd><kbd>i</kbd><kbd>t</kbd>
<kbd>y</kbd><kbd>i</kbd><kbd>b</kbd>
<kbd>d</kbd><kbd>i</kbd><kbd>"</kbd>
可以进行基本编辑
在<kbd>:</kbd>下可以运行命令
<kbd>d</kbd>、<kbd>D</kbd>、<kbd>x</kbd>、<kbd>X</kbd>
可以在前面加上<code>range</code>
<code>:3,6d</code>
可以操作文件 (读、写、编辑)
<code>:3,5w oeasy.txt</code>
<code>:1,3r oeasy.txt</code>
<code>:3,9w oeasy.txt</code>
<code>:3,9w oeasy.txt &gt;&gt;</code>
<code>:e .</code>
查找
<code>/oeasy</code>
<code>/^a.*b$</code> a开头b结束的行
<code>/\&lt;a.*b\&gt;</code> a开头b结束的单词
替换
<code>:%s/shiyanlou/oeasy/gc</code>
<code>:3,9s/\&lt;a.*b\&gt;//gc</code> 3-9行中a开头b结束的单词都删除
<code>:g/oeasy/d</code>带oeasy的都删除
可视模式的首尾切换
<kbd>o</kbd>
<kbd>O</kbd>
可以用<code>in</code>的方式制作选择范围
<code>vit</code>
<code>vi}</code>
<code>vib</code>
总共有三种可视化模式
字符可视化
行·可视化
块·可视化
可以在选区里面进行编辑操作
<kbd>d</kbd>、<kbd>c</kbd>、<kbd>y</kbd>、<kbd>p</kbd>
还可以进行替换
也可以在命令模式下对范围进行操作
<code>:r !ls -lah</code>
使用命令<code>:2,15normal I001.</code>
注意是<code>001</code>,而不是1
<kbd>ctrl</kbd>+<kbd>v</kbd>选中<code>3-5</code>行的开头字符
<kbd>g</kbd>之后<kbd>ctrl</kbd>+<kbd>a</kbd>
<code>1111</code>变成<code>1234</code>
包括5种模式
正常、插入、命令行、可视化、替换
许多编辑命令
编辑命令可以配合<code>motion</code>和<code>in</code>
文本可以进行搜索和替换
基本就这些吧!!!🧘🏻♂️
真是全面地大总结啊
可以在终端里面玩开了
<code>shell</code> 下 运行 <code>vimtutor zh</code>
看看自己多久能够通关
这是一个重大的关卡
做完了之后
我们继续向前 👋