show | version | enable_checker |
---|---|---|
step |
1.0 |
true |
-
我们大幅度地复习了整个
motion
: -
直接运动
- h j k l
-
行运动
- 首行g g
- 末行G
- 第n行n G
-
单词运动
wbe
- w 是到下一个
word
的开头 - b 是到当前
word
的开头 - e 是到当前
word
的结尾 - 除了
word
之外还有WORD
- w 是到下一个
-
行头行尾
- ^ 是到本行第一个非空字符
- 0 是到本行第一个字符,不管是不是空格
- g_ 是到本行最后一个非空字符
- $ 跳到本行最后一个字符,即使他是空格
-
行内跳跃和贴靠
- 向
前
跳跃是f - 向
后
跳跃是F - 向
前
贴靠是t - 向
后
贴靠是T
- 向
-
全文查找
- 查找的话就是 /
- 反向查找的话就是 ?
-
文本区块
- {、} 按段落移动
- (、) 按句子移动
-
这些
motion
都可以 d配合使用,完成快速删除的工作 -
过程中还可以使用
[count]
进行翻倍 -
删除的内容,放在
""
寄存器中 -
可以配合重复.
-
而且以前的一些命令可以有了新的理解
-
一些原来的操作可以有了新的写法
- D 对应的d$
- x 对应 dl
- X 对应 dh
- 体会多多运动左手无名指的快乐
-
删除的内容,放在
""
寄存器中 -
那这个东西删了
-
放在寄存器里
-
我想粘贴到别的地方
-
怎么办呢?🤔
- 粘贴的话,应该离这个删除
d
的位置不远 h d
找到剪切的帮助文件在change.txt
- 文件中的
5.copying and moving text
中 - 可以找到 p 应该就是粘贴对应的命令
- 不是
paste
p
对应的是put
放上去- 把什么放上去呢?
- 把
d
到寄存器的东西放上去
-
我们试一试
- 我们输入一行
oeasy
然后对他进行 dd - 这个时候
oeasy
这一行就进入了寄存器""
了 - 然后 p 一下,就会出现一个
oeasy
- 9 p 就会出现
9
行oeasy
- 真的可以!!!🤪
- 我们输入一行
-
但是这里面有两个 p
- 一个叫做 p 说是
after cursor
- 另一个叫做 P 说是
before cursor
- 一个叫做 p 说是
- 啥意思呢?
- 先都删除 g g d G
- 我们首先把标尺调出来
:ru
- 然后插入
1
行9
个1
- 9
- i进入插入模式
- 输入
1
- esc退回到普通模式
- o 换行回车
- 然后再插入
1
行9
个2
- 先esc进入正常模式(目的是打断输入状态)
- i进入插入模式
- 输入
2
- esc退回到普通模式
- 8.
- 把插入2这个事重复
8
次
- 把插入2这个事重复
- o换行
- esc
- 然后再尝试插入
1
行3
- 方法和上面一样
- 最后插入一行
oeasy
- 并用d d把他删除
- 也就是把他放到了
""
默认寄存器里面了
- 我们把光标移动到第
2
行 - p这个时候
- 寄存器
""
中的oeasy
会放到2222222...
的下
面
-
用u撤销刚才的操作
-
我们再试试 P,大写的这个
- 我们把光标移动到第
2
行 - P这个时候
- 寄存器
""
中的oeasy
会放到2222222...
的上
面
- 我们把光标移动到第
- 他怎么知道这是一行?
-
如果寄存器里面的不是一整行呢?🤔
-
我们先
:reg
看一下寄存器""
- 寄存器中除了
oeasy
还有个^J
意思是包括换行符 - 我们这次不用dd
- 我们用d$
motion
是$
意味着到行尾- 这样就把
oeasy
放进了寄存器""
- 看一下
:reg
^J
换行这个消失了!- p一把!
- 这个p也分大小写么?
- 把光标移动到
222222...
第5
个2
- 然后p
- 他就在第
5
个2
后面
插入寄存器内容 - u回来,还放在第
5
个2
上 - 然后P
- 他就在第
5
个2
前面
插入
- dw是删除单词
- 这里删的没有换行符
- 注意把后面的空格也删除了
- 一并放入寄存器
- wel是移动位置
- 下一个word头 到 to的t
- 下个word尾 到 to的o
- 向右一格 到空格
- p是粘贴到光标之后
- x删除当前字符
- p是在后面粘贴
- 我们这次的内容是粘贴
- 粘贴的内容是
:reg
中的内容 - 内容放在
""
寄存器中 - 如果
:reg
删除的是一整行或者多行- 那么粘贴的时候就在当前行上面或者下面粘贴
- 如果
:reg
删除的是不包括换行符- 那么粘贴的时候就在当前位置前面或者后面粘贴
- p
- 如果剪贴板里面是行
- 那么在光标下面粘贴
- 如果剪贴板里面不是行
- 那么在光标后面粘贴
- 如果剪贴板里面是行
- P
- 如果剪贴板里面是行
- 那么在光标上面粘贴
- 如果剪贴板里面不是行
- 那么在光标前面粘贴
- 如果剪贴板里面是行
- 大小写对应的是粘贴位置
- 有了删除和粘贴,我们其实可以做剪切的操作了
- 但是如果我想要复制粘贴,那应该怎么办呢?🤔
- 下次再说 👋