Seems to me you could have saved yourself a lot of work and you could support a larger input set by using combining accents. For example, "è" can be written as "\N{LATIN SMALL LETTER E WITH GRAVE}" or as "e\N{COMBINING GRAVE ACCENT}". You used the former, but the latter has a stronger parallel to the input text.
You can squish the accents into the first form (when possible) using Unicode::Normalize's NFC.
In reply to Re: Decode LaTeX flying accents
by ikegami
in thread Decode LaTeX flying accents
by ambrus
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |