vim에서 기준이 되는 모드는 명령(command) 모드이다. vim은 명령 모드에서 단축키로 빠르게 대부분의 일을 처리하지만 단축키로는 복잡한 명령을 내리는데 한계가 있기 때문에 복잡한 명령을 내릴 방법이 별도의 방법이 필요하다. 그 방법으로 vim명령 라인에 복잡한 명령을 직접 입력하는 방식을 선택했다.


명령 모드에서 콜론(:), 슬래쉬(/), 물음표(?) 키를 누르면 아래의 명령 라인에 명령어를 입력할 수 있게 된다아래의 사진은 명령 모드에서 콜론(:) 키를 누른 것으로 가장 하단에 콜론(:)이 입력되는 것을 확인할 수 있다. 이후에 눌려지는 키는 계속 그 줄에 입력이 되므로 명령 라인에 명령어를 입력할 수 있는 상태가 된다. 콜론(:)이 입력된 행(Row)을 명령 라인이라고 부른다. 명령 라인을 사용할 수 있는 상태를 명령라인 모드, Ex 모드 등으로 부르기도 한다.

 



앞서 본 vim  종료 명령도 이 명령 라인에 :q!를 입력한 것이다. 


:q!


슬래쉬(/) 키나 물음표(?) 키를 누르면 콜론(:)키와 마찬가지로 명령 라인에 슬래쉬(/) 키나 물음표(?) 키가 입력되면서 명령 라인을 사용할 수 있는 상태가 된다. 


슬래쉬(/) 키나 물음표(?) 키를 누른 후 찾으려는 패턴을 입력하면 패턴이 나오는 곳으로 커서가 이동하는데 슬래쉬(/) 키는 정방향(문서의 아래 방향) 탐색, 물음표(?) 키는 역방향(문서의 위 방향) 탐색이다슬래쉬(/) 키와 물음표(?)에 의한 탐색은 후에 패턴을 지정하는 정규 표현식(Regular Expression)과 함께 다시 논의하기로 한다.

 

명령 라인은 대부분 콜론(:) 키를 이용하여 vim 설정 명령, 파일 관련 명령편집기 명령 등 다양하고 복잡한 명령을 입력하는데 사용한다. 

 

명령 라인에서 다시 명령 모드로 돌아오려면 Esc 키를 누르면 된다. 물론, 명령어를 명령 라인에 입력하고 Enter를 치면 명령을 실행하고 명령 모드로 돌아온다.


팁: Esc 키는 키보드에서 조금 누르기 힘든 위치에 있다. 그래서 이것을 대체하는 키가 있는데 그것이 바로 <Ctrl+[> 키다. (< >로 묶인 키는 동시에 누른다. , Ctrl 키를 누른 상태에서 [ 키를 누른다.)



본 포스팅의 내용을 갈무리 하기 위한 Anki 파일입니다. 참고하시기 바랍니다. 


003 명령 라인(명령줄).apkg


vim이 좋다는 사실에 동의하지만, 시간도 부족하고 그걸 다시 익히는 지난한 과정을 생각하면 선뜻 손이 가지 않는 사람들이 많을 것이다. 


바쁘게 사는 현대인들 중에 vim을 붙잡고 단축키를 외울 여유가 있는 사람이 얼마나 되겠는가?


그런데, 약간 오해가 있는 것 같다.


vim일반적인 텍스트 에디터처럼 글을 작성하고 편집하는 수준에 오르는데는 그리 많은 시간이 필요하지 않다


이 부분에서는 마치 vim의 모든 단축키를 외우고 이를 활용할 수 있어야만 vim이 사용가능하다는 식의 오해가 있는 것 같다. 


물론, 수많은 단축키와 명령어들을 알면 알수록 vim을 보다 빠르고 효율적인 작업이 가능하다. 


하지만 그런 단축키와 명령어들을 모른다고 해서 보통 사람들이 처음 텍스트 에디터를 더듬거리면서 조작하는 초보적인 수준의 에디터 사용이 불가능한 것은 아니다. 


이런 초보적인 수준의 vim 사용이 가능해지는데 도움을 주는 것이 바로 vim 튜토리얼이다. 


보통, vim을 설치하면 vimtutor라는 프로그램이 같이 설치되는데, 바로 이 vimtutorvim튜토리얼이다. 


프롬프트에서 다음과 같이 명령어를 작성하고 [Enter]를 친다.


$ vimtutor


그러면 다음과 같은 화면이 나온다. 




vim 튜토리얼은 어떤 키를 누르고 어떤 행위를 할 것이지 하나하나 친절하게 가르쳐주고 있어서 그대로 읽고 따라하다 보면 25~30분 정도 후 vim일반적인 텍스트 에디터 수준으로 사용할 수 있게 된다


본인도 vim을 사용하면서 처음 한번은 포기했는데, 이미 익숙한 방식과 vim의 방식이 서로 혼동되면서 불편해졌기 때문이다. 그리고 단순히 단축키를 외우는 것 만으로는 vim에 익숙해지는 것이 매우 어려웠다. 


하지만 vimtutor를 통해 실습을 하면서 몸에 익게되면서 어느 정도 사용이 가능해지게 되면서 조금 편안해지게 되었다. 


역시, 뭐든지 우선 몸이 익숙해지는 과정이 반드시 필요한 것 같다.

+ Recent posts