2009. 6. 15. 18:00
개인적으로 가장 좋아하는 편집기는 vim이다. 이슬비에 찌질댈때도 vim을 쓰고 C로 어플을 짤 때도 vim을 쓰고 sml로 PL 플젝을 할 때도 vim을 쓰고 Verilog로 CPU를 짤 때도 vim을 쓰고 ruby로 스크립트를 작성할 때도 vim을 쓰는 열혈 추종자라고 할 수 있을 거다.

사람에 따라 vim은 GPL을 따르지 않기 때문에 악마의 프로그램이라는 둥, emacs가 더 킹왕짱 위대하다는 둥 하지만 보편적인 평가로는 vim은 최고의 텍스트 에디터라는데는 대부분 동의한다. emacs는 약간... 에디터에서 동떨어진...

근데 이 vim은 초심자에겐 엄청난 진입 장벽이 있는데, 그건 바로 3개의 모드일 것이다. 입력 모드, 명령 모드, Ex 모드는 보통 글을 찍으면 바로 찍히는 에디터를 써 오던 사람들에게는 안드로메다보다도 더 높은 진입 장벽으로 작용할 것이다.

하지만 한번 익히면 정말 빠져나올 수 없는게 vim의 세 모드다. 보통의 에디터보다 훨씬 많은 키 바인딩으로 인해 정말 구석구석 에디팅이 가능한 것은 최고의 매력이다.

자, 그럼 이제 몇 가지 팁을 찾아낸 것을 적당히 정리해서 적어보자. 특별한 말이 없으면 전부 Ex모드에서 치는 : 명령어이다. :를 입력한 뒤에 명령어를 치자.
  • set incserch
    이 명령은, /명령을 통해 단어를 찾을 때 다 입력하기 전에 해당 단어가 어디 있는지 보여준다. 물론 esc 등으로 검색을 취소하면 원래 위치로 커서가 돌아오니 적절하다.
  • set hlsearch
    이 명령은 찾은 결과가 highlight되어 강조되어 보이게 하는 기능이다. 강조된 것을 없앨 때는 noh 명령을 통해 끄면 된다.
  • lcd %:p:h
    이 명령은 현재 파일이 위치한 디렉토리로 이동하는 명령이다. 원래 vim은 파일을 열더라도 작업 디렉토리는 바뀌지 않아서 항상 절대경로로 파일 이름을 지정해주곤 하는데, 이 명령을 쓰면 같은 디렉토리에 들어있는 여러 파일들을 편하게 열어볼 수 있어 좋다.
  • sp (vs)
    sp나 vs는 화면을 갈라서 여러 파일을 동시에 작업할 수 있게 해 주는 명령이다. sp는 가로로 갈라지고 vs는 세로로 갈라진다. 갈라놓으면 Ctrl+W와 화살표로 각 창을 이동할 수 있다.
    만약 이동 키인 hjkl을 대문자로 해서 Ctrl+W 뒤에 입력하면 해당 창이 그 방향으로 이동한다.
  • res
    현재 창의 높이를 최대로 늘린다. 좁을 때 적절하다.
  • au WinEnter * ...
    해당 창으로 이동했을 때 ... 명령이 수행된다. res를 넣어주면 해당 창으로 이동했을 때 그 창이 자동으로 최대화되어 편리하다.
  • au BufEnter * ...
    해당 파일을 열었을 때 ... 명령이 수행된다. lcd %:p:h 명령을 넣어주면 파일이 열릴 때마다 이동하니 좋다.
  • enew! | r!...
    현재 편집중인 파일을 없애고 ... 명령을 쉘에서 수행한 결과를 해당 창에 넣는다. 예를 들어서 enew! | r!ls 를 하게 되면 현재 디렉토리의 파일 목록이 불러와지는 것이다. 프로그램 만들던 중에 문법 오류 체크하는덴 이만한게 없다.

'유용한 어플 > vim' 카테고리의 다른 글

Vim의 유용한 기능들  (3) 2009.06.15