vim 설정

VIM의 수많은 옵션 중에 내가 사용하는 옵션은 아래와 같으며, /etc/vim/vimrc 파일을 수정하면 된다.

set number
set statusline=3

set expandtab
set tabstop=4
set shiftwidth=4
set smartindent
set hlsearch

set enc=utf-8
set fenc=utf-8
set fencs=utf-8,cp949,cp932,euc-jp,shift-jis,big5,ucs-2le,latin1

au BufReadPost *
\ if line("'\"") > 0 && line("'\"") <= line("$") |
\   exe "normal g`\"" |
\ endif

윈도우와 리눅스를 혼용해서 사용하기 때문에 VI에서 파일 인코딩 관련 설정은 필수이다. hlsearch 옵션을 활성화 시키면 검색 결과에 대한 highlighting 되어 검색 결과에 대한 가독성을 높일 수 있다.

 

BufReadPost 구문은 같은 파일을 VI를 통해서 다시 읽게 되면 파일의 offset을 0이 아니라 이전에 사용했던 파일 offset의 위치에서 시작하는 옵션이다. 이것은 makefile 또는 스크립트 수정시 매우 유용한 기능 중에 하나이다.

 

참고로, VI 내장 매크로 기능을 사용하여 소스 코드의 indent를 일괄적으로 맞출 수 있다.

파일의 오프셋을 0으로 옮기고, VI 명령모드에서 =G 실행함으로써 소스 코드의 indent를 맞출 수 있다. 하지만 전처리 예약어(#if ~ #endif)에 대한 indent 실행되지 않는다.

 

VIM 옵션에 대한 자세한 설명이나 더 많은 정보를 heyhyo 블로그를 참조하면 된다.