我已经使用 VI 和 VIM 多年(30 年或更长时间)(在 xterms 中,而不是它自己的窗口,gvim)并且我有一个巨大的 vim命令库,我使用鼠标中键作为选择给 vim。
例如,我经常会做这样的事情......
vi {many_hundreds_of_files}
paste vim commands using mouse - one paste per file.
Run Code Online (Sandbox Code Playgroud)
选择将包括许多 VIM 命令来执行诸如替换测试、格式化、移动行等等操作,并且通常以 :w 和 :next VIM 命令结尾,在选择的末尾,所以 vim 准备好让我再次粘贴到下一个文件中。这让我可以以非常复杂的方式更新大量文件,而无需特殊脚本(例如 perl 就地编辑)来执行此操作。
其中一些 vim 命令粘贴长达 200 多行(存储在我在屏幕上弹出的文本文件中,以及“全部复制”!这些对我正在重新格式化的数千个文件集进行了大量更改。但是仅适用于特定的文件集,不适用于我的日常 vim 工作。例如:批量重新格式化文本/数据文件。
问题...
在我的上一个系统补丁 (Fedora 25) 中,vim 现在将鼠标选择粘贴为文本而不是 vim 命令,我似乎无法阻止它!
它在另一个系统(Fedora 24)上仍然可以正常工作。
如果我想粘贴为文本,我在粘贴之前进入插入模式!我不希望 VIM 在不处于插入模式时自动将选择粘贴为文本。我知道这是作为一项安全功能,但对我来说这是一个主要的可用性问题。
我曾尝试从一台不这样做的机器(尤其是“kmous”terminfo 条目)上回溯对 terminfo 条目(xterm-256color)的约会。我还查看了 vim ":set mouse=" 设置(这是空的!)。我不知道是 xterm(可疑)还是 VIM 中发生了变化(可能),更改日志和 google 都没有帮助。
然而,似乎没有什么能让我保持旧的行为。