如何在 VIM 中保存寄存器 [关闭]

Posted

技术标签:

【中文标题】如何在 VIM 中保存寄存器 [关闭]【英文标题】:How to save registers in VIM [closed] 【发布时间】:2013-03-29 10:36:36 【问题描述】:

我是 VIM 新手,我使用命令

qa

开始记录寄存器a中的操作和以下命令

q

停止保存。以及下面的命令来使用a中的操作:

@a

但问题是,当我关闭 VIM 时,所有这些寄存器都被删除了。有什么方法可以保存这些操作并在以后的其他 VIM 会话中使用?

【问题讨论】:

【参考方案1】:

如果你不在兼容模式下运行 Vim(只有受虐狂才会在兼容模式下运行 Vim),命名寄存器 "a"z 会在会话中被记住。

你是否在没有~/.vimrc 的情况下运行 Vim? :set viminfo 的输出是什么? :set compatible?(带问号)?

【讨论】:

那么……出了什么问题? 我脸上没有~/.vimrc 创建一个空白的~/.vimrc 应该足以让它在“不兼容”模式下工作,并在会话中记住您的寄存器。 我不认为它是兼容模式!我认为 vim 在您保存/关闭文件之前不会存储宏!【参考方案2】:

您可以在 .vimrc 中创建一个 map

map <F2> [your macro]

如果宏已经在寄存器'a',你也可以使用它,也就是说,你可以在插入模式下输入&lt;C-r&gt;a,而不是重复[your macro]

你也可以试试marvim。

【讨论】:

以上是关于如何在 VIM 中保存寄存器 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

保存 vim 宏

如何将 Vim 剪贴板里面的东西粘贴到 Vim 之外的地方

vim中如何拷贝全文到win10的其他程序

Vim 基本命令入门-如何使用Vi/Vim文本编辑器

在vim中,如何使用setreg将回车添加到寄存器中?

Vim:如何将视觉块移动到寄存器?