Vietnamese is a tonal language in which the same string of letters can mean completely different things depending on its tone. This tool scans a passage and counts how many syllables carry each of the six tones, giving you a quick profile of the tonal texture of a text.
How it works
Every Vietnamese syllable carries exactly one tone, marked by a diacritic on its
main vowel (or, for the level tone, by the absence of any mark). The classifier
Unicode-normalises each syllable to decomposed (NFD) form, which splits a
character such as ấ into a base a, a circumflex, and an acute combining mark.
It then checks only for the five tone combining marks and maps each one:
acute (U+0301) → sắc (rising)
grave (U+0300) → huyền (falling)
hook (U+0309) → hỏi (dipping)
tilde (U+0303) → ngã (broken)
dot (U+0323) → nặng (heavy)
none → ngang (level)
Shape marks like the circumflex on â/ê/ô and the horn on ơ/ư are deliberately
ignored, because they change the vowel quality rather than the tone.
Example and tips
The classic minimal set ma má mà mả mã mạ (“ghost, cheek, but, tomb, horse,
rice seedling”) contains one syllable of every tone, so it tallies as 1 in each
of the six rows. For best results paste plain prose; numbers, Latin loanwords,
and tokens without a vowel are skipped so they do not distort the count.