如何在 vim 中为寄存器指定任意名称

如何在 vim 中为寄存器指定任意名称

有没有可能的方法为 vim 中的寄存器指定任意名称。我可以在粘贴时使用“[az]p”。但是,我想知道,是否有任何方法可以为寄存器使用任意名称。例如,“foop”,其中寄存器的名称是 foo

答案1

不,但您可以将任何寄存器内容复制到 Vim 变量,然后将它们用作“虚拟寄存器”。

" Copy the default register.
:let foo = @"

" Use it; from normal mode: "=foo<CR>p
:put =foo

答案2

不,你不能这样做寄存器。它与 vi 兼容,这使得寄存器使用单个字符(否则,命令语法将是不同的)。根据文档:

There are nine types of registers:          *registers* *E354*
1. The unnamed register ""
2. 10 numbered registers "0 to "9
3. The small delete register "-
4. 26 named registers "a to "z or "A to "Z
5. four read-only registers ":, "., "% and "#
6. the expression register "=
7. The selection and drop registers "*, "+ and "~ 
8. The black hole register "_
9. Last search pattern register "/

如果您想将文本块保存在名称较长的内容中,您可以研究以下功能:

缩写用于插入模式、替换模式和命令行模式。如果您输入缩写词,则会将其替换为其代表的词。这可以用来节省经常使用的长单词的输入。您可以使用它自动纠正明显的拼写错误。

键映射用于更改键入的键的含义。最常见的用途是为功能键定义序列命令。

相关内容