歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 在Linux終端和Vim下復制粘貼

在Linux終端和Vim下復制粘貼

日期:2017/2/28 14:01:18   编辑:Linux教程

在GUI界面下,我們可以很自由的復制粘貼。但是在字符界面下,我們不得不用鼠標選定,然後單擊右健,選擇復制,再到別處去Ctrl-v。並且對於 那些用沒有配置過的VIM來說,VIM的粘貼板和X Window的粘貼板還不共享。這在碼字的過程中,感覺非常不流暢。下面,我們就嘗試解決這個問題。

首先我們得讓VIM和X Window共享一個粘貼板,這樣我們就可以像在GUI界面下一樣去復制粘貼了。我們可以在自己的VIM配置文件.vimrc裡添加這麼一行:

set clipboard=unamedplus

這 行配置的意思是讓VIM把$$’+'$$這個寄存器(粘貼板)設置為平常yank和p操作的默認粘貼板,而$$’+'$$寄存器在VIM裡就是代表X Window的粘貼板。這樣我們就讓VIM和X Window共享一個粘貼板,再也不用擔心VIM裡復制的東西,不能在VIM外去粘貼。

但是這裡要注意,如果你下載的是基本VIM的話,按照上面的設置是無法實現預期的效果的。因為VIM基本版默認不支持X Window的粘貼板,所以你得安裝VIM完全版,或者巨型版。你可以執行如下命令去判斷你的VIM是否支持X Window的粘貼板:

vim --version | grep clipboard

如果clipboard和xterm_clipboard帶有加號,那麼就表示支持這個特性,減號就表示不支持。

在Ubuntu下面,你應該安裝vim-gnome,而在Fedora下面,你需要安裝vim-X11。

這都做完後,你會發現VIM在每次退出的時候都會清空粘貼板,而這並不是我們想要的。我們可以在VIM配置文件裡添加下面一行配置,來讓VIM在退出的時候,保留粘貼板中的內容:

autocmd VimLeave * call system("xsel -ib", getreg('+'))

這個配置其實就是在VIM每次退出的時候,運行xsel命令來把’+'寄存器中的內容保存到系統粘貼板中,所以這個配置要求你安裝xsel。

現在,假設我們從VIM中yank一些內容,然後退出VIM,粘貼到終端命令行上,這個時候我們可能還是得拿起鼠標,右鍵粘貼。其實在大多數terminal中都有一個快捷鍵:Ctrl-Shift-v,把內容粘貼到命令行中。這樣我們就解決了在終端下面粘貼的問題。

可能有人會問,在終端下面復制怎麼辦?這個,暫時還沒有找到很滿意的解決方案。

--------------------------------------分割線 --------------------------------------

把VIM打造成一個簡單實用的IDE http://www.linuxidc.com/Linux/2011-06/37032.htm

Vim學習指南 http://www.linuxidc.com/Linux/2013-08/89096.htm

快速學會 Vi編輯器 http://www.linuxidc.com/Linux/2013-08/88586.htm

強大的Vim 編輯器 http://www.linuxidc.com/Linux/2013-07/87544.htm

在CentOS 6.2上搭建Vim開發環境 http://www.linuxidc.com/Linux/2013-07/87363.htm

CentOS 5.4 安裝高亮Vim編輯工具 http://www.linuxidc.com/Linux/2013-06/86508.htm

Vim技巧分享:C語言設置 http://www.linuxidc.com/Linux/2012-12/77124.htm

Ubuntu中設置Vim的行號 http://www.linuxidc.com/Linux/2012-12/75485.htm

Vim編輯器使用基礎教程 http://www.linuxidc.com/Linux/2013-05/84031.htm

--------------------------------------分割線 --------------------------------------

Copyright © Linux教程網 All Rights Reserved