Tools

pathogen.vim を使って気軽に Vim のプラグインを管理する

投稿日:2016年11月17日 更新日:

Vim というエディタのプラグイン管理に関する話しです。

1. まえがき

Vim では、今までいろいろなプラグイン管理ツールが開発されてきており、新しいものほど高機能になってきています。しかし、高機能過ぎて中で何をやっているのか分からない部分が増え、操作を間違うとわけが分からないことになります。 「久しぶりにプラグインでも更新してみるか」という時に、警告やらエラーやらが発生してしまうと本当に困ってしまうのです。 また、この手のツールは、Vim の設定ファイルにたくさんの設定を書いたりするのですが、時間が経つと書いてある意味を記憶しておくことが難しくなってきます。

そこで、pathogen.vim です。何年か前までは多くのユーザーに使われていたようですが、今 インターネットで検索しても、新しい情報がほとんど出てきません。しかし、その割には新し目の vim プラグインのインストールページを見ると、いまだに 「pathogen.vim でインストールする場合」が載っていたりしますので、現在でも一定の需要はあるということなのでしょう。そしてこのツールの利点は、なんといっても 単純 なところです。それだけでも試してみる価値があります。ですので、ライトなユーザーにとって pathogen.vim は気楽で丁度よいと思うのです。ということで、今回 pathogen.vim を紹介することにしました。

2. pathogen.vim の導入方法

  1. pathogen.vim ファイルをローカルに配置します。
    $ cd ~/.vim/autoload/
    $ wget https://raw.githubusercontent.com/tpope/vim-pathogen/master/autoload/pathogen.vim
    
  2. ~/.vimrcファイルに以下を記述します。
    execute pathogen#infect()
    filetype plugin indent on
    syntax on
    

※ pathogen.vim自身も vim のプラグインです。

3. プラグインの導入方法

例として、Nerdtree を導入します。

  1. ~/.vim/bundle/ に移動します。このディレクトリがなければ作成します。
    $ mkdir ~/.vim/bundle/
    $ cd ~/.vim/bundle/
    
  2. Nerdtree をローカルに配置します。
    $ git clone https://github.com/scrooloose/nerdtree.git ~/.vim/bundle/nerdtree
    
  3. ヘルプの情報を取り込みます。Vim を起動して、以下を実行します。
    :helptags ~/.vim/bundle/nerdtree/doc/
    

※ 詳しくは以下を参照して下さい。

4. Tips

1. 他の環境で同じプラグインを使用する

インストールしたプラグインの情報を、シェルスクリプトに書いておくと、別の環境で同じプラグインを導入するのがラクになります。install.sh のような名前を付けて、~/.vim/bundle/ に置いておけばよいでしょう。ここで行っているのは、pathogen.vim とは関係ないただの git コマンドですので非常に分かりやすいです。

#!/bin/sh

git clone https://github.com/lilydjwg/colorizer
git clone https://github.com/mattn/emmet-vim
git clone https://github.com/othree/html5.vim.git
git clone https://github.com/Shougo/neomru.vim.git
git clone https://github.com/scrooloose/nerdtree.git

別の環境の ~/.vim/bundle/で、このシェルスクリプトを実行すれば同じプラグインが導入できます。

2. プラグインを更新する

プラグインをまとめて更新するために、各プラグインのディレクトリで git pull を実行するシェルスクリプトを作っておくとラクです。update.sh のような名前を付けて、~/.vim/bundle/ に置いておけばよいでしょう。以下の例を見て分かる通り、ここでも pathogen.vim とは直接関係のない内容であり単純明快です。

#!/bin/sh

for d in `ls -d */`; do
     printf "%-30s" $d
     cd $d
     git pull
     cd ..
done

~/.vim/bundle/で、このファイルを実行すれば、全てのプラグインを更新することができます。

5. まとめ

pathogen.vim は、Vim でどんなファイルを開いても、全てのプラグインを読み込んでしまうのがよくないのだという情報を見たことがあるのですが、Vim の起動や動作が実際に遅くないのであれば、問題にはなりませんし、手軽にプラグインを管理できるというメリットが大きいですので、気楽さを求める方には丁度よいのではないでしょうか?

6. 参考

📂-Tools
-,

執筆者:labo


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

Web Programming

Webブラウザ上でHTML/CSS/JavaScriptを書いて試すことができるサービスの比較

目次はじめにサービス比較CodePenjsdo.itJSFiddleObservableまとめ はじめに Webブラウザ上で、HTML/CSS/JavaScript を書き、それをその場で実行したり保 …

Vim

Vim: 行番号の表示

Vim の行番号表示機能について説明します。 目次1. 前提とする環境2. 行番号表示に関する設定項目number (もしくは nu)relativenumber (もしくは rnu)3. この設定項 …

Windows

Putty でスクリーン上のやりとりをログファイルに保存する方法

目次1. はじめに2. Putty でログをとる手順3. ログファイルが既に存在していた場合の挙動設定4. おわりに 1. はじめに PuTTY とは、Windows用のターミナルエミュレータです。 …

Evernote

Android 用 Evernote 8.9 で検索ができない問題

Android 用 Evernote バージョン 8.9 で検索ができない問題についての対応策を書いています。

Linux

scp の代わりとしての rsync コマンドとそのオプション

1. はじめに scp コマンドというのは、ssh コマンドを内部で使って、ローカルホストとリモートホスト間でファイルをコピーするためのコマンドです。ssh コマンドは SSH という暗号化された安全 …