VS Code webview CSS breaks RTL languages (Hebrew, Arabic) with unicode-bidi: bidi-override

Resolved 💬 3 comments Opened Feb 28, 2026 by nivdam Closed Mar 4, 2026

Description

The VS Code extension's webview index.css contains a global CSS rule on line 1:

* { direction: ltr; unicode-bidi: bidi-override; }

The unicode-bidi: bidi-override property forces all text to render left-to-right, which completely breaks RTL languages like Hebrew and Arabic. Individual characters within words are reversed, making the text unreadable.

Expected behavior

RTL text should render naturally using the browser's built-in Unicode Bidirectional Algorithm (BIDI). The Claude Desktop app handles this correctly — Hebrew and Arabic text display properly there.

Reproduction steps

  1. Install the Claude Code VS Code extension
  2. Write a message in Hebrew (or any RTL language) in the chat input
  3. Observe that the letters within each word are reversed and unreadable

Suggested fix

Change bidi-override to normal (or remove it entirely):

* { direction: ltr; unicode-bidi: normal; }

This allows the browser's native BIDI algorithm to handle RTL text correctly while keeping the overall layout LTR. Mixed Hebrew/English content works perfectly with this change.

Workaround

Manually editing ~/.vscode/extensions/anthropic.claude-code-{version}/webview/index.css and replacing bidi-override with normal. This fix resets on every extension update.

Environment

  • VS Code extension version: 2.1.63
  • OS: macOS (Apple Silicon)
  • Language affected: Hebrew

View original on GitHub ↗

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