tjinjin's blog

インフラ要素多めの個人メモ

MacOS Sierraで英数・かな切り替えをkarabiner Elementsでどうにかした

About

karabinerがまだSierra対応していない状況でしたが、Sierraが入ったマシンだったのでどうにかしました。

経緯

まず、karabiner Elementsのmasterブランチにはstandalone keysと呼ばれる機能はまだ導入されていないのですが、forkしたリポジトリでその対応をされている方がいらっしゃいます(ありがてえ)

master

github.com

fork先のリリースページ

github.com

いくつかのブログ等を拝見するとfork先の最新パッケージを導入すればうまくいくとのことだったのですが、原因が謎ですが私の環境では動作しませんでした。(ログも確認しましたが特にエラー出ず謎です。。。原因を知りたい…!)

対応方法

もともと左のcmdを英数、右のcmdをかなにしていますが、上記の方法が取れないので打開策として右のcmdを潰すことにしました。

初期の設定

{
    "global": {
        "check_for_updates_on_startup": true,
        "show_in_menu_bar": true,
        "show_profile_name_in_menu_bar": false
    },
    "profiles": [
        {
            "devices": [],
            "fn_function_keys": {
                "f1": "display_brightness_decrement",
                "f10": "mute",
                "f11": "volume_decrement",
                "f12": "volume_increment",
                "f2": "display_brightness_increment",
                "f3": "mission_control",
                "f4": "launchpad",
                "f5": "illumination_decrement",
                "f6": "illumination_increment",
                "f7": "rewind",
                "f8": "play_or_pause",
                "f9": "fastforward"
            },
            "name": "Default profile",
            "selected": true,
            "simple_modifications": {
                "left_command": "left_command",
                "right_command": "right_command"
            },
            "standalone_keys": {
                "left_command": "japanese_eisuu",
                "right_command": "japanese_kana"
            },
            "virtual_hid_keyboard": {
                "caps_lock_delay_milliseconds": 0,
                "keyboard_type": "ansi",
                "standalone_keys_delay_milliseconds": 0
            }
        }
    ]
}

これはダメだったので、暫定的にこうしました。

{
    "global": {
        "check_for_updates_on_startup": true,
        "show_in_menu_bar": true,
        "show_profile_name_in_menu_bar": false
    },
    "profiles": [
        {
            "devices": [],
            "fn_function_keys": {
       ...
                "f3": "f3",
       ...
            "standalone_keys": {
                "left_command": "japanese_eisuu",
                "right_command": "f3"
            },
            "virtual_hid_keyboard": {
                "caps_lock_delay_milliseconds": 0,
                "keyboard_type": "ansi",
                "standalone_keys_delay_milliseconds": 0
            }
        }
    ]
}

一部中略していますが、まず、standalone keysでright_commandにf3を割り当てました。次にこのままだとやりたいことができないので、f3の割当をf3に変更します。

最後にシステム環境設定 -> ショートカット -> 入力ソースにある”前の入力ソースを選択”という項目をF3に割り当てることにしました。これでright_commandを押すと、英数<->かなの切り替えが可能になりました。(入力ソースが3個以上あるとうまく機能しません。。。)

まとめ

右のコマンドキー普段使わない気がするので大丈夫なはず…?同じ事象にはまっている方がいましたら参考になれば幸いです。

参考