fix: handle UnicodeEncodeError on Windows with gbk console encoding#4767
Open
ThanhNguyxn wants to merge 1 commit intoAider-AI:mainfrom
Open
fix: handle UnicodeEncodeError on Windows with gbk console encoding#4767ThanhNguyxn wants to merge 1 commit intoAider-AI:mainfrom
ThanhNguyxn wants to merge 1 commit intoAider-AI:mainfrom
Conversation
Fixes Aider-AI#4765 On Windows with non-UTF8 console encodings (e.g., gbk for Chinese locale), Rich's console.print() can fail when printing Unicode characters like bullet points (U+2022) that aren't supported by the encoding. Added try/except around console.print() to catch UnicodeEncodeError and fall back to ASCII-safe text by replacing problematic characters.
|
Hi , When i start the aider, it will pull the new file, and have a replace? Today is ok now! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fixes #4765
On Windows with non-UTF8 console encodings (e.g.,
gbkfor Chinese locale), Rich'sconsole.print()can fail when printing Unicode characters like bullet points (•/ U+2022) that aren't supported by the encoding.Root Cause
The error occurs at
mdstream.pyline 207 whenconsole.print(show)tries to output markdown content containing Unicode characters that can't be encoded with the console's encoding (gbk).Fix
Added try/except around
console.print()to catchUnicodeEncodeErrorand fall back to ASCII-safe text by replacing problematic characters with?.This ensures the application doesn't crash on Windows systems with non-UTF8 console encodings while still displaying readable output.