Skip to content

Karabiner parity: input source switching (select_input_source) #214

@malpern

Description

@malpern

Summary

Karabiner-Elements supports select_input_source as an output action, allowing users to switch keyboard input methods (e.g., English ↔ Japanese) as part of a key mapping rule. Kanata has no native equivalent.

Current State

  • Kanata: No native input source switching
  • KeyPath: InputSourceDetector already monitors input source changes for the overlay (Japanese mode detection). Adjacent infrastructure exists.
  • Karabiner converter: Rules using select_input_source are flagged as unconvertible (Tier 3)

Possible Approaches

  1. TCP bridge: KeyPath's AppContextService pattern could be extended — detect input source change requests via push-msg and call macOS TISSelectInputSource API
  2. Shell command fallback: Generate (cmd ...) actions that use macOS defaults write or third-party tools to switch input source
  3. Upstream request: Request native input source support in Kanata

Impact

Primarily affects users of JIS keyboards and multi-language typists. Niche but important for Japanese/Chinese/Korean user segments.

Related

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions