org-mode のリファレンス検索 anything-orgcard

最近ローカルでの開発作業のメモに org-mode を使っています。単なるテキストファイルの延長から始めているので、そんなに高度な機能は使っていません。

org-modeは機能が多いのでリファレンスのお世話になることが多いのですが、Emacs上のキーバインドを検索できる神ツール descbinds-anything が全く役に立ちません。

こんな風にバインド先の関数名がキー名の関数なので意味がないです!*1



org-キー名になってうれしくない

そこで、 orgmode.org のサイトにあるリファレンスカードのファイルを使って、anythingで機能からキーバインドを探すことのできるツールを作りました。こんな感じになります。



機能で探すことができる

やっつけ実装なので選択しても実行はしません。ミニバッファに表示しておくので、自分でキーを入力します。

インストールは load-path に置いて (require 'anything-orgcard) してください。

M-x aoc:anything-orgcard で起動しますので、適当なキーバインドに入れておくといいと思います。手元では、以下のように org-mode のキーマップに入れるようにしています。

(eval-after-load "org"
  '(progn
     (define-key org-mode-map (kbd "M-4") 'aoc:anything-orgcard)
   ))

*1:その場の状況から適切な機能にバインドされるという設計だからなのですが、これはちょっとあんまりです。せっかくキーバインドに統一的な意味を持たせて空気を読む設計にしているのだから、抽象的な動作を表す関数名を付けるべきだったかなと思います。