MacVimでRailsの環境を作る 〜SnipMateインストール〜
TextMateライクなスニペット補完が可能になるsnipMateというvimスクリプトを入れました。
snipMateは下の動画で紹介されています。
snipMate.vim Introductory Screencast from Michael Sanders on Vimeo.
インストール
下のURLよりスクリプトをダウンロードし、『.vim』フォルダにコピーする。
snipMate – TextMate-style snippets for Vim
スニペットファイルの配置場所
ダウンロードしたファイルの中に”snippets”というフォルダがあるので、そのフォルダに
ファイルタイプ+”.snippet”
のファイル形式で配置すれば、ファイルタイプに応じたスニペットファイルが読み込まれます。
デフォルトのスニペットファイルもいくつかあります。
スニペットファイルの書き方
書き方はこんな感じです。
snippet トリガーとなるキーワード 説明 展開する定型文
例えば、
snippet div
<div id="${1}" class="${2}" style="${3}">
${4}
</div>
と定義した場合、
div<TAB>
と入力すると、定義した定型文が展開されます。
上の”${X}”は、<TAB>を入力する毎に、1,2,3・・・の順でカーソルが移動します。
プレースホルダの書き方は以下の通りです。
- ${1} ・・・ TAB移動するマーカ
- ${1:name} ・・・ デフォルトで”name”が入力される
- ${2:$1} ・・・ ${1}で入力した文字が${2}にも同期される
説明は、必須ではありませんが、トリガーのキーワードが重複している場合、
スニペットが一覧表示されますので、そのときにスニペットの説明として表示されます。
こんな感じの画面です。
この画面で展開したいスニペットの数字を入力すると、選択したスニペットが展開されます。
スニペットファイルが公開されているサイト
スニペットファイルがいくつか公開されていました。
所感
スニペットファイルも定義しやすいし、さくさく入力ができるのでかなりおすすめです。
ただ、TextMateのようにプレースホルダの中にプレースホルダを定義出来ないことが残念です。
将来のリリースに期待です。







