· KLDP.org · KLDP.net · KLDP Wiki · KLDP BBS ·
Vim Rc

각자가 사용하는 vimrc 예제


1.1. .vimrc


set nocompatible
set title
set autoindent          " 자동으로 들여쓰기를 한다.
set bs=2                " allow backspacing over everything in insert mode
set viminfo='20,\"50    " read/write a .viminfo file, don't store more
set ruler               " show the cursor position all the time
set number
set background=light
set softtabstop=4
set shiftwidth=4
set tabstop=4
set incsearch
set vb
set exrc                " 특정디렉토리에서 .exrc 파일의 설정을 적용하게 함
set mouse=n
set fencs=utf8,euc-kr
"set fencs=euc-kr,utf8
syntax on

let TE_WinWidth = 20    " TagExplorer 창크기 조절

" Function Key
map <F1> K              " man page
map <F2> :w<CR>
"map <F2> :so $VIMRUNTIME/syntax/2html.vim<CR> " make HTML
map <F3> [{v]}zf        " file folding
map <F4> zo             " file unfolding
map <F5> :Tlist<CR>^Ww:20vs ./<CR>:set nonu<CR>^Ww^Ww
map <F6> :cl<CR>
map <F7> :cn<CR>        " 에러(결과) 위치로
map <F8> :cp<CR>        " 에러(결과) 위치로(역순)
map <F9> :noh<CR>       " 하이라이트 제거
map <C-F10> gd          " 어떤 함수 안에서 지역변수를 추적
map <F11> ^]            " 전역변수/구조체/정의상수/함수정의를 추적
map <C-F11> :make<CR>   " 빌드
map <F12> ^T            " 이전위치로 되돌아오기
map <C-F12> :make again<CR> " 모두 새로 빌드

set hlsearch

set guifont=monospace
"set guifont=miscfixed
"set guifont=gulimche\ 9
colo default
"colo koehler

let $grepfile="*.[ch] *.cpp"
map ,gc :grep <cword> * -R<CR>
vnoremap <c-a> :IncN<CR>

filetype on
filetype indent on
filetype plugin on

au BufWinLeave *.py mkview              " 보던 .py 파일의 예전 위치에 커서 위치시키기
au BufWinEnter *.py silent loadview     "
au BufWinLeave *.c mkview               " 보던 .c 파일의 예전 위치에 커서 위치시키기
au BufWinEnter *.c silent loadview      "

au BufNewFile *.cpp call InsertSkeleton()
"0r ~/.vim/skeleton.cpp
au BufNewFile *.h call InsertHeaderSkeleton()

function! InsertSkeleton()
    0r ~/.vim/skeleton.cpp
    call InsertInclude()
endfunction

function! InsertHeaderSkeleton()
    0r ~/.vim/skeleton.h
    call InsertFname()
endfunction

function! InsertInclude()
    let fname = expand("%:t")
    let fname = substitute(fname, "cpp", "h", "g")
    call search("#include")
    exe "normal A " . "\"" . fname . "\""
endfunction

function! InsertFname()
    " Convert newname.h to _NEWNAME_H_
    let fname = expand("%:t")
    let cname = "C" . substitute(fname, "\.h", "", "g")
    let fname = toupper(fname)
    let fname = substitute(fname, "\\.", "_", "g")
    " Search for #ifndef
    call search("#ifndef")
    exe "normal A " . "___" . fname . "___"
    " Search for #define
    call search("#define")
    exe "normal A " . "___" . fname . "___"
    " Search for #endif
    call search("#endif")
    exe "normal A " . "// ___" . fname . "___"
    " Search for #class
    call search("class")
    exe "normal A" . cname . " {"
    " Search for public
    call search("public:")
    exe "normal A" . "\n" . cname . "() {}\nvirtual ~" . cname . "() {}"
endfunction

"
" vim -b : edit binary using xxd-format!
augroup Binary
  au!
  au BufReadPre  *.bin let &bin=1
  au BufReadPost *.bin if &bin | %!xxd
  au BufReadPost *.bin set ft=xxd | endif
  au BufWritePre *.bin if &bin | %!xxd -r
  au BufWritePre *.bin endif
  au BufWritePost *.bin if &bin | %!xxd
  au BufWritePost *.bin set nomod | endif
augroup END

augroup CvsLogging
 au!
 au BufNewFile,BufRead /tmp/cvs*   set fenc=utf-8 enc=utf-8
augroup END

augroup ChangeLog
 au!
 au BufNewFile,BufRead ChangeLog*   set fenc=utf-8 enc=utf-8
augroup END

source ~/.vim/plugin/word_complete.vim
call DoWordComplete()


1.2. .vim/skeleton.h


/**
 * @file
 * @b Title: .
 * @b Desc:
 *
 * @b Author: Son, Kyeong-uk(hey_calm)
 *
 * $Log: VimRc,v $
 * Revision 1.6  2005/05/05 13:29:20  kss
 * 203.237.51.80;;윤현호;;
 *
 * Revision 1.5  2005/04/19 01:12:12  kss
 * 222.98.194.47;;검은해;;
 *
 * Revision 1.4  2005/04/19 00:38:29  kss
 * 203.237.51.80;;윤현호;;RenameThisPage
 *
 * Revision 1.3  2005/03/14 08:11:57  kss
 * 203.237.51.80;;윤현호;;RenameThisPage
 *
 * Revision 1.2  2004/12/04 12:27:22  kss
 * 61.74.173.192;;infiniterun;;
 *
 * Revision 1.1  2004/12/04 11:48:59  kss
 * 61.74.173.192;;infiniterun;;
 *
 * Revision 1.2  2004/06/07 08:32:32  kss
 * 211.63.103.71;;hey;;
 *
 */
#ifndef
#define

class
public:
};

#endif


1.3. .vim/skeleton.cpp


/**
 * @file
 * @b Title: .
 * @b Desc:
 *
 * @b Author: Son, Kyeong-uk(hey_calm)
 *
 * $Log: VimRc,v $
 * Revision 1.6  2005/05/05 13:29:20  kss
 * 203.237.51.80;;윤현호;;
 *
 * Revision 1.5  2005/04/19 01:12:12  kss
 * 222.98.194.47;;검은해;;
 *
 * Revision 1.4  2005/04/19 00:38:29  kss
 * 203.237.51.80;;윤현호;;RenameThisPage
 *
 * Revision 1.3  2005/03/14 08:11:57  kss
 * 203.237.51.80;;윤현호;;RenameThisPage
 *
 * Revision 1.2  2004/12/04 12:27:22  kss
 * 61.74.173.192;;infiniterun;;
 *
 * Revision 1.1  2004/12/04 11:48:59  kss
 * 61.74.173.192;;infiniterun;;
 *
 * Revision 1.2  2004/06/07 08:32:32  kss
 * 211.63.103.71;;hey;;
 *
 */
#include


nezy 권순국님의 VimRc에서 거의 대부분 왔음을 밝힙니다.





sponsored by andamiro
sponsored by cdnetworks
sponsored by HP

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2005-05-05 22:29:20
Processing time 0.0375 sec