진짜 개발자
본문 바로가기

IDE/Intellij

Intellij - Intellij에서 Vim 사용하기, Window에서 IdeaVim "jj"를 "ESC"로 맵핑하기 (mac terminal vim jj remap)

728x90
Intellij에서 Vim을 이용해 코딩하기

우선 Intellij에서 vim을 이용해 코드를 작성하는 방법에대해 알아보고, Intellij의 Ideavim에서 jj키를 <Esc>로 맵핑하는 방법에 대해 알아보도록 하겠습니다.

 

 

Intellij에서 Vim을 이용해 코딩하기

1. Vim의 장점

http://korean-daeddo.blogspot.com/2015/12/vivim-editor.html

vim을 이용한다면 (잘 사용한다면) 현재 Window에서 그냥 코딩을 했을때 보다, 더욱 코딩 속도가 향상될 수 있습니다. 위의 링크를 참고하시면 자세한 이유를 알 수 있습니다.

 

간단히 말씀드리자면, h, j, k, l을 이용해 커서를 이동할 수 있어, 오른손이 방향키로 가는 시간을 단축할 수 있으며, 여러 작업 명령어(copy & paste, 치환 )와 이동을 위한 단축키들 예를 들면 e(단어의 끝) , b(단어의 시작), $(문장의 시작), ^(문장의 끝), gg(현재 에디터의 시작), G(현재 에디터의 끝), 등등이 있기 때문입니다.

 

 

 

2. Intellij에서 Vim 사용하기

설치 방법은 간단합니다. 우선 Shift를 두번을 연타하여 Search Everywhere를 엽니다. Search Everywhere는 Intellij의 개발자가 작성한 클래스 및, 라이브러리, 여러 Preference, 등을 찾아주는 유용한 기능입니다. 그 후 plugins를 입력하고 Actions에 나타나는 Plugins를 클릭합니다.

 

여기서 IdeaVim을 검색하고 Install버튼을 클릭합니다. (필자의 경우 이미 설치되어 있기 때문에 Uninstall이 나타납니다.) 그후, Intellij를 다시 시작합니다. 이게 끝입니다.

 

Test 클래스를 생성해봅니다. 그러면 그림과 같이 커서모양이 VimNormal모드와 같이 변경됩니다.

 

 

 

3. Window에서 Vim의 jj<Esc>로 맵핑하기

앞서 Vim의 장점을 설명드리며, 오른손의 움직임을 최소화 할 수 있다고 말씀드렸습니다. 그렇다면 왼손은 왜 많이 움직이게 될까요? 바로 <ESC>를 누를때가 가장 큰 이유일 것입니다.

 

예를 들어, Insert 모드(편집모드라고도 불리웁니다.)에서 편집을 끝내고, Normal 모드로 돌아갈때, 또는 ex 모드(: 콜론)에서 다시 Normal모드로 돌아올때 등이 있습니다. 그렇기 때문에 이번에는 왼손의 움직임을 최소화 할 수 있도록 jj키를 <ESC>로 맵핑하는 방법을 알아볼 것입니다.


 

3.1 Window에서 jj를 ESC로 맵핑하기

방법은 간단합니다. 우선 내 PC \ C드라이브 \ 사용자(Users) \ 사용자이름의 경로에 .vimrc파일을 생성합니다. 하지만 윈도우10의 경우 .ideavimrc파일을 만들려고 하면 위와 같은 에러가 발생합니다.

 

따라서 cmd창을 이용하여 파일을 생성해야 합니다. 우선 앞서 말씀드린 경로로 이동합니다. 그 후, copy con .ideavimrc명령어를 입력하여 파일을 생성합니다. 이 명령어는 파일을 생성함과 동시에 파일에 작성될 텍스트를 같이작성할 수 있습니다. inoremap jj <Esc>를 입력한 뒤 enter를 누르고, Ctrl + c를 이용해 작성을 종료하면 파일이 생성됩니다.

 

이제 Intellij가 켜져 있었다면 재시작을 한 뒤 , Insert Mode에서 jj를 입력하면 다시 일반모드로 돌아오는 것을 확인할 수 있습니다.



3.2 Mac에서 Ideavim의 jj를 ESC로 맵핑하기

Window와 마찬가지 입니다. 사용자의 Home 디렉토리에 ".ideavimrc" 파일을 생성하고, 파일에 "inoremap jj <Esc>" 를 추가하면 끝입니다.




4. Mac Terminal vim의 jj를 <esc>로 mapping

` ~/.vimrc` 파일에 `:imap jj <Esc>` 를 입력해주면 됩니다. `.vimrc`파일이 없다면 직접 생성하면 됩니다.