Leikepöydän sisällön käyttäminen useissa Vim-esiintymissä terminaalista


Vim (Vi IMproved) on yksi ohjelmoijien suosituimmista tekstieditoreista. Sillä on omat erikoisuutensa erilaisten toimintojen suorittamisessa lyhyillä käsikomennoilla.

Esimerkiksi korostetun tekstin kopioimiseen käytämme y-komentoa ja x-komentoa leikkaamaan saman. Mutta oletuksena vim (eikä gVim) leikepöydän sisältöä ei voi käyttää vim-instanssien sulkemisen jälkeen.

Vim viittaa järjestelmän leikepöydälle +-rekisterillä. Voit suorittaa 'vim –version' ja jos et näe jotain kuten "+xterm_clipboard" ja sen sijaan "xterm_clipboard", käytä sisäistä leikepöydän sisältöä ei ole saatavilla vimin ulkopuolella.

Asenna gvim ja parcellite

Jotta voit käyttää vim-leikepöydän sisältöä, sinun on asennettava gvim-paketti. gVim on vim-editorin graafinen käyttöliittymä, jossa leikepöytävaihtoehto on oletuksena käytössä.

yum install -y gvim

Ota seuraavaksi käyttöön RPMForge Repository asentaaksesi parcellite-paketin. Parcellite on kevyt, pieni ja ilmainen leikepöydän hallinta Linuxille.

yum install -y parcellite

Kun olet asentanut, suorita seuraava komento. Missä argumenttia "&" käytetään paketin lähettämiseen taustaprosessina.

parcellite &

Tarkista, onko vaihtoehto käytössä gvimissä.

gvim --version

Varmista, että +xterm_clipboard-vaihtoehto näkyy tulosteessa alla olevan kuvan mukaisesti.

VIM - Vi IMproved 7.2 (2008 Aug 9, compiled Apr  5 2012 10:12:08)
Included patches: 1-411
Modified by <[email >
Compiled by <[email >
Huge version with GTK2 GUI.  Features included (+) or not (-):
+arabic +autocmd +balloon_eval +browse ++builtin_terms +byte_offset +cindent 
+clientserver +clipboard +cmdline_compl +cmdline_hist +cmdline_info +comments 
+cryptv +cscope +cursorshape +dialog_con_gui +diff +digraphs +dnd -ebcdic 
+emacs_tags +eval +ex_extra +extra_search +farsi +file_in_path +find_in_path 
+float +folding -footer +fork() +gettext -hangul_input +iconv +insert_expand 
+jumplist +keymap +langmap +libcall +linebreak +lispindent +listcmds +localmap 
+menu +mksession +modify_fname +mouse +mouseshape +mouse_dec +mouse_gpm 
-mouse_jsbterm +mouse_netterm -mouse_sysmouse +mouse_xterm +multi_byte 
+multi_lang -mzscheme +netbeans_intg -osfiletype +path_extra +perl +postscript 
+printer +profile +python +quickfix +reltime +rightleft -ruby +scrollbind 
+signs +smartindent -sniff +startuptime +statusline -sun_workshop +syntax 
+tag_binary +tag_old_static -tag_any_white -tcl +terminfo +termresponse 
+textobjects +title +toolbar +user_commands +vertsplit +virtualedit +visual 
+visualextra +viminfo +vreplace +wildignore +wildmenu +windows +writebackup 
+X11 -xfontset +xim +xsmp_interact +xterm_clipboard -xterm_save

Avaa käyttäjän .bashrc-tiedosto.

vim ~/.bashrc

Lisää alias ja tallenna tiedosto (lisää rivi painamalla i, paina ESC ja suorita sitten :wq tallentaaksesi ja poistuaksesi) .

.bashrc

User specific aliases and functions

alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
alias vim='gvim -v'
Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi

Tämä alias on sisäänrakennettu, jota käytetään ohittamaan jokin komento toiselle. Siten joka kerta kun vim-komento annetaan, vastaava alias menee gvimiin leikepöydän ollessa oletusarvoisesti käytössä.

Muokkaa nyt .vimrc-tiedostoa samalla tavalla (jos sinulla ei ole .vimrc-tiedostoa, luo sellainen tiedosto ja palaa sitten tänne .

vim ~/.vimrc

Liitä seuraava rivi ja tallenna tiedosto.

autocmd VimLeave * call system("echo -n $'" . escape(getreg(), "'") . "' | xsel -ib")

Avaa nyt mikä tahansa tiedosto vimissä ja korosta tekstiosa (käyttäen 'v'-komentoa) ja paina "+y". Yritä liittää mihin tahansa vimin ulkopuolelle (sulkemisen jälkeen tai sulkematta vim), ja olet valmis.

Luodaan .vimrc-tiedostoa

Luo .vimrc-tiedosto suorittamalla seuraava komento (ohita tämä osa, jos sinulla on jo sellainen).

cd   [This will put you in home directory]       
vim .vimrc

In vim:ssä suorita seuraava ESC-näppäimen painamisen jälkeen (In vimissä jokainen komento suoritetaan ESC-näppäimen painamisen jälkeen, mikä siirtää sinut komentotilaan).

:r $VIMRUNTIME/vimrc_example.vim 
:w