Vim 입력모드 노말모드 전환시 한/영 자동 전환하기

2020-05-23

Vim에서 한글 입력 중에 Esc로 노말 모드 진입할 때 다시 영문으로 바꿔줘야 하는 불편함이 있다.

이 문제를 해결해 보려고 여러 사람들이 여러 방법을 시도 했고 그 흔적들은 아래 블로그 글들에서 볼 수 있다.

위 블로그들에서 소개된 방법과 별개로 im-select 라는 툴을 이용하는 방법을 소개한다. 이 방법을 소개하는 이유는 내게 가장 잘 맞았고 기대한 대로 잘 동작하며 Visual Studio Code 의 Vim Mode에서도 비슷한 방법을 적용할 수 있기 때문이다!

아래 설명은 macOS 환경 기준이다.

(다른 환경은 시도해 보지 않았다.)

im-select 설치하기

아래 명령으로 im-select라는 툴을 설치한다.

(참고 - https://github.com/daipeihust/im-select)

curl -Ls https://raw.githubusercontent.com/daipeihust/im-select/master/install_mac.sh | sh

위 명령을 실행하면 /usr/local/bin 경로 아래 im-select 라는 실행 파일이 설치된다.

brglng/vim-im-select 플러그인 설치

‘brglng/vim-im-select’라는 Vim 플러그인을 설치한다.

(참고 - https://github.com/brglng/vim-im-select)

(vim-plug를 통해 플러그인을 설치했다. 플러그인을 설치하는 방법은 vim-plug 페이지를 참고한다.)

call plug#begin('~/.vim/plugged')
    Plug 'brglng/vim-im-select'
call plug#end()

설치를 완료하면 아래와 같이 한글 입력이 가능한 입력 모드에서 Esc 키를 한번 누르면 영문으로 입력 언어가 변경되면서 노말 모드로 진입하게 되어 추가적인 IME 전환이 필요 없어진다.

이 방법의 모드 전환 시 마다 im-select 프로세스를 실행하기 때문에 저사양 환경에서 입력 전환이 조금 지연되는 단점이 있다.

하지만 설정이 비교적 쉽고 사양만 따라 준다면 기대한 대로 잘 동작한다.


Profile picture

Written by 김병훈 - 개발자/ MLOps
About Me