w3c / iip

Documenting gaps and requirements for support of Indic languages on the Web and in eBooks.
https://w3c.github.io/iip/
9 stars 15 forks source link

Inconsistent deletion behaviour #97

Open r12a opened 4 years ago

r12a commented 4 years ago

This behavior varies even between different applications within macOS. Apple Pages seems to delete / select / cursor by Vowel+Consonant cluster. TextEdit seems to delete by code point, but cursor / select is by Vowel + Consonant cluster. In general, the TextEdit behavior seems favorable.

Gurmukhi has only three commonly used half/subjoined consonants for ਹ ਵ and ਰ. Most Gurmukhi readers are not familiar with the concept of Halant / Virama and thus deleting behavior should delete the full half-character.

r12a commented 4 years ago

The first comment in this issue contains text that will automatically appear in the Gurmukhi gap-analysis document as a subsection with the same title as this issue. Any edits made to that comment will be immediately available in the document. Proposals for changes or discussion of the content can be made in comments below this point.

r12a commented 1 year ago

cc @kulpreetchilana

Gurmukhi, like other indic scripts (and in fact Unicode text generally), deletes text in different ways for backwards and forwards spacing.

Gurmukhi seems to be less problematic in approach than some other indic scripts. On Mac and Windows all browsers remove single code points during backwards deletion. During forward deletion, however, Firefox deletes one grapheme cluster at a time, whereas Chrome & Safari swallow up whole orthographic syllables with each bite. See https://r12a.github.io/scripts/guru/pa.html#webSegmentation

The divergence between Gecko and Blink/WebKit engines for forward deletion may need to be looked at, but i don't think the difference between forward vs backward deletion is problematic. One code point at a time deletion (backwards delete) can be very useful for indic scripts when you want to delete just one component of a complex akshara without having to reconstruct the whole thing again. I'm not yet convinced about the confusion factor, given that (a) people writing Gurmukhi generally have to insert a virama to create the stacks, and (b) i think people will quickly get used to deleting the virama.