Macos 如何将所选内容复制到OS X剪贴板
我在Vim中选择了一个区域。如何将其复制到OSX剪贴板中Macos 如何将所选内容复制到OS X剪贴板,macos,vim,clipboard,Macos,Vim,Clipboard,我在Vim中选择了一个区域。如何将其复制到OSX剪贴板中 (可以通过管道将OS X剪贴板写入到/usr/bin/pbcopy)双引号星号(“*)在任何yank命令将结果拖动到复制缓冲区之前。这也适用于Windows和Linux。命令-C?这至少适用于从Terminal.app中启动的vim,用于使用鼠标选择的文本。根据我使用的vim版本,我可以使用+寄存器访问剪贴板 vmap <C-x> :!pbcopy<CR> vmap <C-c> :w !pbcopy
(可以通过管道将OS X剪贴板写入到
/usr/bin/pbcopy
)双引号星号(“*)在任何yank命令将结果拖动到复制缓冲区之前。这也适用于Windows和Linux。命令-C?这至少适用于从Terminal.app中启动的vim,用于使用鼠标选择的文本。根据我使用的vim版本,我可以使用+
寄存器访问剪贴板
vmap <C-x> :!pbcopy<CR>
vmap <C-c> :w !pbcopy<CR><CR>
“”可能有一些想法对您也适用。您可以在Mac上使用,使用标准操作系统键轻松访问剪贴板
它还与普通Vim完全向后兼容,因此我甚至不需要单独的
。vimrc
如果启用剪贴板,您可以通过点击“*y
将选定区域复制到剪贴板
要查看它是否已启用,请运行vim--version
并查找+剪贴板
或-剪贴板
。例如,默认情况下,我的10.5.6设备上没有启用:
% which vim
/usr/bin/vim
% vim --version
VIM - Vi IMproved 7.2 (2008 Aug 9, compiled Nov 11 2008 17:20:43)
Included patches: 1-22
Compiled by _www@b77.apple.com
Normal version without GUI. Features included (+) or not (-):
...
-clientserver -clipboard +cmdline_compl +cmdline_hist +cmdline_info +comments
...
但是,即使在编译之后,我也无法在Terminal.app中运行vim时复制到剪贴板,只能在X11.app中运行。对于和Windows Gvim,只需将以下内容添加到您的~/.vimrc
:
set clipboard=unnamed
现在,所有操作,如
yy
、D
和p
都可以使用剪贴板。无需在它们前面加上“*
或”+
对于Ubuntu用户,您要检索的用于使用剪贴板的包已满。其他软件包(vim tiny,vim)不包括剪贴板功能。实现+
和*
缓冲区(如果它们本机不受支持)。如果您使用MacPorts,您可以通过以下方式升级vim以包括剪贴板支持:
port install vim +x +x11
现在,您可以使用
“+
寄存器将文本直接拉到Mac剪贴板。效果非常好。命令-c在MacVim和终端中都适用。您可以直观地选择文本并键入:w!pbcopy
或者您可以在~/.vimrc
文件中包含以下键映射。它们以可视模式将文本剪切/复制到操作系统的剪贴板
vmap <C-x> :!pbcopy<CR>
vmap <C-c> :w !pbcopy<CR><CR>
vmap:!pbcopy
vmap:w!pbcopy
来源:目视选择文本并键入:
ggVG
!tee >(pbcopy)
我觉得这比:
ggVG
:w !pbcopy
因为它不会闪烁提示:“按ENTER键或键入command继续”使用寄存器“+”或“*”复制到剪贴板不起作用 原因:您的特定版本的vim是在没有剪贴板支持的情况下编译的。在控制台上键入vim--verion,您将看到-xterm_剪贴板。使用gui软件包安装vim可以解决此问题。在ubuntu上,您可以通过在shell上键入: sudo-apt-get-install-vim-gui-common 现在再次在控制台上执行vim--version。最有可能的是,您现在会看到+xterm_剪贴板
因此,现在您可以使用register+(比如“+yy”将当前行复制到剪贴板)在macos 10.8上,vim是用
-clipboard
编译的,所以要使用“*y
您需要
重新编译。幸运的是,brew安装vim
将为您轻松编译一个新版本
在mac上,当任何其他操作都正常时,它将是
+剪贴板
用鼠标选择,右键单击选择复制。uff如果您的Vim不是用剪贴板编译的,您希望复制所选文本而不是整行,您不想安装MacVim或其他GUI,最简单的解决方案是将这一行添加到您的.vimrc:
map <C-c> y:e ~/clipsongzboard<CR>P:w !pbcopy<CR><CR>:bdelete!<CR>
set clipboard=unnamed
map y:e~/clipsongzboardP:w!pbcopy:bdelete!
要使用它,只需直观地选择要复制的文本,然后选择Control-C。如果您想对此行进行完整解释,请阅读““我目前使用的是OS X 10.9,我用+xterm_剪贴板编译vim的努力没有给我带来任何好处。因此,我当前的解决方案是在我的~/.vimrc文件中使用选项
set clipboard=unnamed
。非常适合我。我的主要问题是Vim的默认OSX版本。通过自制软件安装,将+剪贴板
添加到构建中
您可以通过以下方式进行检查:
vim --version
要查看是否显示-clipboard
或+clipboard
请使用vim:brew安装vim
Mac(从10.10.3 Yosemite开始)预装了一个系统vim,该系统不启用剪贴板标志
您可以自己编译vim并启用该标志,也可以简单地使用正确设置的自制vim
要亲自了解这一点,请使用/usr/bin/vim--version
您将看到如下内容:
$ /usr/bin/vim --version
VIM - Vi IMproved 7.3 (2010 Aug 15, compiled Nov 5 2014 21:00:28)
Compiled by root@apple.com
Normal version without GUI. Features included (+) or not (-):
... -clientserver -clipboard +cmdline_compl ...
注意-剪贴板
使用自制的vim,您将获得
$ /usr/local/bin/vim --version
VIM - Vi IMproved 7.4 (2013 Aug 10, compiled May 10 2015 14:04:42)
MacOS X (unix) version
Included patches: 1-712
Compiled by Homebrew
Huge version without GUI. Features included (+) or not (-):
... +clipboard ...
注意我使用的+剪贴板
:
map <C-x> :!pbcopy<CR>
vmap <C-c> :w !pbcopy<CR><CR>
map:!pbcopy
vmap:w!pbcopy
它运行得非常好 如果您在MacOS X上:
$ brew install vim
$ vim --version
VIM - Vi IMproved 7.4 [...]
然后,将以下内容添加到.vimrc中:
map <C-c> y:e ~/clipsongzboard<CR>P:w !pbcopy<CR><CR>:bdelete!<CR>
set clipboard=unnamed
现在,您只需在vim中执行:%y
,即可将所有内容复制到剪贴板。如果您在vim安装中有+剪贴板
选项(您可以使用:version
)并且您处于可视模式,则可以执行“+y
这将把所选内容拉到剪贴板的缓冲区+
vmap <C-x> :!pbcopy<CR>
vmap <C-c> :w !pbcopy<CR><CR>
我已经将下面的映射添加到我的vimrc中,它工作得很好
vmap y”+y
:使用此功能,我可以执行leader键
,然后执行y
,以在视觉模式下复制到剪贴板
nmap“+p
:有了它,我可以在正常模式下从剪贴板粘贴引线键
和p
PD:在Ubuntu上,我必须安装vim gtk才能获得+剪贴板
选项。在我的情况下,我必须做:
:set mouse=v
我遇到同样的问题,在