Vim script

Vim script
パラダイム 命令型
型付け 動的型付け
プラットフォーム クロスプラットフォーム
ウェブサイト [1]
拡張子 .vim
テンプレートを表示

Vim scriptVim に組み込まれたスクリプト言語である[2]。Vim の源流である viex コマンドをもとに、 Vim の初期のバージョンでは制御フローや関数定義のためのコマンドが追加された。バージョン 7 からは、 Vim script はリスト連想配列といったより高度なデータ型や(シンプルなかたちの)オブジェクト指向プログラミングもサポートしている。map()filter() といった組み込み関数によって基本的な関数型プログラミングが可能であり、バージョン 8 からは無名関数もサポートしているが、Vim script はもっぱら命令型のスタイルで書かれている。

Vim のマクロ (コンピュータ用語)にはノーマルモードのコマンドを並べて書いていくことができるが、より複雑なタスクのためには ex コマンドを用いたり Vim script で書かれた関数を用いることもできる。Vim の中核的な機能にまつわる拡張機能(「プラグイン」、「プラギン」、「スクリプト」などと呼ばれる)は殆どすべて Vim script で書かれているが、Vim のコンパイル時にサポートをするようにしておけば他の Perl, Python, Lua, Ruby などのインタープリタを用いる言語を使うことも可能である。

Vim script のファイルはプレーンテキストとして保存され、拡張子には .vim が用いられる。

" This is a simple while loop in Vim script.
let i = 1
while i < 5
  echo "count is" i
  let i += 1
endwhile

ライブラリ

http://www.vim.org/ では Vim のプラグインとして幾らかのライブラリが提供されている。また、vital.vim のように Vim のプラグインに埋め込む用のライブラリも存在する。 vital.vim は例えば neocomplcache, neocomplete, unite, vimshell, quickrun, vimfiler のような人気のあるプラグインでも用いられている。

脚注

  1. ^ https://www.vim.org
  2. ^ http://vimdoc.sourceforge.net/htmldoc/usr_41.html

外部リンク