Arabic + English mixed text is visually reordered incorrectly in Cursor Chat (RTL/LTR issue)

Describe the Bug

When writing Arabic (RTL) text with embedded English (LTR) words in Cursor Chat, the visual rendering order is sometimes incorrect. The logical text is correct, but displayed word positions can appear shifted/reversed.

Steps to Reproduce:

  1. Open Cursor Chat.
  2. Send a message that mixes Arabic and English in one line.
  3. Observe rendered order.

Actual Result:
Mixed RTL/LTR text appears visually reordered in some cases, especially when English appears near line boundaries.

Expected Result:
Text should render in stable readable order according to Unicode BiDi rules.

Incorrect visual example (what appears on screen):
English هذا مثال عربي داخل نفس السطر

Correct expected reading/order:
هذا مثال عربي داخل نفس السطر English

Another incorrect visual pattern:
في نفس السطر بدون أي وسوم English هذا مثال عربي مع

Correct expected pattern:
في نفس السطر بدون أي وسوم هذا مثال عربي مع English

Notes:

  • The issue is rendering-related (display order), not input correctness.
  • Tried punctuation and multiple formatting workarounds; issue persists.
  • This looks like a BiDi handling problem in chat rendering.

Steps to Reproduce

  1. Open Cursor IDE and go to Chat.
  2. Use Arabic as the main sentence language.
  3. Send a mixed RTL/LTR line, for example:
    هذا مثال عربي مع English في نفس السطر
  4. Send another mixed line where English appears at the end:
    هذا مثال عربي في نفس السطر English
  5. Compare how the message is displayed after sending.
  6. Observe that the visual order may be incorrect (English appears in an unexpected position).

Operating System

MacOS

Version Information

  • Cursor IDE Version: 2.5.17
  • OS: macOS (Darwin 25.3.0)
  • Platform: Desktop (Electron-based app)
  • Issue Area: Cursor Chat (message rendering)
  • Language Context: Arabic (RTL) + English (LTR) mixed text

Does this stop you from using Cursor

Yes - Cursor is unusable

Hey, thanks for the detailed report. This is a known limitation. The chat panel doesn’t properly support RTL or BiDi text rendering right now, which is why you’re seeing that word order issue when Arabic and English are mixed.

A lot of users have already asked us to fix this. There’s a feature request thread with more context here: Add RTL for chat

For now, there are community fixes that add RTL styles to the chat panel:

These aren’t official fixes, but users report they help. I’ve shared this with the team, and your report will help with prioritization.

Hi @Sameh_Soliman

After facing this same issue, I took some time to invest in a solution.

I wrote an extension that understands the structure of the Chats window and the Plans Markdown window and applies RTL when needed.

The extension is smart; it detects which language the sentence starts in and applies the alignment accordingly.

For now, the installation is only using a VSIX file. Please see the instructions here: Cursor RTL - Smart Multi-Language RTL Support

Have fun :slight_smile: