monoの開発ブログ

jQueryでマルチストロークのキーイベントを扱うプラグイン

Emacsなどで使われるマルチストロークのキーバインドをイベントとして簡単に扱えるjQueryプラグインを作ってみました。

mono0x's jquery.keybind at master - GitHub

利用方法

以下のようにbindの第2引数でキーバインドを指定します。

$(window).bind('keydown', 'j', function(e) { });

ShiftキーやCtrlキーとの同時押しを指定する場合は、S-やC-のプレフィックスを付けます。

$(window).bind('keydown', 'C-j', function(e) { });$(window).bind('keydown', 'S-j', function(e) { });$(window).bind('keydown', 'C-S-j', function(e) { });

また、複数のキーバインドをスペースで区切って記述することで、マルチストロークのキーバインドも実現できます。

$(window).bind('keydown', 'C-x C-c', function(e) { });

ToDo

  • keypressイベントへの対応
  • 記号の対応を改善