PowerShell / PowerShell/PowerShellEditorServices

Bring your own ReadLine

Offen
#1,722 1 Kommentar 1 Reaktion 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Area-ReadLine Issue-Bug Up for Grabs
Vorherrschende Sprache
C#
Sterne
767
Forks
266
Ø Merge
3 T. 16 Std.
Gemergte PRs (30 T.)
1

Beschreibung

The Problem

I am unable to create a web based script editor with a terminal because both PSReadline and LegacyReadLine ultimately call Console.GetKey and Console.Write, causing the input and output to be mapped to the calling process’s Console.

Suggested Fix

Add a -UseUnderlyingHostReadline switch and change the following code:

** https://github.com/PowerShell/PowerShellEditorServices/blob/bd34695f31eebe8eaea5523a13a754da548153f5/src/PowerShellEditorServices/Services/PowerShell/Host/EditorServicesConsolePSHostUserInterface.cs#L86**

To call _underlyingHostUI.ReadLine() if -UseUnderlyingHostReadline is specified

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne mit EditorServicesConsolePSHostUserInterface.cs bei der verlinkten ReadLine-Implementierung und verfolge, wie die Hostoptionen konfiguriert werden. Prüfe, wo ein -UseUnderlyingHostReadline-Schalter deklariert und übergeben würde, und verifiziere anschließend, dass seine Aktivierung die ReadLine der zugrunde liegenden Host-UI verwendet, während das Standardverhalten unverändert bleibt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
csharp, powershell
Bereich
developer-experience, tooling
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.