古之立大事者,不惟有超世之才,亦必有坚忍不拔之志。这篇文章主要讲述oeasy教您玩转vim - 47 - # 使用标记相关的知识,希望能为你提供帮助。
使用标记
回忆上节课内容????
- 有了这个
range
、address
我们可以做很多事情- 跳转
:44
- 跳转
- 复制和剪切
1,3d
3,$y
%d o
- 配合搜索
/oeasy/,$y
5; /oeasy/d
- 其实还有一种
address
- 是
mark
标记
- 是
- 还记得
mark
标记 是什么意思?????
:h mark
可以查看相应的细节
文章图片
- 我们可以使用< kbd> m< /kbd> 来定义一个标记
- 比如我们在第
3
行 < kbd> m< /kbd> < kbd> a< /kbd> - 我们就在 第
3
行 标记了一个mark
叫做a
- 这个标记能看见么?
- 我们用
:marks
- 就可以看到里面有了一个新
mark
- 名字叫做
a
- 就可以看到里面有了一个新
- 注意这个
a
包括- 行、列坐标
- 还有具体文本
文章图片
查看具体标记
:marks abc
- 查看具体abc这三个mark
文章图片
跳转到引用
- <
kbd>
m<
/kbd>
<
kbd>
a<
/kbd>
- 定义了一个名字叫
a
的mark
- 定义了一个名字叫
- <
kbd>
\'<
/kbd>
<
kbd>
a<
/kbd>
- 可以将光标从任意位置跳转到 标记
a
- 可以将光标从任意位置跳转到 标记
- 注意
- 单引号是跳转到标记
- 寄存器是放在后面的
- 这个也可以配合行命令来操作
文章图片
\'ay
就是把a
标记那行,放入默认寄存器- 可以用
:reg
查看 \'a,\'b
就是把从a
标记那行,到b
标记那行\'a,\'b
相当于3,5
是 {range}
- 如果我想使用标记
- 也想使用寄存器怎么办?
:\'a,\'by o
\'a,\'b
是 {range}y
是 yank复制o
是制定的寄存器
文章图片
- 如下是寄存器情况
文章图片
^J
是换行的标记
文章图片
marks
不可见,但是可以存储文件信息- 小写字母
ma
- 用于当前文件
内部
- 用于当前文件
- 大写字母
mA
- 可以
跨文件
定义marks
- 可以
0-9
的数字标记- 可以预先放到
~/.viminfo
的配置文件中
- 可以预先放到
- 可以查看指定的标记
:marks a
- 也可以删除标记
:delm(arks) a
- 甚至清空所有标记,
:delm(arks)!
\'[
上一次修改或复制的第一行或第一个字符\']
上一次修改或复制的最后一行或最后一个字符\'& lt;
上一次在可视模式下选取的第一行或第一个字符\'& gt;
上一次在可视模式下选取的最后一行或最后一个字符\'\'
上一次跳转之前的光标位置\'"
上一次关闭当前缓冲区时的光标位置\'^
上一次插入字符后的光标位置\'.
上一次修改文本后的光标位置\'(
当前句子的开头\')
当前句子的结尾\'{
当前段落的开头\'}
当前段落的结尾
- 我们这次研究了
mark
的定义和使用mb
定义\'b
跳转- 可以对
marks
查询 :delm(arks)!
删除
- 三种
marks
- 小写 本文件内
- 大写 跨文件
- 数字 配置文件中
- 可以在命令行中,使用标记
\'a,\'by
从标记a的行复制到标记b的行\'a,\'bt.
把从a到b的行复制到当前位置\'a,\'bmG
把从a到b的行移动到文档最后
- 命令行模式可真是太方便了!
- 可是,你知道吗?
- 命令行模式来自于ed
- 本是当时的无奈之举?
- 怎么回事?????
- 下次再说 ????
[Gitee地址] (https://gitee.com/overmind1980/oeasyvim)
[蓝桥实验楼 邀请码FJWYIMGB] (https://www.lanqiao.cn/courses/2840)
推荐阅读
- 快速定位MySQL锁等待问题
- 四千字从源码分析ConcurrentHashMap的底层原理(JDK1.8)
- MYSQL的安装
- 项管行知04--项目章程
- 手把手教你在 Vue 中使用 JSX,不怕学不会!建议收藏
- ubuntu16.04安装smokeping监控
- CentOS7.9安装配置KickStart
- mybatis-plus详细使用教程
- 查看MySQL冗余索引和未使用的索引