helix-mirror/helix-view
Skyler Hawthorne 6a0b450f55
Fix multi byte auto pairs (#4024)
* Fix test::print for Unicode

The print function was not generating correct translations when
the input has Unicode (non-ASCII) in it. This is due to its use of
String::len, which gives the length in bytes, not chars.

* Fix multi-code point auto pairs

The current code for auto pairs is counting offsets by summing the
length of the open and closing chars with char::len_utf8. Unfortunately,
this gives back bytes, and the offset needs to be in chars.

Additionally, it was discovered that there was a preexisting bug where
the selection was not computed correctly in the case that the cursor
was:

1. a single grapheme in width
2. this grapheme was more than one char
3. the direction of the cursor is backwards
4. a secondary range

In this case, the offset was not being added into the anchor. This was
fixed.

* migrate auto pairs tests to integration

* review comments
2022-10-21 09:22:20 +09:00
..
src Fix multi byte auto pairs (#4024) 2022-10-21 09:22:20 +09:00
tests/encoding Move helix-view/tests/*txt files to txts subdirectory (#372) 2021-06-25 15:59:06 +09:00
Cargo.toml Inherit theme (#3067) 2022-10-03 23:34:29 +09:00