⌨️
DiscordのEnterキーの挙動を変更したい
はじめに
DiscordアプリのEnterキーがデフォルトで送信処理の動作になるため、結構な頻度でテキスト入力途中で誤送信をしてしまう事象が発生します。
そこで、Karabiner-Elementsを使って、簡易的にキーバインドを変更し、誤送信を回避する方法について書きたいと思います。
ここでは、Slackアプリ同様に、Enterキーを改行、Command + Enterキーを送信の挙動となるようにキーバインドを変更します。
前提条件
Karabiner-Elementsをインストールします。
https://karabiner-elements.pqrs.org/
※ macOS Monterey 12.0.1 で Karabiner-Elements v14.3.0で動作確認済み
設定ファイル
{
"title": "Discord-Enter-Modification",
"rules": [
{
"description": "Discord-Enter-Modification",
"manipulators": [
{
"type": "basic",
"from": {
"key_code": "return_or_enter"
},
"to": [
{
"key_code": "return_or_enter",
"modifiers": ["left_shift"]
}
],
"conditions": [
{
"type": "frontmost_application_if",
"bundle_identifiers": ["^com\\.hnc\\.Discord"]
}
]
},
{
"type": "basic",
"from": {
"key_code": "return_or_enter",
"modifiers": {
"mandatory": ["command"]
}
},
"to": {
"key_code": "return_or_enter"
},
"conditions": [
{
"type": "frontmost_application_if",
"bundle_identifiers": ["^com\\.hnc\\.Discord"]
}
]
}
]
}
]
}
設定のインストール
- JSONの設定ファイルを ~/.config/karabiner/assets/complex_modifications 配下にダウンロードする
$ curl -o ~/.config/karabiner/assets/complex_modifications/discord-enter-modification.json https://gist.githubusercontent.com/mh-mobile/e792d6a1d96a11a0fc587449c2d4c2d6/raw/ae56333a1940e83b7ea6d6d3d79324d64aaaeb0e/discord-enter-modification.json
※ 上記のcurlコマンドでは、JSONの設定ファイルのURLとして、Gist上に保存したJSONファイルのrawデータのURLを指定しています。
-
Karabiner-Elementsの設定画面で
Complex modifications
タブを開き、Add rule
を選択する。
-
Discord-Enter-Modification の
Enable
ボタンを選択し、設定を有効化する。
-
Complex Modifications
タブでDiscord-Enter-Modification
の設定が追加されたことを確認します。
使い方
- Discord アプリを起動します。
Discordアプリが前面で起動している場合のみ次のキーバインドが有効になります。
- 入力フォームで キーバインドが次のように動作します。
-
Enter
ボタンを押下 → テキストを改行 (従来のLeft Shift + Enterの挙動) -
Command + Enter
ボタンを押下 → テキストを送信 (従来のEnterの挙動)
補足
DiscordのBundle IDの値は、com.hnc.Discord
になります。
参考: macOS Bundle ID List
Discussion