vim調整粘貼時的文本縮進

     解決辦法:vim

1. 在拷貝前輸入:set paste (這樣的話,vim就不會啓動自動縮進,而只是純拷貝粘貼)
2. 拷貝完成以後,輸入:set nopaste (關閉paste)app

 

 


 

在 Vim 中粘貼文本時可能會遇到這樣的問題,有時文本的縮進會發生變化,特別是在粘貼大量的文本時,這個問題會更加明顯。把下面這段配置加入到配置文件 ~/.vimrc 中,這樣 Vim 就會自動地阻止粘貼文本時的自動縮進。spa

" for tmux to automatically set paste and nopaste mode at the time pasting (as
" happens in VIM UI)
  
function! WrapForTmux(s)
  if !exists('$TMUX')
    return a:s
  endif
  
  let tmux_start = "<Esc>Ptmux;"
  let tmux_end = "<Esc>"
  
  return tmux_start . substitute(a:s, "<Esc>", "<Esc><Esc>", 'g') . tmux_end
endfunction
  
let &t_SI .= WrapForTmux("<Esc>[?2004h")
let &t_EI .= WrapForTmux("<Esc>[?2004l")
  
function! XTermPasteBegin()
  set pastetoggle=<Esc>[201~
  set paste
  return ""
endfunction
  
inoremap <special> <expr> <Esc>[200~ XTermPasteBegin()
相關文章
相關標籤/搜索