답변:
플러그인을 설치하려면 어떤 형태로 제공되는지 알아야합니다.
.vim
파일plugin/*
, syntax/*
(등) 플러그인 Vundle 호환을하고 다른 플러그인 관리자가 교환 무엇입니까? )단일 .vim
파일이 .vim/plugin
디렉토리 에 있어야합니다 .
Vimball 파일 은 Vim에서 열고 실행하여 설치할 수 있습니다:source %
.
표준 디렉토리 레이아웃의 파일 세트는 파일을 복사 .vim
하거나 플러그인 패키지 관리자를 사용하여 설치할 수 있습니다 .
플러그인은 특정 기능에 따라 달라질 수 있습니다. 따라서:
그러나 대부분의 플러그인은 중요하지 않을 수 있습니다.
vim-plug 플러그인 관리자 를 사용하고 싶습니다 .
플러그인을 수동으로 설치할 때의 문제점은 플러그인을 제거 하기가 다소 어렵다는 것입니다 . 다른 디렉토리에 여러 개의 다른 파일이있는 경우가 종종 있으므로 수동으로 찾아서 제거해야합니다.
업그레이드 문제도 마찬가지로 어려운 : 어떤 경우 autoload/old-name.vim
에 이름이 변경됩니다 autoload/new-name.vim
? 이제 플러그인의 이전 버전과 새 버전 이 모두 있습니다.
vim-plug
각 플러그인을 자체 디렉토리에 저장하여이를 해결합니다. 또한 플러그인을 쉽게 설치 / 제거하는 명령이 포함되어 있으므로 압축 해제 플러그인 등을 사용하지 않아도됩니다.
병원체 에 비해 vim-plug의 주요 장점은 vim-plug를 사용하면 플러그인을보다 쉽게 설치하고 제거 할 수 있다는 것입니다. Pathogen이하는 일은 각 플러그인이 별도의 포함 된 디렉토리에있게하는 것입니다.
vim-plug는 git에 의존합니다 . MS Windows의 경우 msysgit이 필요 합니다.
vimrc에서 플러그인을 다음과 같이 정의 할 수 있습니다.
call plug#begin('~/.vim/plugged')
" For MS Windows, this is probably better:
"call plug#begin('~/vimfiles/plugged')
Plug 'embear/vim-localvimrc'
Plug 'kchmck/vim-coffee-script'
" ... etc
call plug#end()
그런 다음 Vim을 다시 시작한 후 다음을 사용하여 플러그인을 설치하십시오.
:PlugInstall
이에 플러그인을 넣어 것 ~/.vim/plugged
또는 $HOME\vimfiles\plugged
MS Windows 용.
호출 하기 전에 FAQ 에서 vimrc 파일 로이 스 니펫을 추가 할 수 있습니다
plug#begin()
.
if empty(glob('~/.vim/autoload/plug.vim'))
silent !curl -fLo ~/.vim/autoload/plug.vim --create-dirs
\ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
autocmd VimEnter * PlugInstall
endif
curl
이 작업이 필요 합니다. 이것은 거의 항상 Linux 및 OSX에서 사용할 수 있지만 MS Windows에서는 사용할 수 없습니다. 이 트릭은 작동하지 않습니다 ...
플러그인을 제거하려면 vimrc 파일에서 플러그인을 제거하고 다음을 실행하십시오.
:PlugClean
vim-plug는 Vim 스크립트 웹 사이트에서 스크립트 설치를 지원하지 않지만 해당 스크립트는 GitHub에 미러링 되므로 그렇게 할 필요가 없습니다.
더 쉬운 플러그인 업데이트 및 더 나은 성능을위한 주문형로드와 같은 추가 이점도 있습니다. vimrc를 다른 컴퓨터에 쉽게 복사하고을 실행 :PlugInstall
하고 모든 플러그인을 가질 수도 있습니다.
더 많은 플러그인 관리자가 있습니다. 사용 vim-plug
합니다. 참조 : Vim은 패키지 관리자의 차이점은 무엇입니까?
Pathogen은 Vim 내에 플러그인을로드하는 런타임 경로 관리자입니다. 플러그인 설치가 간단합니다. 작동 방식은 다음과 같습니다.
참고 : Windows를 사용하는 경우, 교체 ~/.vim
와 함께 $HOME\vimfiles
.
에 복사 pathogen.vim
하십시오 ~/.vim/autoload/pathogen.vim
.
~/.vim/bundle
디렉토리가 없으면 작성하십시오 .
맨 처음에 다음 줄을 추가하십시오 .vimrc
.
execute pathogen#infect()
끝났습니다! 당신이 플러그인을 추가 할 때, 단순히 전체 플러그인의 디렉토리에 복사 ~/.vim/bundle
, 또는 git clone
거기. 예를 들면 다음과 같습니다.
cd ~/.vim/bundle
git clone https://github.com/tpope/vim-surround
*주의 사항 : 플러그인이 .vim
파일 형식으로 제공되면 Pathogen에서 작동하지 않습니다. ~/.vim/plugin
대신이 폴더를 복사하십시오 (없는 경우이 디렉토리를 작성해야합니다).
git submodule add
(대신 git clone
).
runtimepath
옵션을 관리하고 그게 전부입니다. 플러그인 업데이트, 추가, 검색, 제거는 전혀 다루지 않습니다.
버전 8 에는 작성 당시 (2017 년) 기존 플러그인 관리자 (병원체, vim-plug, vundle 등)의 필요성을 대체 하는 새로운 패키지 메커니즘 이 도입되었습니다 .
로부터 문서 :
Vim 패키지 는 하나 이상의 플러그인을 포함하는 디렉토리입니다
패키지 디렉토리에는 두 개의 하위 디렉토리가 있습니다.
start/
-자동으로로드되는 플러그인을 포함합니다opt/
-요청시로드되는 플러그인을 포함합니다. :packadd
약간 복잡해 보일 수 있지만 실제로 플러그인을 여기에 추가하기 만하면됩니다 .
↓ package name
~/ .vim / pack / bundle / start / some-plugin
↑ packages dir ↑ plugin dir
Windows : ~\vimfiles\pack\
대신 사용~/.vim/pack/
일반적으로 패키지 이름 "bundle"을 모든 플러그인을 포함하는 디렉토리로 사용했습니다. 원하는 이름을 사용할 수 있으며 원하는 경우 플러그인을 별도의 패키지 디렉토리에 넣을 수도 있습니다.
mkdir -p ~/.vim/pack/bundle/start
cd ~/.vim/pack/bundle/start
git clone https://github.com/tpope/vim-sensible.git
Windows : ~\vimfiles\pack\
대신 사용~/.vim/pack/
다음에 Vim을 시작하면 플러그인이 자동으로로드됩니다.
.vim
가 버전 관리하에 있다면 , git의 서브 모듈과 함께 플러그인을 설치하는 것이 좋습니다. shapeshed.com/vim-packages/#adding-a-package를 참조 하십시오 .
Vundle은 다음과 같은 기능을 갖춘 완벽한 플러그인 관리자입니다.
:PluginSearch
):PluginInstall
):PluginUpdate
):PluginClean
)보시다시피, Carpetsmoker가 언급 한 vim-plug manager와 매우 흡사합니다. 어느 것이 먼저 왔는지 모르겠지만 설정 프로세스 와 마찬가지로 API도 나와 비슷합니다 .
.vimrc
하므로 새 서버에 설치할 때 Vundle 설치 + .vimrc
모든 것만 설치하면 됩니다. 또한 플러그인에 주석을 달고 '청소'할 수 있지만, 몇 달 또는 몇 년 후에 이름을 잊어 버렸을 때 다시 주석을 달 수 있습니다.
플러그인은 단일 .vim 파일 일 것입니다.
이 경우 도움말을 검색하고 다음을 실험하고 알아 냈습니다. vim (명령 모드)에서 다음을 입력하십시오.
:set runtimepath
일련의 디렉토리가 표시됩니다. 이러한 디렉토리 중 일부에는 plugin
하위 디렉토리가 있습니다 . 이 plugin
하위 디렉토리 중 하나에 .vim 파일을 넣으면 어디서나 vim을 시작할 때 자동으로로드됩니다.
나를 위해 우분투 리눅스에서 /usr/share/vim/vim74/plugin
모든 사용자를 위해 설치하는 것이 효과적 이라는 것을 알았습니다 . 당신은 (당신의 앞에 여기에 파일을 복사 할 루트 권한이 필요할 수 있습니다 cp
또는 mv
와 명령 sudo
).
vim74
이 플러그인을 잃어 버리게된다, 그래서 빔 8.0으로 업그레이드는 버전 특정 것을 의미한다. 더 업그레이드 방지 방법은 사용하는 것입니다 /etc/vim/
그것에 대해 (존재하지 않는 경우를 작성하고 해당 경로를 추가 runtimepath
로 경우 사용할 수 없습니다 /etc/vimrc
)
Most likely, your plugin will be a single .vim file
나는 동의하지 않습니다. 대부분의 플러그인은 .txt
문서를 포함 하는 파일 과 함께 제공되며 기능적인 문서를 얻으려면 태그를 생성해야합니다. 또한 많은 플러그인이 autoload
디렉토리 와 함께 제공됩니다 . 플러그인 관리자를 사용하는 것이 수동으로 런타임 경로를 관리하는 것보다 더 나은 솔루션이라고 생각합니다.
/usr/share/vim/vimXX
은 스톡 런타임이며 사이트 구성 / 플러그인의 장소가 아닙니다. 대신, 사이트 구성 / 플러그인은 $VIM
해당 시스템의 어느 위치 에나 배치해야합니다 (참조 :h vimfiles
). 일반적으로 이것은 /usr/share/vim
Ubuntu의 경우이며에 대한 심볼릭 링크를 보유합니다 /etc/vim
. 일반적으로 패키지 관리자 외부의/usr/local/
사이트 구성을위한 사실상의 장소입니다 . Neovim은 및 디렉토리 를 사용 하므로 사이트 구성에 기본적으로 더 나은 기본값을 제공합니다. $XDG_(CONFIG|DATA)_DIRS
site
vi
현대적인 상자에 입력vim
하면 일부 기능이 꺼진 상태에서 시작 됩니다. 요즘 많은 사람들이 실제 Vi에 액세스 할 수 없을 것 입니다.