Yale tone marks and low-level 'h' for vowel-less syllables For tone-marked Yale, the tone mark goes over the first vowel and then (for tones 4,5,6) an 'h' is placed after the last vowel.

But what about the syllables without any vowels: hm, hng, m, ng ?

I'm guessing place the tone mark over the n and m?

But how about the low-level 'h'? For 'm' there is only one place. But for the others, should it go after the 'n' or after the 'g'?  After the 'g' certainly looks better.

Alternatively, maybe because those four syllables only seem to ever exist in tones 4,5 and 6, that we don't need the 'h' at all (because it can be implied).
Yale romanization analyzes Cantonese syllables in terms of an optional initial and an obligatory final (e.g., cheung = ch + eung). The tone mark is always placed over the first letter of the final (e.g., chèung). As you mentioned, h is used after the vowel (more accurately the syllable nucleus) in syllables to denote tones 4, 5, and 6 (e.g., chèuhng).

While m and ng in most other cases are considered syllable initials, in these specific cases, m and ng are analyzed as syllable finals; they are also the nuclei of these finals. Following the convention with placing the tone mark over the first letter of the final, the marks would thus be placed over the m and n, respectively. In the case of hng, h is considered the initial and ng is the final, so the tone mark would also occur over the n in this case.

You noted that syllables with m and ng seem to always exist in tones 4, 5, and 6, so the nuclear h may seem redundant, but it is still specified in proper Yale romanization. There are a few cases where such syllables can occur with tone 2 (e.g., 呣 and 嗯), so in these cases, the h can make a useful distinction (ḿ and ńg vs. ḿh and ńgh, where the latter two are possible pronunciations of 五).