序章

The vim テキストエディタは、プレーンテキストの操作、システム構成ファイルの管理、およびコードの作成のための、用途が広く非常に強力なツールです。 モーダル編集デザインの焦点とエディター自体のエレガントな文法はユーザーに愛されていますが、そのインターフェイスと機能には、一部のユーザーが望む優れた機能が欠けている場合があります。

幸いなことに、 vim また、さまざまな方法でエディターを拡張するために使用できるプラグインまたはスクリプトシステムも含まれています。 これらは、次のサブディレクトリに保存される単純な構成ファイルとして実装されます。 ~.vim それらの機能に応じたディレクトリ。 プラグインを追加すると、プラグインが非常に乱雑になる可能性があり、これらのプラグインを分離して効果的に管理することが困難になる可能性があります。

このため、かなりの数のプラグインマネージャーが作成されています vim このタスクを簡単にするために。 このガイドで説明するプラグインマネージャーは、 vundle、これらすべてのピースを一列に並べるのに非常に便利です。

使い方を探っていきます vundle Ubuntu12.04VPSインスタンス。 ただし、ほとんどのディストリビューションでは、追加の作業をあまり行わなくても、これらの手順を使用できるはずです。

ユーティリティソフトウェアをインストールする

使い方を探る前に vundle vimプラグインを管理するには、必要なすべてのコンポーネントをインストールする必要があります。

まず、ローカルパッケージインデックスを更新する必要があります。次に、次のことを確認する必要があります。 vim インストールされている(それは便利です!)そしてそれ git 追加のコンポーネントを取得するために利用可能です:

sudo apt-get update
sudo apt-get install vim git

今、私たちは vimgit インストール済み(おそらくすでに持っていた vim この記事を読んでいる場合はインストールされます)、インストールする前に少し休憩します vundle プラグインが伝統的にどのように機能するか、そしてどのように vundle それらを管理するために動作します。

Vundleはどのように機能しますか?

伝統的に、 vim は、各ユーザーのホームディレクトリでユーザーごとに構成され、フォールバックのデフォルトはシステム管理者によって構成され、最後にソフトウェア自体によって構成されます。 これらの個人設定は、と呼ばれる隠しファイルに保存されます ~/.vimrc.

機能を追加するプラグインと追加の構成ファイルは、通常、次の隠しディレクトリに追加されます。 ~/.vim. 内部では、ほとんどのプラグインは、提供する機能に基づいてサブディレクトリに編成されています。 これらは次のようなものである可能性があります autoload, plugin, colors、など。

したがって、ビルトインを使用している場合 vim プラグインシステムの場合、ホームディレクトリは次のようになります。

ls -AR ~

/home/demouser:
.bash_history  .bash_logout  .bashrc  .profile  .vim  .vimrc

/home/demouser/.vim:
autoload  bitmaps  colors  doc  plugin  syntax

/home/demouser/.vim/autoload:
plugin1.vim  plugin2.vim

/home/demouser/.vim/bitmaps:
plugin1.png

/home/demouser/.vim/colors:
plugin2.vim

/home/demouser/.vim/doc:
plugin1.txt  plugin2.txt

/home/demouser/.vim/plugin:
plugin1.vim

/home/demouser/.vim/syntax:
plugin1.vim

The vundle ツールは実際には、と呼ばれる別のプラグインマネージャー上に構築されています pathogen 機能のスーパーセットを提供します。 The pathogen managerは、個々のプラグインごとに個別のプラグインディレクトリツリーを作成することにより、プラグイン管理を簡素化します。

つまり、各プラグインが異なるファイルを異なるディレクトリにスローし、それらを他のプラグインと混合するのではなく、各プラグインは、プラグインに固有のサブディレクトリ内に必要なディレクトリ構造を再作成します。

これらは、というサブディレクトリに保存されます bundle. 代わりに、ディレクトリ構造は次のようになります。

ls -AR ~

justin@vundle:~$ ls -AR ~
/home/justin:
.bash_history  .bash_logout  .bashrc  .profile  .vim  .vimrc

/home/justin/.vim:
autoload  bundle

/home/justin/.vim/autoload:
plugin1.vim  plugin2.vim

/home/justin/.vim/bundle:
plugin1  plugin2

/home/justin/.vim/bundle/plugin1:
autoload  bitmaps  doc  plugin  syntax

/home/justin/.vim/bundle/plugin1/autoload:
plugin1.vim

/home/justin/.vim/bundle/plugin1/bitmaps:
plugin1.png

. . .

これにより、より深いネスティングシステムが作成されますが、プラグインを1つのユニットとして簡単に管理できます。 「plugin1」を使用したくない場合は、次のようにすることができます。

rm -rf ~/.vim/bundle/plugin1

これにより、管理スキームが大幅に簡素化されます。 これは基本的に何ですか pathogen 達成します。

vundle 内部に管理インターフェイスを追加しますか vim より多くのプラグインを取得したり、プラグインを更新したりすることができます。 一部の人々が言うことの上に「管理」部分を追加します pathogenの組織の改善。

クリーンアップを開始し、Vundleをインストールします

これで、基礎となる方法について少し理解できました vundle システムが機能し、開始できます。

まず、あなたが現在を持っている場合 ~/.vimrc ファイルと ~/.vim ディレクトリ、それらをバックアップし、新たに開始します。 これにより、非互換性と潜在的な問題を最小限に抑えることができます。

if [ -e .vimrc ]; then mv .vimrc .vimrc_bak; fi
if [ -e .vim ]; then mv .vim .vim_bak; fi

その後、クローンを作成できます vundle GitHubから直接プラグインを作成します。これにより、一部のプラグインが再作成されます。 ~/.vim ディレクトリ構造:

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

次に、 ~/.vimrc 伝えるファイル vim 新しいパッケージ管理システムを使用します。

vim ~/.vimrc

内部では、私たちを始めるためにいくつかのことが必要です。 まず、次のことを確認する必要があります vim との互換性を維持しようとはしていません vi、その前身。 これは vundle 要件。 いつ vim 互換性を確保しようとすると、使用する価値のあるほとんどの機能が無効になります vi.

また、デフォルトの「ファイルタイプ」コントロールをオフにする必要があります。 vim 実行時にファイルタイプルールをキャッシュすると、 vundle ランタイム環境を変更します。 これは後で元に戻します。

set nocompatible
filetype off

次に、調整する必要があります vimを含めるためののランタイムパス vundle GitHubからクローンを作成した場所。 その後、 vundle 初期化機能:

互換性のないファイルタイプをオフセットに設定rtp+=〜/ .vim / bundle / vundle / vundle#rc()を呼び出す

今、私たちの vundle システムが初期化され、管理したいプラグインを追加できます。 その間 vundle ローカルプラグインを管理できます。その強みの1つは、ローカルバージョンをオンラインバージョンに結び付ける機能です。これにより、自動更新などが可能になります。

これを行うには、GitHubリポジトリ、 vimスクリプト、その他のリモートをポイントします。 git リポジトリ、およびローカル git リポジトリ。

まず第一に、私たちは管理する必要があります vundle それ自体をパッケージ化する vundle. 次に、必要なプラグインを追加できます。

互換性のないファイルタイプをオフセットに設定rtp+=〜/ .vim / bundle / vundle / vundle#rc()を呼び出す

「これはVundleパッケージで、GitHubにあります。 "GitHubリポジトリの場合、"'user/repository'形式のプラグイン'gmarik/vundle'を使用してプラグインを指定します

「「.git」拡張子のプラグイン「scrooloose/nerdtree.git」を使用してリポジトリを追加することもできます。

「VimScriptsからプラグインを取得するには、プラグインを参照できます」サイトに表示されている名前でプラグイン「Buffergator」

「これで、ファイルタイプ機能をファイルタイププラグインのインデントに戻すことができます。

最後に、以前にオンにした「ファイルタイプ」機能を再確立する方法に注目してください。 すべてのプラグインは、 call vundle#rc() ラインと filetype plugin indent on 指令。

私たちのこのセクションの後 ~/.vimrc、追加することができます vim 必要な設定。

終了したら、ファイル(“:wq”または“ ZZ”)を保存して閉じます。

Vundleを使用したプラグインのインストールと更新

今、私たちはただ言う必要があります vundle ファイルに追加したすべてのプラグインをインストールします。 始める vim:

vim

今、発行します :PluginInstall 指図:

:PluginInstall

これにより、で新しい分割ウィンドウが開きます vim 新しいプラグインのそれぞれのインストールを実行します。 完了したら、次のように入力して新しいバッファとウィンドウを閉じることができます。

:bdelete

追加したプラグイン ~/.vimrc ファイルがインストールされました!

プラグインを更新する場合は、次の2つのコマンドのいずれかを使用できます。

:PluginUpdate

または

:PluginInstall!

「!」 の終わりに :PluginInstall! コマンドは基本的に vundle すべてのプラグインを再インストールし(アクションが必要かどうかをチェックします)、最新バージョンを取得します。

更新後、「u」と入力すると、実際にどのプラグインが影響を受けたかを確認できます。 vundle プラグインウィンドウ。 更新またはインストール中に行われた操作の完全なログを表示する場合は、「l」と入力して完全なログを表示します。

Vundleでプラグインを管理する

プラグインをインストールする方法のコツをつかんだので、あなたがより多くを引き出すのを助けることができるいくつかの他の機能を調べてみましょう vundle.

新しいプラグインの取得

の最も便利な機能の1つ vundle より多くのプラグインを見つけてインストールする機能です。

すべてのプラグインを一覧表示できます vundle 次のように入力すると、VimScriptsサイトで見つけることができます。

:Plugins

または

:PluginSearch!

「!」 コマンドの最後で、VimScriptsサイトからローカルリストを更新します。

特定のプラグインを検索する場合は、次のような同じ構文を使用できます。

:PluginSearch! plugin_query

これにより、クエリの結果を示す新しいウィンドウが開きます。 最近ローカルデータベースを更新した場合は、「!」を省略できます。 コマンドから。 したがって、「マークダウン」を検索すると、次のようなものが表示される場合があります。

PluginSearch markdown

"Keymap: i - Install plugin; c - Cleanup; s - Search; R - Reload list
"Search results for: markdown
Plugin 'instant-markdown.vim'
Plugin 'MarkdownFootnotes'
Plugin 'Markdown'
Plugin 'Markdown-syntax'

上部に表示されているように、プラグインのある行に移動して「i」と入力することで、任意のプラグインを簡単にインストールできます。

これによりプラグインがダウンロードおよびインストールされますが、更新されません ~/.vimrc 正しく自動ロードするようにします。

したがって、「MarkdownFootnotes」プラグインをインストールするには、カーソルをその行に移動して「i」を押します。

"キーマップ:i-プラグインのインストール;c-クリーンアップ;s-検索;R-リストの再読み込み"検索結果:markdownプラグイン'instant-markdown.vim'プラグイン'MarkdownFootnotes' #ここに移動して"i"プラグイン'Markdown'を押しますプラグイン'Markdown-構文'

あなたは削除することができます vundle インストールが完了したときのバッファ:

:bdelete

その後、 ~/.vimrc 次のように入力します。

:e ~/.vimrc

新しいプラグイン行を追加します。

互換性のないファイルタイプをオフセットに設定rtp+=〜/ .vim / bundle / vundle / vundle#rc()を呼び出す

プラグイン'gmarik/ vundle'

プラグイン'scrooloose/ nerdtree.git'

プラグイン'Buffergator'

プラグイン'MarkdownFootnotes'

filetypeプラグインのインデント

この時点でファイルを保存して閉じることができます。

インストールされたプラグインの管理

いくつかのプラグインをインストールしたら、それらを管理できます vundle.

インストールされているすべてのプラグインを表示するには、次のように入力します。

:PluginList

" My Plugins
Plugin 'gmarik/vundle'
Plugin 'scrooloose/nerdtree.git'
Plugin 'Buffergator'
Plugin 'MarkdownFootnotes'

プラグインを削除する必要がある場合、これは2つのステップで実行する必要があります。

プラグインファイルを一覧表示し、削除したいプラグインにカーソルを合わせて「D」キーを押すと、プラグインファイルを削除できます。 したがって、「MarkdownFootnotes」プラグインを削除するには、プラグインを選択して「D」を押します。

"マイプラグインプラグイン'gmarik/vundle'プラグイン'scrooloose/nerdtree.git'プラグイン'Buffergator'プラグイン'MarkdownFootnotes' #選択したら「D」を押します

この時点で、 vundle 構成にはまだこのプラグインが含まれていますが、プラグインのファイルはインストールされていません。 次のように入力して、ファイルを再インストールできます。

:PluginInstall

ただし、これは行いません。 代わりに、エントリを削除します ~/.vimrc ファイル:

:e ~/.vimrc

set nocompatible
filetype off
set rtp+=~/.vim/bundle/vundle/
call vundle#rc()

Plugin 'gmarik/vundle'

Plugin 'scrooloose/nerdtree.git'

Plugin 'Buffergator'

filetype plugin indent on

これで、システムからのプラグインの削除が完了します。

ただし、これを行う簡単な方法は、から削除することです。 ~/.vimrc 最初にファイルします。

削除した後、このコマンドを呼び出すことができます。これにより、に含まれていないプラグインが削除されます。 ~/.vimrc 自動的にファイルします(確認を求められます):

:PluginClean

" Removing Plugins:
Plugin 'MarkdownFootnotes'

. . .
Continue? [Y/n]:

「Y」と入力すると、参照されていないプラグインをすべて削除できます。

結論

この時点で、プラグインを簡単に管理できるようになります。 vundle インターフェース。 のための優れたプラグインマネージャーを持つことの利点 vim 特に多くのプラグインを使用しない場合は、一見しただけではわからない場合があります。

ただし、これによって得られる最大の利点の1つは、新しいプラグインを簡単に試すことができることです。 プロセスがクリーンでシンプルな場合、さまざまなプラグインを調べて機能を統合しようとする可能性が高くなります。そうしないと、プラグインを吸い上げて、より複雑な方法で処理を実行する可能性があります。

ジャスティン・エリングウッド