2010-12-14 4 views
4

私はVIM補完(辞書と現在のバッファ)を使用しようとしていますが、問題が発生していますか?そして!メソッド名の最後に。何とかvimにメソッド名(基本的には単語)が最後にしか持てないということを説明できますか?雄牛じゃない?!!えっ!または!xyz ...の場合(?と!が追加されたときには、キーワードとして!xyzが補完リストに存在します)。任意のアイデアをどのように行うには?VIM:Rubyメソッドは?そして!最後に

+0

'iskeyword'定義ではパターンを使用する方法がなく、文字のみを使用する方法はないようです。私はそれがルビーケースでどのように役立つかを見ることができます... –

+0

なぜ私は新しいエディタを作成すると思ったのですか? – Daniel

答えて

5

IIRCの場合、iskeywordオプションを変更する必要があります。

set iskeyword+=?,!を試すと、?!はセパレータではなく単語の一部とみなされます。あなたの.vimrc

、あなたが追加することができます。
autocmd BufRead,BufNewFile *.rb set iskeyword+=?,!

の詳細については、:help iskeywordを参照してください。

編集:可能性のある回避策としてiskeywordについて既に説明したことはありませんでした。

代替案:
1.ルビコードのctagsを生成します。
オプションでは、tオプションの意味はtags only以外のすべてを削除します。

あなたは、タグファイルからの提案のみを受けるつもりです。欠点は、補完を使用するための新しいステップが追加され、非タグ補完がいくつか見逃されることです。

+2

元のメッセージをよく読んでください。この場合、iskeywordは追加されないので動作しません。そして!それは 'if!xyz'のようなものの後に新しい完了オプションがあることを意味します!xyzとthatsは間違いなく私が望むものではありません。各変更時にタグを生成しますか?最高のアイデアでもない。 – Daniel

+1

あなたの代替ソリューションは、この状況で最も実行可能性が高いようです。 +1。 –

関連する問題