본문 바로가기
Linux/VIM

vim Vundle을 이용한 Plugin 설치

by khd0801 2022. 4. 8.
반응형

 1. vim Vundle 설치 하기

Vundle은 vim에 플러그인을 설치하기 위한 관리자이다. vim에 여러 플러그인을 설치함으로써 코드 자동 완성, 함수 호출 및 정의된 곳으로 점프 등 다양한 기능을들을 추가하여 소스인사이트나 비쥬얼 스튜디오 코드의 IDE 처럼 사용 할 수 있다.

Vundle의 설치는 아래 명령어로 설치 할 수 있으면 폴더가 없더라도 자동 생성되어 만들어진다.

git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim

git clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/Vundle.vim

$ git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim

Cloning into '/home/SSD/GEN2//.vim/bundle/Vundle.vim'...

remote: Enumerating objects: 3140, done.

remote: Total 3140 (delta 0), reused 0 (delta 0), pack-reused 3140

Receiving objects: 100% (3140/3140), 935.40 KiB | 0 bytes/s, done.

Resolving deltas: 100% (1106/1106), done.

Checking connectivity... done.

 

 2. .vimrc에 Vundle 내용 추가 하고 설치하기

2-1. .vimrc에 설정 추가

"-----------------------------------------------------------------------"
" Vundle 환경설정
"------------------------------------------------------------------------"
filetype off                   " required!
set shell=/bin/bash
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
	" let Vundle manage Vundle
	" required! 
	Plugin 'VundleVim/Vundle.vim'

	" vim 하단에 파일 정보 띄우기
	Plugin 'vim-airline/vim-airline' 
	Plugin 'vim-airline/vim-airline-themes'
	" ...
call vundle#end()
filetype plugin indent on     " required!
	"
	" Brief help
	" :BundleList          - list configured bundles
	" :BundleInstall(!)    - install(update) bundles
	" :BundleSearch(!) foo - search(or refresh cache first) for foo
	" :BundleClean(!)      - confirm(or auto-approve) removal of unused bundles
	"
	" see :h vundle for more details or wiki for FAQ
	" NOTE: comments after Bundle command are not allowed..

위의 내용을 .vimrc 최상단에 추가해 준다. 앞으로 여러 Plugin들에 대하여 설명할 예정이며 현재는 vim-airline 플러그인을 설치할 예정이다. vim-airline 플로그은 vim을 사용시 하단에 커서의 위치, 파일 타입, 현재 vim state 표시 등 여러 정보를 표시해 주는 플러그인이다.

 

2-2. PluginInstall 명령어로 플러그인 설치

아래 화면 처럼 vim을 켜고 ":(세미콜론)"을 입력한 후 PluginInstall 명령을 실행한다.

(vim이 켜져있다면 껐다가 다시 실행한다.)

PluginInstall 명령 실행

 

명령을 실행하고나면 아래 그림처럼 플러그인 인스톨을 시작하고 끝나면 Done! 메세지가 출력이 된다

Plugin 설치 완료

 

2-3. PluginClean 명령어로 플로그인 삭제

아래 그림과 같이 .vimrc에 있는 Plugin을 주석처리 하거나 삭제한뒤 ":PluginClean" 명령어를 실행하면 설치된 플러그인이 삭제 된다.

설치된 Plugin주석 처리

플러그인을 설치하거나 삭제할 때 현재 켜놓은 vim은 한번은 끄고 다시 켜야지 .vimrc의 내용이 적용되어 삭제가 된다.

PluginClean 명령어 입력

 

PluginClean 명령어를 실행하면 플러그인 삭제를 계속 진행 할 것인지 물어 본다. 이때 계속 진행 하려면 Y를 입력하고 멈추려면 N을 입력하면 된다.

플러그인 삭제 문의

 

플러그인이 삭제완료가 되면 설치 완료 처럼 Done!  메세지가 출력된다. 

플러그인 삭제 완료

 

 

 3. Plugin 자료실

아래 링크에는 vim에 적용 가능한 여러가지 플로그인 자료가 설명되어있다. 플러그인의 설치 및 삭제가 쉽기에 본인 원하는 기능을 찾아 직접 설치가 가능하다.

VIM Awesome 링크

 

 

 4. 현재까지의 설정이 적용된 .vimrc 내용

"-----------------------------------------------------------------------"
" Vundle 환경설정
"------------------------------------------------------------------------"
filetype off                   " required!
set shell=/bin/bash
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
	" let Vundle manage Vundle
	" required! 
	Plugin 'VundleVim/Vundle.vim'

    " vim 하단에 파일 정보 띄우기
	Plugin 'vim-airline/vim-airline' 
	Plugin 'vim-airline/vim-airline-themes'
    " ...
call vundle#end()
filetype plugin indent on     " required!
	"
	" Brief help
	" :BundleList          - list configured bundles
	" :BundleInstall(!)    - install(update) bundles
	" :BundleSearch(!) foo - search(or refresh cache first) for foo
	" :BundleClean(!)      - confirm(or auto-approve) removal of unused bundles
	"
	" see :h vundle for more details or wiki for FAQ
	" NOTE: comments after Bundle command are not allowed..

"-----------------------------------------------------------------------"
"vim 환경설정
"-----------------------------------------------------------------------"
	
	" Vim 전용 기능 사용
	set nocompatible " Vim Using
	
	"파일 타입 설정
	set encoding=utf-8
	set fencs=utf-8,cp949,cp932,euc-jp,shift-jis,big5,ucs-2le,latin1

	" 명령어 기록 갯수
	set hi=1000

	" 백스페이스 사용
	set bs=indent,eol,start

	" 오른쪽 하단 커서 위치 항상 보이기
	set ru "same ruler

	" 줄번호 표시
	set nu

	" 줄 번호 표시 너비 설정
	set nuw=5

	" 탭 크기 설정
	set ts=4 "same tabstop
	set sw=4 "same shiftwidth
	set sts=0 "same softtabstop

	autocmd FileType make setlocal noexpandtab "Makefile은 tab 문법이기 때문에 스페이스 대체 안함.
	" 탭 >> 공백 변환 사용안함
	"set noet

	" 자동 줄바꿈 안함
	"set nowrap
	set linebreak
	set showbreak=+++\

	" 들여쓰기 설정
	set autoindent
	set cindent

	" 스마트 셋팅
	set smartcase 
	set smarttab
	set smartindent

	" magic 기능 사용
	set magic

	" 이동 동작시 줄의 시작으로 자동 이동
	set sol

	" 비쥬얼 모드 동작 설정
	set sel=exclusive

	" 괄호짝 찾기에서 <> 도 찾도록 추가
	set mps+=<:>

	" 검색어 강조
	set hls

	" 검색시 파일 끝에서 되돌리기 안함
	set nows

	" 스마트한 대소문자 구별 기능 사용
	set scs
	
	"대소문자 구분(구분 없이 할 때 i 옵션 또는 ignorecase)
	set noignorecase

	" 항상 status 라인을 표시
	set ls=2

	"파일 형식에 따른 신택스 하이라이팅 켜기
	sy enable

	"괄호 매치
	set showmatch

	"마우스 자동
	set mouse=a

	"클립보드 복사
	"set clipboard=unnamed "use OS clipboard
	set clipboard=unnamedplus "use OS clipboard

	" 키워드 입력시 점진적 검색
	set incsearch

 

 

 5. 현재까지의 설정이 적용된 vim 코드 뷰​

아래 그림은 vim-airline이 적용된 코드 뷰이다.

vim 하단에 현재 vim state와 파일 이름, 파일 타입, 커서의 위치 정보등이 표시가 된다.

하단 정보는 개발자가 .vimrc 내용을 수정하여 추가하거나 변경 할 수도 있으며 관련 내용은 다음 블로그에서 설명할 예정이다.

 

 

 

 

반응형

댓글