与其他编辑器不同,vim将复制的文本存储在自己的剪贴板中。所以,对我来说,从网页复制一些文本并将其粘贴到当前的工作文件中是非常困难的。碰巧我必须打开gedit或手动输入它。
我可以使vim粘贴从和系统的剪贴板?
与其他编辑器不同,vim将复制的文本存储在自己的剪贴板中。所以,对我来说,从网页复制一些文本并将其粘贴到当前的工作文件中是非常困难的。碰巧我必须打开gedit或手动输入它。
我可以使vim粘贴从和系统的剪贴板?
当前回答
复制到操作系统剪贴板
在可视模式下选择文本,按“*y”
从操作系统剪贴板粘贴
按“* p
其他回答
最简单的解决方案,也可以通过ssh在不同的Linux机器之间工作:
查看vim是否支持X-11 clipboard: vim——version | grep clipboard。如果它报告回-clipboard和-xterm_clipboard,你应该安装vim-gtk或vim-gnome(在arch linux上的gvim) 在你的.vimrc中添加以下代码行:
设置剪贴板= unnamedplus 设置粘贴
如果您通过ssh在另一台机器上登录,请使用选项-Y: ssh -Y machine
现在,复制和粘贴在一台机器上和在不同的机器上都可以正常工作,只需要用y表示yank,用p表示粘贴。注意:在想要使用该特性的所有机器上修改.vimrc。
这将是你在vimrc中为此目的需要的行:
set clipboard+=unnamed " use the clipboards of vim and win
set paste " Paste from a windows or from vim
set go+=a " Visual selection automatically copied to the clipboard
在设置:set clipboard= named之上,你应该使用mvim -v,如果你在终端上使用vim,你可以通过brew install macvim获得。应用程序在Mac OS X 10.9。默认vim不支持剪贴板选项。
如果你在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 设置剪贴板=不知名的
现在,您可以用yy在vim中复制该行,并在系统范围内粘贴它。
我使用了NM Pennypacker的答案,并通过自制程序为2011年初的MacBook Pro安装了vim:
brew install vim
现在我还可以使用“*寄存器”在vim中复制和粘贴文本。我甚至不需要在~/中更改任何内容。vimrc文件或$PATH。Homebrew在/usr/local/bin中增加了符号链接,例如vim -> ../Cellar/vim/8.1.2350/bin/vim。
之前工作的替代方法是在vim中通过用鼠标标记并在mac上使用复制和粘贴(cmd + c, cmd + v)来复制一些文本行。此选项仅在您想要复制和粘贴的文本小于vim的窗口大小时有效。如果你想通过标记整个窗口或使用cmd + a复制vim中的所有文本,这将复制启动vim之前编写的控制台的其他部分,这非常烦人。
所以,我很高兴找到了使用剪贴板寄存器的新方法。