Voice モード: Caps Lock キーバインドに対するエラーメッセージ表示
原文(日本語に翻訳)
Voice モード: Caps Lock にバインドされたキーバインドは、ターミナルが Caps Lock をキーイベントとして送信しないためエラーを表示するようになりました。
原文(英語)
Voice mode: keybindings bound to Caps Lock now show an error since terminals don't deliver Caps Lock as a key event
概要
Claude Code v2.1.122 では、Voice モードのキーバインド設定において Caps Lock キーを指定した場合に、明示的なエラーメッセージが表示されるようになりました。ほとんどのターミナルエミュレーターは Caps Lock キーのイベントをアプリケーションに送信しない仕様であり、これまで設定しても動作しない原因が不明瞭でした。今回の改善により、Caps Lock を Voice モードのキーバインドに使えない理由がすぐに分かるようになりました。
基本的な使い方
bash
# Voice モードのキーバインドを Caps Lock に設定しようとすると
# エラーメッセージが表示される
# settings.json で以下のような設定をした場合:
{
"voiceMode": {
"keybinding": "CapsLock"
}
}
# → エラー: "ターミナルは Caps Lock をキーイベントとして送信しません。
# 別のキーを指定してください。"実践例
代替キーバインドの設定
json
// ~/.claude/settings.json
// Caps Lock の代わりに使えるキーバインドの例
// Ctrl+Shift+V を Voice モードのトグルに設定
{
"voiceMode": {
"keybinding": "ctrl+shift+v"
}
}
// F4 キーを使用
{
"voiceMode": {
"keybinding": "f4"
}
}
// Alt+V を使用
{
"voiceMode": {
"keybinding": "alt+v"
}
}エラーが出た場合の対処手順
bash
# 1. エラーメッセージが表示されたら設定を確認
cat ~/.claude/settings.json | grep -A5 voiceMode
# 2. Caps Lock 以外のキーに変更
# /config コマンドで設定画面を開く
/config
# 3. または settings.json を直接編集して適切なキーに変更注意点
- Caps Lock はほぼすべてのターミナルエミュレーター(Terminal.app、iTerm2、Alacritty など)でキーイベントとして送信されません
- これはターミナルの仕様であり、Claude Code 側では解決できません
- Voice モードを有効に活用するには Ctrl、Alt、Function キーなどを使ったキーバインドを設定してください
/terminal-setupコマンドで一部のターミナル固有の設定を最適化できます