vimのちょっと便利な辞書機能

2009 年 2 月 17 日 by fujii

VisualStudioやEclipse等でよくある、入力補完をvimで行う方法です。
vimには辞書機能というものがあり、コーディング中にその辞書から、関数名などを入力補完することが可能です。

今回はPHPのコーディングにて、この辞書機能を利用する方法をご紹介します。

まずは辞書ファイルを用意します。
ホームディレクトリに「dict」ディレクトリを作成し、そのディレクトリ内に以下のPHPスクリプトを作成します。
(makedict.php)

<?php
$f = get_defined_functions();
sort( $f["internal"] );
echo implode( "\n", $f["internal"] );
?>

作成したPHPスクリプトを実行し、辞書ファイルを作成します。コマンドラインで以下を実行します。
$php ~/dict/makedict.php > ~/dict/php.dict
これで、php.dictファイルに、PHPで利用可能な関数が追記されます。

vimの設定で、PHPファイルを編集する場合、先程作成した、辞書ファイルを利用する設定を行います。
ホームディレクトリの「.vimrc」ファイルに以下を追記します。
(~/.vimrc)
autocmd FileType php :set dictionary=~/dict/php.dict

以上で準備は完了です。では、早速使ってみましょう。

  1. PHPファイルの編集を行います。
    $vi test.php
  2. 関数を途中まで入力します。(例:array_)
  3. 入力途中で、「Ctrl」+「x」を押します。続けて、「Ctrl」+「k」を押します。
  4. すると辞書ファイルより、「array_」で始まる関数を一覧表示してくれます。
    「Ctrl」+「n」で次候補。「Ctrl」+「p」で前候補を選択することが可能です。
    ※一覧表示されるのはvimのバージョン7です。バージョン6では、一覧表示はされませんが、辞書の利用は可能です。

vimを利用して、PHPをコーディングされる方は是非この辞書機能を利用してみてはいかがでしょうか。

タグ: ,

TrackBack