मैं कैसे उपयोग करने के लिए विम कॉन्फ़िगर करूँ Ctrl- cकॉपी करने के लिए और Ctrl- vउबंटू में प्रणाली बफर से चिपकाने के लिए?
मैं कैसे उपयोग करने के लिए विम कॉन्फ़िगर करूँ Ctrl- cकॉपी करने के लिए और Ctrl- vउबंटू में प्रणाली बफर से चिपकाने के लिए?
जवाबों:
एमएस विंडोज में डिफ़ॉल्ट बेजवाईवर: -
यहाँ mswin.vim फ़ाइल का एक अंश है: -
" CTRL-X and SHIFT-Del are Cut
vnoremap <C-X> "+x
vnoremap <S-Del> "+x
" CTRL-C and CTRL-Insert are Copy
vnoremap <C-C> "+y
vnoremap <C-Insert> "+y
" CTRL-V and SHIFT-Insert are Paste
map <C-V> "+gP
map <S-Insert> "+gP
cmap <C-V> <C-R>+
cmap <S-Insert> <C-R>+
" Pasting blockwise and linewise selections is not possible in Insert and
" Visual mode without the +virtualedit feature. They are pasted as if they
" were characterwise instead.
" Uses the paste.vim autoload script.
exe 'inoremap <script> <C-V>' paste#paste_cmd['i']
exe 'vnoremap <script> <C-V>' paste#paste_cmd['v']
imap <S-Insert> <C-V>
vmap <S-Insert> <C-V>
" Use CTRL-Q to do what CTRL-V used to do
noremap <C-Q> <C-V>
और paste.vim स्क्रिप्ट जो ब्लॉक मोड कट / पेस्ट के लिए आवश्यक है: -
" Vim support file to help with paste mappings and menus
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2006 Jun 23
" Define the string to use for items that are present both in Edit, Popup and
" Toolbar menu. Also used in mswin.vim and macmap.vim.
" Pasting blockwise and linewise selections is not possible in Insert and
" Visual mode without the +virtualedit feature. They are pasted as if they
" were characterwise instead. Add to that some tricks to leave the cursor in
" the right position, also for "gi".
if has("virtualedit")
let paste#paste_cmd = {'n': ":call paste#Paste()<CR>"}
let paste#paste_cmd['v'] = '"-c<Esc>' . paste#paste_cmd['n']
let paste#paste_cmd['i'] = 'x<BS><Esc>' . paste#paste_cmd['n'] . 'gi'
func! paste#Paste()
let ove = &ve
set ve=all
normal! `^
if @+ != ''
normal! "+gP
endif
let c = col(".")
normal! i
if col(".") < c " compensate for i<ESC> moving the cursor left
normal! l
endif
let &ve = ove
endfunc
else
let paste#paste_cmd = {'n': "\"=@+.'xy'<CR>gPFx\"_2x"}
let paste#paste_cmd['v'] = '"-c<Esc>gix<Esc>' . paste#paste_cmd['n'] . '"_x'
let paste#paste_cmd['i'] = 'x<Esc>' . paste#paste_cmd['n'] . '"_s'
endi
source $VIMRUNTIME/mswin.vim
अपने _vimrc फ़ाइल के शीर्ष पर जोड़ें । कुछ भी कायरता जो आपको लिनक्स में फ़ाइल सहित सफलतापूर्वक से बचाता है ?
mswin.vim
लिनक्स के तहत भी दिमाग में उपयोग करना था ।
C-V
पेस्ट करने के लिए सेट करने से स्पेशल कैरेक्टर एंट्री मोड टूट जाएगा: vim.wikia.com/wiki/…
यह सिर्फ न्यूनतम है, ज्यादातर चीजों को डिफ़ॉल्ट सेटिंग्स माना जाता है **:
:behave mswin
:set clipboard=unnamedplus
:smap <Del> <C-g>"_d
:smap <C-c> <C-g>y
:smap <C-x> <C-g>x
:imap <C-v> <Esc>pi
:smap <C-v> <C-g>p
:smap <Tab> <C-g>1>
:smap <S-Tab> <C-g>1<
पंक्ति 1: शिफ्ट + तीर पाठ का चयन करती है (और अधिक *)
पंक्ति 2: "+ (और" *) डिफ़ॉल्ट रजिस्टर (gui / term क्लिपबोर्ड) बनाती है
लाइनें 3,4,5,6: Ctrl-x / c / v कट / कॉपी और पेस्ट बनाती हैं
पंक्ति line,AB: TAB / SHIFT + TAB इंडेंट / अपवर्तक चयन करता है
सावधानी: *** [: सेट] टिंग्स इस व्यवहार को बदल सकते हैं और आपकी आवश्यकताओं के अनुरूप कई ट्वीक की आवश्यकता हो सकती है, जैसे मैंने कहा, न्यूनतम। * [: व्यवहार करें] कई परिवर्तन करता है: [सेट] टिंग डॉक्स पढ़ते हैं।
सिस्टम क्लिपबोर्ड को पकड़कर सिस्टम को चलाने के लिए Ctrl-V को मैप करें और इसे एक रजिस्टर में फेंकता है, और इसे कर्सर के नीचे स्क्रीन पर पेस्ट करता है:
vmap <C-c> y:call system("xclip -i -selection clipboard", getreg("\""))<CR>:call system("xclip -i", getreg("\""))<CR>
nmap <C-v> :call setreg("\"",system("xclip -o -selection clipboard"))<CR>p
स्रोत: http://vim.wikia.com/wiki/In_line_copy_and_paste_to_system_clipboard