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

Christian Stimming christian at cstimming.de
Mon Sep 12 01:33:00 EDT 2022


Ok, I appreciate your intention to re-use the existing string. In that case my statement is different: As I wondered why the string "Open" was marked as fuzzy in the PO files, I checked its usage and found this severe ambiguity here. Could you extend your usage of that string with a context marker please? Otherwise the translations will all get it wrong in either this or the other meaning.

And different to Frank's proposal I would rather suggest to add a context with an explanation from the functional domain, not just "adjective", rather something like "Status of a not-yet-closed lot" or similar.

Thanks!
Christian 

Am 12. September 2022 06:20:13 MESZ schrieb Christopher Lam <christopher.lck at gmail.com>:
>My change was merely to reuse an existing string in the lot viewer, for its
>exact same purpose.
>
>Perhaps the original committer [1] needs to be informed?
>
>[1]
>https://github.com/Gnucash/gnucash/commit/0b37c913f053f86196f6cd6689fcaba2e08b387e
>
>On Mon, 12 Sept 2022 at 04:53, Frank H. Ellenberger <
>frank.h.ellenberger at gmail.com> wrote:
>
>> Christian,
>>
>> idid you check all other occurrences. If yes, I would like to add the
>> MsgContext "Adjective" to dialog-lot-viewer.c and run a msgmerge.
>>
>> Regards
>> Frank
>>
>> Am 11.09.22 um 22:05 schrieb Christian Stimming:
>> > 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
>> > _______________________________________________
>> > gnucash-devel mailing list
>> > gnucash-devel at gnucash.org
>> > https://lists.gnucash.org/mailman/listinfo/gnucash-devel
>>


More information about the gnucash-devel mailing list