Giraffe+ 0.5.13.280

Downloadページへ

前リリースからの変化

  • 設定ダイアログのSettings::setupにStartmenuAsRegitemとFlatAutocompleteを追加
  • Config.Path.Priorityに複数のファイルを置けるようにした
  • 登録アイテムのオートコンプリートを高速化した
  • 文字列内ブロック("#{}")をパースするとStringがconstになっていたのを修正
  • 配列生成構文({})をパースするとArrayがconstになっていたのを修正
  • Config.Path.Dataにテキストファイルを置くことで、その内容を登録アイテム扱いするようにした
  • 登録アイテムの部分一致時の登録アイテム内ディレクトリの扱いを決定する変数Virtual.AutoCompleteSetListPartialMatchConfigを定義した
  • Giraffe.ListBox.InsertItemにそのときのアイテム数より多いインデクスを指定すると、 結果のアイテム数が必要量よりひとつ多くなる仕様を撤廃
  • Migemo.query_groupingの戻り値の先頭に"^"を付けないことにした
  • Giraffe.ListBoxにLB_ADDSTRINGとLB_INSERTSTRINGをサポートさせた

登録アイテムにテキストを利用可能にしました。いつかやろうと思ってたんですが、自分が使わないので放置してました。ディレクトリと同じように、オートコンプリート毎にいちいち内容が参照される仕様です。*1これにより、History.txtをPath.Config.Dataに追加するだけで、そのまま履歴が登録アイテム扱いになります。*2
あと、設定ダイアログの設定だけでGiraffe+をスタートメニューのインターフェイスにできるようにしておきました。StartmenuAsRegitemとFlatAutocompleteとPartialMatchAutocompleteを有効にするとにスタートメニュー内のファイルをディレクトリ名も含めて登録アイテム名として扱えます。さらにMigemoMatchAutocompleteとMigemoGrouping*3を有効にすれば日本語のアプリケーションに空白区切りのAND検索でアクセスできます。

*1:登録アイテム全てをキャッシュ可能にして高速化するのも、ずっといつかやろうと思ってはいますが、動的性が低下するのが嫌でなかなかやる気になれません。登録アイテムをいじるたびに明示的な再読み込みが必要になりますし、監視するとしても現状のWindowsファイルシステムでは中途半端なものにしかならないからです。

*2:さらに、History.txtをConfig.Path.Priorityの前部に挿入すれば、履歴にあるものがリストの一番上に来るようになりますが、これはHistory.txtに変更があるたびにLoadPriorityが必要になります。BeforeExecuteにLoadPriorityさせるだけでいいんですが、いまいちキレイな方法でない気がして設定ダイアログからこれを可能にはしていません。今これを書いてて気づいたんですが、Config.Path.Dataは非キャッシュのみ、Config.Path.Priorityはキャッシュのみ可能なんですね。なんなんでしょう、この仕様。両方どちらもできるようにしておくべきですね、それにより発生する問題をどうするかを考える前に。問題が深刻なら設定を戻すだけ、利点と問題が相殺されおつりが来るならそれはいい設定なわけで。

*3:当然MigemoEnableも