设置VIM书签

ale*_*lex 18 vi vim bookmarks

如何在vim中设置书签?我想给一些行和函数添加书签.如何在代码上创建书签?我的代码是用C编写的.

Net*_*ker 29

如果键入ma,它将在当前行的名称上创建当前行的书签a.

例如,键入ma已在突出显示光标的确切位置创建了书签

在此输入图像描述

要访问Vi内部的书签行,您可以使用 - {macro-name}

反引号后跟宏名称.移至确切的书签位置.这将跳转到之前添加书签的行中的确切字符位置.

例如,如果键入"a",则会转到名为"a"的书签.即它将带您到上图1中光标高亮的地方.

`a
Run Code Online (Sandbox Code Playgroud)

资源

  • `'a`(单引号,a)也有效. (6认同)
  • 看起来反引号指向该行的确切位置,而单引号指向该行的开头。 (2认同)

小智 14

要跳转到某个标记,请输入撇号 (') 或反引号 (`),后跟一个字母。使用撇号跳转到包含标记的行的开头,而反引号则跳转到标记的行和列。

使用小写字母(例如a) will only work if that mark exists in the current buffer. Using an uppercase letter (for exampleA)将跳转到文件和持有标记的位置(在跳转到标记之前您不需要打开文件)。

  • 每个文件都可以有标记a – 使用小写标记在文件内跳转。
  • 只有一个文件标记A - 使用大写标记在文件之间跳转。

命令说明

ma 在当前光标位置设置标记 a

'a 跳转到标记行(行中的第一个非空白字符)

`a 跳转到标记 a 的位置(行和列)

d'a从当前行到标记 a 的行删除

d`a从当前光标位置删除到标记 a 的位置

c'a将文本从当前行更改为标记行

y`a 将文本从光标拉到未命名缓冲区到标记 a 的位置

:marks 列出所有当前标记

:marks aB 列表标记 a, B

来自 Vim Wiki 的参考


yem*_*emu 10

大写字母可让您设置全局书签(即在所有缓冲区/选项卡中).

因此,您可以使用mA设置全局书签A,然后使用'A即使您正在编辑其他文件也可以访问该书签位置.