(if you add a Thai keyboard layout via your OS to test this, you can create this character by pressing in sequence, "muj")
Expected result
The first press of backspace should reduce ที่ to ที, then again, to ท, before deleting the entire character.
Actual result
Backspace deletes the entire word ที่ in one go, including all vowels and tone marks, meaning you have to start that character again if you do a typo. This makes typing in Thai quite difficult.
Obsidian the note-taking application recently switched to using CodeMirror 6 as its editor, which exposed me to this issue. I raised the issue with them here, and they pointed me to the CodeMirror issue list.
I can replicate the issue on the demo page.
Thanks!
The text was updated successfully, but these errors were encountered:
marijnh
added a commit
to codemirror/text
that referenced
this issue
Jan 14, 2022
FEATURE: `findClusterBreak` now takes an optional `includeExtending`
argument that determines whether it skips over extending characters.
Issue codemirror/codemirror.next#686
Interesting — Thai input doesn't seem to use IME/composition features, and just works in plain editing mode, even when composing/decomposing characters.
This was broken by the patch created for #516. Attached patches further refine how combined glyphs are backspaced and should address this issue.
Steps to reproduce
(if you add a Thai keyboard layout via your OS to test this, you can create this character by pressing in sequence, "muj")
Expected result
The first press of backspace should reduce ที่ to ที, then again, to ท, before deleting the entire character.
Actual result
Backspace deletes the entire word ที่ in one go, including all vowels and tone marks, meaning you have to start that character again if you do a typo. This makes typing in Thai quite difficult.
Obsidian the note-taking application recently switched to using CodeMirror 6 as its editor, which exposed me to this issue. I raised the issue with them here, and they pointed me to the CodeMirror issue list.
I can replicate the issue on the demo page.
Thanks!
The text was updated successfully, but these errors were encountered: