Bidirectional and RTL Text Issue in Windows Terminal #22995

Closed
opened 2026-01-31 08:29:26 +00:00 by claunia · 9 comments
Owner

Originally created by @hoseintavakol on GitHub (Mar 6, 2025).

Windows Terminal version

1.21.10351.0

Windows build number

26100.3194

Other Software

No response

Steps to reproduce

In Windows Terminal version 1.21.10351.0, bidirectional text rendering seems to be broken. When typing in Arabic (or other right-to-left languages), the text appears in the wrong order. For example, instead of typing "سلام", it displays "مالس" (reversed order).

Downgrading to version 1.13.11432.0 resolves the issue, indicating that this regression was introduced in a later update.

Steps to Reproduce:

Open Windows Terminal (version 1.21.10351.0).
Set the input language to Arabic.
Type any Arabic sentence (e.g., "السلام عليكم").
Observe that the text appears reversed or incorrectly ordered.

Expected Behavior

The text should be rendered correctly from right to left, as it was in previous versions (e.g., 1.13.11432.0).

السلام علیکم

Actual Behavior

Arabic (and possibly other RTL scripts) are rendered left to right, causing incorrect text display.
مکیلع مالسلا

Originally created by @hoseintavakol on GitHub (Mar 6, 2025). ### Windows Terminal version 1.21.10351.0 ### Windows build number 26100.3194 ### Other Software _No response_ ### Steps to reproduce In Windows Terminal version 1.21.10351.0, bidirectional text rendering seems to be broken. When typing in Arabic (or other right-to-left languages), the text appears in the wrong order. For example, instead of typing "سلام", it displays "مالس" (reversed order). Downgrading to version 1.13.11432.0 resolves the issue, indicating that this regression was introduced in a later update. Steps to Reproduce: Open Windows Terminal (version 1.21.10351.0). Set the input language to Arabic. Type any Arabic sentence (e.g., "السلام عليكم"). Observe that the text appears reversed or incorrectly ordered. ### Expected Behavior The text should be rendered correctly from right to left, as it was in previous versions (e.g., 1.13.11432.0). السلام علیکم ### Actual Behavior Arabic (and possibly other RTL scripts) are rendered left to right, causing incorrect text display. مکیلع مالسلا
claunia added the Issue-BugResolution-Duplicate labels 2026-01-31 08:29:26 +00:00
Author
Owner

@lhecker commented on GitHub (Mar 6, 2025):

This was done intentionally in order to support vim -A (vim's Arabic mode): https://vimdoc.sourceforge.net/htmldoc/arabic.html
This reverse order is called "logical order", which is what vim expects (and other RTL-aware applications). What's missing is a settings option to enable the so called "display order" (what you expect). Perhaps #538 could be considered the original issue filed on us for this?

Personally, I'm currently not in a position to work on this, but I'd be happy to steer anyone interested in this into the right direction.

@lhecker commented on GitHub (Mar 6, 2025): This was done intentionally in order to support `vim -A` (vim's Arabic mode): https://vimdoc.sourceforge.net/htmldoc/arabic.html This reverse order is called "logical order", which is what vim expects (and other RTL-aware applications). What's missing is a settings option to enable the so called "display order" (what you expect). Perhaps #538 could be considered the original issue filed on us for this? Personally, I'm currently not in a position to work on this, but I'd be happy to steer anyone interested in this into the right direction.
Author
Owner

@hoseintavakol commented on GitHub (Mar 8, 2025):

Thank you for the clarification. I understand that this change was intentional to support vim's Arabic mode. However, I also recall that in earlier versions, although the Arabic text was displayed correctly, there were occasional issues with file paths containing Arabic characters. I hope that in the future, this issue can be resolved, and the functionality improves. Thanks again, and I look forward to seeing the improvements!

@hoseintavakol commented on GitHub (Mar 8, 2025): Thank you for the clarification. I understand that this change was intentional to support vim's Arabic mode. However, I also recall that in earlier versions, although the Arabic text was displayed correctly, there were occasional issues with file paths containing Arabic characters. I hope that in the future, this issue can be resolved, and the functionality improves. Thanks again, and I look forward to seeing the improvements!
Author
Owner

@DHowett commented on GitHub (Mar 26, 2025):

Thanks so much!

Closing as a /dup of #538

@DHowett commented on GitHub (Mar 26, 2025): Thanks so much! Closing as a /dup of #538
Author
Owner

@Bmnswry28 commented on GitHub (Jun 27, 2025):

Hello,

I am a native Persian (Farsi) speaker and a Windows Terminal user.
This issue severely impacts millions of users who rely on Persian, Arabic, Hebrew, and other RTL languages.
Currently, the lack of proper RTL rendering makes reading and writing in the terminal very difficult or impossible.
The disconnected and reversed letters cause major usability problems, especially for developers and students.

I kindly ask the team to prioritize this feature, as it would greatly improve accessibility and inclusivity for a large user base.
Thank you very much for your efforts and consideration.

@Bmnswry28 commented on GitHub (Jun 27, 2025): Hello, I am a native Persian (Farsi) speaker and a Windows Terminal user. This issue severely impacts millions of users who rely on Persian, Arabic, Hebrew, and other RTL languages. Currently, the lack of proper RTL rendering makes reading and writing in the terminal very difficult or impossible. The disconnected and reversed letters cause major usability problems, especially for developers and students. I kindly ask the team to prioritize this feature, as it would greatly improve accessibility and inclusivity for a large user base. Thank you very much for your efforts and consideration.
Author
Owner

@lhecker commented on GitHub (Jun 30, 2025):

Unfortunately, this can be said of at least hundreds of issues and feature requests sent to us. Thanks to this project being open source, anyone can contribute support for RTL, however.

@lhecker commented on GitHub (Jun 30, 2025): Unfortunately, this can be said of at least hundreds of issues and feature requests sent to us. Thanks to this project being open source, anyone can contribute support for RTL, however.
Author
Owner

@majidtp commented on GitHub (Aug 18, 2025):

Unfortunately, this can be said of at least hundreds of issues and feature requests sent to us. Thanks to this project being open source, anyone can contribute support for RTL, however.

This is not a feature request, and not even a “normal bug.”
It’s a fundamental rendering failure: Windows Terminal cannot correctly display RTL text (Arabic, Persian, Hebrew, etc.), which makes it unusable for millions of users.
A terminal that breaks basic text rendering for half the world’s languages cannot be considered reliable.
This is a critical regression that should be treated as a core issue.

@majidtp commented on GitHub (Aug 18, 2025): > Unfortunately, this can be said of at least hundreds of issues and feature requests sent to us. Thanks to this project being open source, anyone can contribute support for RTL, however. This is not a feature request, and not even a **“normal bug.”** It’s a **fundamental** rendering failure: Windows Terminal cannot correctly display **RTL** text (Arabic, Persian, Hebrew, etc.), which makes it unusable for **millions of users**. A terminal that breaks basic text rendering for half the world’s languages cannot be considered reliable. This is a critical regression that should be treated as a core issue.
Author
Owner

@lhecker commented on GitHub (Aug 18, 2025):

It is a feature request and it was closed in favor of #538 which is still open. It's also not a regression, because unlike what was stated, RTL did not work properly in 1.13, which is why #538 is still open. As I stated, the only reason I (the person who maintains the renderer) don't work on this is because I currently don't have time for it. That doesn't mean it's not important.

@lhecker commented on GitHub (Aug 18, 2025): It is a feature request and it was closed in favor of #538 which is still open. It's also not a regression, because unlike what was stated, RTL did not work properly in 1.13, which is why #538 is still open. As I stated, the only reason I (the person who maintains the renderer) don't work on this is because I currently don't have time for it. That doesn't mean it's not important.
Author
Owner

@MusiCode1 commented on GitHub (Oct 29, 2025):

What’s going on here?

Users of right-to-left (RTL) languages — such as Hebrew and Arabic — cannot effectively use any CLI-based code generation tools (for example, OpenAI Codex, CloudCode, Gemini CLI, etc.) inside Windows Terminal.

The problem is not about text direction preference. It’s a fundamental flaw in how the terminal handles bidirectional text. Code and output lines become unreadable or misaligned, and editing commands is extremely confusing.

This makes modern AI-assisted CLI tools completely unusable for RTL speakers.

This is not a minor localization issue — it’s a core rendering and interaction bug that prevents a whole class of users from working productively.

@MusiCode1 commented on GitHub (Oct 29, 2025): What’s going on here? Users of right-to-left (RTL) languages — such as Hebrew and Arabic — cannot effectively use any CLI-based code generation tools (for example, OpenAI Codex, CloudCode, Gemini CLI, etc.) inside Windows Terminal. The problem is not about text direction preference. It’s a fundamental flaw in how the terminal handles bidirectional text. Code and output lines become unreadable or misaligned, and editing commands is extremely confusing. This makes modern AI-assisted CLI tools completely unusable for RTL speakers. This is not a minor localization issue — it’s a core rendering and interaction bug that prevents a whole class of users from working productively.
Author
Owner

@lhecker commented on GitHub (Oct 30, 2025):

If I were to write a response to your points, I'd write the same thing again I said right before you: https://github.com/microsoft/terminal/issues/18659#issuecomment-3197451413
So, I concur, it's not a minor localization issue. It's a missing feature and contributions are 100% welcome.

@lhecker commented on GitHub (Oct 30, 2025): If I were to write a response to your points, I'd write the same thing again I said right before you: https://github.com/microsoft/terminal/issues/18659#issuecomment-3197451413 So, I concur, it's not a minor localization issue. It's a missing feature and contributions are 100% welcome.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#22995