vim plugin을 설치하기 위한 여러 방법들이 존재하지만, 나는 "Vundle"을 이용해서 플러그인들을 설치한다. Vundle을 설치하는 방법은 아래와 같다.
1) Vundle 설치
git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
2) 플러그인 설치 방법
이후 .vimrc
파일에서 call vundle#begin()
과 all vundle#end()
사이에 필요한 플러그인들을 기입한 후, vim의 명령모드에서 :PluginInstall
을 입력하면 기입된 플러그인들이 설치된다.
set nocompatible " be iMproved, required
filetype off " required
" set the runtime path to include Vundle and initialize
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
" let Vundle manage Vundle, required
Plugin 'VundleVim/Vundle.vim'
<사용할 플러그인을 여기에 적는다.>
...
call vundle#end() " required
filetype plugin indent on " required
사용하고 있는 플러그인 정리
1. NERDtree
• VIM에서 많이 사용하는 파일트리 플러그인
• NERDtree Plugin 설치: Plugin `scrooloose/nerdtree`
• 키맵 설정
- .vimrc에 아래 코드를 입력한다: nmap <F2> <ESC>:NERDTree<CR>
- 이후 <F2>를 누르면 NERDTree가 켜진다.
• NERDtree 명령어 및 단축키
(1) :NERDTree : 파일트리를 킴
(2) :NERDTreeToggle : 파일트리 on/off
(3) NERDTree 화면으로 커서가 옮겨진 경우
- m을 누르면 파일을 추가, 삭제, 이동시킬 수 있는 메뉴가 나타남
- q: NERDtree를 빠져나옴
(4) Nerd tree 브라우징 단축키
단축키 및 명령어 | 의미 |
:NERDTree | 파일 트리를 킨다 |
:NERDTreeToggle | 파일트리 on/off |
NERDTree 화면으로 커서가 옮겨진 경우 | |
m | 파일을 추가, 삭제, 이동시킬 수 있는 메뉴가 나타남 |
q | NERDTree를 종료 |
<enter> 또는 o | 디록토리 이동 또는 파일 열기 |
t | 파일을 새로운 탭에 열어줌 |
T | 파일을 새로운 탭에 백그라운드로 열어줌 |
x | 현재 선택된 노드를 닫고 상위 노드로 이동 |
X | 현재 선택된 노드를 포함하여 하위 노드를 모두 닫음 |
e | 선택된 노드를 새 창에서 열어줌 |
2. vim-airline
1) vim 화면 하단 상태바에 파일명, 시간, 커서의 위치등이 표시됨
- 파일 이름, 라인, 타입, 브랜치 등의 정보들을 보여줌
2) vim-airline의 장점
- 많은 플러그인과 쉽게 연동가능
- git과 연동을 해서 현재 파일의 diff 정보를 보여줄 수 있음
3. syntastic
1) 코드 문법체크
2) vim-airline과 연동됨 - 연동될 경우, 상태바에 문법에러가 발생한 줄 번호가 출력
3) Plugin 'scrooloose/syntastic'
4. ctag
1) apt-get install ctags
2) .vimrc: Plugin 'taglist.vim' 추가
5. TagsList
1) vim에서 정의된 전역/로컬변수, 매크로 함수들을 목록 형태로 확인가능
2) ctags설치: $sudo apt-get install ctags
3) Plugin 'taglist.vim'
4) keymap: nmap <F1> <ESC>:Tlist<CR>5)
Taglist 오른쪽으로 정렬:
let Tlist_Use_Right_Window=1
5. Diminactive
- 여러 파일의 소스코드를 보게 될 경우, 가로 세로 창분할을 해서 많이 사용하는데, 이때, 사용하지 않는 창에는 약간의 어둡게하여 현재 내가 어느 파일을 사용하는지를 바로 보여준다 .
Plugin ‘blueyed/vim-diminactive’
let g:diminactive_enable_focus = 1
6. Vim의 자동완성 플러그인
1) YouCompleteMe (YCM)
특징
(1) 자동완성 (C/C++/Python/Ruby/Java 등 여러 언어 지원)
(2) Clang 이용
(3) 코드 점프 가능
2) AutoComplPop
https://www.youtube.com/watch?v=x8uleL9j5lY&list=LL
1. junegunn/fzf
- powerful plugin for binding
key binding examples
(1) nmap // :BLines!<CR>
- buffer lines
- highlight words in real time
(2) nmap ?? :Rg!<CR>
- Riffer Grap
-
Reference:
[1] https://blog.b1ue.sh/vim-ide/
[2] https://blog.naver.com/nfwscho/220684633099
[3] https://fsd-jinss.tistory.com/135
[4] www.youtube.com/watch?v=oLvFt-UJ7UI
[5] https://www.youtube.com/watch?v=cTBgtN-s2Zw
[6] https://www.youtube.com/watch?v=XA2WjJbmmoM
'컴퓨터 & IT (Computer & IT) > VIM' 카테고리의 다른 글
[Vim] Tab 활용 - 여러 파일들을 같이 작성 (0) | 2021.05.24 |
---|---|
[VIM] 코드 접기(Folding ) (0) | 2021.05.10 |
[VIM] scrooloose/syntastic 구문오류 - python (0) | 2020.06.24 |
[VI/VIM ] 모드 및 기본명령어 (0) | 2020.03.19 |
[Vim] Jellybean colorscheme 변경 (0) | 2020.03.09 |
댓글