Debugger Does Not Handle Unicode/UTF-8 Characters Properly

Offen
#1,392 14 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
42/100
Issue-Typ
Bug
Klarheit
Größtenteils klar
Aktivitätsstatus
Veraltet
Tech-Stack
powershell, typescript, vscode
Bereich
devtools

Rechercherichtung

Beginne damit, das Beisp скрипт mit F5 und F8 unter den betroffenen Windows- und PowerShell-Versionen zu reproduzieren, untersuche anschließend die Behandlung der Skript- oder Ausgabekodierung durch den Debugger und prüfe logs.zip. Als erledigt gilt die Aufgabe, wenn das griechische Sigma beim Start über F5 in den betroffenen Konfigurationen korrekt bleibt, während das Verhalten von F8 weiterhin korrekt ist.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

Area-Debugging Issue-Bug
System Details
  • Operating system name and version: Windows Server 2012 R2
  • VS Code version: 1.24.1
  • PowerShell extension version: 1.7.0
  • Output from $PSVersionTable:
    PSVersion : 5.0.10586.117
    PSCompatibleVersions : 1.0 2.0 3.0 4.0 5.0.10586.117
    BuildVersion : 10.0.10586.117
    CLRVersion : 4.0.30319.42000
    WSManStackVersion : 3.0
    PSRemotingProtocolVersion : 2.3
    SerializationVersion : 1.1.0.1
1.24.1
24f62626b222e9a8313213fb64b10d741a326288
x64

Major  Minor  Build  Revision
-----  -----  -----  --------
1      7      0      0
bierner.markdown-preview-github-styles@0.1.2
formulahendry.code-runner@0.9.3
ms-python.python@2018.6.0
ms-vscode.PowerShell@1.7.0
robertohuertasm.vscode-icons@7.24.0
Tyriar.shell-launcher@0.2.0

Key   : PSVersion
Value : 5.0.10586.117
Name  : PSVersion


Key   : PSCompatibleVersions
Value : {1.0, 2.0, 3.0, 4.0...}
Name  : PSCompatibleVersions


Key   : BuildVersion
Value : 10.0.10586.117
Name  : BuildVersion


Key   : CLRVersion
Value : 4.0.30319.42000
Name  : CLRVersion


Key   : WSManStackVersion
Value : 3.0
Name  : WSManStackVersion


Key   : PSRemotingProtocolVersion
Value : 2.3
Name  : PSRemotingProtocolVersion


Key   : SerializationVersion
Value : 1.1.0.1
Name  : SerializationVersion
Issue Description

I've experienced an issue with the way the debugger handles non-ascii characters. If I create a script with a Unicode/UTF-8 character in, for example the sigma symbol "∑", when I press F5 to run the script through the debugger it translates the symbol like this, "∑". If I highlight the text and run it using F8, it displays the characters correctly.

I've tested this on 3 different machines, one Windows Server 2012 R2, which I included the system details for here. I also tested it on a Windows Server 2016 with the same versions of VS Code and PowerShell extensions and I saw the same results. However, I also tested on it Windows 10 1709, again with the same versions, and it did not have this issue. The only difference between the systems is the Windows 10 system listed the architecture as ia32 and the two servers are x64. Also the Windows 10 system is on PowerShell version 5.1.15063.1088 and the 2016 is on version 5.1.14393.2248.

Here is an example of the code I am running

$string = "Greek sigma symbol: ∑"
$string
Attached Logs

logs.zip

Vorherrschende Sprache
TypeScript
Sterne
1.9k
Forks
548
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus PowerShell/vscode-powershell

Alle Issues in PowerShell/vscode-powershell

Ähnliche Issues

Weitere Issues zu TypeScript

Neue Issues direkt in Ihr Postfach

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