Christian Stimming <stimming@xxxxxxx> wrote: > Subject: [PATCH] Mark strings for translation. > > The procedure [mc ...] will translate the strings through msgcat. ... > Here I marked much more strings than in the previous patch, and as discussed > the procedure [mc ...] is used for translation. Actually I think this pretty much > caught all occurrences of user-visible strings in *this* file; there will be many > more strings in all the other files, of course. Almost. I noticed two that you did miss, and its because they are totally weird. We may want to rewrite this block of code first... > @@ -1673,7 +1673,7 @@ if {[is_enabled transport]} { > menu .mbar.repository > > .mbar.repository add command \ > - -label {Browse Current Branch's Files} \ > + -label [mc "Browse Current Branch's Files"] \ > -command {browser::new $current_branch} > trace add variable current_branch write ".mbar.repository entryconf [.mbar.repository index last] -label \"Browse \$current_branch's Files\" ;#" > .mbar.repository add command \ > @@ -1682,69 +1682,69 @@ trace add variable current_branch write ".mbar.repository entryconf [.mbar.repos > .mbar.repository add separator > > .mbar.repository add command \ > - -label {Visualize Current Branch's History} \ > + -label [mc "Visualize Current Branch's History"] \ > -command {do_gitk $current_branch} > trace add variable current_branch write ".mbar.repository entryconf [.mbar.repository index last] -label \"Visualize \$current_branch's History\" ;#" > .mbar.repository add command \ See those two trace lines? These things are setting up hooks to change the menu item's label on the fly, so that the current branch name is shown in the item label. These will also need to use mc to translate the string. But they are in a double quoted string and will be eval'd later by Tcl, so we actually need something like: - trace add variable current_branch write ".mbar.repository entryconf [.mbar.repository index last] -label \"Visualize \$current_branch's History\" ;#" + trace add variable current_branch write ".mbar.repository entryconf [.mbar.repository index last] -label \[mc \"Visualize \$current_branch's History\"\] ;#" These are (I think) the only two places in all of git-gui where this wierdness happens. Converting this trace pair to a normal procedure may make it easier to manage for translation. > - .mbar.apple add command -label "About [appname]" \ > + .mbar.apple add command -label [mc "About %s" appname] \ Bug. This needs to be: + .mbar.apple add command -label [mc "About %s" [appname]] \ You lost one level of [] there when you did the replacement. I only noticed this during a fast scan through while deleting text. I'll have to reread this patch more carefully later, before I apply (or merge) it, to make sure we don't have more such cases. -- Shawn. - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html