Vim-비주얼 모드 종료시 지연


8

텍스트를 선택한 후 ESC를 눌러 비주얼 모드를 종료하면 텍스트가 선택 해제되고 정상 모드로 돌아갑니다 (1 ~ 2 자만 선택한 경우에도). 이 지연을 피할 수 있습니까?

vim  delay 

답변:


2

일부 추가 기능에 매핑되어 발생할 수 있습니다. 예를 들어 탭 막대 플러그인을 사용하고 0-9를 매핑하여 숫자 버퍼로 전환합니다. 키가 이와 같은 추가 기능에 매핑 될 때마다 vim은 키를 누른 후 몇 초 동안 기다렸다가 추가 키를 누를 것인지 확인합니다.

추가 매핑이 있는지 확인하려면 첫 번째 열에서 실행 :map하고 찾으십시오 <Esc>. 매개 변수없이 실행하면 :map모든 사용자 지정 매핑이 나열됩니다. 비주얼 모드에서 맵핑 만 나열하려면을 실행하십시오 :vmap.

추가 매핑이 있으면 매핑 제거 외에 일시 중지를 제거하는 방법을 모릅니다. vim이 어떤 조치를 취해야하는지 확실하게 알기 위해서는 일시 중지가 필요합니다.


1
VT100과 유사한 터미널 (Xterm / Rxvt / PuTTY / GNOME 터미널 포함) Esc에서 화살표 키를 포함한 모든 특수 키의 접두사이기도합니다.
user1686

@grawity : True이지만 Vim은 이스케이프 시퀀스에 매핑 시간과 다른 타임 아웃 값을 사용하므로 이스케이프 시퀀스를 처리해도 일반적으로 여기에보고 된 문제가 발생하지 않습니다. 참조하십시오 :help 'timeout'.
garyjohn

고마워요 이제 내 사용법을 방해하는 매핑을 찾아야합니다.

0

전역 또는 시각적 모드에 대한 <ESC>에 바인딩 된 매핑이 없지만 (: verbose vmap <ESC> 호출하면 결과가 제공되지 않음) Visual 모드를 종료 할 때 여전히 상당한 지연이 있습니다. vimrc가없는 새로 설치하는 경우에도 지연이 발생합니다. <Cc>를 사용하면 지연없이 비주얼 모드를 종료합니다.

<Cc>를 눌러 모드를 종료하는 것을 좋아하지 않기 때문에 현재 시각 모드에서 <ESC>를 <Cc>에 매핑합니다. 지연없이 <ESC>를 사용하여 비주얼 모드를 종료합니다.

:vmap <ESC> <C-c>

또는 vimrc에 다음 줄을 넣으십시오.

vnoremap <ESC> <C-c>

<ESC>에 바인딩 된 전역 또는 시각적 모드 매핑이있는 경우 작동하지 않습니다.


-2

여전히 할 수있는 것은 CTRL+ C를 사용하여 시각적 모드를 종료하는 것이므로 지연을 피해야합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.