'vim'에 해당되는 글 8건
- 2013.01.03 [eclipse] vim for eclipse
- 2012.11.06 [vim plugin] neocomplcache - ultimate auto completion system for vim
- 2012.02.17 eclipse용 vim 플러그인
- 2009.05.27 20090527] vimrc 설정
- 2009.05.27 autocomplpop 키워트 추천 - Vim plugin
- 2008.03.28 Vim Tip
- 2008.01.30 code_complete - ctags을 이용한 함수 형태 완성 plugin
- 2008.01.30 vim 설정 파일 - windows GUI 버젼
[eclipse] vim for eclipse
실제 vim 프로그램을 eclipse에서 사용할 수 있게 해주는 eclipse plugin이다.
해당 프로젝트 url 은 아래..
http://sourceforge.net/projects/vimplugin/
여기서 plugin 파일을 다운 받은 후 eclipse/plugins 디렉토리에 복사한다.
그리고, eclipse 재부팅 후 window -> preference -> vimplugin 에서 설정을 확인 할 수 있다.
'develop' 카테고리의 다른 글
[shell script] 문자열 추출하기 (0) | 2013.01.02 |
---|---|
[eclipse] Jindent - 소스 정렬 plugin (0) | 2012.12.28 |
[eclipse] Todo 관리 plugin (0) | 2012.12.27 |
[Doxygen] Doxygen에서 한글 표시 하기 (0) | 2012.12.06 |
debug 매크로 (0) | 2012.09.21 |
[vim plugin] neocomplcache - ultimate auto completion system for vim
neocomplcache : Ultimate auto completion system for Vim
created by
Shougo Matsushita
script type
utility
description
The latest version is in github.
http://github.com/Shougo/neocomplcache/tree/master
Caution:
Because all variable names are changed in neocomplcache Ver.5, there is not
backward compatibility. In the case of the upgrade, you should use the next
script which Mr.thinca made.
http://gist.github.com/422503
Screen shots:
Quick match.
http://3.bp.blogspot.com/_ci2yBnqzJgM/TD1PeahCmOI/AAAAAAAAADc/Rz_Pbpr92z4/s1600/quick_match.png
Snippet completion like snipMate.
http://3.bp.blogspot.com/_ci2yBnqzJgM/SfkgaHXLS0I/AAAAAAAAAA4/TmaylpFl_Uw/s1600-h/Screenshot2.PNG
Original filename completion.
http://1.bp.blogspot.com/_ci2yBnqzJgM/TD1O5_bOQ2I/AAAAAAAAADE/vHf9Xg_mrTI/s1600/filename_complete.png
Register completion.
http://1.bp.blogspot.com/_ci2yBnqzJgM/TD1Pel4fomI/AAAAAAAAADk/YsAxF8i6r3w/s1600/register_complete.png
Omni completion.
http://2.bp.blogspot.com/_ci2yBnqzJgM/TD1PTolkTBI/AAAAAAAAADU/knJ3eniuHWI/s1600/omni_complete.png
Completion with vimshell(http://github.com/Shougo/vimshell).
http://1.bp.blogspot.com/_ci2yBnqzJgM/TD1PLfdQrwI/AAAAAAAAADM/2pSFRTHwYOY/s1600/neocomplcache_with_vimshell.png
Vim completion.
http://1.bp.blogspot.com/_ci2yBnqzJgM/TD1PfKTlwnI/AAAAAAAAADs/nOGWTRLuae8/s1600/vim_complete.png
Setting examples:
" Disable AutoComplPop.
let g:acp_enableAtStartup = 0
" Use neocomplcache.
let g:neocomplcache_enable_at_startup = 1
" Use smartcase.
let g:neocomplcache_enable_smart_case = 1
" Use camel case completion.
let g:neocomplcache_enable_camel_case_completion = 1
" Use underbar completion.
let g:neocomplcache_enable_underbar_completion = 1
" Set minimum syntax keyword length.
let g:neocomplcache_min_syntax_length = 3
let g:neocomplcache_lock_buffer_name_pattern = '\*ku\*'
" Define dictionary.
let g:neocomplcache_dictionary_filetype_lists = {
\ 'default' : '',
\ 'vimshell' : $HOME.'/.vimshell_hist',
\ 'scheme' : $HOME.'/.gosh_completions'
\ }
" Define keyword.
if !exists('g:neocomplcache_keyword_patterns')
let g:neocomplcache_keyword_patterns = {}
endif
let g:neocomplcache_keyword_patterns['default'] = '\h\w*'
" Plugin key-mappings.
imap <C-k> <Plug>(neocomplcache_snippets_expand)
smap <C-k> <Plug>(neocomplcache_snippets_expand)
inoremap <expr><C-g> neocomplcache#undo_completion()
inoremap <expr><C-l> neocomplcache#complete_common_string()
" SuperTab like snippets behavior.
"imap <expr><TAB> neocomplcache#sources#snippets_complete#expandable() ? "\<Plug>(neocomplcache_snippets_expand)" : pumvisible() ? "\<C-n>" : "\<TAB>"
" Recommended key-mappings.
" <CR>: close popup and save indent.
inoremap <expr><CR> neocomplcache#smart_close_popup() . "\<CR>"
" <TAB>: completion.
inoremap <expr><TAB> pumvisible() ? "\<C-n>" : "\<TAB>"
" <C-h>, <BS>: close popup and delete backword char.
inoremap <expr><C-h> neocomplcache#smart_close_popup()."\<C-h>"
inoremap <expr><BS> neocomplcache#smart_close_popup()."\<C-h>"
inoremap <expr><C-y> neocomplcache#close_popup()
inoremap <expr><C-e> neocomplcache#cancel_popup()
" AutoComplPop like behavior.
"let g:neocomplcache_enable_auto_select = 1
" Shell like behavior(not recommended).
"set completeopt+=longest
"let g:neocomplcache_enable_auto_select = 1
"let g:neocomplcache_disable_auto_complete = 1
"inoremap <expr><TAB> pumvisible() ? "\<Down>" : "\<TAB>"
"inoremap <expr><CR> neocomplcache#smart_close_popup() . "\<CR>"
" Enable omni completion.
autocmd FileType css setlocal omnifunc=csscomplete#CompleteCSS
autocmd FileType html,markdown setlocal omnifunc=htmlcomplete#CompleteTags
autocmd FileType javascript setlocal omnifunc=javascriptcomplete#CompleteJS
autocmd FileType python setlocal omnifunc=pythoncomplete#Complete
autocmd FileType xml setlocal omnifunc=xmlcomplete#CompleteTags
" Enable heavy omni completion.
if !exists('g:neocomplcache_omni_patterns')
let g:neocomplcache_omni_patterns = {}
endif
let g:neocomplcache_omni_patterns.ruby = '[^. *\t]\.\w*\|\h\w*::'
"autocmd FileType ruby setlocal omnifunc=rubycomplete#Complete
let g:neocomplcache_omni_patterns.php = '[^. \t]->\h\w*\|\h\w*::'
install details
1: Extract .zip file and install to your $VIMRUNTIME.
2: Execute :NeoComplCacheEnable command or
let g:neocomplcache_enable_at_startup = 1
in your .vimrc.
'프로그램' 카테고리의 다른 글
NextStep, OS/2 가상 이미지 제공 사이트 (0) | 2012.11.08 |
---|---|
VMplayer 이미지 무료로 만들기 (0) | 2012.11.08 |
totalcmd 설정 편집기 (0) | 2012.04.18 |
Windows용 cursor 테마 (0) | 2009.08.08 |
[CD & DVD Record] 이응 - Windows7 지원 (0) | 2009.04.02 |
eclipse용 vim 플러그인
'develop' 카테고리의 다른 글
eclipse에 확장자에 맞게 encoding옵션 설정하기 (0) | 2012.09.10 |
---|---|
tmake을 사용해서 makefile 만들기 (0) | 2012.03.08 |
eclipse에서 한글 인코딩 사용하기 (0) | 2012.02.09 |
eclipse 기존 프로젝트 불러오기 (0) | 2012.01.26 |
ttf(truetype) 폰트로 bdf 폰트 만들기 (0) | 2011.12.08 |
20090527] vimrc 설정
" vim 자체 옵션
"""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 백스페이스 사용
set bs=indent,eol,start
syntax on
colorscheme desert
set ts=4
"set nu
set syntax=c
"set ic
set shiftwidth=4
set formatoptions=croql
set smartindent
set autoindent
set expandtab
set nocompatible
" 파일인코딩
set fenc=utf-8
set fencs=utf-8,euc-kr,cp949,cp932,euc-jp,shift-jis,big5,latin1,ucs-2le
" 편집기록을 1000개까지 기억
set history=1000
" 검색어 강조 기능 사용
set hlsearch
" 검색시 파일 끝에서 처음으로 되돌리기 안함
set nows
" ().{} 에서 닫는 괄호를 입력할 때 일치하는 괄호를 보여준다.
set showmatch
set mousehide " Hide the mouse when typing text
filetype indent on
" 영역이 지정된 상태에서 Tab과 Shift-Tab 으로 들여쓰기/내어쓰기
" 를 할 수 있도록 함
vmap <Tab> >gv
vmap <S-Tab> <gv
" GUI이면, 시작시 크기, 위치 설정
"if has("gui_running")
" set lines=100
" set co=171
" winp 4 4
"endif
" 시작시 전체화면으로 설정
if has("win32")
au GUIEnter * simalt ~x
endif
" 항상 status 라인을 표시하도록 함
set ls=2
" status 라인이 어떻게 나오게 할 지 지정
"set statusline=\ %<%l:%v\ [%P]%=%a\ %h%m%r\ %F\
"set statusline=\ %f\ %m%h%r\ [%P]\ %a\ %<%l:%v\
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
set laststatus=2
" 줄 간격 설정
"set lsp=1
" 인코딩에 대한 설정, 윈도우, 리눅스 구분
" set encoding=euc-kr
if has("unix")
set encoding=euc-kr
elseif has ("win32")
set encoding=cp949
endif
" 확장자가 txt로 끝나는 파일을 작성시 혹은 편집시 폭을 80으로 설정한다.
" 이는 80column이 넘게 되면 자동으로 Enter을 넣어 준것과 같은 효과를 낸다.
"au BufNewFile,BufRead *.txt set textwidth=80
" 자동으로 }닫는 매크로
"au BufNewFile,BufRead *.c imap { {<CR>}<ESC>O
"au BufNewFile,BufRead *.c imap ( ( )<LEFT><LEFT>
" 백업파일 생성금지
"set nobackup
" 백업파일 이음
"set backupext=.bak
" 키를 잘 못 눌렀을 때 삑 소리 대신 화면이 번쩍이게 변경
set visualbell
"set novisualbell
" 화면 우측 하단에 현재 커서의 위치(줄, 칸)을 보여준다.
set ruler
" C 프로그래밍을 할 때 자동으로 들여쓰기를 한다.
"set cindent
" 만약 79번째 글자를 넘어가면 \
"set textwidth=79
" great wildmode/wildmenu and console mouse
set wildmenu
set wildmode=list:longest,full
set mouse=a
"console-menu
source $VIMRUNTIME/menu.vim
set cpo-=<
set wcm=<C-Z>
nmap ,menu :emenu <C-z>
" 함수 닫기표시
set sm
" 현재 라인 highlight
"highlight CurrentLine guibg=yellow guifg=black ctermbg=yellow ctermfg=black
"au! Cursorhold * exe 'match CurrentLine /\%' . line('.') . 'l.*/'
"set ut=10
" 한화면이 넘는 줄끝에 >나 <를 표시하여 내용이 더 있음을 알린다.
" 자동 줄바꿈으로 크게 필요없다.
"set listchar
" 폴더설정이 되어 있는 파일을 열었을때 폴더 되어 있는 레벨을 설정한다.
" 기본값은 0이고, 모두 폴딩된다.
set fdl=1
" 소스 파일이 폴딩되어 있을 때 폴딩범위를 보여주는 컬럼의 수를 설정한다.
set fdc=3
"""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 편리한 기능
"""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Tab 자동 완성시 가능한 목록을 보여줌
set wmnu
" 마지막 편집 위치 복원 기능
au BufReadPost *
\ if line("'\"") > 0 && line("'\"") <= line("$") |
\ exe "norm g`\"" |
\ endif
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" device 개발용 path변수
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
"set path=/source/fdik/kernel/linux/include,/usr/include
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Plugin 설정
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" ctags set
set tags=./tags,../tags,../../tags
if version >= 500
func! Sts()
let st = expand("<cword>")
exe "sts ".st
endfunc
nmap ,st :call Sts()<CR>
func! Tj()
let st = expand("<cword>")
exe "tj ".st
endfunc
nmap ,tj :call Tj()<CR>
endif
" cscope set
if has("unix")
set csprg=/usr/bin/cscope
elseif has ("win32")
set csprg=e:\util\cscope.exe
endif
set csto=0
set cst
set nocsverb
if filereadable("./cscope.out")
cs add cscope.out
endif
set csverb
" man pages options
func! Man( )
let sm = expand("<cword>")
exe "!man -S 2:3:4:5:6:7:8:9:tcl:n:l:p:o ".sm
endfunc
nmap ,ma :call Man( )<CR><CR>
" TagExplorer 용 설정
" 리스트에 표시될 파일확장자 지정
let TE_Inlucde_File_Pattern='.*\.c$\|.*\.h$\|.*\.cap$\|.*\.bat$\'
" Taglist에 대한 설정
" Tlist가 가로로 열리게 만든다.
"let Tlist_Use_Horiz_Window = 0
" Tlist의 기본은 30
"let Tlist_WinWidth = 21
"let Tlist_Inc_WinWidth = 0
" Tlist을 좀 더 편리하게 조정한다.
function! MyTlist()
exe 'Tlist'
if exists('g:MyTlist') && g:MyTlist == 1
let g:MyTlist = 0
"exe ':<C-W> ='
else
let g:MyTlist = 1
exe 'vert resize 95'
endif
endfunction
"nnoremap <slient> <F7> :Tlist<CR>
"nnoremap <slient> <F7> :call MyTlist()<CR>
" EnhancedCommentify 주석 처리 plugin
" 블럭 처리한 후에 \c을 해 주면 "/* 블럭 내용 */" 으로 주석 처리 된다.
" 여러 줄이라면 각 줄마다 주석이 처리 된다.
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 단축키 설정
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 윈도우 탐색기를 띄워준다.
"map <C-e> :silent !explorer %:p:h:gs?\/?\\\\\\?<CR>
map <C-e> :20vs .<CR><F8>
map <C-l> :TagExplorer<CR>\
" <F2> 새 탭 열고 파일 열기
map <F2> :tabnew<CR>:
map <F5> v]} zf
map <F6> v[{ zf
map <F7> zo
map <F8> w
map <F9> +
map <F10> -
map <F11> <
map <F12> >
" 클립보드 복사, 붙여넣기
map <C-c> "+y
map <C-v> "+P
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" ab 설정
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
ab gtk GtkWidget
ab kern KERN_ALERT
ab false FALSE
ab true TRUE
"ab cpu CPU_IO(
"""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Color
"""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 배경 검정색
set bg=dark
" 색상 밝게 하기
set nocompatible
let colors_name = "classic"
hi clear
hi Normal guifg=white guibg=black
hi SpecialKey guifg=#666666
hi NonText guifg=#666666
hi Directory guifg=#99FFFF
hi ErrorMsg guifg=#FFFFFF guibg=#FF9999
hi IncSearch gui=reverse
hi Search guifg=#000000 guibg=#999933
hi MoreMsg guifg=#99FF99
hi LineNr guifg=#FFFF99
hi Question guifg=#99FF99
hi StatusLine gui=reverse
hi StatusLineNC gui=reverse
hi VertSplit gui=reverse
hi Title guifg=#FF99FF
hi Visual gui=reverse
hi VisualNOS gui=underline
hi WarningMsg guifg=#FF9999
hi WildMenu guifg=#000000 guibg=#999933
hi Folded guifg=#99FFFF guibg=#666666
hi FoldColumn guifg=#99FFFF guibg=#666666
hi DiffAdd guibg=#9999FF
hi DiffChange guibg=#FF99FF
hi DiffDelete term=bold guifg=#9999FF guibg=#99FFFF
hi DiffText term=reverse guibg=#FF9999
hi Comment term=bold guifg=#99FFFF
hi Constant term=underline guifg=#FF99FF
hi Special term=bold guifg=#FF9999
hi Identifier term=underline guifg=#99FFFF
hi Statement term=bold guifg=#FFFF99
hi PreProc term=underline guifg=#9999FF
hi Type term=underline guifg=#99FF99
hi Underlined term=underline gui=underline guifg=#9999FF
hi Ignore guifg=#000000
hi Error term=reverse guifg=#FFFFFF guibg=#FF9999
hi Todo term=standout guifg=#000000 guibg=#999933
"""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Plugins 설정
"""""""""""""""""""""""""""""""""""""""""""""""""""""""
" autocomplpop - 키워드 추천(자동 완성)
" 탭과 엔터로 자동 완성
function! InsertTabWrapper()
let col = col('.') - 1
if !col || getline('.')[col-1]!~'\k'
return "\<TAB>"
else
if pumvisible()
return "\<C-N>"
else
return "\<C-N>\<C-P>"
end
endif
endfunction
inoremap <tab> <c-r>=InsertTabWrapper()<cr>
hi Pmenu ctermbg=blue
hi PmenuSel ctermbg=yellow ctermfg=black
hi PmenuSbar ctermbg=blue
" minibufexpllorer - 버퍼 상태 출력 및 이동
" Ctrl + hjkl 을 사용해서 버퍼 메뉴로 이동
" 버퍼메뉴에서 tab 또는 커서 이동으로 해당 파일에서
" enter 입력하면 해당 파일로 이동
" :bn 다음파일로 이동,
" :bp 이전파일로 이동
" :b!숫자 해당숫자 파일로 이동
let g:miniBufExplMapWindowNavVim=1
let g:miniBufExplMapWindowNavArrows=1
let g:miniBufExplMapCTabSwitchBufs=1
let g:miniBufExplModSelTarget=1
'리눅스' 카테고리의 다른 글
ubuntuone 서비스 사용하기 - 현재 베타 (0) | 2009.07.08 |
---|---|
리눅스용 플래쉬 하드웨어 가속 사용하기 (0) | 2009.05.28 |
autocomplpop 키워트 추천 - Vim plugin (0) | 2009.05.27 |
synkron - 리눅스용 usb 양방향 싱크 프로그램 (0) | 2009.05.11 |
Windows Mobile 6 장치 리눅스에서 인식하기 (0) | 2009.05.04 |
autocomplpop 키워트 추천 - Vim plugin
기존 플러그인들은 단축키를 입력해야만 추천 단어를 보여줬다면, 이 넘은 입력을 하고 있으면 자동으로 추천 단어를 보여준다.
단어 선택 및 적용 키는 아래와 같다.
설치는 파일을 받아서 ~/.vim/plugin 에 카피해넣어주시고, 아래의 코드를 ~/.vimrc 에 살짝 추가해주시면 되겠습니다.
function! InsertTabWrapper()
let col = col('.') - 1
if !col || getline('.')[col-1]!~'\k'
return "\<TAB>"
else
if pumvisible()
return "\<C-N>"
else
return "\<C-N>\<C-P>"
end
endif
endfunctioninoremap <tab> <c-r>=InsertTabWrapper()<cr>
hi Pmenu ctermbg=blue
hi PmenuSel ctermbg=yellow ctermfg=black
hi PmenuSbar ctermbg=blue
'리눅스' 카테고리의 다른 글
리눅스용 플래쉬 하드웨어 가속 사용하기 (0) | 2009.05.28 |
---|---|
20090527] vimrc 설정 (0) | 2009.05.27 |
synkron - 리눅스용 usb 양방향 싱크 프로그램 (0) | 2009.05.11 |
Windows Mobile 6 장치 리눅스에서 인식하기 (0) | 2009.05.04 |
vmware 6.x 버젼에서 키보드 오동작시 해결법 (0) | 2009.04.27 |
-
현재 문자의 아스키 값 알아내기 - ga
- 명령행 모드에서 현재 커서가 위치한 문자의 아스키 값을 알고 싶으면
- ga을 입력하면 하단 상태바에 아스키 값이 나온다.
-
vim 콘솔 프로그램에서 메뉴 사용 하기
-
"tip 1045 : great wildmode/wildmenu and console mouse
set wildmenu
set wildmode=list:longest,full
set mouse=a
"console-menu
source $VIMRUNTIME/menu.vim
set wildmenu
set cpo-=<
set wcm=<C-Z>
map <F4> :emenu <C-Z> - 화면 아래쪽에 메뉴가 표시 되고 좌,우 화살표로 메뉴을 이동 할 수 있다.
-
이 글은 스프링노트에서 작성되었습니다.
'리눅스' 카테고리의 다른 글
삼바 옵션 - usershare (0) | 2008.08.06 |
---|---|
vmware-tools 모듈 컴파일 시 에러 생길 때 해결 법 - vmware on the windows(guest linux) (2) | 2008.08.04 |
[ubuntu] VFAT 파티션 부팅과 동시에 마운트 하기 (0) | 2007.11.29 |
[ubuntu] MS IntelliMouse 3.0 버튼 설정하기 (0) | 2007.11.29 |
[ubuntu] vista로 만들어 보자 - 테마 (0) | 2007.11.29 |
code_complete - ctags을 이용한 함수 형태 완성 plugin
- 다운 받는 곳
-
설치하기
- code_complete.vim 파일을 vim 디렉토리에 있는 plugin에 저장한다.
- 소스가 있는 디렉토리에서 아래와 같이 tags 파일을 생성한다.
-
ctags -R --c-kinds=+p --fields=+S .
-
사용하기
- 함수명(함수명만이다)을 편집 모드에서 입력한 후에 "("을 입력하고 tab키를 입력하면,
- 해당 함수의 인자들이 표시되고(오버라이딩 함수인 경우엔 여러개의 원형을 보여준다.)
- 원하는 인자를 화살표키로 선택한 후에 한 번 더 tab키를 입력하면,
- 첫 번째 인자에 블럭 선택되면서 값을 입력하면 된다.
- 물론 다음 인자를 선택하려면 tab키를 입력하면 된다.
이 글은 스프링노트에서 작성되었습니다.
'프로그램' 카테고리의 다른 글
Capture 프로그램 - FastStone Screen Capture for Windows (0) | 2008.01.31 |
---|---|
윈도우용(Win32) - Wget.exe (0) | 2008.01.30 |
vim 설정 파일 - windows GUI 버젼 (0) | 2008.01.30 |
[vista,펌] vista 자체 백업으로 시스템 백업하기 (0) | 2008.01.09 |
Task Killer - 프로세스 메니져 (0) | 2007.12.11 |
vim 설정 파일 - windows GUI 버젼
2008/01/30 Version
"""""""""""""""""""""""""""""""""""""""""""""""""""""""
" vim 자체 옵션
"""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 백스페이스 사용
set bs=indent,eol,start
syntax on
colorscheme desert
set ts=4
"set nu
set syntax=c
"set ic
set shiftwidth=4
set formatoptions=croql
set smartindent
set autoindent
set expandtab
set nocompatible
" 편집기록을 1000개까지 기억
set history=1000
" 검색어 강조 기능 사용
set hlsearch
" 검색시 파일 끝에서 처음으로 되돌리기 안함
set nows
" ().{} 에서 닫는 괄호를 입력할 때 일치하는 괄호를 보여준다.
set showmatch
set mousehide " Hide the mouse when typing text
filetype indent on
" 영역이 지정된 상태에서 Tab과 Shift-Tab 으로 들여쓰기/내어쓰기
" 를 할 수 있도록 함
vmap <Tab> >gv
vmap <S-Tab> <gv
" GUI이면, 시작시 크기, 위치 설정
"if has("gui_running")
" set lines=100
" set co=171
" winp 4 4
"endif
" 시작시 전체화면으로 설정
if has("win32")
au GUIEnter * simalt ~x
endif
" 항상 status 라인을 표시하도록 함
set ls=2
" status 라인이 어떻게 나오게 할 지 지정
set statusline=\ %f\ %m%h%r\ [%P]\ %a\ %<%l:%v\
" 줄 간격 설정
"set lsp=1
" 인코딩에 대한 설정, 윈도우, 리눅스 구분
" set encoding=euc-kr
if has("unix")
set encoding=euc-kr
elseif has ("win32")
set encoding=cp949
endif
" 확장자가 txt로 끝나는 파일을 작성시 혹은 편집시 폭을 80으로 설정한다.
" 이는 80column이 넘게 되면 자동으로 Enter을 넣어 준것과 같은 효과를 낸다.
au BufNewFile,BufRead *.txt set textwidth=80
" 자동으로 }닫는 매크로
"au BufNewFile,BufRead *.c imap { {<CR>}<ESC>O
"au BufNewFile,BufRead *.c imap ( ( )<LEFT><LEFT>
" 백업파일 생성금지
"set nobackup
" 백업파일 이음
"set backupext=.bak
" 키를 잘 못 눌렀을 때 삑 소리 대신 화면이 번쩍이게 변경
set visualbell
"set novisualbell
" 화면 우측 하단에 현재 커서의 위치(줄, 칸)을 보여준다.
set ruler
" C 프로그래밍을 할 때 자동으로 들여쓰기를 한다.
"set cindent
" 만약 79번째 글자를 넘어가면 \
set textwidth=79
"""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 편리한 기능
"""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Tab 자동 완성시 가능한 목록을 보여줌
set wmnu
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" device 개발용 path변수
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
"set path=/source/fdik/kernel/linux/include,/usr/include
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Plugin 설정
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" ctags set
set tags=./tags,../tags,../../tags
if version >= 500
func! Sts()
let st = expand("<cword>")
exe "sts ".st
endfunc
nmap ,st :call Sts()<CR>
func! Tj()
let st = expand("<cword>")
exe "tj ".st
endfunc
nmap ,tj :call Tj()<CR>
endif
" cscope set
set csprg=/usr/bin/cscope
set csto=0
set cst
set nocsverb
if filereadable("./cscope.out")
cs add cscope.out
endif
set csverb
" man pages options
func! Man( )
let sm = expand("<cword>")
exe "!man -S 2:3:4:5:6:7:8:9:tcl:n:l:p:o ".sm
endfunc
nmap ,ma :call Man( )<CR><CR>
set statusline=\ %<%l:%v\ [%P]%=%a\ %h%m%r\ %F\
" TagExplorer 용 설정
" 리스트에 표시될 파일확장자 지정
let TE_Inlucde_File_Pattern='.*\.c$\|.*\.h$\|.*\.cap$\|.*\.bat$\'
" Taglist에 대한 설정
" Tlist가 가로로 열리게 만든다.
"let Tlist_Use_Horiz_Window = 0
" Tlist의 기본은 30
"let Tlist_WinWidth = 21
"let Tlist_Inc_WinWidth = 0
" Tlist을 좀 더 편리하게 조정한다.
function! MyTlist()
exe 'Tlist'
if exists('g:MyTlist') && g:MyTlist == 1
let g:MyTlist = 0
"exe ':<C-W> ='
else
let g:MyTlist = 1
exe 'vert resize 95'
endif
endfunction
"nnoremap <slient> <F7> :Tlist<CR>
"nnoremap <slient> <F7> :call MyTlist()<CR>
" EnhancedCommentify 주석 처리 plugin
" 블럭 처리한 후에 \c을 해 주면 "/* 블럭 내용 */" 으로 주석 처리 된다.
" 여러 줄이라면 각 줄마다 주석이 처리 된다.
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 단축키 설정
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 윈도우 탐색기를 띄워준다.
"map <C-e> :silent !explorer %:p:h:gs?\/?\\\\\\?<CR>
map <C-e> :20vs .<CR><F8>
map <C-l> :TagExplorer<CR>\
" <F2> 새 탭 열고 파일 열기
map <F2> :tabnew<CR>:
map <F5> v]} zf
map <F6> v[{ zf
map <F7> zo
map <F8> w
map <F9> +
map <F10> -
map <F11> <
map <F12> >
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" ab 설정
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
ab gtk GtkWidget
ab kern KERN_ALERT
ab false FALSE
ab true TRUE
ab cpu CPU_IO(
"""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Color
"""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 배경 검정색
set bg=dark
" 색상 밝게 하기
set nocompatible
let colors_name = "classic"
hi clear
hi Normal guifg=white guibg=black
hi SpecialKey guifg=#666666
hi NonText guifg=#666666
hi Directory guifg=#99FFFF
hi ErrorMsg guifg=#FFFFFF guibg=#FF9999
hi IncSearch gui=reverse
hi Search guifg=#000000 guibg=#999933
hi MoreMsg guifg=#99FF99
hi LineNr guifg=#FFFF99
hi Question guifg=#99FF99
hi StatusLine gui=reverse
hi StatusLineNC gui=reverse
hi VertSplit gui=reverse
hi Title guifg=#FF99FF
hi Visual gui=reverse
hi VisualNOS gui=underline
hi WarningMsg guifg=#FF9999
hi WildMenu guifg=#000000 guibg=#999933
hi Folded guifg=#99FFFF guibg=#666666
hi FoldColumn guifg=#99FFFF guibg=#666666
hi DiffAdd guibg=#9999FF
hi DiffChange guibg=#FF99FF
hi DiffDelete term=bold guifg=#9999FF guibg=#99FFFF
hi DiffText term=reverse guibg=#FF9999
hi Comment term=bold guifg=#99FFFF
hi Constant term=underline guifg=#FF99FF
hi Special term=bold guifg=#FF9999
hi Identifier term=underline guifg=#99FFFF
hi Statement term=bold guifg=#FFFF99
hi PreProc term=underline guifg=#9999FF
hi Type term=underline guifg=#99FF99
hi Underlined term=underline gui=underline guifg=#9999FF
hi Ignore guifg=#000000
hi Error term=reverse guifg=#FFFFFF guibg=#FF9999
hi Todo term=standout guifg=#000000 guibg=#999933
이 글은 스프링노트에서 작성되었습니다.
'프로그램' 카테고리의 다른 글
윈도우용(Win32) - Wget.exe (0) | 2008.01.30 |
---|---|
code_complete - ctags을 이용한 함수 형태 완성 plugin (0) | 2008.01.30 |
[vista,펌] vista 자체 백업으로 시스템 백업하기 (0) | 2008.01.09 |
Task Killer - 프로세스 메니져 (0) | 2007.12.11 |
OneNote Mobile (0) | 2007.12.05 |