VIM 이야기 (1)

컴퓨터 2013. 6. 8. 00:31

그동안 사용하지 않던 블로그를 다시 글적 거려 본다. 제목을 VIM 이야기 (1) 로 시작한 것은 분명  VIM에 대해서 시리즈로 이어가겠다는 계획이다.

나는 Windows 환경에서 프로그래밍을 시작했다. 솔직히 코딩을 하는 시간 보다는 거대한 소스를 분석하는 시간이 더 많기 때문에 주로 Visual Studio 보다는 source insight  와 더 많은 시간을 보냈다. 그만큼 소스를 분석하는데 있어서 source insight의 역활은 절대적이었다.

source insight 의 기능을 VIM 에서 어떻게 사용할 수 있을지의 관점에 연재하고자 한다.

일단 오늘은 VIM의 기능은 아니지만, plugin을 쉽게 설치/삭제 하도록 도와 주는 vundle 을 소개 하도록 한다.

Vundle 은 Vim bundle 의 약자이며 Vim의 plugin manger 역활을 하는 plugin 이라 이해하면 된다.[1] 

Vundle plugin 설치

$ git clone https://github.com/gmarik/vundle.git ~/.vim/bundle/vundle

환경 설정

.vimrc에 아래 추가

set nocompatible " be iMproved filetype off " required! set rtp+=~/.vim/bundle/vundle/ call vundle#rc() " let Vundle manage Vundle " required! Bundle 'gmarik/vundle' " My Bundles here: " " original repos on github Bundle 'ctrlp.vim' Bundle 'scrooloose/nerdtree' Bundle 'minibufexplorerpp' Bundle 'Tagbar' Bundle 'autoload_cscope.vim'

" ... filetype plugin indent on " required! " " Brief help " :BundleList - list configured bundles " :BundleInstall(!) - install(update) bundles " :BundleSearch(!) foo - search(or refresh cache first) for foo " :BundleClean(!) - confirm(or auto-approve) removal of unused bundles " " see :h vundle for more details or wiki for FAQ " NOTE: comments after Bundle command are not allowed..

bundle 설치

:BundleInstall

왜 vundle 을 쓰는지

개발업무를 하다보면, 여러대의 PC를 사용하는 경우가 많다. 노트북, 서버, 집에 있는 컴퓨터 (집에서는 소스를 보면 안되겠지만 ㅜㅜ)...

이 분산되어 있는 환경을 동일하게 만들려면, VIM의 모든 plugin을 압축하여 다녀야 한다. (포터블 버전...) 

Vundle을 사용하면 plugin 설치가 아주 간편해 지며 (.vimrc 에 Bundle "플러그인명"을 추가하기만 하면됨) .vimrc만 공유가 된다면 여러 pc 환경에서 동일한 vim 환경을 사용 할 수 있다.

dropbox등을 활용하면 .vimrc 를 쉽게 분산된 환경에서 공유가 가능하여 plugin 관리가 아주 편해 진다. 자신이 개발한 vim 스크립트의 경우 github 를 이용하여 스크립트를 추가하고 github의 주소를 bundle로 등록하면 private 한 스크립트도 쉽게 관리가 가능해 진다.


앞으로의 계획

위 .vimrc는 실제 내가 사용중인 것은 아니지만, 사용중인 plugin의 일부를 적어 두었고 다음 포스트 부터는 이 플러그인을 어떻게 사용할지에 대해서 설명하고자 하려고 한다.

[1] https://github.com/gmarik/vundle#readme

AND