Karabiner-Elementsの独自ルールの作成方法

Karabiner-ElementsのComplex Modificationsでは、複雑なルールを追加してキーボードをより便利にカスタマイズできますが、一見するとインターネット上に公開しているものしか追加できないように思えてしまいます。
- 自分の好みのルールがない
- 機能的には欲しいけど、別のキーに設定したい
今回は、このように感じたひとのために、Karabiner-Elementsで独自ルールを作成方法をまとめておきます。
独自ルールの作り方
Karabiner-ElementsのルールはJSON形式で作られていて、下記のようにルールの設定をしていきます。
{
"title": "ここに独自ルールのタイトルを入力",
"rules": [
{
"description": "ルールの説明",
"manipulators": [
{
"type": "basic",
"from": {
"key_code": "i",
"modifiers": {
"mandatory": [
"fn"
],
"optional": [
"any"
]
}
},
"to": [
{
"key_code": "up_arrow"
}
]
}
]
}
]
}このJSONはfn + iキーを押すと上矢印が入力されるルールです。
ものすごくザックリ説明するとfromには変更前のキーを入力し、toに変更後のキーを入力することで、キーバインドの変更を設定しています。
更に細かく知りたい場合は、Karabiner-Elementsのリファレンスがありますので、そちらをご覧ください。
独自ルールの配置場所
独自ルールは.json拡張子で保存して、下記フォルダ内に配置します。
/Users/ユーザ名/.config/karabiner/assets/complex_modificationsここに保存してKarabiner-Elementsの「Complex Modifications」の「Add rule」ボタンをクリックすると、配置したルールが反映されています。

あとは「Enable」をクリックすれば他のルールと同じように使えます。
自分の場合は「complex_modifications」フォルダをシンボリックリンクにして、元のフォルダはDropboxに移動させています。
こうすることで、Macの移行の際も設定が一瞬で終わります。
既存ルールの閲覧 → キーの変更
独自ルールの追加方法が分かっても、1からルールを作るのはハードルが高いものです。
しかし、独自ルールの追加方法が分かれば、Karabiner-Elements complex_modifications rulesで公開されているルールを引っ張ってきて、好みのキーに変更することができるようになります。
まずは、Karabiner-Elements complex_modifications rulesにアクセスして「Import」ボタン横にある三角ボタンを押して「Show JSON」を選択します。

するとJSONが表示されるので、これをコピーして「complex_modifications」フォルダ内にJSONファイルを保存します。

あとは"key_code"の部分だけ変更していけば、好きなキーにカスタマイズできます。
この方法を使えば「機能的には欲しいけど、別のキーに設定したい」ルールを、自分好みにカスタマイズできますよね。



Mac版GoodNotes 5でiPadで書いたノートをMacでも閲覧したり編集する
ターミナルの$記号前の表示を自由にカスタマイズする
Google Chromeをショートカットキーで操作できるようにする
Fantastical 2で予定の登録時に使えるキーワードまとめ
刷新されたAlfred 4のテーマエディタでエディタのカスタマイズと、公開テーマのインポート方法
MacBook Proでディスプレイのサイズ調整をして作業スペースを広げる
日々のちょっとした作業を効率的にする小技 #1日1Tips – 2019年7月
Alfred 4のファイル検索機能を使って、ファイルの操作を高速で行う方法
Alfredで現在開いているフォルダ内の画像をImageOptimで圧縮するWorkflowの作り方
Macでデュアルディスプレイ時に、通知を表示するディスプレイを指定する方法
AirPodsで片耳を外しても再生が止まらないようにする方法
MacのKeynoteにハイライトされた状態でコードを貼り付ける方法
iTerm2でマウスやトラックパッドの操作を設定できる環境設定の「Pointer」タブ
DeepLで「インターネット接続に問題があります」と表示されて翻訳できないときに確認すること
Ulyssesの「第2のエディタ」表示を使って2つのシートを横並びに表示する
ウェブページのテスト環境・本番環境間違いを防止するChrome拡張機能「Environment Marker」
【2026年版】Karabiner-Elementsで実現する右commandキー活用のススメ
Bartender ProのTop Shelf機能でできること
高機能なスクリーンショットアプリ「CleanShot X」
macOSの効率化に関するDiscordコミュニティ「CMD-F」を立ち上げました
1Passwordの開発者向け機能(SSH Agent / Environments / 1Password CLI / Developer Watchtower)
Default Folder Xで保存ダイアログ内のファイルリストにフォーカスする方法
Obsidianで整理した知識をAnkiで定着させる方法
Figma × Keyboard Maestroでどこまで効率化できる?
マウス操作の完成度が高いウインドウリサイズアプリ「Magnet」