vim添加复制(crtl+c),粘贴(ctrl+v)ctrl+A 等快捷键

Posted 柒月

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vim添加复制(crtl+c),粘贴(ctrl+v)ctrl+A 等快捷键相关的知识,希望对你有一定的参考价值。

1  在  /usr/share/vim/vimrc文件中添加   source $VIMRUNTIME/mswin.vim

2  mswin.vim位置在 /usr/share/vim/vim72/目录下面

3  下面是mswin.vim文件的目录,没有这个文件的可以自己创建这个文件

" Set options and add mapping such that Vim behaves a lot like MS-Windows  
"  
" Maintainer:    Bram Moolenaar <[email protected]>  
" Last change:    2006 Apr 02  
  
" bail out if this isn‘t wanted (mrsvim.vim uses this).  
if exists("g:skip_loading_mswin") && g:skip_loading_mswin  
  finish  
endif  
  
" set the ‘cpoptions‘ to its Vim default  
if 1    " only do this when compiled with expression evaluation  
  let s:save_cpo = &cpoptions  
endif  
set cpo&vim  
  
" set ‘selection‘, ‘selectmode‘, ‘mousemodel‘ and ‘keymodel‘ for MS-Windows  
behave mswin  
  
" backspace and cursor keys wrap to previous/next line  
set backspace=indent,eol,start whichwrap+=<,>,[,]  
  
" backspace in Visual mode deletes selection  
vnoremap <BS> d  
  
" 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>  
  
" Use CTRL-S for saving, also in Insert mode  
noremap <C-S>        :update<CR>  
vnoremap <C-S>        <C-C>:update<CR>  
inoremap <C-S>        <C-O>:update<CR>  
  
" For CTRL-V to work autoselect must be off.  
" On Unix we have two selections, autoselect can be used.  
if !has("unix")  
  set guioptions-=a  
endif  
  
" CTRL-Z is Undo; not in cmdline though  
noremap <C-Z> u  
inoremap <C-Z> <C-O>u  
  
" CTRL-Y is Redo (although not repeat); not in cmdline though  
noremap <C-Y> <C-R>  
inoremap <C-Y> <C-O><C-R>  
  
" Alt-Space is System menu  
if has("gui")  
  noremap <M-Space> :simalt ~<CR>  
  inoremap <M-Space> <C-O>:simalt ~<CR>  
  cnoremap <M-Space> <C-C>:simalt ~<CR>  
endif  
  
" CTRL-A is Select all  
noremap <C-A> gggH<C-O>G  
inoremap <C-A> <C-O>gg<C-O>gH<C-O>G  
cnoremap <C-A> <C-C>gggH<C-O>G  
onoremap <C-A> <C-C>gggH<C-O>G  
snoremap <C-A> <C-C>gggH<C-O>G  
xnoremap <C-A> <C-C>ggVG  
  
" CTRL-Tab is Next window  
noremap <C-Tab> <C-W>w  
inoremap <C-Tab> <C-O><C-W>w  
cnoremap <C-Tab> <C-C><C-W>w  
onoremap <C-Tab> <C-C><C-W>w  
  
" CTRL-F4 is Close window  
noremap <C-F4> <C-W>c  
inoremap <C-F4> <C-O><C-W>c  
cnoremap <C-F4> <C-C><C-W>c  
onoremap <C-F4> <C-C><C-W>c  
  
" restore ‘cpoptions‘  
set cpo&  
if 1  
  let &cpoptions = s:save_cpo  
  unlet s:save_cpo  
endif  

  

以上是关于vim添加复制(crtl+c),粘贴(ctrl+v)ctrl+A 等快捷键的主要内容,如果未能解决你的问题,请参考以下文章

pycharm无法使用ctrl+c/v复制粘贴的问题

jquery.zclip复制内容(相当于crtl+c)

vim 下粘贴复制,如何做到最快

linux全选复制粘贴命令

Vim笔记2(复制粘贴那些事儿)

vim全选复制粘贴