자습서: Pathogen + Git를 사용한 Vim 관리 플러그인

11218 단어 Path
Vim은 여러 해 동안 사용되었는데, 처음에 나는 모든 플러그인을 직접 던졌다.vim 디렉터리에 있습니다.시간이 지나면vim 아래에 자질구레한 파일이 많아서 어느 플러그인에 속하는지 분간할 수 없습니다. 플러그인을 삭제하고 업그레이드하는 것은 매우 어렵습니다.많은 Vimer들도 이 문제에 부딪혔다고 믿는다.
Pathogen은 각 Vimer를 물과 불 속에서 구하는 Vim 플러그인입니다. 원래 Vim은 플러그인을 모두 버릴 수 밖에 없었습니다.vim 디렉터리의 조작 방식으로 각 플러그인은 하나의 독립된 폴더로 존재할 수 있습니다.vim/bundle 디렉터리에서 플러그인을 추가하고 삭제하는 것이 매우 시원합니다.게다가 git의 강력한 서브 모듈 관리 기능으로 편리한 플러그인 설치와 자동 업그레이드를 실현할 수 있다.
Pathogen이 뭘 했는지.
Pathogen을 설치하기 전에 플러그인을 설치하면 파일을 모두 잃어버립니다.vim 디렉터리에 파일이 섞여 있어 관리하기가 매우 어렵다.
.vim

  ├── doc

  ├── plugin

  │   ├── vim-scratch.vim

  │   └── vim-surround.vim

  ├── ftplugin

  └── autoload


Pathogen은 하나의 플러그인 로더로 이해할 수 있으며 Pathogen을 통해 서로 다른 플러그인을 다른 디렉터리에 넣을 수 있다. 예를 들어 다음과 같다.
.vim

  └──bundle

      ├── vim-scratch

      │   └── plugin

      │       └── vim-scratch.vim

      └── vim-surround

          ├── doc

          └── plugin

              └──vim-surround.vim


이렇게 하면 각 플러그인 사이의 파일은 모두 자신의 디렉터리에 독립되어 하나의 플러그인을 삭제하고 이 플러그인의 디렉터리를 직접 삭제하면 된다.
Pathogen의 사용은 매우 간단하다. 여기서 군말 없이 문장을 참조한다VIM 플러그인 관리 향상(계속) pathogen
Pathogen은 아무것도 할 수 없어요.
Pathogen은 가장 간단한 플러그인 불러오기 기능만 제공하고 플러그인의 설치, 삭제, 업데이트 관리 기능은 제공하지 않는다.아마도 저자도 유닉스 철학 (프로그램은 한 가지 목표에만 주목하고 가능한 한 그것을 잘 해야 한다) 사상에 따라 장래에는 어떠한 관리 기능도 가입하지 않을 것이다.
그러나 완벽한Vim 플러그인 방안을 만들려면 믿을 만한 플러그인 자동화 관리 시스템이 없어서는 안 된다.Chrome의 플러그인 시스템처럼 다음과 같은 기능을 사용할 수 있습니다.
  • 자동 설치, 컴퓨터 한 대를 새로 받으면 플러그인을 편리하게 자동 다운로드할 수 있다
  • 자동 업그레이드, 번거로운 파일 복제 업데이트 작업 필요 없음
  • 따라서 Vundle 같은 도구는 일련의 스크립트를 통해 이러한 기능을 실현할 수 있다.
    Pathogen + Git
    내가 비교적 좋아하는 방안은 Git+Pathogen이다. 본질적으로 Vundle과 다를 것이 없다. (Git는 각종 강요된 스크립트를 조합한 것이다) 그러나 나를 매혹시키는 장점이 많다.
  • Git에만 의존(Pathogen은 Git를 통해 다운로드)
  • Github에 거의 모든vim 플러그인 라이브러리
  • Unix 철학에 부합되고 Pathogen은 로딩을 하고 Git는 플러그인 관리를 하는데 이 조합이 너무 예뻐요
  • 준비 작업
    우선, 당신의 원래 것을 백업하세요.vim 설정을 하고 새 것을 만듭니다.vim 디렉토리 및 플러그인을 배치할 bundle 디렉토리:
    1
    
    2
    
    3
    
    4
    
    5
    
    
    $ mv .vim{,.bak} $ mv .vimrc{,.bak} $ mkdir -pv .vim/bundle > .vim > .vim/bundle 

    그리고vim 디렉터리가 Git 창고로 바뀌었습니다.이 단계를 하는 것은 매우 간단하다.vim 디렉터리에서 git init 명령을 실행하면git가 생성됩니다.git 디렉토리:
    1
    
    2
    
    3
    
    4
    
    5
    
    6
    
    7
    
    8
    
    
    $ cd .vim && git init > Initialized empty Git repository in /Users/pw/.vim/.git/ $ ls -al > total 0 > drwxr-xr-x 4 pw staff 136 Feb 4 14:01 . > drwxr-xr-x 4 pw staff 136 Feb 4 14:01 .. > drwxr-xr-x 10 pw staff 340 Feb 4 14:01 .git > drwxr-xr-x 2 pw staff 68 Feb 4 14:01 bundle 

    이로써 준비 작업은 곧 끝난다.아래의 명령은 특별한 설명이 없으면 모두 있다.vim 이 디렉터리에 입력되었습니다.
    Pathogen 설치
    플러그인을 설치하는 명령은 다음과 같습니다.
    1
    
    
    $ git submodule add    Git     bundle/     

    Pathogen은 Git를 통해 설치할 첫 번째 플러그인입니다.
    1
    
    2
    
    3
    
    4
    
    5
    
    6
    
    7
    
    
    $ git submodule add git://github.com/tpope/vim-pathogen.git bundle/vim-pathogen > Cloning into bundle/pathogen... > remote: Counting objects: 218, done. > remote: Compressing objects: 100% (117/117), done. > remote: Total 218 (delta 59), reused 202 (delta 45) > Receiving objects: 100% (218/218), 26.40 KiB | 23 KiB/s, done. > Resolving deltas: 100% (59/59), done. 

    일반적으로 하나의 플러그인을 다운로드한 후에 사용할 수 있지만, 이 '플러그인 중의 플러그인' 에는 아주 간단한.vimrc 파일을 만들고,pathogen을 불러옵니다.
    1
    
    2
    
    
    $ echo -e "runtime bundle/vim-pathogen/autoload/pathogen.vim
    call pathogen#infect()
    Helptags"
    >> .vimrc
    $ ln -sf `pwd`/.vimrc $HOME/

    추가 플러그인 설치
    방법은 Pathogen을 설치하는 것과 같습니다.vim 디렉토리에서 다음을 수행합니다.
    1
    
    
    $ git submodule add    Git     bundle/     

    NERDTree의 경우 웨어하우스 주소는 git://github.com/scrooloose/nerdtree.git입니다.
    1
    
    
    $ git submodule add git://github.com/scrooloose/nerdtree.git bundle/nerdtree 

    플러그인 업그레이드
    플러그 인을 개별적으로 업그레이드하고 플러그 인 디렉토리에 먼저 들어가서 다음을 수행합니다.
    1
    
    
    git checkout master; git pull 
    git submodule foreach를 통해 모든 플러그인을 한 번에 업그레이드할 수 있습니다.
    1
    
    
    $ git submodule foreach 'git checkout master && git pull' 

    플러그인 삭제
    플러그인 하나를 삭제하는 것은 좀 번거롭다. (추가와 업그레이드에 비해) 두 가지 명령이 필요하다.
    1
    
    2
    
    
    $ rm -rf bundle/    $ git rm -r bundle/    

    통째로vim 디렉터리가 Github에 발표되었습니다.
    만약 네가 줄곧 나의 강좌에 따라 여기까지 한다면, 이때 너는 git status를 통해 한번 볼 수 있다.vim 이 Git 창고의 상태:
    1
    
    2
    
    3
    
    4
    
    5
    
    6
    
    7
    
    8
    
    9
    
    10
    
    11
    
    12
    
    13
    
    14
    
    15
    
    16
    
    
    $ git status > # On branch master > # > # Initial commit > # > # Changes to be committed: > # (use "git rm --cached <file>..." to unstage) > # > # new file: .gitmodules > # new file: bundle/nerdtree > # new file: bundle/pathogen > # > # Untracked files: > # (use "git add <file>..." to include in what will be committed) > # > # .vimrc 

    Git의 임시 저장 구역에 아직 가입하지 않은 것을 볼 수 있습니다.vimrc(Git 임시 저장소가 뭔지 모르면 괜찮아요. 강좌에 따라 계속 내려가세요. 하지만 프로 Git라는 책을 보러 가는 게 좋을 것 같아요).vimrc가 임시 저장에 가입하고 제출:
    1
    
    2
    
    3
    
    4
    
    5
    
    6
    
    7
    
    8
    
    
    $ git add .vimrc $ git commit -m 'ADD: pathogen & nerdtree' > master (root-commit) ba3afbd] ADD: pathogen & nerdtree > 4 files changed, 11 insertions(+), 0 deletions(-) > create mode 100644 .gitmodules > create mode 100644 .vimrc > create mode 160000 bundle/nerdtree > create mode 160000 bundle/pathogen 

    다음 단계를 진행하기 전에github에 원격 창고를 열어야 합니다. (이 단계는 구체적인 강좌를 제시하지 않습니다. 아주 간단합니다. Github에서 조작합니다.)그리고 지역 Git 창고를 Github로 옮깁니다.예를 들어 저의vim창고 주소는[email protected]:perfectworks/vim.git:
    1
    
    2
    
    
    $ git remote add origin [email protected]:perfectworks/vim.git $ git push origin master 

    그리고 Github에 가보면 Git를 통해 가입한 모든 Vim 플러그인은 하나의 링크로 플러그인의 Github 창고에 직접 연결되어 매우 가지런하고 아름답게 보인다.
    출처:http://lostjs.com/2012/02/04/use-pathogen-and-git-to-manage-vimfiles/

    좋은 웹페이지 즐겨찾기