Hi, It seems difficult for GTKTranslate() to handle msgid with context (e.g. "noun|Move").
The following changes might work: - "noun|Move" -> "Move" (remove context msgid) - "verb|Move" -> "verb|Move" (unchange) - "Move" in sound settings -> "Confirm move" or "Submit move", etc The patch is attached. Ian Shaw via "Bug reports for and general discussion about GNU Backgammon." <bug-gnubg@gnu.org> writes: > The menu item for Display bug in Analyse, Clear Analysis, Move displays: > > "noun|Move" > > Instead of just "Move" > > This appears in en_US.po, which I assume is the cause. > > > #: gtkgame.c:4028 gtkgame.c:4039 gtkmovelist.c:63 gtkrolls.c:198 html.c:2161 > > > 6382<https://cvs.savannah.gnu.org/viewvc/gnubg/gnubg/po/en_US.po?view=markup&sortby=date#l6382> > > #: sound.c:351 > > 6383<https://cvs.savannah.gnu.org/viewvc/gnubg/gnubg/po/en_US.po?view=markup&sortby=date#l6383> > > msgid "noun|Move" > > 6384<https://cvs.savannah.gnu.org/viewvc/gnubg/gnubg/po/en_US.po?view=markup&sortby=date#l6384> > > msgstr > > -- TAKAHASHI Kaoru <kaoru-ml-gn...@trans-nt.com>
Index: commands.inc =================================================================== RCS file: /sources/gnubg/gnubg/commands.inc,v retrieving revision 1.70 diff -u -r1.70 commands.inc --- commands.inc 20 Nov 2023 21:00:06 -0000 1.70 +++ commands.inc 12 Feb 2024 16:26:51 -0000 @@ -1043,7 +1043,7 @@ { "humanwinsmatch", CommandSetSoundSoundHumanWinMatch, N_("Human wins match"), szOPTFILENAME, &cFilename }, { "move", CommandSetSoundSoundMove, - N_("verb|Move"), szOPTFILENAME, &cFilename }, + N_("Confirm move"), szOPTFILENAME, &cFilename }, { "redouble", CommandSetSoundSoundRedouble, N_("Redouble"), szOPTFILENAME, &cFilename }, { "resign", CommandSetSoundSoundResign, Index: gtkgame.c =================================================================== RCS file: /sources/gnubg/gnubg/gtkgame.c,v retrieving revision 1.1012 diff -u -r1.1012 gtkgame.c --- gtkgame.c 30 Dec 2023 20:36:15 -0000 1.1012 +++ gtkgame.c 12 Feb 2024 16:26:51 -0000 @@ -4025,7 +4025,7 @@ CMD_ACTION_CALLBACK_FROMID(CMD_ANALYSE_MATCH) }, { "ClearAnalysisMenuAction", NULL, N_("Clear analysis"), NULL, NULL, G_CALLBACK(NULL) }, - { "ClearAnalysisMoveAction", GTK_STOCK_CLEAR, N_("noun|Move"), NULL, NULL, + { "ClearAnalysisMoveAction", GTK_STOCK_CLEAR, N_("Move"), NULL, NULL, CMD_ACTION_CALLBACK_FROMID(CMD_ANALYSE_CLEAR_MOVE) }, { "ClearAnalysisGameAction", GTK_STOCK_CLEAR, N_("_Game"), NULL, NULL, CMD_ACTION_CALLBACK_FROMID(CMD_ANALYSE_CLEAR_GAME) }, @@ -4036,7 +4036,7 @@ { "CMarkCubeMenuAction", NULL, N_("Cube"), NULL, NULL, G_CALLBACK(NULL) }, { "CMarkCubeClearAction", NULL, N_("Clear"), NULL, NULL, CMD_ACTION_CALLBACK_FROMID(CMD_CMARK_CUBE_CLEAR) }, { "CMarkCubeShowAction", NULL, N_("Show"), NULL, NULL, CMD_ACTION_CALLBACK_FROMID(CMD_CMARK_CUBE_SHOW) }, - { "CMarkMoveMenuAction", NULL, N_("noun|Move"), NULL, NULL, G_CALLBACK(NULL) }, + { "CMarkMoveMenuAction", NULL, N_("Move"), NULL, NULL, G_CALLBACK(NULL) }, { "CMarkMoveClearAction", NULL, N_("Clear"), NULL, NULL, CMD_ACTION_CALLBACK_FROMID(CMD_CMARK_MOVE_CLEAR) }, { "CMarkMoveShowAction", NULL, N_("Show"), NULL, NULL, CMD_ACTION_CALLBACK_FROMID(CMD_CMARK_MOVE_SHOW) }, { "CMarkGameMenuAction", NULL, N_("Game"), NULL, NULL, G_CALLBACK(NULL) }, Index: gtkmovelist.c =================================================================== RCS file: /sources/gnubg/gnubg/gtkmovelist.c,v retrieving revision 1.44 diff -u -r1.44 gtkmovelist.c --- gtkmovelist.c 15 Dec 2022 22:23:00 -0000 1.44 +++ gtkmovelist.c 12 Feb 2024 16:26:51 -0000 @@ -60,7 +60,7 @@ N_("L bg"), NULL, N_("Diff."), - N_("noun|Move") + N_("Move") }; unsigned int i; int showWLTree = showMoveListDetail && !phd->fDetails; Index: gtkrolls.c =================================================================== RCS file: /sources/gnubg/gnubg/gtkrolls.c,v retrieving revision 1.49 diff -u -r1.49 gtkrolls.c --- gtkrolls.c 23 Sep 2023 21:28:16 -0000 1.49 +++ gtkrolls.c 12 Feb 2024 16:26:51 -0000 @@ -195,7 +195,7 @@ int i; static const char *aszColumn[] = { N_("noun|Roll"), - N_("noun|Move"), + N_("Move"), N_("Equity") }; Index: html.c =================================================================== RCS file: /sources/gnubg/gnubg/html.c,v retrieving revision 1.273 diff -u -r1.273 html.c --- html.c 18 Oct 2023 20:30:47 -0000 1.273 +++ html.c 12 Feb 2024 16:26:51 -0000 @@ -2158,7 +2158,7 @@ fprintf(pf, "<th %s colspan=\"2\">%s</th>\n", GetStyleGeneral((int)hecss, CLASS_MOVEHEADER, CLASS_MOVENUMBER, -1), _("#")); fprintf(pf, "<th %s>%s</th>\n", GetStyleGeneral((int)hecss, CLASS_MOVEHEADER, CLASS_MOVEPLY, -1), _("Ply")); - fprintf(pf, "<th %s>%s</th>\n", GetStyleGeneral((int)hecss, CLASS_MOVEHEADER, CLASS_MOVEMOVE, -1), Q_("noun|Move")); + fprintf(pf, "<th %s>%s</th>\n", GetStyleGeneral((int)hecss, CLASS_MOVEHEADER, CLASS_MOVEMOVE, -1), _("Move")); fprintf(pf, "<th %s>%s</th>\n" "</tr>\n", GetStyleGeneral((int)hecss, CLASS_MOVEHEADER, CLASS_MOVEEQUITY, -1), Index: sound.c =================================================================== RCS file: /sources/gnubg/gnubg/sound.c,v retrieving revision 1.107 diff -u -r1.107 sound.c --- sound.c 23 Sep 2023 21:28:16 -0000 1.107 +++ sound.c 12 Feb 2024 16:26:51 -0000 @@ -348,7 +348,7 @@ N_("Doubling"), N_("Drop"), N_("Chequer movement"), - N_("noun|Move"), + N_("Confirm move"), N_("Redouble"), N_("Resign"), N_("verb|Roll"),