Sua*_*uan 69
如果您使用的是Linux并使用的是VI.7版本7.3.74或更高版本(从Ubuntu 11.10开始安装的版本满足此要求),您可以执行此操作
set clipboard=unnamedplus
这会将被拉动的文本放入全局剪贴板,并允许您从全局剪贴板粘贴,而无需使用任何特殊寄存器.与ldigas的解决方案不同,这也适用于非gui版本的VIm.
Roo*_*ook 12
set guioptions+=a
Run Code Online (Sandbox Code Playgroud)
呃,简而言之,无论何时你选择/抽出一些把它放在剪贴板中的东西(不是Vim,而是窗口系统的全局键盘).这样你就不必考虑将东西放入特殊的寄存器中.
ABN*_*ABN 11
首先检查你的 vim 安装是否支持剪贴板。
\nvim --version\nRun Code Online (Sandbox Code Playgroud)\n如果安装了剪贴板支持,您将看到:
\n+clipboard\n+X11\n+xterm_clipboard\nRun Code Online (Sandbox Code Playgroud)\n如果未安装剪贴板支持,您将看到:
\n-clipboard\n-X11\n-xterm_clipboard\nRun Code Online (Sandbox Code Playgroud)\n要安装剪贴板支持:
\napt-get install vim-gnome\nRun Code Online (Sandbox Code Playgroud)\n确认已安装剪贴板支持后,请执行以下操作:
\n如果您必须重复从 Vim 复制到系统剪贴板,反之亦然,则上述步骤可能会变得乏味。\n您可以创建 Vim 快捷方式,以便在按下时Ctrlc所选文本将被复制到系统剪贴板。当您按下Ctrlp系统剪贴板时,文本将被复制到 vim。创建快捷方式:
\n打开 .vimrc 文件并在文件末尾添加以下文本:
\n nnoremap <C-c> "+y\n vnoremap <C-c> "+y\n nnoremap <C-p> "+p\n vnoremap <C-p> "+p\nRun Code Online (Sandbox Code Playgroud)\n保存并重新加载 .vimrc 以应用新的更改。
\n将光标定位到要复制的第一行。
\n按Shiftv进入可视模式。
\n按\xe2\x86\x93选择多行
\n按此键Ctrlc将所选文本复制到系统剪贴板。
\n现在您可以将选定的文本复制到浏览器、文本编辑器等。
\nCtrlp如果要将系统剪贴板文本复制到 vim,请按此键。
\n注意:这是针对 ubuntu 系统的。
\nMoh*_*ish 10
对于GVIM,点击v进入视觉模式; 选择文本并点击Ctrl+Insert以将选择复制到全局剪贴板.
从菜单中可以看到快捷键是,"+y按住Shift键,然后按",然后按+释放Shift并按y(与Shift + Insert相比较麻烦).
如果您在MAC OSX中使用vim,不幸的是它附带了较早的版本,并且不符合剪贴板选项。幸运的是,自制软件可以轻松解决此问题。
安装vim:
brew install vim --with-lua --with-override-system-vim
安装vim的gui版本:
brew install macvim --with-lua --with-override-system-vim
重新启动终端以生效。
将以下行添加到〜/ .vimrc
set clipboard=unnamed
现在,您可以在vim中复制该行yy
并将其粘贴到系统范围内。
小智 5
如果您还没有安装“xclip”...
sudo apt-get install xclip
Xclip 将数据放入“选择/突出显示”剪贴板中,您可以通过中键单击粘贴而不是“ctrl+v”
在 vim 中使用 ex 命令:
7w !xclip
Run Code Online (Sandbox Code Playgroud)
或者
1,7w !xclip
Run Code Online (Sandbox Code Playgroud)
或者
%w !xclip
Run Code Online (Sandbox Code Playgroud)
然后只需单击鼠标中键即可粘贴到任何其他应用程序中...
如果 vim 编译时支持剪贴板,那么您可以使用"*y含义:将视觉上选择的文本复制到寄存器中*(“*”用于剪贴板)
如果没有剪贴板支持,我想唯一的方法就是Ctrl+Insert在vim中直观地选择文本后使用。