Support unicode ascii art on Windows #294
Merged
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.
Description
Support unicode ascii art on Windows properly on all backends (only works on qwqfetch before this fix). This is useful since Windows Terminal can output/render UTF-8 characters. Configuration related to UTF-8 might be needed on Windows 10, though for me it works without changing any setting.
Very limited new circumstances for "garbled" output
After this change: When a Windows is in raw Powershell/cmd (not Windows Terminal), and happens to be intentionally using custom ascii art with unicode charaters, the neofetch (builtin) and fastfetch backends (in addition to it already being possible on qwqfetch) will output unicode replacement characters / tofu or otherwise not render the ascii art correctly.
This is probably a more desirable outcome than hitting an uncaught Python error. I think it is reasonable for a user who is customizing their config to this degree to be expected to set the shell encoding settings or system settings to match the output of the *fetch backend. The responsibility already applies for the user when directly using the backend with such custom ascii art.
Relevant Links
Fixes #293
Screenshots
Before: See issue.

After:
(this specific ascii art is set for testing, not likely to actually be used on Windows)
Testing
Verified unicode is output is properly rendered on the following systems:
For each system on the following backends:
Additional context
None.