-2

vim脚本中的一个简单python操作:

vim.current.buffer[current] = 'new line';

这会覆盖当前的寄存器,我不希望这样做。

换句话说,我想用'new line'替换行,但保持寄存器的内容不变(寄存器被这个操作覆盖)。

我知道似乎相关的“黑洞寄存器”。但我不清楚如何将它用于脚本中的缓冲区操作。

4

1 回答 1

0

我无法在 Windows/x64 上使用 Vim 7.3.823 重现这一点,如果确实修改了寄存器,那将是 Vim 中的一个错误,应该在vim_dev 邮件列表中报告。这是我试图重现的内容:

:let @@ = 'foo'
:python import vim
:python vim.current.buffer[1] = 'new line'
:reg "
--- Registers ---
""   foo
于 2013-03-07T13:02:59.553 回答