My journey began with a seemingly straightforward task. I had a Manchu word written in the traditional script and I wanted to change the color of all the vowels in the word (ignoring ligatures).
<p>ᠠᠮᠪᡠᠯᠠ ᠪᠠᠨᡳᡥᠠ</p>
<p><span class="red">ᠠ</span>ᠮᠪᡠᠯ<span class="red">ᠠ</span> ᠪᠠᠨ<span class="red">ᡳ</span>ᡥ<span class="red">ᠠ</span></p>
However, this method did not yield the desired result. The cursive nature of the script caused an artificial break within the word when wrapping individual letters in a span element. This led me to question: Arabic is also a cursive script... so I took a random sentence in Arabic.
<p> مرحبًا، كيف يم<span class="red">ن</span>نني مساعدتك؟ </p>
Surprisingly, this approach worked for me.
I then explored alternative solutions, but none proved to be effective without utilizing complex tools such as HarfBuzz or manually implementing glyph substitution, ligation, and kerning rules on HTML canvas. These methods were not ideal for a simple website project of mine, and beyond my current capabilities. Editing font files by linking glyphs to potentially unauthorized unicode codepoints was considered, but would violate online font licenses. Even experimenting with Free variant selectors did not provide a viable solution due to limitations and lack of support in certain fonts.
It's unfortunate that what seemed like a simple task turned into a dead end so quickly, highlighting the challenges faced by minority cursive scripts in the digital realm. Any guidance on this matter would be greatly appreciated!