EncoderFallbackException: Unable to translate Unicode character
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 45/100
Rechercherichtung
Start with the PSConsoleReadLine.WriteHistoryRange and IncrementalHistoryWrite paths shown in the exception stack trace, then reproduce the paste, cursor movement, deletion, and Enter sequence on Windows. Done means the Unicode input is handled without EncoderFallbackException and the terminal shows the expected text after deletion.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Prerequisites
- Write a descriptive title.
- Make sure you are able to repro it on the latest released version
- Search the existing issues, especially the pinned issues.
Exception report
PS C:\Users\x> ✓ ✔ �
Oops, something went wrong.
Please report this bug with ALL the details below, including both the 'Environment' and 'Exception' sections.
Please report on GitHub: https://github.com/PowerShell/PSReadLine/issues/new?template=Bug_Report.yaml
Thank you!
### Environment
PSReadLine: 2.3.6+d2e770f93b7a53d8660a6402eb29d1ae1c35e767
PowerShell: 7.5.4
OS: Microsoft Windows 10.0.26200
BufferWidth: 378
BufferHeight: 70
Last 37 Keys:
✓ Spacebar ✔ Spacebar � � LeftArrow End Delete RightArrow LeftArrow Delete Enter
Ctrl+Backspace Backspace Backspace Backspace Ctrl+Backspace Ctrl+Backspace Ctrl+Backspace Ctrl+Backspace RightArrow RightArrow Backspace c l s Enter
✓ Spacebar ✔ Spacebar � � LeftArrow Delete Enter
### Exception
System.Text.EncoderFallbackException: Unable to translate Unicode character \\uD83D at index 4 to specified code page.
at System.Text.EncoderExceptionFallbackBuffer.Fallback(Char charUnknown, Int32 index)
at System.Text.Encoding.GetBytesWithFallback(ReadOnlySpan`1 chars, Int32 originalCharsLength, Span`1 bytes, Int32 originalBytesLength, EncoderNLS encoder, Boolean throwForDestinationOverflow)
at System.Text.Encoding.GetBytesWithFallback(Char* pOriginalChars, Int32 originalCharCount, Byte* pOriginalBytes, Int32 originalByteCount, Int32 charsConsumedSoFar, Int32 bytesWrittenSoFar, EncoderNLS encoder)
at System.IO.StreamWriter.Flush(Boolean flushStream, Boolean flushEncoder)
at System.IO.StreamWriter.Dispose(Boolean disposing)
at System.IO.TextWriter.Dispose()
at Microsoft.PowerShell.PSConsoleReadLine.<>c__DisplayClass103_0.<WriteHistoryRange>b__0()
at Microsoft.PowerShell.PSConsoleReadLine.<>c__DisplayClass103_0.<WriteHistoryRange>b__0()
at Microsoft.PowerShell.PSConsoleReadLine.WithHistoryFileMutexDo(Int32 timeout, Action action)
at Microsoft.PowerShell.PSConsoleReadLine.WriteHistoryRange(Int32 start, Int32 end, Boolean overwritten)
at Microsoft.PowerShell.PSConsoleReadLine.IncrementalHistoryWrite()
at Microsoft.PowerShell.PSConsoleReadLine.MaybeAddToHistory(String result, List`1 edits, Int32 undoEditIndex, Boolean fromDifferentSession, Boolean fromInitialRead)
at Microsoft.PowerShell.PSConsoleReadLine.InputLoop()
at Microsoft.PowerShell.PSConsoleReadLine.ReadLine(Runspace runspace, EngineIntrinsics engineIntrinsics, CancellationToken cancellationToken, Nullable`1 lastRunStatus)
PS C:\Users\x> ✓ ✔ �
Screenshot
Pasting:
PS C:\Users\x> ✓ ✔ 🗸
Actually pastes:
PS C:\Users\x> ✓ ✔ 🗸�
So performing the above mentioned steps will result in the given error.
Visual Example of input:
PS C:\Users\x> ✓ ✔ 🗸|�
Environment data
PS Version: 7.5.4
PS HostName: ConsoleHost (Windows Terminal)
PSReadLine Version: 2.3.6
PSReadLine EditMode: Windows
OS: 10.0.26100.1 (WinBuild.160101.0800)
BufferWidth: 340
BufferHeight: 67
Steps to reproduce
Pasting:
PS C:\Users\x> ✓ ✔ 🗸
Actually pastes:
PS C:\Users\x> ✓ ✔ 🗸�
So performing the above mentioned steps will result in the given error.
Visual Example of input:
Paste:
Press [Left arrow key]:
Press [delete]:
Press [enter]:
Expected behavior
Terminal should show:
PS C:\Users\x> ✓ ✔ 🗸
PS C:\Users\x> ✓ ✔ -> Where the last chracter is deleted
Actual behavior
Terminal shows:
PS C:\Users\x> ✓ ✔ 🗸\
PS C:\Users\x> ✓ ✔ �� -> Where the last chracter is deleted
- Vorherrschende Sprache
- C#
- Sterne
- 4.4k
- Forks
- 342
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Hat eine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus PowerShell/PSReadLine
-
Get-PSReadLineOption emits the ListView window-size warning, so prompt modules trigger it on every shell startEvtl. vergeben @thc1006 hat das vor 43 Tagen übernommen. OffenNeeds-Triage :mag:
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
PowerShell/PSReadLine#5205 ·
-
Needs-Triage :mag:
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
PowerShell/PSReadLine#5195 ·
-
Needs-Triage :mag:
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
PowerShell/PSReadLine#5121 ·
-
Needs-Triage :mag:
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 64/100
PowerShell/PSReadLine#5045 ·
-
Area-CommandHelp Issue-Enhancement
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 68/100
PowerShell/PSReadLine#3470 · 3 Reaktionen ·
Alle Issues in PowerShell/PSReadLine
Ähnliche Issues
-
needs-area
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
Azure/typespec-azure#5695 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug gui macos priority:low
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
OpenTabletDriver/OpenTabletDriver#5147 ·
Maintainer antworten meist innerhalb von 1 Tag
-
:watch: Not Triaged async-task-programming/subsvc dotnet-csharp/svc
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 88/100
Maintainer antworten meist innerhalb von 1 Tag
-
Python: Bug: AnnotationContent and StreamingAnnotationContent to_element writes CitationType.X, so annotations in a rendered chat history fail to parseEvtl. vergeben Ein verknüpfter Pull Request ist offen oder bereits gemergt. Offenpython triage
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
microsoft/semantic-kernel#14590 ·
Maintainer antworten meist innerhalb von 3 Tagen
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 90/100
Maintainer antworten meist innerhalb von 1 Tag