2017년 11월 17일 금요일

Vim이란??

Vim

시작하며…

다른 블로그들 처럼 카테고리로 자료를 분류 할 수 있었다면 있었다면 Vim이라는 카테고리를 만들었을 거 같아요.

그 정도로 Vim은 사실 할 이야기가 많은거 같아요.

뭐, 어찌 되었든 Vim에 대해서가 블로그의 첫 글입니다.^^

개발을 위해 중요해서라기 보다는 요즘 Vim을 가지고 이것 저것 장난을 치다 보니
VIM에 대해 이것 저것 이야기 하는 것이 재미 있을거 같다는 생각이 들어서 적어 보려고 합니다.

우선 VIM이란 무엇일까요??

Vim이라고 네이버나 구글에 검색을 하게 되면 많은 자료가 나와 있어요.

거기에는 Vim에 대한 자세한 정의와 역사등이 나와 있지만

여긴 제 블로그이니 제가 생각하는 Vim에 대해 적어 보려고 해요.^^

저에게 Vim이란 무료로 배포 되는 편리하고 확장성이 좋은 문서 편집기라고 보면 될거 같아요.

1. 무료

세상에는 다양한 문서 편집기가 있지요.

Editplus, UltraEdit, Notepad++, Emacs 등등(아는게 많지는 않아요.^^)

어둠의 경로를 통해 시리얼을 받아 기능이 좋은 유료 제품인 Editplus나 UltraEdit도 사용할 수 있지만 무료 라는 것은 큰 장점이 있어요.

요즘은 Notepad++가 기능이 많이 좋아서 위의 제품들 보다 많이 사용 되는 것으로 알고 있는데
만약에 성능이 조금은 떨어 지더라도 일단 단축키에 익숙해 지면 손쉽게 다른 편집기로 이동하기 어렵지요.
(Emacs 같은 경우는 거의 종교 수준이라 개종한다라고 표현도 하더군요..ㅋㅋ 저도 해보려다가 손가락이 아파서 포기 했지요.)

특히 회사에서 일을 하게 된다면 어떤 편집기를 쓸지 모르니 일단은 무료 툴에 익숙해지는게 옳다고 봐요.

이에 Vim도 무료로 사용할 수 있는 툴이고 또한 거의 모든 OS에서 사용이 가능하지요.

그러니 한번 익숙해 지면 Linux, MACOS, Windows 등에서 라이센스 걱정 없이 사용할 수 있어요.

2. 편리성

Vim은 초기에 배우기가 까다롭죠.

명령어 모드라니 비주얼 모드라니…

편집을 하려는데 왜 모드를 배우고 있는지 모르겠고…

종료는 어떻게 해야 하는지 모르겠고…

글은 왜 안 써지는지도 모르겠고..(Command 모드에서는 글자 입력이 되지 않아요)

그렇지만 어느 정도만 익숙해지면(한.. 일주일 정도?? 개인차는 있을 수 있다^^) 세상 편함을 느낄 거예요.

가장 좋은건.. 화살표에 손이 가지 않아도 되요.

오래 타자를 치고 있어도 부담이 가지 않지요.^^

아마 이런 그림을 어디선가 본적이 있을 거예요.

Vim Graph

출처: http://blog.revolutionanalytics.com/2015/03/some-thoughts-on-vim.html


x는 시간 축이고, y는 사용성이라고 봐야 하겠죠??

암튼 VI(≒Vim)은 초반에만 잘 배워 두면 사용성에는 그 누구보다 좋다는 것을 느낄 수 있을거예요.

3. 확장성

기본적인 기능에 Vim은 충분히 충실해요.

하지만 사람이란 항상 욕심이란게 있기 마련이죠.

예를 들어 편집기에서 10칸 아래로 내려가서 작업을 하고 다시 10칸으로 내려가야해요.

그런데 10칸 씩 내리는 작업이 반복적으로 하게 되면 굉장히 귀찮거든요.

이를 Keymap을 정해서 한번의 Key로 내려가게 하려면 Vim 만큼 편리하게 바꿀 수 있는 편집기는 없을 거예요.

위처럼 단순한 확장 뿐만이 아니라 여러 Bundle들을 추가 하여 자신만의 독특한 편집기를 만들 수가 있죠.

이전에야 직접 찾아서 Bundle을 추가 하고 관리하여야 했지만 요즘에는 Vundle.vim이라는Bundle 관리자 같은 Bundle이 생겨서 누가나 쉽게 원하는 Bundle을 추가 할 수 있게 되었죠.

그래서 어떤 Vim 사진을 보면 Source Insight 같은 IDE 형태로도 변경할 수 있을 정도죠.

마치며….

카테고리까지 만들려고 할 정도의 Vim이니 하고 싶은 이야기가 많다는 거겠죠?? ^^

생각보다 VIM의 사용성이 좋다는걸 여기서 보여드릴게요.

하나씩 하나씩 VIM의 장점을 보도록 하시죠!!

댓글 1개:

  1. 사용성이 아니라 딱 learning curve 라고 나와있는데;;

    답글삭제