oeasy教您玩转vim - 19 - 使用标记
使用标记
回忆上节课内容🤔
跳转到行号
200G
设置行号选项
显示行号
:se nu
显示相对行号
:se rnu
如何用命令行跳转
:100
但是我如何有的时候记不住到底跳到多少行
能否做个标记留个记号呢?
跳回原地
如果我使用G跳转到最终行
然后我想要回到跳转之前的位置
不只是G对应的跳转包
还括行跳转、搜索等
那这个跳前位置在哪里呢?
我们可以使用 `` 回到跳转之前的位置
` 位置在键盘 1 前面
这个字符就是我们的反引号
叫做
open single quote chararcter
可以试着玩玩
跳过来再跳过去
反复横跳
但是这个只能在两个位置之间来回来去的跳

我想要跳到更久之前的位置
怎么办呢?
跳转列表
所有曾经的跳转都在跳转列表里面
比如我们从
第一行跳到
33
行然后再跳到以 ^The 开头的行

CTRL-O 跳转到
Older position
上一次
上一次的上一次
CTRL-I 跳转到
下一次
下一次的下一次

这里跳转的位置我们使用了
标记 mark
查询帮助

使用
h(elp) m(arks)
查询关于标记的帮助可以使用
ma
来做一个标记a
然后可以用
'a
或者 `a 进行跳转
进行定义并进行试验
:se nu
设置显示行号使用
ma
把当前光标的位置做一个标记a
然后G跳转到最终行
这个标记你在文档里面看不见
:marks
来查看所有标记注意这个 mark 都是包含行和列的具体位置的
a 对应795行 6列

其他标记
ma
是我们自己定义的a
标记其他的标记是什么意思呢?
我们可以用
:h ''
来看''
的含义

更多标记
''
是上次跳转操作光标所在的位置'"
是上次退出当前文件的位置'[
是上次编辑(删除修改等)的开始位置']
是上次编辑(删除修改等)的结束位置'.
是上次编辑(删除修改等)的最后的操作位置

那么,这个大写、小写、数字的标记有什么不同呢?
标记细节

小写
a-z
可以标记本文件内部的位置坐标大写
A-Z
可以跨文件标记位置坐标数字
0-9
在配置文件.viminfo
中,可以保留标记我们还可以用
:delm(arks) a
来删除a
标记
总结
定义标记 a
ma
删除标记 a
:delm a
跳转到标记 a
'a
`a 跳到 a 对应的行和列
'a 跳到 a 对应的行
查看所有标记
:marks
各种标记类型
''
是上次跳转操作光标所在的位置'"
是上次退出当前文件的位置'[
是上次编辑(删除修改等)的开始位置']
是上次编辑(删除修改等)的结束位置小写
a-z
可以标记本文件内部的位置坐标大写
A-Z
可以跨文件标记位置坐标数字
0-9
在配置文件~/.viminfo
中,可以保留标记每次都需要ctrl+g显示坐标
能否一直显示坐标呢?
下次再说 *