Phenomenon
When composing Hindi text with Devanagari IME in a contenteditable element in Chrome on Windows, consonant+vowel combinations and conjunct characters (where multiple consonants combine) may not form correctly. Vowel signs (matras) may be misplaced relative to consonants, or conjunct characters may not render properly, resulting in incorrectly formed Devanagari text.
Reproduction example
- Create a contenteditable div.
- Switch to Hindi IME with Devanagari script.
- Type Hindi text with vowel signs and conjuncts (e.g., “नमस्ते”).
- Observe vowel sign positioning and conjunct formation.
- Check text rendering.
Observed behavior
- Vowel signs (matras) may not position correctly relative to consonants
- Multiple consonants may not combine into conjunct characters
- Character ordering may be incorrect
- Characters may be logically correct but render incorrectly visually
- Backspace may not work correctly with complex character combinations
Expected behavior
- Vowel signs should position correctly relative to consonants
- Multiple consonants should combine into conjunct characters correctly
- Character ordering should follow Devanagari writing rules
- Visual rendering should match logical structure
- Backspace should handle complex character combinations correctly
Impact
- Hindi/Indian language text may be unreadable or incorrect
- Users cannot reliably input correct text
- Complex character combinations may fail to form
Browser Comparison
- Chrome: Generally better support but conjunct formation can fail
- Edge: Similar to Chrome
- Firefox: May have more issues with conjunct formation
- Safari: Devanagari rendering can be inconsistent, especially on mobile
Notes and possible direction for workarounds
- Validate Devanagari character formation after input
- Check for proper vowel sign positioning
- Use text normalization (NFC) to ensure proper character combination
- Monitor for rendering issues
- Ensure proper font support for Devanagari characters
- Handle complex conjunct formation carefully