Added support for tmux
This commit is contained in:
parent
11f53fd930
commit
2523defcb6
@ -1,17 +1,27 @@
|
||||
" Code from:
|
||||
" http://stackoverflow.com/questions/5585129/pasting-code-into-terminal-window-into-vim-on-mac-os-x
|
||||
" then https://coderwall.com/p/if9mda
|
||||
" Docs on bracketed paste mode:
|
||||
" http://www.xfree86.org/current/ctlseqs.html
|
||||
if &term =~ "xterm.*" || &term =~ "screen*"
|
||||
let &t_ti = &t_ti . "\e[?2004h"
|
||||
let &t_te = "\e[?2004l" . &t_te
|
||||
function! XTermPasteBegin(ret)
|
||||
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 a:ret
|
||||
return ""
|
||||
endfunction
|
||||
map <expr> <Esc>[200~ XTermPasteBegin("i")
|
||||
imap <expr> <Esc>[200~ XTermPasteBegin("")
|
||||
cmap <Esc>[200~ <nop>
|
||||
cmap <Esc>[201~ <nop>
|
||||
inoremap <special> <expr> <Esc>[200~ XTermPasteBegin()
|
||||
endif
|
||||
|
Loading…
Reference in New Issue
Block a user