是否可以直接从Vim复制到剪贴板?yy只把东西复制到Vim的内部缓冲区。我想复制到操作系统的剪贴板。在Vim中有这样的命令吗?或者你只能在Vim中提取东西?
当前回答
我想补充一种方法来复制一行到剪贴板,并在函数上使用它。
这里有一个你在浏览器中打开URL的例子
let g:chrome_exe = 'C:/.../Google/Chrome/Application/chrome.exe'
function OpenURL()
" copy the line and put it in the register *
normal "*yy
:execute "silent !start ".g:chrome_exe." ".getreg("*")
endfunction
map ,url :call OpenURL()<CR>
其他回答
我的解决方案是安装额外的vim,包括剪贴板选项:
sudo apt-get install vim-gnome
在vimrc文件中,可以指定自动使用系统剪贴板进行复制和粘贴。
macOS和Windows设置:
set clipboard=unnamed
Linux set (vim 7.3.74+):
set clipboard=unnamedplus
注意:您可能需要使用最新版本的Vim才能工作。
http://vim.wikia.com/wiki/Accessing_the_system_clipboard
如果您通过putty连接到Unix系统,那么按照以下步骤复制文件的内容
突出显示要复制的文本(您将能够逐页复制) 按ctrl+c(它将复制文本到剪贴板 粘贴任何外部编辑器 完成
我想补充一种方法来复制一行到剪贴板,并在函数上使用它。
这里有一个你在浏览器中打开URL的例子
let g:chrome_exe = 'C:/.../Google/Chrome/Application/chrome.exe'
function OpenURL()
" copy the line and put it in the register *
normal "*yy
:execute "silent !start ".g:chrome_exe." ".getreg("*")
endfunction
map ,url :call OpenURL()<CR>
我有问题,因为我的vim不支持剪贴板:
vim --version | grep clip
-clipboard +insert_expand +path_extra +user_commands
+emacs_tags -mouseshape +startuptime -xterm_clipboard
我安装了vim-gnome(支持剪贴板),然后再次检查:
vim --version | grep clipboard
+clipboard +insert_expand +path_extra +user_commands
+emacs_tags +mouseshape +startuptime +xterm_clipboard
现在我可以分别使用“+y”和“+p”进行复制和粘贴。