[FEATURE] RTL Support for Right-to-Left Languages (e.g., Persian, Arabic)

Resolved 💬 4 comments Opened Nov 28, 2025 by sajjad-farrokhzad Closed Feb 14, 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

The Claude Extension inside Cursor currently renders all text content using a left-to-right (LTR) layout. This causes several usability problems for users who write or read right-to-left (RTL) languages such as Persian (Farsi) or Arabic:

  • RTL text appears misaligned and difficult to read.
  • Mixed content (RTL + English code snippets or technical terms) becomes visually messy and confusing.
  • Punctuation and sentence flow display incorrectly, making the text feel reversed or broken.
  • When the assistant generates Persian or Arabic content, the user must manually reformat the text in external editors.
  • This creates additional cognitive load, reduces productivity, and makes the extension feel incomplete for RTL users.

As Cursor is increasingly used globally — including by thousands of developers in Iran, UAE, MENA, and other RTL-speaking regions — lack of native RTL support is a significant accessibility and UX gap.

Proposed Solution

Add proper RTL rendering support within the Claude Extension UI inside the Cursor.

Key Requirements

1. Automatic RTL detection

  • Detect RTL languages using Unicode ranges (e.g., Persian/Arabic script) and automatically switch the text direction to direction: rtl; unicode-bidi: plaintext;.

2. Manual toggle in settings

  • Provide a toggle (e.g., “Enable RTL Rendering”) for users who want explicit control.

3. Per-message layout

  • Each AI or user message should independently determine its direction (similar to how WhatsApp/Telegram handle mixed languages).

4. Proper alignment & spacing

  • Adjust alignment for bullet points, lists, markdown headers, numbered lists, and paragraphs.
  • Ensure correct paragraph flow when mixing code blocks (LTR) and text (RTL).

5. Preserve code blocks as LTR

  • RTL text should not affect code blocks.
  • Code blocks and inline code should remain left-aligned and LTR.

6. Markdown rendering fixes

  • RTL-compatible rendering for:
  • Lists (-, 1.)
  • Tables
  • Blockquotes (>)
  • Headings (#)
  • Prevent mirroring or visual corruption.

Optional / Nice to Have

  • Font support optimized for Persian/Arabic script (e.g., “Vazirmatn” or “IBM Plex Sans Arabic”).
  • Keyboard shortcuts to switch RTL ↔ LTR.
  • Bidirectional algorithm improvements for mixed-language sentences.

Benefits

  • Allows millions of potential RTL users to comfortably use Claude in Cursor.
  • Significantly improves UX, readability, and accessibility.
  • Reduces friction for bilingual developers mixing Farsi/Arabic with English code.
  • Increases adoption in Middle East markets.
  • Aligns Cursor with modern editors and apps that support RTL (VSCode, WebStorm, Notion, Telegram, Chrome, etc.).

Acceptance Criteria

  • Messages written or generated in RTL languages should display correctly.
  • Mixed content (RTL + LTR) should render cleanly.
  • Code blocks remain LTR and unaffected.
  • Setting toggle for RTL exists.
  • No visual regression for LTR users.

Alternative Solutions

_No response_

Priority

High - Significant impact on productivity

Feature Category

Other

Use Case Example

_No response_

Additional Context

_No response_

View original on GitHub ↗

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