[BUG] AquaSKK: Ctrl+J and Kana key (keycode 0x68) not passed to IME for mode switching

Resolved 💬 2 comments Opened Jan 12, 2026 by maltakoji Closed Jan 13, 2026

Description

When using AquaSKK (a macOS SKK-based Japanese Input Method Editor) with Claude Code in iTerm2, the key combinations used to switch to Hiragana input mode are not passed to the IME.

Environment

  • OS: macOS (Darwin 24.6.0)
  • Terminal: iTerm2
  • IME: AquaSKK
  • Keyboard: US layout
  • Claude Code version: 2.1 (latest)

Steps to Reproduce

  1. Install AquaSKK as the Japanese IME
  2. Open Claude Code in iTerm2
  3. Try to switch to Hiragana mode using:
  • Ctrl+J (default AquaSKK keybind for SKK_JMODE)
  • Ctrl+Shift+J (alternative keybind added to keymap.conf)
  • Kana key (keycode 0x68, simulated via Karabiner-Elements)

Expected Behavior

The key events should be passed to AquaSKK, triggering Hiragana input mode (SKK_JMODE).

Actual Behavior

  • Ctrl+J: No effect in Claude Code (previously worked as newline in older versions, now does nothing)
  • Ctrl+Shift+J: No effect in Claude Code
  • Kana key (0x68): No effect in Claude Code

Note: All three methods work correctly in the normal iTerm2 shell outside of Claude Code.

Workarounds Attempted

  1. AquaSKK keymap.conf: Added ctrl::shift::j to SKK_JMODE - works in shell, not in Claude Code
  2. Karabiner-Elements: Mapped Ctrl+Shift+J to japanese_kana (keycode 0x68) for iTerm2 - works in shell, not in Claude Code
  3. Hammerspoon eventtap: Key events are not captured when Claude Code is active
  4. iTerm2 key mapping: Send Hex Code 0x68 - not passed to IME

Additional Context

  • The l key for switching to ASCII mode in AquaSKK works fine
  • This issue appeared after updating to Claude Code 2.1
  • Other Japanese IME issues have been reported (#8405, #8466, #8423) but this specific AquaSKK/Ctrl+J issue seems unique

Request

Please ensure that Ctrl+J and Kana key (keycode 0x68) events are passed through to the system IME instead of being consumed by Claude Code.

View original on GitHub ↗

This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗