LinuxVPSでVundleを使用してVimプラグインを管理する方法

提供:Dev Guides
移動先:案内検索

序章

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

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

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

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

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

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

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

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

vimgitがインストールされたので(この記事を読んでいる場合は、おそらくすでにvimがインストールされています)、[をインストールする前に少し休憩します。 X184X]は、プラグインが従来どのように機能し、vundleがプラグインを管理するためにどのように機能するかについて説明します。

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

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

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

したがって、組み込みの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

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

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

これらは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

その後、GitHubから直接vundleプラグインのクローンを作成できます。これにより、~/.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のランタイムパスを調整して、GitHubから複製したvundleの場所を含める必要があります。 その後、vundle初期化関数を呼び出します。

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

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

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

まず、mustvundleパッケージ自体を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にすべてのプラグインを再インストールするように指示します(アクションが必要かどうかをチェックします)。これにより、最新バージョンが取得されます。

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

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

プラグインのインストール方法のコツをつかんだので、vundleをさらに活用するのに役立つ他の機能について見ていきましょう。

新しいプラグインの取得

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

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つは、新しいプラグインを簡単に試すことができることです。 プロセスがクリーンでシンプルな場合、さまざまなプラグインを調べて機能を統合しようとする可能性が高くなります。そうしないと、プラグインを吸い上げて、より複雑な方法で処理を実行する可能性があります。

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