2021-05-12 14:32:11
在Linux終端和Vim下複製貼上
在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
--------------------------------------分割線 --------------------------------------
本文永久更新連結地址:http://www.linuxidc.com/Linux/2015-05/118060.htm
相關文章