본문 바로가기

IT Tech/Linux

VIM 프로그래밍 관련 튜닝 및 운용 단축키 표(VIM Cheat Sheet)과 그밖의 팁

반응형




1. Vim 배우기

이 표는 KLDP의 Mr.Dust 님이 2009년 2월 viemu.com의 vim cheat sheet를 한글화한 자료입니다.


0123456

그 밖의 viemu.com의 VIM 튜토리얼 시트....




2. vim 플러그인


설치 위치
~/.vim/plugin
없으면 만들어 준다.


[TagList]
왼쪽 스플릿 윈도우에 전역변수와 함수 리스트를 만들어 준다.
선택하면 바로 이동, vimrc에서 <F8>에 맵핑해서 사용하고 있다.


[Buf Explorer]
여러개의 파일을 하나의 vim에서 열었을 때 리스트를 보고 편하게 이동할 수 잇다.
.vimrc에서 <F10>키에 맵핑해서 사용하고 있다.



3. .vimrc

syn on
set tags+=/usr/src/linux/tags
set tag+=./tags
set tagbsearch "speed up searching tag
set encoding=euc-kr
set nocompatible
set number
set bs=2
set tabstop=4
set shiftwidth=4
set cindent
set smartindent
set ai
"set autowrite
set pastetoggle=<Ins>   " Inseart Key toggle indenting for code paste

set wrap
set nowrapscan
set nobackup
set ruler

set sc
set noet        "no space change with tab
set sts=0
set hlsearch
set history=999

set mps+=<:>    " add user brace
set showmatch   " show new match
colorscheme wombat


" ============================================
" set cursor to the last worked line
" ============================================
au BufReadPost *
\ if line("'\"")>0 && line("'\"")<=line("$")|
\ exe "normal g'\"" |
\ endif

" ============================================
" set abbr
" ============================================
abbr p# printf("[SDBG] %s:%d\n", __FUNCTION__, __LINE__);


" ============================================
" mapping function key
" ============================================
map <F1> K
map <F2> :w!<CR>
map <F3> [{v]}zf
map <F4> zo 
map <F5> :30vs .<CR>:set nonumber<CR>
map <F6> ^Ww
map <silent> <F8> :TlistToggle<CR>
map <silent> <F10> :BufExplorer<CR>
map <F11> ^] 
map <F12> ^T
^ = Ctrl+V







4. 멀티 파일 작업

1) 고전적인 방법
파일이 많을때는 Buffer Explorer를 사용하는게 편하지만,  2/3개의 적은 파일을 작업할 경우 더 빠르게 작업가능.

- 파일 열기
: e [filename]

- 파일 이동 :
: n(ext)          // 다음 다일로
: N  or : prev   // 이전 파일로

단축키 <Ctrl+6> 으로 열린 파일을 탐색이 가능하다.

2) 고전적인 방법 + Buffer Explorer
플러그인 Buffer Explorer를 설치하고 단축키로 리스트를 열어서 선택


3) 탭을 사용하는 방법 (vim 7.0 이후)
잘 사용하지 않는 편이지만 기분전환이 필요할 때...^^;;;
-파일 열기
vim 시작시 각각의 파일을 탭으로 추가
vim -p [filename] [filename] ...

- 에디팅중 파일 열기
: tabnew [filename]
: tabe [filename]

- 파일 이동
: tabn        // 이전 탭으로
: tabp        // 다음 탭으로
: tabfir(st)   // 처음 탭으로
: tablast     // 마지막 탭으로

<단축키>
<gt>        // 다음탭       


5. ctag 운용 명령어
[단축키]
Ctrl+]
- 태그로 이동
Ctrl+T - 되돌아 오기

[ctags 명령어 목록]
: tn - tag next
: tp - tag previous
: ts - tag select, tag를 리스트로 보여주고 번호로 선택할 수 있게한다.
: ta [name] - name과 일치하는 태그 위치로 이동
: ta /[name] - name과 일치하는 태그 출력
: tj [name] - 목록이 한 개인 경우 이동, 여러 개인 경우 출력
:tags - 이동한 태그 히스토리 목록 출력


6. 그 밖의 팁들
1. grep등으로 함수의 이름을 검색한 후 파일을 열때 라인으로 바로 이동하기
vim +<line> <file>





[VIM 관련 유용한 사이트]
http://kldp.org/node/102947
http://kltp.kldp.net/stories.php?topic=25
http://vi.kldp.net/
http://wiki.kldp.org/wiki.php/DocbookSgml/Vim-KLDP
http://www.viemu.com/a_vi_vim_graphical_cheat_sheet_tutorial.html
http://my.opera.com/subjam/blog/vim-tips
http://vimdoc.sourceforge.net/htmldoc/usr_toc.html
http://www.vim.org/scripts/script.php?script_id=625







반응형