[espeak-ng:master] reported: Capital letter indication missing nouns after prepositions in some languages #github


espeak-ng@groups.io Integration <espeak-ng@...>
 

[espeak-ng:master] New Comment on Issue #949 Capital letter indication missing nouns after prepositions in some languages
By jaacoppi:

Looks like a bug that needs changes in the source code. Do you want to try to fix the code by yourself?

The command line parameter -k is handled by int option_capitals. The relevant code is in either readclause.c or translate.c


espeak-ng@groups.io Integration <espeak-ng@...>
 

[espeak-ng:master] New Comment on Issue #949 Capital letter indication missing nouns after prepositions in some languages
By pvagner:

Looking at translate.c There is a check of option_capitals on line 1573. However this only does its thing when first letter of a word is capital. The code block which starts at line 1436 in the same file combines prepositions with the main word for some languages e.g. czech, slovak, hungarian and perhaps some others. And doing this affect that later check. It seems there is some other place where capital letter indication in the middle of a word is handled but I can't find it. It's very unlikely I can fix this on my own.


espeak-ng@groups.io Integration <espeak-ng@...>
 

[espeak-ng:master] New Comment on Issue #949 Capital letter indication missing nouns after prepositions in some languages
By jaacoppi:

I can look into this as well, but expect to wait a few weeks rather than a few days.

Notes: Looks like the $combine keyword in dictsource/sk_rules is the cause of this problem. There's also FLAG_COMBINE and LOPT_COMBINE_WORDS.

The code block starting around line 1436 of translate.c has calls to TranslateWord() that probaly causes changes in word flags.