Proper RTL (Right-to-Left) and Persian/Arabic text rendering support in Windows Terminal #23391

Open
opened 2026-01-31 08:40:55 +00:00 by claunia · 0 comments
Owner

Originally created by @Bmnswry28 on GitHub (Jun 27, 2025).

Windows Terminal version

1.22.11141.0

Windows build number

No response

Other Software

  • Notepad, VS Code, and other text editors display the same text correctly.
  • Windows Terminal is the only terminal on Windows without proper RTL support.
  • Inserting Unicode RTL mark (\u200F) partially improves display but is not user-friendly.
  • External terminals on Linux (e.g., GNOME Terminal) have better RTL support.

Steps to reproduce

  1. Open Windows Terminal (PowerShell, CMD, or any shell).
  2. Set code page to UTF-8 by running chcp 65001.
  3. Try to print or echo a Persian or Arabic text, for example:
  4. Observe how the output appears with disconnected and reversed letters.

Expected Behavior

  • The text "سلام دنیا" should display correctly with proper right-to-left layout.
  • Letters should be connected and shaped properly for Persian/Arabic script.
  • The terminal should support bidirectional text rendering.
  • Ideally, there should be an option to enable/disable RTL support in the terminal settings.

Actual Behavior

  • Text appears disconnected, reversed, and in logical order rather than visual order.
  • Example output of echo سلام دنیا is shown as ا ی ن د م ا ل س.
  • This makes it difficult or impossible for RTL language users to read terminal output
Originally created by @Bmnswry28 on GitHub (Jun 27, 2025). ### Windows Terminal version 1.22.11141.0 ### Windows build number _No response_ ### Other Software - Notepad, VS Code, and other text editors display the same text correctly. - Windows Terminal is the only terminal on Windows without proper RTL support. - Inserting Unicode RTL mark (`\u200F`) partially improves display but is not user-friendly. - External terminals on Linux (e.g., GNOME Terminal) have better RTL support. ### Steps to reproduce 1. Open Windows Terminal (PowerShell, CMD, or any shell). 2. Set code page to UTF-8 by running `chcp 65001`. 3. Try to print or echo a Persian or Arabic text, for example: 4. Observe how the output appears with disconnected and reversed letters. ### Expected Behavior - The text "سلام دنیا" should display correctly with proper right-to-left layout. - Letters should be connected and shaped properly for Persian/Arabic script. - The terminal should support bidirectional text rendering. - Ideally, there should be an option to enable/disable RTL support in the terminal settings. ### Actual Behavior - Text appears disconnected, reversed, and in logical order rather than visual order. - Example output of `echo سلام دنیا` is shown as `ا ی ن د م ا ل س`. - This makes it difficult or impossible for RTL language users to read terminal output
claunia added the Needs-TriageIssue-Bug labels 2026-01-31 08:40:55 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#23391