TOT0Ro’s vimrc & Plugin
Vimrc
Vim Plugin
설치 되어있는 플러그인들이다.
모두 유명한 플러그인이라 구글에 플러그인 이름을 검색하기만 해도 github repo가 검색된다.
내 것을 그대로 사용해도 되지만 입맛대로 고쳐서 쓰자.
set rtp+=~/.config/nvim/bundle/Vundle.vim
call vundle#begin('~/.config/nvim/bundle')
나는 nvim(neovim)을 사용하므로 기본 vim을 사용하시는 분들은 경로를 수정해주어야 한다.
쓰면 편한 플러그인.
tpope/vim-sensible
: 기본적인 vim 설정 모음집.scrooloose/nerdtree
: 그 유명한 NERDtree이다.bling/vim-airline
,vim-airline/vim-airline
: 이 두 개는 같은 경로를 가르킨다. vim의 상하단에 버퍼리스트와, 행/열 번호와 파일이름, 파일형식(확장자), 유니코드 등을 표시해준다.vim-airline/vim-airline-themes
: vim-airline의 테마이다. 세트메뉴다.
set laststatus=2 " vim-airline을 위해 상태바 2줄
set expandtab
let g:airline#extensions#tabline#enabled = 1 " turn on buffer list
let g:airline#extensions#tabline#left_sep = ' ' " ~
let g:airline#extensions#tabline#left_alt_sep = '|' " tabline
let g:airline#extensions#tabline#formatter = 'unique_tail' " buffer format
altercation/vim-colors-solarized
: solarized 테마이다. VIM테마이다.Shougo/neocomplcache.vim
: 자동 완성 기능이다.
” 자동완성 기능
let g:neocomplcache_enable_at_startup = 1
scrooloose/nerdcommenter
: 주석에 대한 정책을 만들 수 있는 플러그인이다.
Kernel 분석 시에 좋은 플러그인
-
majutsushi/tagbar
: 해당 파일에 어떤 함수나 변수가 선언되어 있는지, 정의되어 있는지 화면 우측에 리스트로 주욱 표시해준다. 해당 커서에서 엔터를 입력하면 해당 식별자로 점프한다. wesleyche/SrcExpl
: 현재 커서에 위치한 식별자데 대한 정의를 화면 하단에 보여준다." SrcExpl let g:SrcExpl_winHeight = 8 "SrcExpl window height let g:SrcExpl_refreshTime = 100 "refreshing time = 100ms let g:SrcExpl_jumpKey = "<ENTER>" "jump to definition let g:SrcExpl_gobackKey = "<SPACE>" "come back let g:SrcExpl_isUpdateTags = 0 "tag file update = off
xolox/vim-easytags
: 자동 C tag 생성과 구문강조." easy-tag let g:easytags_async = 1 " tags async let g:easytags_auto_highlight = 0 " slowly 느려져서 사용안함. let g:easytags_include_members = 1 " tracking member variable let g:easytags_dynamic_files = 1 " current project tags file load, non-exist global tags load
ronakg/quickr-cscope.vim
: cscope 가속기? 그리고 단축키.
Key Mapping
" Key Mapping
nmap <F1> :SrcExplToggle<cr> " 소스익스플로러 토클버튼
nmap <F2> :NERDTreeToggle<cr> " 너드트리 토글버튼
nmap <F3> :TagbarToggle<cr> " 탭바 토글버튼
nmap <F4> <C-w>- " 가로분할 커서 있는 화면 창크기 축소
nmap <F5> <C-w><C-s> " 가로분할
nmap <F6> <C-w><C-v> " 세로분할
nmap <F7> <C-w><C-q> " 분할화면 종료
nmap <F8> <C-w><C-w> " 다음 화면으로 이동 (좌상단에서 우하단으로 한바퀴 훑음)
nmap <F9> <C-w>+ " 가로부할 커서 있는 화면 창크기 확대
nmap <F10> :bd<cr> " 현재 파일 버퍼에서 제거
nmap <F11> :bp<cr> " 이전 버퍼 파일로 이동
nmap <F12> :bn<cr> " 다음 버퍼 파일로 이동
Kernel 분석 시, 가로 세로 화면 split과 버퍼 이동이 잦으므로 키로 매핑하여
빠르게 분석하였다. F4와 F9는 추후 변경 예정.
Reference
(https://bakyeono.net/post/2015-08-13-vim-tab-madness-translate.html) : vim의 tab, buffer 사용법, linux 커널 ctags, cscope 파일 만드는 법 : $cd linux , $make ARCH=arm64 tags, cscope
(https://nolboo.kim/blog/2016/09/20/vim-plugin-manager-vundle/) : vim 플러그인 관리자 Vundle
(http://jen6.tistory.com/119) : ctags cscope tapbar 기본
(http://vlee.kr/1142) : vim 플러그인 기본
댓글남기기