[BUG] Arabic text renders with reversed and disconnected letters in CLI
Bug Description
Arabic text output in Claude Code CLI is broken. Arabic characters are displayed reversed (left-to-right instead of right-to-left) and rendered as disconnected/isolated letter forms instead of properly joined cursive forms.
Arabic is a cursive script where letters change shape based on their position in a word (initial, medial, final, isolated). Claude Code CLI is rendering each letter in its isolated form, making the output unreadable.
Expected Behavior
Arabic text should render:
- Right-to-left (RTL) direction
- With connected/joined letter forms (cursive shaping)
- Readable and properly formatted, as it appears in any standard terminal or text editor
Actual Behavior
- Letters appear in reversed order (LTR instead of RTL)
- Letters are detached/isolated — each character renders in its standalone form instead of joining with adjacent letters
- Output is completely unreadable to Arabic speakers
Example
Expected output: مرحبا بالعالم (connected, right-to-left)
Actual output (approximation): م ر ح ب ا ب ا ل ع ا ل م (disconnected, reversed)
Environment
- Claude Code version: Latest (installed via
npm install -g @anthropic-ai/claude-code) - OS: macOS (also likely affects Linux)
- Terminal: Tested in macOS Terminal.app and iTerm2
- Shell: zsh
- Locale: Terminal supports UTF-8 and renders Arabic correctly in all other CLI tools
Steps to Reproduce
- Install Claude Code CLI
- Ask Claude any question in Arabic, or ask it to respond in Arabic
- Observe the output — letters are reversed and disconnected
Additional Context
- The terminal itself handles Arabic/RTL text correctly (e.g.,
echo "مرحبا"renders properly) - This suggests the issue is in Claude Code's text rendering layer, not the terminal
- Related to #16814 (RTL support request for Desktop) but this is a CLI-specific bug affecting basic text legibility
- Similar Unicode rendering issue reported in #26564 (UTF-8 mangling with /copy)
Impact
This makes Claude Code completely unusable for Arabic-speaking users or any workflow involving Arabic text output.
This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗