我在Vim中选择了一个区域。如何将其复制到OS X剪贴板?

(OS X剪贴板可以通过管道写入到/usr/bin/pbcopy)


当前回答

可视地选择文本和类型:

ggVG
!tee >(pbcopy)

我觉得这比:

ggVG
:w !pbcopy

因为它不会闪现提示符:“按ENTER或键入命令继续”

其他回答

我的主要问题是Vim的默认OSX版本。安装它通过自制添加+剪贴板到构建。

你可以查询:

vim --version

看看它说的是-clipboard还是+clipboard。

在macos 10.8上,vim是用-clipboard编译的,所以要使用"*y "你需要 编译。幸运的是,brew install vim可以为您轻松编译一个新版本 然后是+clipboard。

您可以直观地选择文本并键入:w !pbcopy<CR>

或者您可以在~/中包含下面的键映射。vimrc文件。它们以可视模式将文本剪切/复制到操作系统的剪贴板中。

vmap <C-x> :!pbcopy<CR>  
vmap <C-c> :w !pbcopy<CR><CR> 

来源:http://drydevelopment.com/blog/vim-pbcopy-on-os-x

对于MacVim和Windows Gvim,只需在~/.vimrc中添加以下内容:

set clipboard=unnamed

现在所有的操作,如yy, D和P工作与剪贴板。不需要在前面加上“*”或“+”。

我目前在OS X 10.9上,我用+xterm_clipboard编译vim的努力没有给我带来任何东西。所以我目前的解决方案是在终端模式下使用MacVim,选项设置clipboard= named在我的~/。vimrc文件。很适合我。