본문 바로가기

프로그래밍(공통)

[Linux] Vim 에디터를 Vundle로 커스터마이징

기본 셋업

$ git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
$ sudo apt install universal-ctags

$ vi .vimrc

 

.vimrc 내용

et rtp+=~/.vim/bundle/Vundle.vim
 
" :vs -> 창 수직 분할
" ctrl+ww -> 창 이동
" :NERDTree
" :term -> 터미널 열기, ctrl+d 닫기
 
 
call vundle#begin()
    Plugin 'VundleVim/Vundle.vim'
    " 파일 구조 관리
    Plugin 'scrooloose/nerdtree'
    " 태그로 함수 등을 관리
    Plugin 'majutsushi/tagbar'
    " git으로 관리되는 파일 수정 내용 확인 가능
    Plugin 'airblade/vim-gitgutter'
    " git diff, git blame 코드 안에서 사용 가능 =>Gblame, Gdiff
    Plugin 'tpope/vim-fugitive'
    " 파일 히스토리 등 정보 :dp, :nb 등으로 순회 가능
    Plugin 'vim-airline/vim-airline'
    Plugin 'vim-airline/vim-airline-themes'
    " 창 나눌 때 포커싱
    Plugin 'blueyed/vim-diminactive'
  call vundle#end()
 
 
set autoindent
set ruler
set title
set ts=4
set sw=4
set smartindent
set nu
set cursorline
set splitbelow
syntax enable

colorscheme slate
hi search ctermbg=darkyellow
hi CursorLine cterm=NONE ctermbg=200
hi Comment term=reverse ctermbg=0 guibg=Grey40

" for vim-airline
let g:airline#extensions#tabline#enabled = 1 " turn on buffer list
let g:airline_theme='hybrid'
set laststatus=2 " turn on bottom bar
let mapleader = ","

" for vim-airline
let g:airline#extensions#tabline#enabled = 1 " turn on buffer list
let g:airline_theme='hybrid'
set laststatus=2 " turn on bottom bar
let mapleader = ","
nnoremap <leader>q :bp<CR>
nnoremap <leader>w :bn<CR>

" for blueyed/vim-diminactive
let g:diminactive_enable_focus = 1
nmap <F8> :TagbarToggle<CR>
let g:tagbar_width=40

 

 

Plugin 설치 및 적용 방법

:w  //.vimrc 저장
:source % //변경 내용 바로 적용
:PluginInstall //작성한 플러그인 설치

 

명령어 간단 정리

  • :vs -> 수직 분할
  • ctrl+ww -> 창 이동
  • :term -> 터미널 실행 (ctrl+D로 종료)
  • :NERDTree -> 파일, 디렉토리 구조 토글
  • <F8> -> 태그바 토글(변수, 함수 바로 인덱싱)
  • ,+q/w: vim-airline 파일 버퍼 이동
  • Gdiff,Gblame -> git diff, git blame 

 

 

유용한 커맨드 및 플러그인 설명

1. 수직 창 분할 명령어 :vs

창 간의 이동은 ctrl+ww로 이동 가능

 

2. 편집기에서 터미널 실행 :term

터미널은 ctrl+d로 종료 가능

 

3. 디렉토리 구조 리스팅 : NERDTree

선택 후 엔터 입력 시 해당 파일 오픈

 

4. Tagbar 플러그인- 파일 내 함수 및 변수 인덱싱 <F8>

우측 태그바에서 특정 아이템 클릭 시 해당 위치로 바로 이동

 

5. vim-fugitive, git diff, git blame 명령어를 편집기 내부에서 사용 가능 Gdiff, Gblame

 

6. vim-airline 파일 히스토리 버퍼 및 파일 상태 확인 가능

, + q/w 로 버퍼 앞/뒤로 이동 가능