if exists('$TMUX') function! TmuxOrSplitSwitch(wincmd, tmuxdir) let previous_winnr = winnr() silent! execute "wincmd " . a:wincmd if previous_winnr == winnr() call system("tmux select-pane -" . a:tmuxdir) redraw! endif endfunction let previous_title = substitute(system("tmux display-message -p '#{pane_title}'"), '\n', '', '') let &t_ti = "\<Esc>]2;vim\<Esc>\\" . &t_ti let &t_te = "\<Esc>]2;". previous_title . "\<Esc>\\" . &t_te noremap <silent><C-h> :call TmuxOrSplitSwitch('h', 'L')<cr> noremap <silent><C-l> :call TmuxOrSplitSwitch('l', 'R')<cr> noremap <silent><C-k> :call TmuxOrSplitSwitch('k', 'U')<cr> noremap <silent><C-j> :call TmuxOrSplitSwitch('j', 'D')<cr> noremap <silent><C-b> :call TmuxOrSplitSwitch('b', 'l')<cr> else noremap <C-h> <C-w>h noremap <C-j> <C-w>j noremap <C-k> <C-w>k noremap <C-l> <C-w>l endif