2010. 1. 23. 15:09
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 환상경의 Vim 설정 파일
" 마지막 수정: 2005-8-30  //인클루드님의vimrc파일을 많이 참조함
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 프로그램 기본 설정
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

" 메뉴를 사용하지 않는다. 대부분의 명령보다 선행되어야 한다.
let did_install_default_menus = 1
let did_install_syntax_menu = 1
let skip_syntax_sel_menu = 1

"vim하단에 상태 표시줄
set laststatus=2
set statusline=%<%F%h%m%r%h%w%y\ %{strftime(\"%Y/%m/%d-%H:%M\")}%=\ col:%c%V\ ascii:%b\ pos:%o\ lin:%l\,%L\ %P

" 오리지널 Vi 와의 호환성을 없애고, Vim 만의 기능들을 쓸 수 있게 함.
set nocp

" 명령어 기록을 남길 갯수 지정
set hi=1000

" 백스페이스 사용
set bs=indent,eol,start

"파일확장자에 따른 차별 옵션 적용
filetype on
au FileType c,cpp set nu

" 로케일 설정
if has("unix")
    set encoding=euc-kr
elseif has ("win32")
    set encoding=cp949
endif

" UTF-8, euc-kr 한글문서 그냥 열기
if v:lang =~ "^ko"

    set encoding=cp949
    set fileencodings=utf-8,cp949
    set guifontset=-*-*-medium-r-normal--16-*-*-*-*-*-*-*

elseif v:lang =~ "^ja_JP"

    set fileencodings=euc-jp
    set guifontset=-misc-fixed-medium-r-normal--14-*-*-*-*-*-*-*
    elseif v:lang =~ "^zh_TW"
    set fileencodings=big5
    set guifontset=-sony-fixed-medium-r-normal--16-150-75-75-c-80-iso8859-1,-taipei-fixed-medium-r-normal--16-150-75-75-c-160-big5-0

elseif v:lang =~ "^zh_CN"

set fileencodings=gb2312
set guifontset=*-r-*

endif

if v:lang =~ "utf8$" || v:lang =~ "UTF-8$"

    set encoding=utf-8
    set fileencodings=utf-8,cp949

endif


" 홈 디렉토리가 존재할 때에만 사용할 수 있는 기능들
if exists("$HOME")

    " 홈 디렉토리를 구한다.
    " 특정 시스템에서는 홈 디렉토리 경로 끝에 / 또는 \ 문자가
    " 붙어 있기 때문에, 그것들을 제거한다.
    let s:home_dir = $HOME
    let s:temp = strpart(s:home_dir,strlen(s:home_dir)-1,1)
    if s:temp == "/" || s:temp == "\\"
        let s:home_dir = strpart(s:home_dir,0,strlen(s:home_dir)-1)
    endif

    " 임시 디렉토리 설정
    if isdirectory(s:home_dir."/.vim/tmp")
        set swf
        set dir=~/.vim/tmp
    else
        set noswf
        set dir=.
    endif
    
    " 백업 디렉토리 설정
    if isdirectory(s:home_dir."/.vim/backup")
        set bk
        set bdir=~/.vim/backup
        set bex=.bak
    else
        set nobk
    endif
endif

" 커서의 위치를 항상 보이게 함.
set ru

" 탭 크기 설정
" 탭 길이
set ts=8
" 들여쓰기 탭 간격
set sts=4
set sw=4

" 탭 -> 공백 변환 기능 (사용 안함)
set noet
set sts=0

" 마지막 편집 위치 복원 기능
au BufReadPost *
\ if line("'\"") > 0 && line("'\"") <= line("$") |
\   exe "norm g`\"" |
\ endif

" 클립보드를 unnamed 레지스터로 매핑
if has("gui_running")
    set cb=unnamed
endif

" magic 기능 사용
set magic

" 여러가지 이동 동작시 줄의 시작으로 자동 이동
set sol

" 비주얼 모드에서의 동작 설정
set sel=exclusive

" 사용자 괄호 찾기를 사용한다.
set mps+=<:>

" 검색어 강조 기능
set hls

" 똑똑한 대소문자 구별 기능 사용
set scs

" 파일 형식에 따른 Syntax Highlighting 기능을 켠다
syntax on

" 자동 들여쓰기를 한다.
set smartindent

" 좌표표시
set ruler


""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" GUI 설정
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

" 폰트 설정
if has("gui_running")
    set gfn=jin3.pcf\ 9
"   set gfn=GulimChe\ 9
"   set gfn=Jung9\ 9
"   set gfn=Fixedsys:h12:cHANGEUL
"   set gfn=굴림체:h9:cHANGEUL
endif

" GUI 여서 마우스가 사용 가능하면...
if has("gui_running")

    " 마우스를 사용하지 않는다.
   "  set mouse=

    " 마우스 모델을 popup 으로 함.
    set mousem=popup

endif

" 스크롤바를 표시하지 않는다
if has("gui_running")
    set go-=l
    set go-=L
    set go-=r
    set go-=R
    set go-=b
endif

" 툴바를 보이지 않게 한다.
if has("gui_running")
    set go-=T
endif

" Gvim배경테마를 지정함
if has("gui_running")
    color desert
endif

""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 모양 설정
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

" GUI 이면, 시작시 크기 설정
if has("gui_running")
    set lines=70
    set co=200
endif

" 시작시 전체화면으로 설정
if has("win32")
    au GUIEnter * simalt ~x
endif

" 추적 수준을 최대로
set report=0

" 항상 status 라인을 표시하도록 함.
set ls=2

" 똑똑한 들여쓰기
set si

" 자동 들여쓰기
set ai

" C언어 자동 들여쓰기 옵션
set cindent

" ======================================================================
" 폴더 설정이 되어 있는 파일을 열었을때 폴더 되어 있는 레벨을 설정한다.
" 기본값 0이고 모두 폴딩된다.
" ======================================================================
"set fdl=1

" ======================================================================
" 소스파일이 폴딩 되어 있을때 폴딩범위를 보여주는 컬럼의 수를 설정한다.
" ======================================================================
set fdc=3

" ===================================================================
" 닫는 괄호")", 브라켓"}"을 입력시 매칭되는 여는 괄호, 브라켓에 잠시
" 커서가 위치했다가 다시 제자리로 돌아 온다.
" ======================================================================
set showmatch

" 기본 vim 색상 패턴
color desert

"붙여넣기시 들여쓰기 여부 선택
"Ins키로 paste상태와 nopaste상태 전환
set pastetoggle=<Ins>

" ======================================================================
" Key Maping
" 컴파일러 연결
" ======================================================================

" 컴파일
map <F2> : !gcc % -o %<

" 실행
if has("gui_running")
    
    map <F3> : !%<

    elseif has("unix")

    map <F3> : !./%<

endif

'IT/보안 관련 정보 > 우분투 서버' 카테고리의 다른 글

alias 등록  (0) 2010.01.23
우분투 sudo 유저 추가  (0) 2010.01.23
데비안 설정  (0) 2009.08.28
zebra 사용법  (0) 2009.08.19
리눅스 명령어  (0) 2009.08.13
Posted by 알 수 없는 사용자