Help us understand the problem. What is going on with this article?

フットスイッチでUnitTestを走らせる

More than 1 year has passed since last update.

誕生日プレゼントとして、3連フットスイッチをもらった。

https://www.amazon.co.jp/dp/B0759SPDLZ/

IMG_6695.JPG

これを活用したいということで、IntelliJ で UnitTest を走らせる際のトリガとして使うことにした。
しかし、この製品に問題があって、Windows用のドライバしか付いていない。私はOS Xなユーザである。

さてどうするか。

ということで、Amazon のカスタマーQ&Aには以下のような投稿があるのを発見。

image.png

結論から言うと使えます、というか使っています。この機器はPCに接続すると 普通のUSBキーボードとして認識されます。

ということで、実際に接続してみると、左から a / b / c というキーが割あたっていることがわかった。
Mac上でキーアサインを変更するには、 Karabiner を使うとよいらしい。

手順1:

Karabiner をインストールする。

手順2:

フットスイッチをMacBookに接続する。

手順3:

Karabiner を開き、Devices タブに行き、 Vendor Id, Product Id を調べる。これは、フットスイッチだけでキーアサインを変更するために必要になる。
ついでに、チェックボックスを入れて、キーの変更を有効にする。

image.png

手順4:

以下を参考にキーバインド変更用のJSONファイルを書く。
単純なキーアサイン変更であれば、Simple Modification のタブでも行えるが、今回のように IntelliJ のテストを走らせるショートカット (Shift + F10) を割り当てたい場合、Complex Modifications による設定が必要。

https://qiita.com/s-show/items/a1fd228b04801477729c

~/.config/karabiner/assets/complex_modifications/1.json
{
  "title": "キーペダル",
  "rules": [
    {
      "description": "右 -> Shift + F10割当",
      "manipulators": [
        {
          "type": "basic",
          "from": {
            "key_code": "c"
          },
          "to": [
            {
              "key_code": "f10",
              "modifiers": ["left_shift"]
            }
          ],
          "conditions": [
            {
              "type": "device_if",
              "identifiers": [
                {
                  "vendor_id": 3141,
                  "product_id": 29700
                }
              ]
            },
            {
              "type": "frontmost_application_if",
              "bundle_identifiers": ["^com\\.jetbrains\\.intellij"]
            }
          ]
        }
      ]
    },
    {
      "description": "中央 -> Shift + Ctrl + F10割当",
      "manipulators": [
        {
          "type": "basic",
          "from": {
            "key_code": "b"
          },
          "to": [
            {
              "key_code": "f10",
              "modifiers": ["left_shift", "left_control"]
            }
          ],
          "conditions": [
            {
              "type": "device_if",
              "identifiers": [
                {
                  "vendor_id": 3141,
                  "product_id": 29700
                }
              ]
            },
            {
              "type": "frontmost_application_if",
              "bundle_identifiers": ["^com\\.jetbrains\\.intellij"]
            }
          ]
        }
      ]
    },
    {
      "description": "左 -> F3",
      "manipulators": [
        {
          "type": "basic",
          "from": {
            "key_code": "a"
          },
          "to": [
            {
              "key_code": "f3",
              "modifiers": ["fn"]
            }
          ],
          "conditions": [
            {
              "type": "device_if",
              "identifiers": [
                {
                  "vendor_id": 3141,
                  "product_id": 29700
                }
              ]
            },
            {
              "type": "frontmost_application_if",
              "bundle_identifiers": ["^com\\.jetbrains\\.intellij"]
            }
          ]
        }
      ]
    }
  ]
}

ポイント:

conditions[].typefrontmost_application_if を指定すると、特定のアプリケーションだけでキーバインドを変更することができる。ここでは、IntelliJ の bundle_identifier を指定している。

手順5:

Complex Modification -> Add rule に、上記で追加したルールが見つかるので、Add Rule をする。

image.png

これで、フットスイッチで、快適なUnitTestライフを送れるようになる。アプリごとによくやるアクションをフットスイッチに割り当てると、なんだか楽しいので、おすすめであります。

ooharabucyou
地球に住んでいます。
http://www.bucyou.net
codeal
即戦力複業ならコデアル。高収入×リモートワークの複業・フリーランス・転職求人多数
https://www.codeal.work
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした