2013年8月13日火曜日

Chrome拡張機能のショートカットキー設定

Chrome拡張機能にキーボード・ショートカットを割り当てる方法をご紹介します。
下のサンプルは、キーボードの Ctrl+Shift+1Ctrl+Shift+2 を押すことで、 myCommand1myCommand2 というイベント(文字列)が background.js に送信されてログ出力されるだけの簡単なChrome拡張機能です。

manifest.json
{
  "name": "Sample Extension Commands extension",
  "version": "1.0",
  "manifest_version": 2,
  "background": {
    "scripts": ["background.js"],
    "persistent": false
  },
  "commands": {
    "myCommand1": {
      "suggested_key": {
        "default": "Ctrl+Shift+1",
        "mac": "MacCtrl+Shift+1"
      },
      "description": "Send 'myCommand1' event to the extension"
    },
    "myCommand2": {
      "suggested_key": {
        "default": "Ctrl+Shift+2",
        "mac": "MacCtrl+Shift+2"
      },
      "description": "Send 'myCommand2' event to the extension"
    }
  }
}

ちなみにショートカットの割り当ては "manifest_version": 2Chrome ver.25 以上での対応となりますので注意しましょう。

background.js
chrome.commands.onCommand.addListener(function(command) {
  console.log('onCommand: ', command);
});

実行結果
onCommand: myCommand1 background.js:2
onCommand: myCommand2 background.js:2

注意
ショートカットキーの割り当てはChrome拡張機能にのみ実装できます。Packaged App には対応していませんのでご注意あれ。

参考にしたサイト

chrome.commands - Google Chrome

0 件のコメント:

コメントを投稿