unite-outline

unite-outline の近況: 次期バージョンの開発

昨年の秋頃から目立った変化のない unite-outline ですが、開発が停滞しているとか、作者のやる気がなくなった*1とかではなく、「今年の抱負 - Vimプラギン編」で述べた通り、次期バージョンの開発(準備)を少しずつ進めています。ある程度形になったら別ブ…

Vim のプラグインのプラグインの呼称

Vim のプラグインのプラグインの呼称について、自分が知っている範囲でまとめてみた。 Plugin Plugin's Plugin Load Function neocomplcache source #define() QuickRun module #new()*1 ref.vim source #define() unite.vim source, kind, filter #define()…

今年の抱負 - Vimプラギン編

抱負を述べるには時期を逸した感があるものの、こういうものは一応でも言っておいた方が、一年を通してほどよいプレッシャーになっていいと思うのでw alignta Issues - h1mesuke/vim-alignta - GitHub 去年やるはずだったのにできなかった、 前回の整列を繰…

unite-outline の近況: Ruby と RSpec の見出し抽出を改善

今秋から Rails やってます。というわけで、unite-outline の Rubyサポートを強化中。まずは、Ruby用 outline info の改善から。 def 以外のメソッド定義も拾う なんと、メソッドの定義は def しか拾ってなかったので、attr_accessor, attr_reader, attr_wri…

unite-outline の近況: C のマクロがどう展開されるかを表示するようにした

C のマクロが展開されてどうなるかを => の後に表示するようにしてみた。Before: ↓ After: 上の画像より空間の利用効率が上がって情報量が増えたのがわかると思う。do { ... } while(0) のような複数行に渡るものは最初の数行分しか表示できないけど、アウト…

unite-outline の近況: 空行の挿入を控えめにした

クラスのような大きなまとまりどうしの間には依然として空行を入れるが、単に見出しの種類が違うというだけでは間に空行を入れないことにした。元々この機能は、ハイライトによる見出しの色分けがまだできなかったとき*1に考案したもの。C のソースから見出…

unite-outline が見出しを自動更新するようになりました

やった! これで ともおさらばだ!unite-outline の「なんでこれができないの?」の筆頭であった見出しの自動更新をついに実装しました。詳細はヘルプで g:unite_source_outline_filetype_options、unite-outline-filetype-option-auto-update*1 の辺り見て…

unite-outline で候補の絞り込みから選択へかけての打鍵数を減らす [2]

前々から気になっていたこととして……絞り込みの結果、マッチが1件という段になっても、そのまま で該当する見出しの箇所へジャンプできないという問題がありました。 ▲ぐぬぬ……unite-outline では絞り込みの結果に、実際にマッチした見出しに加え、その親(…

unite-outline の見出しがカラフルになりました

久しぶりの更新前からやろうやろうと思っていたのに、長らくほったらかしになっていた unite-outline のシンタックスハイライト対応。最近また Vim をいじったりする余裕ができたので、えいやっとやってみました。こんな感じです↓ 見出しの種類が色でパッと…

unite-outline で候補の絞り込みから選択へかけての打鍵数を減らす

unite-outline では、候補の絞り込みの際、見出しの親子関係に配慮し、マッチした見出しだけでなく、その親見出しも絞り込みの結果に残すようにしています。*1これはメソッド名などで絞り込みを行ったときに、実際にマッチしたもの(メソッド)だけを残すと…

DSL の見出し抽出には Vim の複合ファイルタイプを積極的に利用しよう

obsolete この記事で紹介している、Vim の複合ファイルタイプ(compound filetype){記述言語}.{DSL} を {記述言語}_{DSL}.vim の outline info にマップするというやり方は改めます。このやり方だとユーザーがいちいち ftdetect にて複合ファイルタイプの設…

ctags を使った見出し抽出

C, C++, Java…… この辺の言語の見出し抽出を、正規表現を使ったパターンマッチングで行うのは限界にきていた(というか最初から無理な話であったw)ので、見出しの抽出ロジックを outline info が独自に定義できるようにした。設定したパターンにマッチした…

デフォルトの outline info の作成ポリシー

昨夜、unite-outline の見出し一覧に表示される文字列を簡単にカスタマイズできるように、ユーザーが見出しの変換関数を既存の outline info にモンキーパッチできる仕組みを実装したところ、Lingr の Vim部屋にて、「この機能は unite本体側に実装したほう…

Vimノート - Vim script で構文解析するには、という考察

考察というか、ぼんやりと考えてみました的なもの。まず、C/C++ の関数定義、あるいは Java のメソッド定義(コンストラクタ含む)を正規表現マッチによって拾うのはかなり苦しい*1。これらの言語の outline info は結構涙ぐましいものになっていて、「正規…

unite-outline まとめ

unite-outline の関連エントリが増えてきたのでまとめ。自演乙。((ちなみに、私は長島☆自演乙☆雄一郎選手のファンです ( ̄ー ̄)bグッ!)) unite.vim で簡易アウトライン機能一発目の紹介記事。スクリーンショットを随時追加している。 unite-outline の outli…

unite-outline が見出しとして抽出するコメントの形式と見出しレベル

前回のエントリで、unite-outline では、飾り枠線で装飾されたコメントを積極的に見出しとして拾うようにしていると書きました。*1プログラミング言語用の outline info では、見出しとして抽出されるコメントの形式と設定される見出しレベルに一貫した決ま…

unite-outline に特定の種類の見出しを非表示にする機能を追加

unite-outline では、「見出し」をプログラミング言語の構文上の要素に限定せず、「ジャンプ先として適当なもの」と大きくゆるくとらえており、飾り枠線で装飾されたコメントなんかも積極的に見出しとして拾うようにしています。 ▲ 飾り枠線で装飾されたコメ…

unite-outline の outline info の仕様を拡張

unite-outline のファイルタイプ別見出し抽出方法の定義ファイルである outline info の仕様を拡張したので告知します。後方互換性は保たれていますので、既存の outline info が使えなくなるとかいった話ではありません。*1ただ、outline info の仕様で、少…

unite.vim で簡易アウトライン機能

ここでいう「アウトライン機能」とは、極々大雑把に、「ファイルの見出し一覧的なものを表示する機能」および、「見出し一覧から項目を選択することで該当個所へジャンプできる機能」、ぐらいの意味です。(世間一般において「アウトライン機能」といった場…