VIM 系統粘貼

      咱們能夠經過X11的剪貼板來實現VIM 與其餘圖形界面的文字分享。PS:X11是大多數的桌面環境如Gnome 和KDE運行的圖形環境html

      X11有2個全局緩存區來實現多個應用程序間的內容緩存,一個叫做「cut-buffer」,它存儲咱們拷貝和粘貼的內容,這是咱們說到系統剪貼板(system clipbord)最早想到的。另外一個叫做「selection」,在 X11中,當咱們用鼠標選中一段內容,咱們能夠經過點擊鼠標中鍵將該內容粘貼到光標處。web

      讓人振奮的是,VIM能夠訪問這兩個緩存區,獲得這兩個緩存區的內容,和將內容放到這兩個緩存區。vim

      在VIM中,咱們能夠用命令  「+  訪問「cut-buffer」 ,例如:緩存


  •  "+y 能夠抽出(yank)選中的區域並存儲(store)到「cut—buffer」。
  •  "+p 將「cut-buffer」的內容粘貼(paste)到光標處。
  •  "+dd 能夠剪切(cut)當前行而後存儲到"cut-buffer"。
  •  "+yy 能夠抽出當前行而後存儲到「cut-buffer」。

  

    在VIM中,咱們能夠用命令 「× 來訪問」selecttion「,例如:spa

  •  "*y 能夠抽出(yank)選中的區域並存儲(store)到「selecttion」。
  •  "*p 將「selecttion」的內容粘貼(paste)到光標處。
  •  "*dd 能夠剪切(cut)當前行而後存儲到"selecttion"。
  •  "*yy 能夠抽出當前行而後存儲到「selecttion」。

   

注意:

    若是咱們經過xterm來登陸Vim,VIm必須在編譯時支持 xterm clipboard。怎樣肯定Vim支持不支持呢?.net


vim --version | grep "xterm_clipboard"
翻譯

   個人顯示:code


  +X11 -xfontset +xim +xsmp_interact +xterm_clipboard -xterm_save 
orm

      +xterm_clipboard前面的」+「表示支持, 」-「表示不支持。(若是沒有顯示也是不支持)htm

      或是經過運用以上命令,而後在vim 中鍵入:reg來看寄存器中的內容來判斷支持不支持。

      經過sudo apt-get install vim 安裝的 VIm默認是不支持的,即-xterm_clipboard,因此不支持系統剪貼板的保存,將vim內容粘貼到其餘應用中比較蛋疼。我沒有從新編譯,而是安裝 sudo apt-get install vim-gnome 即安裝了gvim,而後就支持了!

翻譯改編:http://www.jveweb.net/en/archives/2011/02/vim-and-the-x11-clipboard.html