JRubyでグローバルフックとかグローバルホットキーと呼ばれる、OSの機能を使う。 普通のホットキーはアプリがアクティブの時しかキー入力やマウス入力を取得できないが、jnativehookというjavaのライブラリを使うとアクティブじゃなくても取得できる。 コードはgistに置いた。 global keyhook with JRuby 下の方に書いたけどマウスはちゃんと取れるけどキーボードがshiftとctrlとcommandしか取れず、しかも全部shift扱いになる。 まあ今考えてる用途には十分なので別にいいか・・ jnativehookのインストール jnativehook – A library to provide global keyboard and mouse listeners for Java. – Google Project Hosting からJNativeHook