Vim은 이벤트가 발생하지 않을 때 몇 초 후에 경고음을 울립니다.

Vim은 이벤트가 발생하지 않을 때 몇 초 후에 경고음을 울립니다.

저는 tmux 세션에서 Vim을 사용하고 있는데 최근에 다른 tmux 창으로 전환하면 Vim이 몇 초 후에 경고하는 것을 발견했습니다. 창을 이동한 후 Vim에서는 아무 일도 일어나지 않습니다. 일반적으로 일부 편집을 수행하고 파일에 쓰기를 사용한 :w다음 tmux로 이동합니다. 몇 초 후에 Vim은 경고음을 울리고 tmux가 깜박여 Vim에 주의가 필요함을 나타냅니다.

Vim에게 왜 그토록 도움이 필요한가요? 이런 일이 발생하지 않도록 하려면 어떻게 해야 합니까?

업데이트 #1

:au FocusLost필요에 따라 출력:

:au FocusLost
--- Auto-Commands ---
Press ENTER or type command to continue

링크 .vimrc.tmux.conf:

업데이트 #2

버전 Vim 7.3 및 tmux 1.6을 사용합니다. 이 모든 일은 tmux를 실행하는 SSH 세션 내에서 발생합니다. 나는 Ctrl+A Ctrl+Ntmuxconf를 따르고 tmux 키를 사용하여 Vim 창 밖으로 전환합니다.

답변1

자동 명령 및 포커스

:au포커스 상실과 관련된 자동 명령(또는)이 있는지 확인하세요 . :autocmd실행할 수 있는 명령은 다음과 같습니다 vim.

:autocmd FocusGained
--- Auto-Commands ---
fugitive_status  FocusGained
    *         call fugitive#reload_status()

:au FocusLost
--- Auto-Commands ---
Press ENTER or type command to continue

위 내용은 이를 확인하는 방법을 보여줍니다. 첫 번째 예에서는 명령의 전체 이름을 사용합니다 :autocmd. 두 번째 예에서는 명령의 축약형( :au)을 보여줍니다. 이들 중 하나에 그룹 이름을 제공하여 자동 명령 목록의 하위 집합을 표시할 수 있습니다.

어쩌면 에너지가 필요할까요?

저는 이것에 대해 별로 익숙하지 않지만 Vitality라는 플러그인을 발견했습니다. 이 플러그인은 iTerm2및 문제 에 도움이 될 것 같았습니다 tmux. 이것이 무엇을 수정하는지 완전히 확신할 수는 없지만 한 번 살펴볼 가치가 있을 것입니다.

웹페이지에서 발췌

예를 들어 iTerm 2에서 Vim을 실행하면 tmux를 통해 FocusGained 및 FocusLost 자동 명령을 복원할 수도 있습니다!

인용하다

답변2

vim-gitgutter플러그인으로 인해 예상치 못한 Vim 경고가 발생했습니다. 내 수정 사항에 다음 줄이 추가되었습니다 .vimrc.

let g:gitgutter_realtime = 0

소스에 대한 다음 의견은 나에게 해결책을 제공했습니다. https://github.com/airblade/vim-gitgutter/issues/105#issuecomment-23055765

올바른 방향을 알려준 @slm에게 감사드립니다 :)

관련 정보