oeasy教您玩轉vim - 47 - # 使用標記
使用標記
回憶上節(jié)課內容??
有了這個
range
、address
我們可以做很多事情跳轉
:44
復制和剪切
1,3d
3,$y
%d o
配合搜索
/oeasy/,$y
5;/oeasy/d
其實還有一種
address
是
mark
標記還記得
mark
標記 是什么意思???
查看手冊??
:h mark
可以查看相應的細節(jié)

我們可以使用m來定義一個標記
比如我們在第
3
行ma我們就在 第
3
行 標記了一個mark
叫做a
這個標記能看見么?
查看標記
我們用
:marks
就可以看到里面有了一個新
mark
名字叫做
a
注意這個
a
包括行、列坐標
還有具體文本

查看具體標記
:marks abc
查看具體abc這三個mark

跳轉到引用
ma
定義了一個名字叫
a
的mark
'a
可以將光標從任意位置跳轉到 標記
a
注意
單引號是跳轉到標記
寄存器是放在后面的
這個也可以配合行命令來操作

'ay
就是把a
標記那行,放入默認寄存器可以用
:reg
查看'a,'b
就是把從a
標記那行,到b
標記那行'a,'b
相當于3,5
是 {range}如果我想使用標記
也想使用寄存器怎么辦?
單雙引號
:'a,'by o
'a,'b
是 {range}y
是 yank復制o
是制定的寄存器

如下是寄存器情況

^J
是換行的標記
操控marks

marks
不可見,但是可以存儲文件信息小寫字母
ma
用于當前文件
內部
大寫字母
mA
可以
跨文件
定義marks
0-9
的數字標記可以預先放到
~/.viminfo
的配置文件中可以查看指定的標記
:marks a
也可以刪除標記
:delm(arks) a
甚至清空所有標記,
:delm(arks)!
常用標記
'[
上一次修改或復制的第一行或第一個字符']
? ?上一次修改或復制的最后一行或最后一個字符'<
? ?上一次在可視模式下選取的第一行或第一個字符'>
上一次在可視模式下選取的最后一行或最后一個字符''
? ?上一次跳轉之前的光標位置'"
? ?上一次關閉當前緩沖區(qū)時的光標位置'^
? ?上一次插入字符后的光標位置'.
? ? 上一次修改文本后的光標位置'(
? ?當前句子的開頭')
? ?當前句子的結尾'{
? ?當前段落的開頭'}
? ?當前段落的結尾
總結
我們這次研究了
mark
的定義和使用mb
定義'b
跳轉可以對
marks
查詢:delm(arks)!
刪除三種
marks
小寫 本文件內
大寫 跨文件
數字 配置文件中
可以在命令行中,使用標記
'a,'by
從標記a的行復制到標記b的行'a,'bt.
把從a到b的行復制到當前位置'a,'bmG
把從a到b的行移動到文檔最后命令行模式可真是太方便了!
可是,你知道嗎?
命令行模式來自于ed
本是當時的無奈之舉?
怎么回事???
下次再說 *
[Github地址] (https://github.com/overmind1980/oeasyvim)
[Gitee地址] (https://gitee.com/overmind1980/oeasyvim)
[藍橋實驗樓 邀請碼FJWYIMGB] (https://www.lanqiao.cn/courses/2840)