oeasy教您玩转vim - 37 - # 删除字符
通过十进制的 ascii 值输入字符
在输入模式下
输入ctrl+v
然后再输入 065
通过十六进制的 unicode
在输入模式下
输入ctrl+v
然后再输入
u2642
就可以通过uncode
编码输入字符通过二合字符的方式插入
在输入模式下
输入ctrl+k
输入
Co
可以得到©
输入 13 可以得到 ⅓
:digraphs
查看二合字符列表寄存器计算
在插入状态下
输入ctrl+r
输入
=3+3
(注意要有=
)得到结果 6
我们掌握了在 vi 中插入字符的各种方法
如何 vim 可以删除字符吗?🤔
删除字符
我们应该如何删除字符呢?
如果是插入状态下del、BackSpace就可以删除了
那假如我不想切换到插入模式,我想在普通模式下就直接删除呢?
:h delete
找到在change.txt
里面有个delete
从默认的帮助位置,向上翻,翻到头😡

这个命令叫做
x
我理解就是
execute
处死当前字符😱我们先在终端里面
ls -lah > 1.txt
然后
vi 1.txt
删除当前 x
在正常状态下,使用x,删除当前字符
效果和 插入模式下BackSpace一样
尽量用x而不用BackSpace,因为:
体会左右无名指,他会给你带来药师的灵感
用x手指不离开键盘核心区
正常模式移动迅速
如果想要删除多个字符的话
就在前面加上数字
比如
10x
就是删除10
个字符对应帮助中的
[count]
而且删除了的字符,会放到寄存器
""
中可以使用
:reg
查看寄存器

退格删除 X
帮助手册里,在
x
后面还有个X
X
的意思是向前退格
使用
h X
查询手册

最新删除的字符仍然放在
""
寄存器里面其实就像BackSpace效果一样
只不过在摁像x顺手了之后,像Shift+x也很方便
而且前后都能删
下面这个就更厉害了
退格删词
搜索插入模式下的CTRL+w
:h i_CTRL-w
i_CTRL-w
的:h
是查询帮助查询谁的帮助呢?
i_CTRL-w
什么意思呢?i
代表insert插入模式CTRL-w
代表CTRL+w要注意小写
w

具体操作
注意模式是插入模式

CTRL+w之后

再CTRL+w之后

再CTRL+w之后

彻底删到头儿了
可以切回到正常模式试试
db
u回来
再试试
d^
两行连在一起

想要把两行
Join
连接在一起?我们原来用的是插入模式下的BackSpace
现在试试J(大写J)
这是一个正常模式下的命令
然后下一行的缩进消失
和上一行之间有个空格
光标在上一行的任何位置
命令模式下按下J(大写J)
下一行和上一行连接在一起
总结
以前知道可以在插入状态下使用del、BackSpace进行删除
现在知道了默认状态下使用通过
x
删除字符可以用
:reg
查看寄存器状态如
10x
可以在
x
前面使用[count]
进行翻倍删除的字符存储在
""
寄存器中默认状态可以使用
X
退格删除的字符也在
""
寄存器中我们掌握了在 vi 中删除字符的各种方法
还有没有更快速删除字符的方法呢?🤔
下次再说 *
[Github地址] (https://github.com/overmind1980/vimtutorial)
[Gitee地址] (https://gitee.com/overmind1980/vimtutorial)
[蓝桥实验楼 邀请码FJWYIMGB] (https://www.lanqiao.cn/courses/2840)