Vim 설치 / Ubuntu, macOS 환경
1. 설치, 설정 환경
설치, 설정 환경은 다음과 같다.
- Ubuntu 14.04 / Ubuntu 16.04 (root user)
- macOS 10.14
- Vim 8
2. 설정 Plugin 목록
이용하는 VIM Plugin의 목록은 아래와 같다.
- vundle : Vim Plugin Manager 역할을 수행한다. .vimrc에 설치할 Vim Plugin을 넣어두면 vundle을 통해서 손쉽게 Vim Plugin을 설치할 수 있다.
- nerdtree : 파일 탐색기 역할을 수행한다.
- tagbar : Code의 Tag 목록을 보여준다.
- YouCompleteMe : Code 자동완성 기능 (Code Autocomplete)을 수행한다.
- vim-gutentags : Ctag 파일을 자동으로 관리한다.
- vim-airline : Vim의 Status Line의 가독성을 높여준다.
- vim-clang-format : clang-format을 이용하여 Code Align을 수행한다.
- vim-go : golang을 위한 환경을 구성한다.
3. Vim 기본 설치, 설정
3.1. Package 설치
3.1.1. Ubuntu
$ add-apt-repository ppa:jonathonf/vim
$ apt-get update
$ apt-get install vim-gnome
$ apt-get install ctags
$ apt-get install cscope
$ apt-get install clang-format
Vim, ctags, cscope, ClangFormat을 설치한다.
3.1.2. macOS
$ brew update
$ brew install vim
$ brew install --HEAD universal-ctags/universal-ctags/universal-ctags
$ brew install cscope
$ brew install clang-format
Vim, ctags, cscope, ClangFormat를 설치한다.
3.2. Bash Shell 설정
3.2.1. Ubuntu
|
|
~/.bashrc 파일에 [File 1]의 내용을 추가하여 Vundle이 vim-go를 설치하도록 설정한다.
3.3. Vundle Plugin 설치
$ git clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/Vundle.vim
git을 이용하여 Vundle 설치한다.
3.4. .vimrc 파일 설정
|
|
~/.vimrc 파일을 [File 2]와 같이 생성하여, Plugin 설치 및 설정 정보를 저장한다.
3.5. Vundle을 이용하여 Vim Plugin 설치
: PluginInstall
~/.vimrc에 저장되어 있는 Vim Plugin을 설치한다. Vim의 명령어 Mode에서 실행한다.
3.6. YouCompleteMe 설치
3.6.1. Ubuntu
$ apt-get install build-essential cmake
$ apt-get install python-dev python3-dev
$ cd ~/.vim/bundle/YouCompleteMe
$ ./install.py --clang-completer
YouCompleteMe를 Compile 및 설치한다.
$ wget https://raw.githubusercontent.com/Valloric/ycmd/3ad0300e94edc13799e8bf7b831de8b57153c5aa/cpp/ycm/.ycm_extra_conf.py -O ~/.vim/.ycm_extra_conf.py
.ycm_extra_conf.py
Download 및 ~/.vim/.ycm_extra_conf.py
에 복사하여 YouCompleteMe의 Default 설정 값으로 이용한다.
3.6.2. macOS
$ brew install cmake
$ brew install python2
$ cd ~/.vim/bundle/YouCompleteMe
$ ./install.py --clang-completer
YouCompleteMe를 Compile 및 설치한다.
$ wget https://raw.githubusercontent.com/Valloric/ycmd/3ad0300e94edc13799e8bf7b831de8b57153c5aa/cpp/ycm/.ycm_extra_conf.py -O ~/.vim/.ycm_extra_conf.py
.ycm_extra_conf.py
Download 및 ~/.vim/.ycm_extra_conf.py
에 복사하여 YouCompleteMe의 Default 설정 값으로 이용한다.
4. Golang 환경 설치, 설정
4.1. Golang 설치
- Golang 설치 및 Golang 관련 환경변수를 설정한다.
4.2. vim-go Vim Plugin 설치
|
|
~/.vimrc 파일의 Vundle Plugins에 [File 3]의 내용을 추가하여 Vundle이 vim-go를 설치하도록 설정한다.
: PluginInstall
vim-go Vim Plugin을 설치한다. Vim의 명령어 Mode에서 실행한다.
4.3. Golang Binary 설치
: GoInstallBinaries
Golang 개발시 필요한 Tool들을 설치한다. Vim의 명령어 Mode에서 실행한다.
4.4. YouCompleteMe 재설치
$ cd ~/.vim/bundle/YouCompleteMe
$ ./install.py --clang-completer --gocode-completer
YouCompleteMe에 Golang Option을 추가하여 Compile 및 설치를 수행한다.
5. 사용법
5.1. YouCompleteMe
C, Cpp Project의 경우 Project Root 폴더에 ~/.vim/.ycm_extra_conf.py 파일을 복사하여 YouCompleteMe가 동작하도록 설정한다.
단축키 | 동작 |
---|---|
ctrl + p | YouCompleteMe Tag Jump |
ctrl + o | 이전 Jump Point로 이동 (VIM 단축키) |
ctrl + i | 다음 Jump Point로 이동 (VIM 단축키) |
5.2. vim-clang-format
Auto Mode는 파일 저장시 저장되는 파일에 clang-format을 자동으로 적용하는 Mode이다.
단축키 | 동작 |
---|---|
\cf | clang-format 적용 |
\C | Auto Mode Enable/Disable |
5.3. vim-gutentags
vim-gutentags는 .git, .svn 파일이 있는 폴더를 Project Root 폴더로 인식한다. 만약 해당 파일이 존재하지 않는다면 Project Root 폴더에 .tag_root 파일을 생성하여 vim-gutentags가 Project Root 폴더를 인식하게 만들수 있다.
6. 참조
- Vundle : https://github.com/gmarik/Vundle.vim
- Colorscheme : https://github.com/junegunn/seoul256.vim
- YouCompleteMe Install : http://neverapple88.tistory.com/26