如何将抽取的文本移动到vim中的特定寄存器中?

时间:2011-04-07 19:11:59

标签: vim

在vim中进行编辑时,我常常会在我要删除文本时发现自己已经停止了,而且我注意到之前被拉出的文本对于下一次操作会变得很方便。

那么 - 如何将已经被扯过的文本移动到特定的寄存器中(例如在 a 下)?

4 个答案:

答案 0 :(得分:6)

将注册0移至注册a

:let @a=@0

答案 1 :(得分:3)

您可以使用以下内容:

noremap <leader>ma :let @a=@<CR>

现在,当您在正常模式下按\ma时,您最后拨打的文字将会注册“a”。
注意:假设领导者是'\'

答案 2 :(得分:2)

如果您只需要很短的时间,也可以使用0寄存器。来自:help quote_number(正好在:help registers下方):

2. Numbered registers "0 to "9         

Vim fills these registers with text from yank and delete commands.
   Numbered register 0 contains the text from the most recent yank command, 
unless the command specified another register with ["x].
     

(link to the rest)

答案 3 :(得分:2)

或者,您可以使用"_d将文本删除到devnull注册表(实际上它称为黑洞注册表)。见:help quote_。无需移动寄存器,您之前提取的文本仍可用p