Feature Request: RTL (Arabic/Hebrew) input support in line editing

Ouverte
#5,166 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
5/5
Temps estimé
Plus d'une semaine
Accessibilité débutants
35/100
Type d'issue
Fonctionnalité
Clarté
À clarifier
Activité
Calme
Stack technique
csharp

Piste de recherche

Start by reproducing Arabic and Hebrew input at the pwsh prompt in Windows Console Host, then examine PSReadLine's line-buffer rendering and cursor, cut, copy, and paste behavior. Done means RTL text displays in the correct reading order while editing, cursor movement respects RTL runs, and clipboard operations preserve the text.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

Needs-Triage :mag:

Feature Request: RTL Text Input Support (Arabic / Hebrew)

Problem

PSReadLine handles all interactive line editing in PowerShell. When an Arabic-speaking user types Arabic text at the pwsh prompt, the characters appear in reversed order because PSReadLine processes input strictly left-to-right. This makes it impossible to type Arabic naturally at the PowerShell prompt.

Expected Behavior
  • Arabic (and other RTL) characters should appear in correct right-to-left reading order as the user types
  • Cursor movement ( / ) should respect text direction within RTL runs
  • Cut/copy/paste operations should preserve RTL text correctly
Current Behavior

Arabic letters are displayed in reversed order (LTR rendering of RTL text), making the input unreadable until submitted.

Environment
  • Shell: PowerShell 7.x (pwsh) — standalone, not inside Windows Terminal
  • Console host: Windows Console Host (conhost.exe)
  • PSReadLine: 2.x
  • OS: Windows 11
Suggested Approach
  • Implement basic Unicode Bidirectional Algorithm (UAX #9) support in the line buffer rendering
  • Detect RTL Unicode ranges (U+0600–U+06FF Arabic, U+0590–U+05FF Hebrew, etc.) and apply correct display order
  • This is the highest-impact fix for RTL users since PSReadLine controls all prompt input
Impact

Arabic, Hebrew, Persian, and Urdu speakers cannot type their native language at the PowerShell prompt. This affects a significant global developer community.

Also filed in PowerShell/PowerShell and microsoft/terminal repos for full coverage:

Langage dominant
C#
Étoiles
4.4k
Forks
341
Métriques de merge des PR
Aucune PR mergée en 30 j

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de PowerShell/PSReadLine

Toutes les issues de PowerShell/PSReadLine

Issues similaires

Plus d'issues C#

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.