microsoft/Terminal

Support Right to Left (RTL) text

Open

#538 opened on May 7, 2019

View on GitHub
 (37 comments) (48 reactions) (0 assignees)C++ (3,212 forks)batch import
Area-RenderingHelp WantedIssue-FeatureProduct-Terminal

Repository metrics

Stars
 (35,764 stars)
PR merge metrics
 (Avg merge 27d 19h) (24 merged PRs in 30d)

Description

  • What you're doing and what's happening: When writing some right-to-left characters (Farsi, Arabic, ...) after some left-to-right characters, the rtl text goes from the cursor position into the left, causing it to be mixed with the ltr text written before.

  • Steps to reproduce: Open a Windows Terminal window. write some english characters, like abcdef. Then write some Farsi/Arabic text, like:

      سلام
    

    Notice that the Farsi text goes inside the english text.

  • Screenshot:

image

  • what should be happening instead: As console is generally left to right, the rtl text should begin more on the right (cursor should go to right), and it should end exactly when the ltr text ended. See how Notepad (correctly) handles this situation:

image

  • Windows build number: 10.0.18362.86

Contributor guide