スポンサーリンク

このドキュメントの内容は、以下の通りです。

vimには、オムニ補完などの様々な入力補完機能が提供されています。
snipMate という TextMate-style snippets for vim があります。
snipMate は、スニペットの機能を提供してくれます。
snipMate

PHPやC言語など、様々な言語で利用できます。

C言語で説明すると for 文を書くときに
for<tab>
と押します。
※ <tab>は、タブキーです。

そうすることで、 for がスニペットで展開され、
for (i = 0; i < count; i++) {
	/* code */
} 
が入力されます。
カーソルは、 count に合っており、入力すると count を置き換えることができます。さらにその状態からタブを押すと変数 i へカーソルが移動し、変数名を変更することができます。ここで変数を a としたら i はすべて a に置き換わります。
for (a = 0; a < count; a++) {
	/* code */
}
さらにタブを押すことで、カーソルは ++ に移動し、繰り返し処理を変更することができます。そして、もう一度タブを押すと、for文のブレースの中 /* code */ へカーソルは移動します。

といった風に、snipMateは コードのスニペットの入力から、スニペットの編集のための移動処理の手助けをしてくれます。

スニペットは、あらかじめ複数の言語に対応したものが用意されています。
簡単に自分でスニペットを追加することがより、より効率的なプログラミングを追求することが可能になります。

スクリーンキャスト


下の動画で、snipMate.vimでどのような入力補完が可能なのか動画で見ることができます。

snipMate.vim Introductory Screencast from Michael Sanders on Vimeo.



vimのバージョン


この機能を利用するには、 vim 7 か、それ以上のバージョンが必要になります。

インストール


下記ページから snipMate.zip ファイルをダウンロードします。
snipMate

cd $HOME/.vim
unzip ~/snipMate.zip

スニペット


スニペットは、下記ディレクトリにインストールされます。
$HOME/.vim/snippets

このファイルたちを見ることで、何を入力してタブを押せば、入力補完されるか確かめることができます。

PHP


PHP用のスニペット設定ファイルは、 $HOME/.vim/snippets/php.snippets にあります。
class 定義のところで、 construct などに public を付けたほうがよいかもしれません。
# class ...
| snippet class
/**
 * ${1}
 **/
class ${2:ClassName}
{
	${3}
	public function ${4:__construct}(${5:argument})
	{
		${6:// code...}
	}
	public function ${7:__destruct}(${8:argument})
	{
		${9:// code...}
	}
	public function ${10:f}() {
		${11:// code...}
	}
}

PHPは class<tab>で上記のクラスを展開することができます。

関連記事


  • [2007-11-26-1] vim autocomplpop.vimで補完候補を自動的にポップアップする方法
  • [2007-08-03-1] vimのオムニ補完でC++をもっと楽にする OmniCppComplete

関連記事を探す

vim 補完機能

スポンサーリンク
スポンサーリンク
 
いつもシェア、ありがとうございます!


もっと情報を探しませんか?

関連記事

最近の記事

人気のページ

はてなの人気のブックマーク

スポンサーリンク
 

過去ログ

2018 : 01 02 03 04 05 06 07 08 09 10 11 12
2017 : 01 02 03 04 05 06 07 08 09 10 11 12
2016 : 01 02 03 04 05 06 07 08 09 10 11 12
2015 : 01 02 03 04 05 06 07 08 09 10 11 12
2014 : 01 02 03 04 05 06 07 08 09 10 11 12
2013 : 01 02 03 04 05 06 07 08 09 10 11 12
2012 : 01 02 03 04 05 06 07 08 09 10 11 12
2011 : 01 02 03 04 05 06 07 08 09 10 11 12
2010 : 01 02 03 04 05 06 07 08 09 10 11 12
2009 : 01 02 03 04 05 06 07 08 09 10 11 12
2008 : 01 02 03 04 05 06 07 08 09 10 11 12
2007 : 01 02 03 04 05 06 07 08 09 10 11 12
2006 : 01 02 03 04 05 06 07 08 09 10 11 12
2005 : 01 02 03 04 05 06 07 08 09 10 11 12
2004 : 01 02 03 04 05 06 07 08 09 10 11 12
2003 : 01 02 03 04 05 06 07 08 09 10 11 12

サイト

Vim入門

C言語入門

C++入門

JavaScript/Node.js入門

Python入門

FreeBSD入門

Ubuntu入門

セキュリティ入門

パソコン自作入門

ブログ

トップ


プライバシーポリシー