Vimを使う  - プラグインマネージャ

【連載】

にわか管理者のためのLinux運用入門

【第229回】Vimを使う - プラグインマネージャ

[2020/05/12 08:00]後藤大地 ブックマーク ブックマーク

プラグインでVimに機能を追加する

本連載では、前回までにVimの基本的な操作や機能について紹介してきた。これまでに説明した操作方法を身に付ければVimでかなり高速にテキストの編集作業ができるようになるはずだ。慣れるまでは大変だが、いったん慣れてしまえば有益なツールであり続けてくれる。

基礎を身に付けた今、次のステップはいくつかあるが、ここではプラグインについて取り上げておこうと思う。Vimにはプラグインと呼ばれるサードパーティ製のVimスクリプトを読み込むことで機能を拡張する仕組みが用意されている。現在、VimプラグインのほとんどはGithub.comでホストされているので、そこから「git clone」して「git pull」しておけば利用できる。Vimそのものにプラグイン用のデプロイ構造も用意されているので、その仕組みに従ってデプロイしてもよい。

ただし、現在Vimに導入されているプラグイン管理機能は必要最低限のもので、自動的に管理してくれるものではない。こうした機能を補う目的で、以前から「プラグインマネージャ」と呼ばれるVimのプラグインが使われてきた。プラグインマネージャはプラグインの自動インストールや自動アップデートなどの機能を提供しており、一度セットアップしてしまえば後はおまかせで利用できるという便利さがある。

Vimには有名なプラグインマネージャがいくつか存在している。好みで使ってもらえばよいのだが、今回は「Dein.vim」というプラグインマネージャを紹介しよう。

Dein.vim

Dein.vimはVimおよびNeovim向けのプラグインマネージャだ。ほかのプラグインマネージャと比較してシンプルで高速、一旦セットアップしてしまえば、その後利用するプラグインの追加やアップデートが簡単になるという特徴がある。

Dein.vim

Vimに標準で用意されているプラグイン管理機能は、Dein.vimほどは面倒を見てくれない。インストールやアップデートは自分で作業するのが基本的な扱い方だ。Dein.vimはそれ自体の扱いも簡単なので、プラグインを使い始める際はとりあえずDein.vimを使ってみるとよいだろう。

Dein.vimのインストール方法

Dein.vimをインストールするにはcurlコマンドとgitコマンドが必要だ。インストールされていないのであれば、Dein.vimのインストール前に用意しておいていただきたい。準備できたら、次のようにコマンドを実行してDein.vimのインストールを行う。 mkdir -p ~/.cache/dein cd ~/.cache/dein/ curl https://raw.githubusercontent.com/Shougo/dein.vim/master/bin/installer.sh > installer.sh sh ./installer.sh . rm ./installer.sh

実行すると次のようになる。

Dein.vimインストール例

上記では、curlコマンドでDein.vimのインストールスクリプトをダウンロードし、インストールスクリプトを実行してDein.vimをGithub.comからダウンロードしている。この作業によって、~/.cache/dein/ディレクトリに次のようにDein.vimがデプロイされる。

Dein.vimのデプロイ状況

Dein.vimのインストールスクリプトを実行すると、標準出力に次のスクリプトが表示され、このスクリプトを「~/.vimrc」や「~/.config/nvim/init.vim」などの「先頭」に書き込むようにとの指示が出る。.vimrcはVim向けの設定ファイル、init.vimはNeovim向けの設定ファイルだ。 “dein Scripts——————————————- if &compatible set nocompatible ” Be iMproved endif

" Required:
set runtimepath+=/home/daichi/.cache/dein/./repos/github.com/Shougo/dein.vim

" Required:
if dein#load_state('/home/daichi/.cache/dein/.')
  call dein#begin('/home/daichi/.cache/dein/.')

  " Let dein manage dein
  " Required:
  call dein#add('/home/daichi/.cache/dein/./repos/github.com/Shougo/dein.vim')

  " Add or remove your plugins here like this:
  "call dein#add('Shougo/neosnippet.vim')
  "call dein#add('Shougo/neosnippet-snippets')

  " Required:
  call dein#end()
  call dein#save_state()
endif

" Required:
filetype plugin indent on
syntax enable

" If you want to install not installed plugins on startup.
"if dein#check_install()
"  call dein#install()
"endif

"End dein Scripts-------------------------

例えば、~/.vimrcファイルの先頭に次のように上記Dein.vimの設定を追加するわけだ。

Dein.vimの設定を追加した~/.vimrcファイルのサンプル

以上でDein.vimのインストールは完了だ。これで次にVimを起動するときからDein.vimが機能するようになる。

プラグインのインストール方法

Dein.vimを使ったプラグインのインストール方法は、基本的に先ほど書き込んだ設定にサンプルが記述されているので、それに従って作業を行うだけだ。コメントアウトされている次の2カ所のコメントをはずして有効化する。

     " Add or remove your plugins here like this:
      "call dein#add('Shougo/neosnippet.vim')
      "call dein#add('Shougo/neosnippet-snippets')
 " If you want to install not installed plugins on startup.
    "if dein#check_install()
    "  call dein#install()
    "endif
前者には利用するプラグインを指定する。
  " Add or remove your plugins here like this:
  call dein#add('Shougo/neosnippet.vim')
  call dein#add('Shougo/neosnippet-snippets')

一方後者では、自動インストールを有効化する。

" If you want to install not installed plugins on startup.
if dein#check_install()
  call dein#install()
endif

コメントを削除した後の~/.vimrc

2つ目の「call dein#install()」の処理で、起動時にインストールされているプラグインがインストールされていなかった場合に自動的にインストールが行われるようになる。便利なのでこのまま自動インストールの機能は有効にしておく。

1つ目の「call dein#add(‘ユーザ名/リポジトリ名’)」は利用するプラグインの指定だ。ここではサンプルとして「Shougo/neosnippet.vim」と「Shougo/neosnippet-snippets」という2つのプラグインを使用することを指定していることになる。

例えばこの状態でVimを起動すると、次のようにVim起動時に自動的に指定した2つのプラグインのインストールが実行される。

Dein.vimによるプラグインの自動インストール中

インストール完了を知らせるプロンプト

動作を確認したら「call dein#add(‘Shougo/neosnippet.vim’)」と「call dein#add(‘Shougo/neosnippet-snippets’)」の行はコメントアウトしておけばよい。

以降は、自分の使いたいプラグインを探してきて、上記コメントの付近に「call dein#add(‘ユーザ名/リポジトリ名’)」の形式でGithub.comにホストされているVimのプラグインを指定すれば、次のVim起動時に自動的にインストールが行われる。

プラグインの活用が効率化の次のステップ

「こういう処理が欲しいんだけど」といった要望はすでにVimのプラグインというかたちで実装されていることが多い。つまり、便利なVimプラグインをどれだけ知っているかが、Vimを効率的に使えるかどうかにつながっていく。

もちろん欲しいプラグインが存在していないことだってある。そういう場合は、自分でVimスクリプトを書くことになるのだが、いかに楽をするためとはいえ、そこまでやるのは本連載の趣旨を外れることになるだろう。本連載では、プラグインを利用する辺りまでとしておきたい。

※ 本記事は掲載時点の情報であり、最新のものとは異なる場合がございます。予めご了承ください。

一覧はこちら

連載目次

関連リンク

この記事に興味を持ったら"いいね!"を Click
Facebook で IT Search+ の人気記事をお届けします
注目の特集/連載
[解説動画] Googleアナリティクス分析&活用講座 - Webサイト改善の正しい考え方
[解説動画] 個人の業務効率化術 - 短時間集中はこうして作る
ミッションステートメント
教えてカナコさん! これならわかるAI入門
知りたい! カナコさん 皆で話そうAIのコト
対話システムをつくろう! Python超入門
Kubernetes入門
AWSで作るクラウドネイティブアプリケーションの基本
PowerShell Core入門
徹底研究! ハイブリッドクラウド
マイナビニュース スペシャルセミナー 講演レポート/当日講演資料 まとめ
セキュリティアワード特設ページ

一覧はこちら

今注目のIT用語の意味を事典でチェック!

一覧はこちら

会員登録(無料)

ページの先頭に戻る