mirror of
https://github.com/kovidgoyal/kitty.git
synced 2026-05-13 16:37:27 +00:00
In highlight_mark(), mark_text was sliced using byte-based indexing (mark_text[:len(hint)] and mark_text[len(hint):]). Since len(hint) equals the rune count (hint is always ASCII), but len(mark_text) is a byte count, this could slice in the middle of a multi-byte UTF-8 sequence (e.g. CJK characters), producing an invalid byte sequence rendered as the Unicode replacement character (�). Fix by converting mark_text to []rune first, then slicing at rune boundaries. The hint is ASCII so len(hint) == rune count, requiring no conversion on the hint side. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| __init__.py | ||
| main.go | ||
| main.py | ||
| marks.go | ||
| marks_test.go | ||