vi中系统剪切板的设置

vi中系统剪切板的设置


在vi中,如果编译时没有clipboard属性,将vi中的内容拷贝到系统剪切板有些麻烦。
可以用如下的方法,查看vi 是否支持系统剪切板的功能:

xt@xt-ThinkPad-X220:~$ vi --version | grep clipboard
-clipboard +iconv +path_extra -toolbar
+eval +mouse_dec +startuptime -xterm_clipboard

如果如上所示,不支持系统剪切板功能,可以如下在.vimrc中的设置,解决问题:

" 拷贝粘切到系统的剪贴板
if has("win32")||has("win95")||has("win64")||has("win16")
    set clipboard=unnamed

elseif has('unix')
    vmap  y:call system("xsel -ib", getreg('"'))
    nmap  :call setreg("\"",system("xsel -o"))p

" 如果是macOS,请使用如下设置
"    vmap y        y:call system("pbcopy", getreg("\""))
"    nmap p        :call setreg("\"",system("pbpaste"))p

endif

对于Linux ,需要安装xsel ,命令如下:

sudo apt-get install xsel

xsel是很小的软件,空间占用狠小,也没有很特别的依赖库,很是方便。

对于macOS ,pbcopy和pbpaste都是系统自带的工具,不用安装任何额外的软件。

你可能感兴趣的:(vi中系统剪切板的设置)