clmode_lex.zip
不具合修正版。Abbrevでの描画ロック問題も一応こちら側で吸収してみた。これは将来的に本体側で修正されるかもしれない。あと、フック周りのコードを多少すっきりさせた。エラートラップは定型なくせに行数食うのでががーんとまとめた方がわかりやすい。
今回の変更で、試験的にinitのフックでキーバインドを変更できるようにevent.keysというパラメーターを渡してみた。内容は辞書型で、書式は以下の通り。

{'key', (keycode, modkey)}

書き換える場合はタプルの部分を上書きすればいいと思う。まぁ、そこまでしてわざわざキーの定義を書き換えたいと思うかといわれると、微妙な線ではあるのだけれど。というかキー定義の追加や変更ぐらいなら、config.pyにフック関数を追加していくよりもclmode_lex.pyを直接書き換える方がカジュアルだということだと思う。
パラメータの中に%command%みたいな文字列があったら、commandをパースしてくれる機能があるとちょっといいかも。binedit;%xyzzy%とかするとxyzzy.exeがバイナリエディタで開けるみたいな。わりと簡単に出来そうだけど今日はもう眠くて頭働かない。とにかく、%command%っていう書式は今ひとつスマートさに欠ける気がするのでなんとかならないものか。