所以...我正在使用 Vim(在终端中,而不是任何其他 gui;每当 Vim 单独使用时,假设它是终端 vim)。
Vim 很不错,实际上我并不觉得学习曲线太糟糕。不过,我的效率比使用普通文本编辑器要低一些,这主要是由于在正常模式之间切换的行为。
但 vim 有一点对我来说是致命的。通常,当我在终端中按 Ctrl+Shift+C 时,它会将我突出显示的文本复制到窗口管理器剪贴板,然后我可以将其粘贴。 Ctrl+C 和 Ctrl+V(或其变体)在我的系统上使用的每个应用程序中都工作得非常好。
使用 Vim,我可以按 Ctrl+Shfit+V,它会粘贴剪贴板中的数据。但就我而言,Vim 不会复制到全局剪贴板。我努力了...
- Ctrl+Shift+C 在可视模式下
- 同时使用
"*y
and"+y
(或另一个复制命令) - 使用
set clipboard=unnamed
和set clipboard=unnamedplus
- 安装 gvim 以获得“剪贴板支持”(用于终端 vim)并重复其他步骤。
维姆只是...拒绝复制到剪贴板。
但我有一个想法。我不需要 Vim 复制到剪贴板本身。我只需要它在可视模式下停止阻止/拦截 Ctrl+Shift+C 的终端行为。但我对 Vim 还很陌生,我完全不知道如何实现这一目标。我所有寻找这种特定东西的尝试都是相当乏味的。这是我对此表格的问题:有没有办法让 Vim 允许终端仿真器 (Alacritty) 使用 Ctrl+Shift+C 复制到剪贴板?如果比我更有 Vim 经验的人能给我指点,我将非常感激。
作为参考,我的系统是 Arch Linux,使用 Sway 窗口管理器和 Alacritty 终端模拟器。我见过有关为 Sway 安装剪贴板管理器的各种情况,因为如果您退出从中复制文本的程序,默认的 Sway 不会保存剪贴板数据。然而,我从来没有真正遇到过这个问题;即使我完全退出程序,数据仍然存在。默认剪贴板对我来说工作得很好,我不一定要安装和配置剪贴板管理器只是为了让 vim或许工作,除非这是唯一的选择。无论如何,这似乎不是问题。
另外,如果有帮助的话,gvim 独立应用程序做支持复制到剪贴板,但标准终端Vim才不是。如果可能的话,我真的很想使用终端文本编辑器。但我想如果无能为力的话我只会使用 gvim 应用程序。
答案1
按住该Shift键并用鼠标光标选择文本。文本将被复制到剪贴板。这也适用于从剪贴板粘贴到
vim
。需要明确的是,这适用于vim
在终端(例如xterm
.
在我的搜索中,不知怎的,我以前没有遇到过这个。这实际上是在选择文本后完成的,我可以正常使用Ctrl++ 。ShiftC
不幸的是,它也复制了行号,所以我想我必须在复制之前禁用它们。如果其他人有更惯用的方法来做到这一点,我将不胜感激。
编辑:安装wl-clipboard
非常简单,在我的系统上花费了几KB来获得一些相当有用的东西,并启用了寄存器的功能+
。我还听取了其他人的建议并使用了nvim
它,效果非常完美。谢谢大家。当然,如果这些事情是禁止的,请参阅上面的内容。如果您使用XOrg
,显然您会使用 x 剪贴板等效项。
TLDR:即使有“”“剪贴板支持”“”,Vim 也希望有一个可以配置的复制实用程序/命令。 Vim 会自动为您配置一定数量的这些(请参阅 参考资料:help clipboard
)。您也可以自己编写。问题是我的 Vim 无法访问 Wayland 系统剪贴板,因为它没有配置。直接安装wl-clipboard
解决了这个问题,因为这是 Vim 开箱即用支持的剪贴板之一。