우분투에서 vi 환경설정

우분투를 설치하면 기본적으로 설치되는 vim은 vim-tiny 버전이 설치된다. 때문에 기능상의 제한이 있을수 있다.

시냅틱패키지 관리자를 이용해서 vim 을 전체 버전으로 설치하자.

그 뒤에 각각의 홈디렉토리에서 .vimrc 파일에 자신이 사용할 vim 설정을 세팅해주면된다.

vim 세팅에 대해서는 인터넷 검색을 통해서 쉽게 확인가능하다. 아래 내용을 통해 기본적인 내용만 확인해 보자

내가 사용하고 있는 VI 설정
set autoindent      " 자동으로 들여쓰기를 한다.
set cindent         " C 프로그래밍을 할때 자동으로 들여쓰기를 한다.
set smartindent     " 좀더 똑똑한 들여쓰기를 위한 옵션이다.
"set textwidth=79    " 만약 79번째 글자를 넘어가면 \
"set wrap            " 자동으로 <CR>를 삽입하여 다음 줄로 넘어간다.
"set nowrapscan      " 검색할 때 문서의 끝에서 다시 처음으로 돌아가지 않는다.
set nobackup        " 백업 파일을 만들지 않는다.
"set visualbell      " 키를 잘못눌렀을 때 삑 소리를 내는 대신 번쩍이게 한다.
set ruler           " 화면 우측 하단에 현재 커서의 위치(줄,칸)를 보여준다.
set tabstop=3       " Tab을 눌렀을 때 8칸 대신 3칸 이동하도록 한다.
set shiftwidth=3    " 자동 들여쓰기를 할때 3칸 들여쓰도록 한다.
"set number          " 행번호를 사용한다.
"set fencs=ucs-bom,utf-8,euc-kr.latin1 "한글 파일은 euc-kr로 읽어들이며,유니코드는 유니코드로 읽어들이도록 설정
"set fileencoding=euc-kr         " 실제로 파일을 저장할때 사용되는 인코딩은 euc-kr
set background=dark " 하이라이팅 옵션
"set expandtab         " 탭을 입력하면 공백문자로 변환하는 기능을 설정
set hlsearch        " 검색어를 구문강조해주는 기능
set ignorecase      " 검색할 때 대소문자 무시하도록 하는 것.
set title " 타이틀바에 현재 편집중인 파일을 표시

"if has("syntax")
"   syntax on           " Default to no syntax highlightning
"   endif


.vimrc  예제 1
citylock$ sudo vi .vimrc

set number   :  줄번호
syntax on    :    문법에 색 넣기
set ai    :    자동행
set background=dark    :    바탕이 흑백일 경우 더 잘 보이게 한다
set si   :   if문 다음에 자동으로 맞추어주기
set tabstop=4   :   텝키의 간격을 4로
set shiftwidth=4   :   자동으로 맞춰주는 간격을 4로
set nobackup   :   백업을 만들지 않는다


.vimrc  예제 2
set autoindent      " 자동으로 들여쓰기를 한다.
set cindent         " C 프로그래밍을 할때 자동으로 들여쓰기를 한다.
set smartindent     " 좀더 똑똑한 들여쓰기를 위한 옵션이다.
set textwidth=79    " 만약 79번째 글자를 넘어가면 \
set wrap            " 자동으로 <CR>를 삽입하여 다음 줄로 넘어간다.
set nowrapscan      " 검색할 때 문서의 끝에서 다시 처음으로 돌아가지 않는다.
set nobackup        " 백업 파일을 만들지 않는다.
"set visualbell      " 키를 잘못눌렀을 때 삑 소리를 내는 대신 번쩍이게 한다.
set ruler           " 화면 우측 하단에 현재 커서의 위치(줄,칸)를 보여준다.
set tabstop=3       " Tab을 눌렀을 때 8칸 대신 3칸 이동하도록 한다.
set shiftwidth=3    " 자동 들여쓰기를 할때 3칸 들여쓰도록 한다.
set number          " 행번호를 사용한다.
set nobackup        " 백업파일을 생성하지 않는다.
set fencs=ucs-bom,utf-8,euc-kr.latin1 "한글 파일은 euc-kr로 읽어들이며, 유니코드는 유니코드로 읽어들이도록 설정
set fileencoding=euc-kr         " 실제로 파일을 저장할때 사용되는 인코딩은 euc-kr
set background=light " 하이라이팅 옵션
set expandtab         " 탭을 입력하면 공백문자로 변환하는 기능을 설정
set hlsearch        " 검색어를 구문강조해주는 기능
set ignorecase      " 검색할 때 대소문자 무시하도록 하는 것.
set title " 타이틀바에 현재 편집중인 파일을 표시

if has("syntax")
   syntax on           " Default to no syntax highlightning
endif


"=================== 로케일 설정 =================================
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




"================= Key 매핑 ========================

map <PageUp> <C-U><C-U> "맨 위로
map <PageDown> <C-D><C-D>  "맨 마지막으로
map <F2> :25vs ./<CR>   "F2: 탐색기 열기
map <F3> :only<CR>    "창 최대화
map <F12> v]} zf "폴딩

"================= Gcc 컴파일 & 실행 설정 ==============

map <F9> :w!<cr> "현재 작업 저장
map <F10> :!g++ -W -Wall -O2 -g % -o %<<cr>  "컴파일
map <F11> :!%<<cr> "실행


Posted by 시티락