Bugfix grapheme and East-Asian support by wcwidth>=0.5.1 integration #391
+390
−58
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.
Bugfix In
_CustomTextWrap._handle_long_word(), on master branch or this branch when optional co-dependencywcwidth<0.3.0:len()but should use width-awareself._len().Improve word-wrapping with unicode, starting wcwidth version 0.3.0, the wrap(), and width() functions also parse sequences pretty much the same, even a bit better by "tracking" more kinds of SGR sequences and "reducing" them a bit better on line breaks.
wcwidth>=0.5.1handles grapheme boundaries better for many kinds of languages, or just flags and emojis and significantly improved performance over 0.2.14.note
hasattr()must be used for some defense of this circumstance.wrap().