我使用的是 Linux 操作系统。我想将一些文本从 Vim 复制到系统剪贴板,然后将其粘贴到另一个 shell 中。我尝试了以下方法:
在里面 。vimrc文件内部/主页/{用户}目录放置以下内容:
vmap <C-c> "*y
之后我退出了 shell,然后在 vim 中打开了一个新 shell 和一个文件。执行了可视化选择,然后发出了 *y。它提取了选定的行。我退出了 vim,然后在 shell 中发出了CTRL+SHIFT+V。但什么也没发生。
我也尝试在 .vimrc 文件中设置以下内容:
set clipboard=unnamed
但这也行不通。
附言:我是有能力的使用 从系统剪贴板粘贴到 vim *p
。
这里可能存在什么问题?我是否在错误的.vimrc 文件?
编辑:当我执行 vim --version|grep clipboard 时,我看到以下内容:
[subhrcho@slc04lyo ~]$ vim --version|grep clipboard
-clientserver -clipboard +cmdline_compl +cmdline_hist +cmdline_info +comments
-xterm_clipboard -xterm_save
答案1
"*
在 Linux 上,和之间有区别"+
。如果你想使用系统剪贴板(例如使用++ Ctrl),你必须使用。(同样,在较新的 Vim 版本中有一个。)ShiftV"+
:set clipboard+=unnamedplus
要将内容粘贴"*
到终端中,请使用鼠标中键。
更多信息请访问:help x11-selection
答案2
"*p
不可以。如果 Vim 没有支持剪贴板,你就无法粘贴。
-clipboard
和-xterm_clipboard
表示“没有剪贴板”。如果没有剪贴板支持,"*y
、"+y
和无法粘贴到剪贴板或从剪贴板"*p
粘贴"+p
根本。
如果您需要剪贴板支持,您必须获得合适的 Vim 版本(vim-gtk
例如)。就这么简单。