Pag-access sa mga Content sa Clipboard sa Daghang mga Instance sa Vim gikan sa Terminal


Ang Vim (Vi IMproved) usa sa labing paborito nga mga editor sa teksto sa mga programmer. Kini adunay kaugalingon nga mga espesyalidad sa paghimo sa lainlaing mga operasyon nga adunay mubo nga mga mando sa kamot.

Pananglitan, aron kopyahon ang gipasiugda nga teksto gigamit namon ang 'y' nga mando ug 'x' aron maputol ang parehas. Apan, pinaagi sa default nga vim (ug dili gVim) ang mga sulud sa clipboard dili ma-access pagkahuman sa pagsira sa mga higayon sa vim.

Gigamit ni Vim ang rehistro nga '+' aron ipunting ang clipboard sa sistema. Mahimo nimong ipadagan ang 'vim -version'ug kung dili nimo makita ang usa ka butang sama sa +xterm_clipboard ug sa baylo nga xterm_clipboard, nan ang sulud sa sulud sa clipboard dili magamit sa gawas sa vim.

Aron ma-access ang mga sulud sa clipboard sa vim, kinahanglan nimo nga i-install ang package nga gvim. Ang gVim usa ka GUI mode para sa vim editor diin ang opsyon sa clipboard gipagana pinaagi sa default.

# yum install -y gvim

Sunod, i-enable ang RPMForge Repository nga ma-install ang parcellite package. Ang Parcellite usa ka gaan, gamay ug libre nga clipboard manager alang sa Linux.

# yum install -y parcellite

Sa higayon nga ma-install, padagana ang mosunod nga sugo. Diin ang argumento '&' gigamit sa pagpadala sa parcellite alang sa pagdagan isip proseso sa background.

# parcellite &

Susiha kung ang kapilian gipalihok sa gvim.

# gvim --version

Siguroha nga ikaw adunay opsyon nga +xterm_clipboard nga gipakita sa output sama sa gipakita sa ubos.

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

Ablihi ang .bashrc file sa user.

# vim ~/.bashrc

Ug idugang ang alyas ug i-save ang file (i-press ang 'i' aron i-insert ang linya ug pindota ang ESC, dayon pagdagan: wq aron maluwas ug mogawas).

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

Kini nga alyas usa ka built-in nga gigamit sa pag-bypass sa pipila ka sugo ngadto sa lain. Mao nga sa matag higayon nga ipagawas ang vim command, ang katugbang nga alyas moadto sa gvim nga adunay clipboard nga gipagana sa default.

Karon usba ang imong '.vimrc' file sa parehas nga paagi (Sa kaso kung wala ka usa ka .vimrc file, paghimo usa sa ingon nga file pinaagi sa ug dayon balik dinhi.

# vim ~/.vimrc

Idugang ang mosunod nga linya ug i-save ang file.

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

Karon ablihi ang bisan unsang file sa vim ug i-highlight ang bahin sa teksto (gamit ang 'v' command) ug pindota ang \+y. Sulayi ang pag-paste bisan asa sa gawas sa vim (pagkahuman o pagsira sa vim) ug nahuman ka.

Pagdalagan ang mosunod nga sugo aron makamugna og .vimrc file (laktawan kini nga bahin kon aduna ka na).

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

Sa vim run ang mosunud pagkahuman sa pagpindot sa ESC key (Sa vim ang matag command gipadagan pagkahuman sa pagpindot sa ESC key nga nagbutang kanimo sa command mode).

:r $VIMRUNTIME/vimrc_example.vim 
:w