Skip to main content

Command Palette

Search for a command to run...

Vimium으로 가볍게 Vim 입문하는 건 어떨까?

Updated
Vimium으로 가볍게 Vim 입문하는 건 어떨까?

vim을 예찬하는 글입니다.

  • 맨 처음에 코드 에디터로 sublime text를 주로 썼다.

  • 이후엔 atom을 썼다. 나는 무료를 좋아한다.

  • 그러다가 vscode가 나오고 (정확히 이유는 기억 안나지만 아마 속도 때문에?) 탭이 구현되지 않은 상태에서도 vscode를 쓰기 시작했다.

  • vscode에서도 vim extension을 깔아서 몇 번 시도는 해봤으나, vscode에 적당히 얹힌 느낌이라 은근 키 충돌이 있었다. 특히 atom keymap을 깔아서 쓰다보니 더 그랬는지도.

  • 근데 vscode가 너무 느려져서 vscode의 대체제를 찾기 시작했다.

  • 요건은 vscode보다 빠를 것, 그리고 여러 단축키를 잘 지원할 것.

  • zed도 잠깐 써봤는데 아직 생태계가 부족한 느낌.

  • neovim으로 입문했는데 생각보다 괜찮았다. 무엇보다, lua로 짜여졌는데도 빨라서 놀랐다. tui라서 어느 정도 메모리를 덜 먹는 걸까? 깊게 알아보진 않았지만, 최소한 나의 개발환경에서 neovim은 무척 빨랐다.

  • 그리고 vscode에서 vim extension을 여러 번 시도해봤지만 번번히 실패했던 것과 다르게 이번에 neovim을 써봤을 때는 생각보다 잘 적응했다.

    • 물론 요즘(?) tui 프로그램들이 마우스 클릭을 지원해서 초반에는 트랙패드를 많이 쓰긴 했지만..
  • 어느정도 neovim에 익숙해진 지금와서 생각해보면 나의 neovim 적응을 도왔던 것은 vimium이었던 것 같다.

  • 브라우저에서 키보드 단축키로 navigation 하는 것이 익숙해지다보니 vim에 대한 저항은 사라지고, 오히려 친숙하고 빠르게 웹서핑을 하는 것에 몰입을 느낄 정도였다.

  • 심지어 vimium-like 인터페이스를 macOS 레벨에서 적용할 수 있는 homerow를 알게 되고 점점 더 vim에 빠져들게 된 나…

  • vimium 과 homerow을 쓰다보니 vscode에서도 normal 모드인 것 처럼 나의 행동 양식/사고 방식이 바뀌어버림을 느꼈다.

  • 이후에는 astronvim으로 광명찾아 재미있게 살고 있다.

  • lazyvim도 인기있는 것 같던데, 너무 opinionated 느낌이라 적당히 커뮤니티 드리븐 astronvim 맘에 들었다.

  • 특히, 맘에 드는 vim 플러그인을 찾았을 때, astronvim community repo를 찾아보면 다른 유저들이 적당히 미리 세팅 해놓은 값들을 손쉽게 설치할 수 있는 부분이 가장 좋은데, 설치하고 나서 기존 keymap과 겹치지 않게 잘 조율하는 것이 시간이 가장 오래 걸리기 때문.

  • 그래서 최종적으로 vim을 왜 쓰게 됐냐는 질문을 물어보면 나는 이렇게 답하고 싶다.

      1. vscode는 너무 느리다.

        1. 내 생각의 속도를 따라오지 못할 정도로 느리다. 메모리도 많이 먹는다.

        2. 개인적으로 electron으로만 실행되는 앱이라면 설치하기 보다 arc/zen browser에 돌려버리는 것을 선호하기 때문에 electron 기반의 앱이라는 것이 확실한 감점 요소였다.

      1. 키보드로 설정 가능한 부분들이 많긴 하지만, (1)의 이유 때문인지 단축키를 써도 코딩에 몰입되기보다 오히려 깨지는 느낌이다.
      1. vim extension에 훅을 건다거나, 단축키를 변경한다거나, customization이 훨씬 자유롭다.

        1. 근데 이거는 vscode를 쓰면서 해봐야겠다는 생각조차 안해본거긴한데, vim에서는 당연히 되니까 찾아보고 설정을 했던 것이고, 이와 반대로 vscode에서는 주는 대로 받아 먹고 수동적으로(?) 살았다.

        2. vscode는 어떤 설정은 checkbox 등으로 gui스럽게 제공하다가, 갑자기 어떤 설정들은 또 settings.json에서 직접 raw json파일을 수정하라고 하는 등 뭔가 일관적이지 않은 느낌이 있었는데, neovim은 모두 공평하게 lua 파일에서 설정한다.

        3. 사소한게 마음에 안들어서 찾아보면, 나와 같은 고민을 하는/했던 사람이 무조건 있다. 그렇게 작업흐름을 점진적으로 개선하다보면 당연히 더 몰입할 수 있게 되고, 능률도 높아진다.

일 하는게 좀 재미없다? vim 한 번 써보세요. 은근히 재미있습니다. 저는 정말 재미있습니다.

More from this blog

Auto-Switch iTerm Profiles on SSH Connection

미국에 있는 서버와 한국에 있는 서버는 핑 차이가 크다. 미국서버에 배포하던 서비스를 최근에 한국으로 옮기니, 로컬 개발 터미널인지 라이브인지 구분이 힘들어졌다. 좋은 방법이 없을까 고민하던 차에 내가 발견한 방법을 공유한다. 1/ 프로필을 생성한다. 나는 평소에 밝은 테마(light theme)를 사용하기 때문에 이 프로필은 어두운 테마(dark theme)로 설정했다. 2/ 라이브 환경으로 접속하는 커맨드(e.g. ssh)에 대해 다음과 ...

Nov 23, 2025
Auto-Switch iTerm Profiles on SSH Connection

warp directory `wd`

터미널에서 특히 자주 찾게되는 폴더들이 있다. nvim 설정 디렉토리, 회사 git repo 디렉토리, 개인 git repo 디렉토리 등등. 이런 디렉토리들을 즐겨찾기처럼 등록하고, 즐겨찾기 목록을 볼 수 있고, 즐겨찾기에 등록된 곳을 바로 이동할 수 있게 만들어주는 스크립트가 https://github.com/mfaerevaag/wd 다. 해당 페이지에 있는 Setup 섹션을 참고해서 설치하자. oh-my-zsh의 경우 plugins에 wd...

Oct 18, 2025
warp directory `wd`

macOS에서 키보드로 출력 오디오 장치 바꾸기

최근에 헤드폰을 하나 샀다. 하지만 헤드폰으로 듣다가 밥을 먹을 때는 맥북 스피커로 바꾸고 싶다. 그렇게 출력 장치를 바꿀 때마다 상단의 제어센터 버튼을 눌러서, 오디오 버튼을 누르고, 위 스크린샷에서 원하는 장치를 고르는 것은 매우 귀찮더라. 키보드 “딸깍”으로 오디오 출력 장치를 바꿀 수 있는지 찾아봤고, 그 결과를 공유한다. https://github.com/deweller/switchaudio-osx 를 활용한다. SwitchAudioS...

Sep 12, 2025
macOS에서 키보드로 출력 오디오 장치 바꾸기

토막글 다섯 개 (5)

1. PR Approve에는 장미를 한 송이 🌹 팀원의 풀 리퀘스트를 Approve 할 때, LGTM와 같은 인삿말도 좋지만 나는 장미를 쓴다. 낭만 있고, 메신저에서 PR Approve 구걸을 할 때 장미를 부탁한다고 하거나, 팀원의 Approve 부탁 메세지에 장미 이모지로 답변하기 참 좋아서 애용하고 있다. PR Approve와는 전혀 상관없는 개념이지만 업무에서 자주 쓰이지 않는 심볼이라면 어느 거라도 적당히 재미있어 추천한다. 2. ...

Aug 19, 2025
토막글 다섯 개 (5)

olaf.kr

50 posts

그 날 기분에 따라 반말과 존댓말을 섞어씁니다.