69 howm-mode.vim (2-36) メニューの実装 ほか

例によって howm-mode.vim の更新。メニューの実装についてと、昨日公開したパッチの中に含まれていた未通知の修正点の報告。まずは、修正点一覧から。じゃなかった、先にダウンロードURL。

ダウンロード: http://khkh.o0o0.jp/vim/howm_vim.patch

修正点一覧

  • メニューを実装
  • 日付の上で を押した際の動作を変更
  • 検索結果窓を使いまわすよう修正
  • クイックロードを実装
  • Vimのバージョンチェックを追加
  • キーワードリンクの優先順位を下げた

この一覧は、使う側に見える部分だけなので、こまこまとした修正はあるけど、それはまあいいよね。次は、それぞれの説明。

メニューを実装

ずいぶんと前から書いていたメニュー機能をついに実装!これで本家の壁を一つ越えた。まだ中途半端な実装だけど、必要最低限の機能は備えていると思う。

既定値では ,, にマップ。メニューと一週間の予定とTODO50件を表示。本家を知らないので、これでいいのかわからないけど、自分ではいいんじゃないかと。使ってみておかしいなと思ったら、どなたか報告よろしく。

日付の上で を押した際の動作を変更

以前はキーワードリンク扱いになっていた [yyyy-mm-dd] *1 を変更して、日付の変更が容易にできるようにした。

これも実行してもらえば分かるけど、下記のようなプロンプトが出る。

howm RET (goto), +num (shift), yymmdd (set), . (today): 

表示のとおりなんだけど、一応説明。

  • RET で goto リンク。これは以前の動作。
  • +num や -num で指定日数分だけ日付をずらす。
  • yymmdd で日付を指定して変更。桁数が足りなくても適当に補完する。試してみればわかる。
  • . で今日の日付に変更。
検索結果窓を使いまわすよう修正

ウィンドウを開きなおす際に、いちいち閉じているのだけど、ウィンドウの位置が変わったりしてイライラするので、既に howm Search result があれば使いまわすようにしてみた。バグがあったら報告よろ。

クイックロードを実装

読み込みを遅らせることで、普段の Vim の起動がはやくなるって聞いたので試してみたけど、あんまり変わらん。

Vimのバージョンチェックを追加

一応 6.0 以降らしいので、6.0 しばりとかかけてみた。他にも strftime() なんかのチェックも追加してるはず。

キーワードリンクの優先順位を下げた

先に書いた日付上で〜の変更のためにしたこと。ユーザ定義の action-lock よりは優先順位が高いので、まだあんまり意味がない気もする。

次にしたいこと、すべきこと (TODO)

検索したり開いたりするたびにウィンドウ位置が変わってイライラするので、固定したい。

Chalice くらいがっちりしてた方が好き。下記ぽい位置関係を守るのはどうかなと思ってる。

 +------------+
 |    メモ    |
 +------------+
 | プレビュー |
 +------------+
 |   検索窓   |
 +------------+
 |  メニュー  |
 +------------+

あとはキー関係の整理。コマンドの追加あたりかな。

そういえば howmm はどうなったの?

くふん。

*1:グローバル変数 howm_date_pattern の設定によって変わる