在vim中进行编辑时,我常常会在我要删除文本时发现自己已经停止了,而且我注意到之前被拉出的文本对于下一次操作会变得很方便。
那么 - 如何将已经被扯过的文本移动到特定的寄存器中(例如在 a 下)?
答案 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].
答案 3 :(得分:2)
或者,您可以使用"_d
将文本删除到devnull注册表(实际上它称为黑洞注册表)。见:help quote_
。无需移动寄存器,您之前提取的文本仍可用p
。