Piekļuve starpliktuves saturam vairākos Vim gadījumos no termināļa


Vim (Vi IMproved) ir viens no iecienītākajiem teksta redaktoriem starp programmētājiem. Tam ir savas īpatnības dažādu darbību veikšanā ar īsām roku komandām.

Piemēram, lai nokopētu iezīmēto tekstu, mēs to izmantojam ar komandu ‘y’ un ‘x’. Bet pēc noklusējuma vim (un ne gVim) starpliktuves saturam nevar piekļūt pēc vim gadījumu aizvēršanas.

Vim izmanto “+” reģistru, lai atsauktos uz sistēmas starpliktuvi. Varat palaist ‘vim –version’, un, ja jūs neredzat kaut ko līdzīgu “+ xterm_clipboard” un tā vietā “xterm_clipboard”, tad iekšējais starpliktuves saturs nebūs pieejams ārpus vim.

Lai piekļūtu vim starpliktuves saturam, jāinstalē gvim pakotne. GVim ir GUI režīms vim redaktoram, kur pēc noklusējuma ir iespējota starpliktuves opcija.

# yum install -y gvim

Pēc tam iespējojiet RPMForge repozitoriju parcellite pakotnes instalēšanai. Parcellite ir viegls, sīks un bezmaksas starpliktuves pārvaldnieks Linux.

# yum install -y parcellite

Pēc instalēšanas palaidiet šādu komandu. Kur argumentu “&” izmanto, lai nosūtītu parcellite darbībai kā fona procesu.

# parcellite &

Pārbaudiet, vai opcija ir iespējota gvim.

# gvim --version

Pārliecinieties, vai izvades variantā ir parādīta opcija “+ xterm_clipboard”, kā parādīts zemāk.

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

Atveriet lietotāja .bashrc failu.

# vim ~/.bashrc

Pievienojiet aizstājvārdu un saglabājiet failu (nospiediet ‘i’, lai ievietotu rindiņu, un nospiediet ESC, pēc tam palaidiet: wq, lai saglabātu un izietu).

# .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

Šis aizstājvārds ir iebūvēts, ko izmanto, lai apietu kādu komandu citai. Tādējādi katru reizi, kad tiek izsniegta komanda vim, atbilstošais aizstājvārds nonāk gvim ar starpliktuvi pēc noklusējuma.

Tagad rediģējiet savu .vimrc failu līdzīgā veidā (Ja jums nav .vimrc faila, ģenerējiet vienu šādu failu un pēc tam atgriezieties šeit.

# vim ~/.vimrc

Pievienojiet šo rindu un saglabājiet failu.

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

Tagad atveriet jebkuru failu vim un iezīmējiet teksta daļu (izmantojot komandu ‘v’) un nospiediet “+ y. Mēģiniet ielīmēt jebkur ārpus vim (pēc aizvēršanas vai bez aizvēršanas), un tas ir paveikts.

Palaidiet šo komandu, lai ģenerētu .vimrc failu (izlaidiet šo daļu, ja tāda jums jau ir).

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

Pēc taustiņa ESC nospiešanas vim palaidiet sekojošo (pēc vim katra komanda tiek izpildīta pēc ESC taustiņa nospiešanas, kas jūs ievada komandu režīmā).

:r $VIMRUNTIME/vimrc_example.vim 
:w