dannの日記

 | 

2009-10-22

neocomplcacheの試用 その1

03:42

autocomplpopは日常的に使っていて、補完についてはautocomplpopで満足しているんですが、snippetの補完がないのでそれもできたらなぁと思ってました。これがneocomplcacheを使い始めようと思いました。

neocomplcacheautocomplpop風に補完できるようになると嬉しいなぁと思っていて、今のところ気づいている違いは、

  • neocomplcacheでは補完がされるときとされないときがある
  • tagsから補完するときに、tagsの全てのtagが対象になる

という2点です。

1点目は多分設定があると思うので、確実に補完されるように設定したいなぁと。これは後で調べる事に。

2番目のほうは、tagファイルが大きいと補完に時間がかかって現状のgithubのneoconだと実用的に使うにはちょっと難しそうでした。

(autocomplpopの場合、perlの場合では、tag全てではなく、packageのみが補完対象になっているようで、それは現実的な速度で動いてます)

今のところ試している感じだと、「dictであれば、autocomplpopと同じように使える」ようなので、少しそれで試してみようかなぁとも思ってます。

tagsの補完が何らかの条件で絞り込めてそれが現実的な速度で動作すれば、それがとても有り難いです。tagの絞り込みパターンを正規表現でわたせるようになっていれば、autocomplpopっぽく補完がされるのかもなぁと少し思ったり。

# 諸処の事情でvim7.1環境でつかってるので、autocomplpopも大分前のバージョンで使っているのもあれなので、vim7.0環境でも動作するneocomplcacheを使いたいというのもあります。

snipmate-snippetsをneocon用のsnippetファイルにconvertしてみた

03:06

neocomplcache歴2日目のdannです。neocomplcacheを、autocomplpopにsnippet補完がついたものの用途で使えそうなので、neoconはずっと気になっていました。

まずはsnippet用意しないとねということで、snipmate-snippetsを公開されてる有名なvimerな人がいるので、neocon用にsnippetを一括マージして生成するスクリプトを作ってみました。機械的に変換したので、そのまま使えるのかまだよくわかってませんが...

以下の場所に置いときました。

http://github.com/dann/snipmate2neocon

snipmate-snippetsをcloneしてそのディレクトリに直下において実行すると、neocomplcacheというディレクトリにマージされた各種言語用のsnippetが生成されます。

# ruby周りがディレクトリがわかれてて対応しきれてないので、後でスクリプトのほうは直します。

ShougoShougo2009/10/23 14:38cpan.tagsをインストールしてやってみました。
確かに補完結果がおかしいですね。これはtags_complete.vimのバグでしょう。
tags_complete.vimは全面的に書き直すので、その時に修正します。

danndann2009/10/23 20:08おぉ、どうもありがとうございます!

 |