[FEATURE] Allow multiple push-to-talk keybindings configured per language in voice-dictation settings.

Resolved 💬 1 comment Opened Apr 23, 2026 by gustavolavi Closed May 28, 2026

Preflight Checklist

  • [x] I have searched existing requests and this feature hasn't been requested yet
  • [x] This is a single feature request (not multiple features)

Problem Statement

Voice dictation (/voice) only supports a single language at a time, configured globally
in settings.json. Switching languages requires manually changing the setting between
recordings, which interrupts the workflow when working in multilingual contexts.

Proposed Solution

Allow multiple push-to-talk keybindings, each bound to a specific language. This could
be implemented in two complementary ways:

  1. Keybinding configuration:

{ "key": "v", "command": "/voice lang=pt-br" }
{ "key": "b", "command": "/voice lang=es-es" }
{ "key": "c", "command": "/voice lang=en" }

  1. Command syntax with inline language parameter:

/voice lang=pt-br (activates push-to-talk with PT-BR transcription)
/voice lang=es-es (activates push-to-talk with ES-ES transcription)

Alternative Solutions

  • Manually update the "language" setting in settings.json before each recording session.

Works but breaks the flow — requires leaving the conversation to edit a config file.

  • Use a third-party STT tool (e.g. local Whisper) with per-key language switching via

a custom CLI wrapper. Functional but adds external dependencies and process noise
into the chat context.

Priority

Medium - Would be very helpful

Feature Category

CLI commands and flags

Use Case Example

A developer working in a multilingual environment (e.g. team meetings in Spanish,
documentation in Portuguese, code comments in English) uses /voice to dictate messages
to Claude Code. Currently they must stop, edit settings.json, and resume each time
they switch languages. With per-language keybindings, they could press "b" to dictate
in Spanish and "v" to dictate in Portuguese without leaving the conversation.

Additional Context

The /voice command already supports mixing voice and typing within the same message
(tap mode). Per-language keybindings would extend this composability to multilingual
messages — press one key, speak in language A, press another, speak in language B,
then submit a single composed message.

Another practical scenario: a developer building a multilingual system instructs
Claude Code in English, but needs to dictate labels, error messages, or UI strings
in the target language. For example, asking Claude to "create a label called [dictates
in Portuguese: 'Arquivo não encontrado']" — without per-language keybindings, the
English STT would misinterpret or mangle the Portuguese string, forcing a manual
settings switch just to dictate a single value.

View original on GitHub ↗

This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗