HOME6.オムニ(omni)補完に興味を持ってみた

6.オムニ(omni)補完に興味を持ってみた

lastupdate 2008.10.08

かなーり気が早いのですが、VisualStudioで言う所のインテリセンス的な入力保管機能がvimにもあれば良いなーなんて常日頃考えていたのですが、どうやらomni補完という機能があり、似たような事が出来るらしい、という情報をゲットしました。

あきらかに覚えていく順番を間違えていますが、興味があるものは仕方が無い。

モチベーションの維持を第一に考える私としましては、omni補完というものがある事を知ってしまった以上、スルーすることは出来ないので、早速試してみる事にします。


omni補完の方法

とりあえず、C言語でテスト。
編集モード中に、

Ctrl+x Ctrl+o

でイケるようですので、早速試してみましょう。

ここまで打って
ここまで打って、Ctrl+x Ctrl+o っと・・・・・・

パターンはみつかりませんでした
ん???
「パターンはみつかりませんでした」
ってのはどういうことなんですかね??????


頑張ってGoogle様で調べてみたのだが、調べ方が悪いのか、どこを探しても、

「C-x C-o」でイケるよん

的な事しか書いていない・・・・・

これは一体・・・・・
私はここで躓くしか無いのか・・・・・
私に未来はあるのか・・・・・
餃子は何故あんなにうまいのか・・・・・

うーん。どうもファイルタイプを認識して、ファイルタイプ毎に異なるオムニを披露してくれるみたいなんで、他のファイルタイプのものでも試してみましょうか。

他の言語で試してみる

Perl

Perlの場合
「pri」で Ctrl+x Ctrl+o

Perlの場合・・・・・
オプション 'omnifunc' は設定されていません って何よ?????

PHP

PHPの場合
「pri」で Ctrl+x Ctrl+o

PHPの場合・・・・・
Cの時と変わらず・・・・・?

JavaScript

JavaScriptの場合
「ale」で Ctrl+x Ctrl+o

JavaScriptの場合!
「alert(」が補完された!!!!
現時点では理由が分からない・・・・・

Ruby

Rubyの場合
「pri」で Ctrl+x Ctrl+o

Rubyの場合!
候補が出てきた!!!
これですよ!これ!
これが求めていた動作です!

ここで時間切れ

いやぁ、
vimの良い部分の片鱗を少しだけ見れたような気がします。
これで他の言語でも思ったようにオムニることが出来れば文句なし!
秀丸には無い機能(マクロで出来るかもしれないが調べてない)なので、メインエディタに昇格する強力なきっかけとなりそうです。

でも現時点では、RubyとJavaScriptだけ成功。
Rubyはまだほとんど使わないので、実際はJavaScriptの時だけ有効ってのももったいない。
近々また調べたいと思います。

Vimに対する疑問点

少しずつ解決しながら、少しずつ疑問が増えるよ、といった日々が淡々と過ぎて行きます。

今回は横道に逸れたので、全く変化無し!であります。


前の記事へ | 次の記事へ