[GNC-dev] msg "Open" in gnucash/gnome/dialog-lot-viewer.c:829

Christian Stimming christian at cstimming.de
Sun Sep 11 16:05:38 EDT 2022


Hi Christopher,

in gnucash/gnome/dialog-lot-viewer.c you recently added the function 
lot_get_closing_date() which might return the translated string "Open" if there is no such 
closing date because the lot is still in the status "opened".

There's an issue with this translation string: It is super-ambiguous. In most contexts, a 
translation string "Open" is used in the sense "to open [something]" but the string is just 
"Open" ie the verb. Contrary to this, in this particular place the string should mean 
"[something is in state] Open" but the string is also just "Open", ie the adjective. This won't 
work for translators, because in almost all other languages, the verb and the adjective will be 
two vastly different strings.

The solution is to use the C_( ) macro instead of _( ) which is where the additional context 
string is used. 
https://www.gnu.org/software/gettext/manual/html_node/Contexts.html[1] 
https://wiki.gnucash.org/wiki/Translation#Message_Context[2] 

This way, the string "Open" with no context should be used only when this is the verb 
meaning ie "to open", but not for the status as it is in this file here.

Thanks a lot!

Regards,
Christian

--------
[1] https://www.gnu.org/software/gettext/manual/html_node/Contexts.html
[2] https://wiki.gnucash.org/wiki/Translation#Message_Context


More information about the gnucash-devel mailing list