| @@ -1133,9 +1133,9 @@ $textmode | |||
| π₯ tumbler glass // [1F943] | |||
| π₯ spoon // [1F944] | |||
| π₯ goal net // [1F945] | |||
| π₯ 1st place medal // [1F947] | |||
| π₯ 2nd place medal // [1F948] | |||
| π₯ 3rd place medal // [1F949] | |||
| π₯ first place medal // [1F947] | |||
| π₯ second place medal // [1F948] | |||
| π₯ third place medal // [1F949] | |||
| π₯ boxing glove // [1F94A] | |||
| π₯ martial arts uniform // [1F94B] | |||
| π₯ curling stone // [1F94C] | |||
| @@ -5221,8 +5221,6 @@ zune zu:n | |||
| (far more) f'A@_m,o@ | |||
| (few more) f'ju:m,o@ | |||
| (first place) f'3:st_pl,eIs | |||
| ?5 (first place) f'IRst_pl,eIs | |||
| (here and there) h'i@3||a#nd||D'e@ | |||
| (most of) moUst||@v | |||
| (such as) sVtS||_a#z $pause | |||
| @@ -1134,6 +1134,14 @@ int TranslateWord(Translator *tr, char *word_start, WORD_TAB *wtab, char *word_o | |||
| int flags = TranslateWord3(tr, word_start, wtab, word_out); | |||
| if (flags & FLAG_TEXTMODE && word_out) { | |||
| // Ensure that start of word rules match with the replaced text, | |||
| // so that emoji and other characters are pronounced correctly. | |||
| char word[N_WORD_BYTES+1]; | |||
| word[0] = 0; | |||
| word[1] = ' '; | |||
| memcpy(word+2, word_out, strlen(word_out)); | |||
| word_out = word+2; | |||
| while (*word_out && available > 1) { | |||
| int c; | |||
| utf8_in(&c, word_out); | |||