如何在 Vim 编辑器中添加书签
Mark 是 Vim 编辑器中的书签功能,您可以在其中为特定行添加书签,然后快速返回。如果您经常使用 Vim 编辑器,这种使用书签的简单技术将大大提高您的工作效率。
Vim 中有两种类型的书签——本地和全局。
1. Vim 本地书签
在单个文件中,当您想要转到特定位置或行时,您可以使用本地标记。如果书签名称是小写字母,则为本地标记。
如何在 Vi 中创建书签?
Type m{macro-name}。宏名称是指书签名称的字母表。
如果您键入“ma”,它将在当前位置的当前行上创建名为“a”的书签。在以下示例中,键入 ma 已在突出显示光标的确切位置创建了一个书签。
ma
图 1:使用 ma 在 Vim 中为当前位置添加书签
Vi中访问书签行的两种方法
方法 1:`{宏名称}
反引号后跟宏名称。移动到确切的书签位置。这将跳转到之前添加书签的行内的确切字符位置。
例如,如果您输入 `a ,它将带您到名为“a”的书签。即它会带你到上面图1中光标突出的地方。
`a
方法 2: '{宏名称}
单引号后跟宏名称。移动到书签行的开头。
例如,如果您键入 'a ,它将带您到具有名称为“a”的书签的行的开头。它将带您到上面图 1 中“CustomLog logs/access_log组合”行的开头。
'a
2. Vim 全局书签
当你打开多个文件时,如果你想在任何一个打开的文件中移动到特定位置,那么你可以使用 Vim 的全局标记功能。如果书签名称是大写字母,则为全局书签。
以下步骤将解释如何在编辑多个文件时使用全局书签。
- 打开多个文件:# vim /etc/passwd /etc/group
- 在编辑 /etc/passwd 文件时,转到特定行并键入 mP 以创建名为 P 的全局书签
- 在 /etc/passwd 文件中输入 :n 跳转到 vim 中的 /etc/group 文件。
- 编辑 /etc/group 文件时,转到特定行并键入 mG 以创建名为 G 的全局书签
- 输入`P(反引号后跟大写P),这将带您到/etc/passwd 中的书签
- 在 /etc/passwd 中,输入 `G(反引号后跟大写的 G),这会将您带到 /etc/group 中的书签。
3. 如何显示所有书签
如果您创建了多个书签但不记得它们,您可以通过键入 :marks 轻松获取所有书签的列表,如下所示。
:marks
mark line col file/text
a 15 9 ypserver 192.168.1.119
b 11 18 domain TIAMO
G 56 0 group
P 45 0 passwd
这表明我已经创建了以下书签:
- a – 第 15 行和第 9 列名称为“a”的本地书签。这也给出了第 15 行的文本。这是来自当前打开的文件,即 yp.conf
- b – 第 11 行和第 18 列名称为“b”的本地书签。这也给出了第 18 行的文本。这是来自当前打开的文件,即 yp.conf
- G – 全局书签,名称为“G”,位于“组”文件的第 56 行和第 0 列
- P – 全局书签,名称为“P”,位于“passwd”文件的第 45 行和第 0 列。
除了上面的书签,任何时候你在 Vim 中输入 :marks ,你可能会得到以下几行。这些标记 '(单引号)、”(双引号)、[、]、^ 和 . (period) 默认由 vim 创建,您无法控制它。
:marks
mark line col file/text
' 8 12 #^IUse broadcast on the local net for domain NISDOMAIN
" 1 0 # /etc/yp.conf - ypbind configuration file
[ 11 0 domain TIAMO
] 11 19 domain TIAMO
^ 11 19 domain TIAMO
. 11 18 domain TIAMO
例如,标记 (句号) 表示最后进行更改的位置。所以,你总是可以做`。(反引号后跟句点),这将带您到上次更改完成的位置。
4. Vim 书签命令快速总结
- ma – 创建一个名为 a 的书签
- `a – 跳转到书签 a 的确切位置(行和列)
- 'a – 跳转到书签 a 行的开头
- :marks – 显示所有书签
- :marks a – 显示名为 a 的书签的详细信息
`.– 跳转到执行最后更改的确切位置(行和列) - ‘. – 跳转到最后一次更改所在行的开头
- 点赞
- 收藏
- 关注作者
评论(0)