我们怎样才能找回最后一个被删除的单词
Posted
技术标签:
【中文标题】我们怎样才能找回最后一个被删除的单词【英文标题】:How can we retrieve the last word deleted 【发布时间】:2011-01-05 05:30:04 【问题描述】:是否存在用于删除最后一个单词的寄存器、选项... (dw
)?
假设我有这一行:
word_1, word_2, word_3
我将光标放在 word_2 的 w 和 dw
上,我得到:
word_1, , word_3
所以我按xx
删除,
后跟一个空格。
我不能使用p
或P
粘贴word_2,因为它包含一个空格。
我知道我可以使用寄存器将word_2
复制到其中并使用"
粘贴word_2。
谢谢
==============================================
编辑
在谷歌搜索时
delete register vim
我发现了这个有趣的相关问题: In vim is there a way to delete without putting text in the register?
【问题讨论】:
【参考方案1】:只有一个寄存器保存删除的数据在一行内:""
(当然还有"-
,但在这里用处不大因为它是"" 在这种情况下)。 [后面添加的斜体文字]
这绝对不是万能的解决方案,但我已将x
重新映射为“无处删除”:
:map x "_d
:map xx "_dd
这样d
删除删除寄存器,x
这样做但不会乱扔删除寄存器,这样我就可以保持有价值的删除信息完好无损。
所以在你的情况下我会输入:dw
2x<Right>
(或xf<Space>
)然后p
【讨论】:
【参考方案2】:对于一行内的小删除,例如删除一个单词或使用x
删除单个字符,寄存器中不会存储多级历史记录。
对于较大的删除(一行或更多,或一些特殊的动作推荐),最后九个删除的项目会自动存储在寄存器 1 到 9 中。因此,如果您执行三个删除,您可以粘贴第一个(第三个)中的文本历史记录中的项目)与"3p
。
有关这些寄存器的官方文档,另请参阅:help quote_number
。
【讨论】:
非常感谢。我正在寻找每个可用寄存器的描述。以上是关于我们怎样才能找回最后一个被删除的单词的主要内容,如果未能解决你的问题,请参考以下文章