2014-12-30 6 views
1

tmux + vim을 사용하고 있습니다. vim split 윈도우와는 달리, tmux의 다른 창으로 포커스를 이동할 때마다, 다음 사진과 같이 라인 하이라이트가 꺼지지 않습니다.vim + tmux의 커서 (현재) 행 강조 표시를 비활성화하십시오.

Vim in two panes have line highlight 빨간색 줄은 커서 줄이고 포커스는 아래쪽 tmux 창으로 이동했지만 위쪽 창 vim 커서 줄은 여전히 ​​강조 표시되어 있습니다.

창을 tmux에두고 현재 tmux 분할 창에 강조 표시 만있는 경우 커서 행 강조 표시를 해제하고 싶습니다. 그 방법을 아는 사람이 있습니까? 라인의 하이라이트

나의 정력 설정은

"""""""""""""""""""""""""""""""""""" 
" Cursor line highlight 
hi CursorLine cterm=NONE ctermbg=darkred guibg=darkred 
hi CursorColumn cterm=NONE ctermbg=darkred guibg=darkred 
" hlight current line current window only 
augroup CursorLine 
    au! 
    au VimEnter,WinEnter,BufWinEnter * setlocal cursorline 
    au WinLeave * setlocal nocursorline 
augroup END 
"""""""""""""""""""""""""""""""""""" 

====== 편집 (1) ====== 또한

au VimEnter,WinEnter,BufWinEnter,FocusGained,CmdwinEnter * setlocal cursorline 
au WinLeave,FocusLost,CmdwinLeave * setlocal nocursorline 

작동하지 않는 것입니다. 당신이 iTerm2를 사용하는 경우

====================

+0

tMux 안에'FocusLost, FocusGained' 이벤트가 있습니까? 그런 다음 사용할 수 있습니다. –

+0

단일 스레드를 사용하고 별도의 쉘에서 실행하면 맨 위 세션에서 다른 세션을 위해 남겨 두었다는 것을 알지 못하므로 * 매우 * 단순한 작업처럼 들릴 수 있습니다. Vim의 창을 사용하는 게 어떨까요? – romainl

+0

@IngoKarkat, 나는 FocusLost를 얻으려고 시도했다. 그러나 턱시도 안에, vim은 항상 초점을 잡는다고 생각합니다. – VforVitamin

답변

2

당신이 작동합니다 sjl/vitality.vim 플러그인을 사용할 수 있습니다 (예 : FocusLost/FocusGained 기능을 복원) 상자 밖에서 (README에 따르면, 나는 그것을 시험해 볼 수 없다).

akracun/vitality.vim 포크는 다른 터미널 (커밋 로그에 따라 xterm/uxterm 기능을 제공하지만 gnome-term에서는 완벽하게 작동 함)을 제공합니다.

  • 이 .tmux.conf
  • set -g focus-events on를 추가

    au VimEnter,WinEnter,BufWinEnter,FocusGained,CmdwinEnter * setlocal cursorline 
    au WinLeave,FocusLost,CmdwinLeave * setlocal nocursorline 
    

그런 다음의 .vimrc에 let g:vitality_tmux_can_focus = 1을 추가

에 당신이해야합니다 TMUX의 1.9A에서 시작

은 예상대로 작동해야합니다.

+0

감사합니다. Terminal.app에서도 작동하는 것 같습니다. – VforVitamin

관련 문제