Vim 시작하기! Vim을 학습할 수 있는 유용한 사이트 소개

오늘 난. vim 을 쓰기로 했다.

편집기를 만지다 보면 생각한 위치에 커서가 이동해 있으면 하는 경우가 있다.

마우스에 손을 옮겨 클릭을 하고 다시 키보드로 돌아오는 과정을 참을 수가 없었기에. 결정했다.

난. vim 을 쓸 줄 모른다.

아. 이건 하나 할 줄 안다.

리눅스에서 "vim [파일명]" 치고 들어가서 i 로 대충 수정하고는 ESC 누르고 :wq 하고 빠져나온다.

  • vim [파일명]
  • 파일명에 해당하는 파일 vim 편집기로 수정(또는 파일 생성)
  • i
  • 편집모드, ESC 로 빠져나온다.
  • :wq
  • 저장모드

Vim 을 굳이 써야하나?

Q. Vim 을 써야 하는 이유가 무엇일까?

결론부터 말하자면,

"생각하는 속도대로 문서의 편집이 가능해진다."

군대 행정병 출신 분들에 의하면, 한글 워드프로세서를 사용할 때 마우스에 손을 올리는 것은 곧 갈굼을 의미했다고 한다.

GUI 환경에서 마우스를 사용하는 것은 곧 문서 작성 속도의 저하를 의미한다.

  • 검지손가락의 기본 위치(F, J) 를 벗어나는 것이 곧 작성 속도가 떨어지기에
  • vim 에서는 방향키조차 쓰지 않는다. (방향조작은 h,j,k,l 로 한다.)

Emacs?

*해커들이 쓴다는 Emacs는 어떤가? *

Vim Everywhere. vim 은 어딜 가나 있다. 마치 우리 주변에 자동차는 항상 보이듯이. 하지만 비행기는 어떤가?

마찬가지로 Emacs 는 흔하지 않다. Emacs를 선택지에서 과감히 버린 이유가 그것이다.

다음 사진으로 자세한 설명은 생략한다.

칼-스위스나이프-포크수저를-에디터에-비교
vim, emacs, nano 비교 (vim 은 좀 과소평과되어있음...)

출처 : cube-drone.com

Emacs를 써볼까도 했지만, 사용자 수가 vim 쪽이 압도적으로 많고, vim 쪽이 보다 universal 한 사용 환경을 제공하기 때문에 vim 을 일단은 마스터 해보기로 한다.

vim 을 써보기로 한 결정적인 이유중에 하나는, 안드로이드 스튜디오의 기반이 된 JAVA IDE 인 intelliJ 에서도 vim 플러그인을 기본(선택사항)으로 제공한다.

vim Tutorial

일단 시작하자!

Google에서 "vim training" 으로 검색을 해보니 몇가지 흥미로운 사이트들이 검색됐다.

OpenVim

openvim.com

openvim.com-tutorial-웹-스크린샷
openvim.com

  • 친근한 Command 가 Vim 의 사용법을 한 번 훑어준다. 10분정도면 vim 에 어떤 주요한 기능이 있는지 알아볼 수 있다.

vim-adventure

vim-adventures.com

vim-adventure-게임-스크린샷
vim-adventure

  • 게임 형식으로 vim 을 수련할 수 있도록 도와준다.
  • 놀랍다. 이정도 퀄리티로 vim 을 학습할 수 있게 될줄은 몰랐다.
  • 다음은 게임에서 제공하는 How to Play 의 내용 중 한 문장이다.
    하나의 레벨이 한 스킬을 마스터하기 위해 적절히 설계되어 있을 것이다.
    특히 "h,j,k,l"을 이용해서 커서 움직이기도 처음엔 익숙치 않은데, 캐릭터 자체가 "h,j,k,l"만으로 움직이니, 수련에 의미는 충분하다고 생각한다.

"You can't advance to the next level until you master a skill!"

"한 스킬을 마스터 하기 전에 다음 레벨을 진행할 수 없습니다!"

  • 나의 첫 번째 목표가 vim-adventure 를 클리어 하는 것이 되었다.
  • 단 치명적인 단점(어쩌면)이 존재하는데2단계를 클리어하고 나면 (1단계 : h,j,k,l, 2단계 : w,e,b,B) 25$ 를 결제해야 한다고 한다. 그렇다... 웬만한 콘솔 게임 가격이다.

How to Learn Vim: 4주 플랜

How to Learn Vim : A Four Week Plan

  • Vim 학습을 위한 4주 플랜을 제시해주고 있다. (3,4주차는 내 이상을 넘어선다...)
  • Week 1: Complete vimtutor once a day, every day
  • Week 2: Use Vim with minimal config, no plugins
  • Week 3: Use Vim with minimal plugins
  • Week 4: Compose Vim commands with verbs and nouns

vimgenius

vimgenius.com

vimgenius.com-스크린샷
vimgenuis.com

  • Beginner, Expert 수준으로 나누어 vim 명령어 퀴즈를 내고 사용자는 입력하는 방식으로 vim 명령어 학습을 할 수 있다.

초보자를 위한 Vim

Learning Vim for Beginners

  • 지금 이 포스트와 마찬가지로 vim 학습을 위한 우수한 사이트(위에서 소개한 사이트들도 포함)들을 소개하고 있다.

반년 뒤를 기약하자

키보드 위에서 손이 날아다니는 그 날까지! Adios!

2년 뒤 돌아와서 적는 글

(2020.05월에 돌아와서 적는 글) 이 글을 포스팅한지 약 2년이 다 되어간다. 이제 내게는 Vim 은 필수 Editor 가 되었다. 물론 콘솔에서 Vim 을 직접 사용하기보다는 VScode, intelliJ, Visual Studio 같은 IDE 에서 제공하는 Extension 기능을 활용하여 Vim 을 사용하고 있다. (intelliJ 는 Vim 을 공식 지원한다.)

위에 에디터들을 비교한 사진에 대해 적고싶은 이야기가 있어, 이렇게 글을 남긴게 됐다. Vim 을 칼로 표현하고 있지만, 저 비유로 Vim 을 묘사하기엔 칼이 부족하지 않나라는 생각을 하게된다. 저 meme 을 그린 사람은 vim 의 수많은 기능들을 아마 제대로 학습해본 경험이 없지 않았을까 생각해본다.

 

필자가 만든 커리큘럼

필자가 5년간의 vim 사용 경험을 바탕으로, 실무에서 자주 쓰이는 기능을 위주로 vim 기능을 정리했다. 많은 도움이 되길 바라본다.

 

Vim 학습 시작하기

Vim 시작하기 단계부터 차근차근 학습해나가보길 바란다. 

https://coldmater.tistory.com/208

 

00 The Vim Way

The Vim Way 연재 시작 [The Vim Way] 이라는 이름으로 포스팅 연재를 시작하려고 한다. 각 편마다 Vim 을 사용하는 데 유용한 상황들을 설정하고, 그것을 직접 실습해보는 것이다. The Vim Way 에서 다룰 것

coldmater.tistory.com

Vim 커리큘럼

본 블로그의 Vim 학습을 할 수 있는 포스팅은 모두 The Vim Way 라는 태그로 카테고라이징 해두었다. 다음은 해당 태그를 모아놓은 링크이다. 

https://coldmater.tistory.com/tag/the%20vim%20way

 

코딩은 가슴이 시킨다

참된 소프트웨어 엔지니어(개발자, 프로그래머)가 되기 위한 고군분투기

coldmater.tistory.com

 

 

반응형

Designed by JB FACTORY