작업속도 향상은 마우스에 손이 가지 않는것에서 시작된다. 그리고 손의 위치가 적게 움직일 수록 작업속도는 향상된다. 또한 키보드에서 손의 위치의 변경이 적을수록 작업속도는 향상된다.
오늘은 Vim에 대해 간단히 알아보도록 하자
Vim이란 Unix시절에서 부터 사용되었던 텍스트 편집기 vi를 호환하며, 수많은 부가기능과 개선사항을 가지고 있는 텍스트 편집기이다.
Vim은 CUI기반으로 작동하기 때문에 모든 동작을 마우스 없이 사용할 수 있다.
그렇기 때문에 Vim은 익숙해지면 매우 강력한 생산성 향상을 가져다 주지만, 익숙해지기 전에는 기존 IDE보다 생산성이 떨어지는 결과를 가져온다.
배움에 있어 가장 빠른 방법은 직접 사용해보며 배우는 것이다. 터미널에 vimtutor를 입력하면 Vim 길잡이가 실행되는데, Vim 길잡이를 통해 기본적인 조작법을 익혀 두는것이 좋다.

Vim 길잡이를 처음하게 되면 오랜시간이 걸리는데, 시간이 날때마다 틈틈히 하게 되면 어느순간 Vim에 대한 입력이 익숙해져 있을 것이다.
Vimtutor를 끝냈다면 Vim Cheat Sheet를 통해 Vim의 단축키 조합을 알아두면 좋다.
Vim Cheat Sheet
이렇게 텍스트로만 하면 습득력이 줄어들수 밖에 없는데, Vim을 게임을 통해서 습득할 수 있다.
Vim Adventure라는 게임으로 Level별로 Vim의 조작법을 습득 할 수 있다.
하지만 Level 1 까지만 무료이고, Level 2 부터는 유료로 구매해야 한다. 6개월에 25달러로 영구 구매가 아니라는 점이 걸리지만, Vim에 대해 좀더 알아보고 싶은 경우 추천 한다.
Vim Adventure

Neovim은 더이상 발전하고 있지 않은 vim을 새롭게 만들어 기존 vim과 호환성을 가지며, 기존 vim보다 가볍고 빠르다.
Mac기준으로 brew를 이용하면 neovim을 손쉽게 설치 할 수 있다.
$ brew install neovim
neovim을 설치한 뒤에는 터미널에 vi 나 vim 대신 nvim을 이용해 neovim을 실행 할 수 있다.
Vim을 배웠지만, 대부분의 주니어 개발자들은 Vscode를 이용해 개발을 하고 있을 것이다.
Vscode에서도 Neovim 플러그인을 설치해 Vim과 비슷한 환경을 통해 기존 개발환경을 유지한 채로 Vim을 도입할 수 있다.

Vscode 플러그인으로 Neovim과 Vim이 있는데, Vim은 Vim엔진을 가상으로 돌려서 Vscode위에서 동작시키는 것이고, Neovim 플러그인은 Neovim환경을 Vscode에서 구현하는 것이라 Neovim이 좀더 가볍고 호환성이 좋다고 한다.
애써 배운 Vim인데 개발 환경에서만 활용하는건 아쉽다.
Vimium 크롬 확장프로그램을 이용하면 Vim 단축키를 이용해 마우스를 사용하지 않고 키보드만으로 웹 브라우징이 가능하다.

설치 후 브라우저에서 ? 를 입력하면 vimium에 대한 명령어가 나오게 된다.
vimium에서 가장 강력한 기능은 f를 입력했을때 발휘 된다.

f를 입력함과 동시에 화면에 아이콘이 표시되는데 해당 아이콘을 키보드에 입력 할 경우 해당 아이콘의 위치가 클릭된다.
이를 통해 마우스 없이 키보드 만으로 웹 브라우징이 가능해진다.