Subject: Re: Gitk local language issue

From: Pat Thoyts <[email-masked]>
Date: Sat, 18 Feb 2012 13:09:01 +0000

shyamal <[email-masked]> writes:

>Hi,
>
>I am working in Japan now on a windows environment.
>I installed GIT on my machine.When I run the application,The menus are in
>Japanese.To get the English menu I added 
>@set LANG=en 
>at the beginning of git.cmd file.This worked like a magic :-)
>But when I click the Visualize master' history from the repository menu of
>Git Gui, a new interface (Gitk:Websites) opens where all the menus are still
>in Japanese.Any idea how to change the menu to  English in Gitk too?
>
>Thanks in advance
>
>Regards,
>Shyamal.

If I modify the git.cmd file here on my English system to include
@set LANG=fr just after the @set PLINK_PROTOCOL=ssh command, then git
gui runs with French menus and selecting the view history menu item
launches gitk with French menus.

This is because git-gui executes a new tcl interpreter subprocess passing
in the known gitk script location. So the gitk process inherits the
git-gui environment (including this LANG setting). It doesn't call the
gitk.cmd script on Windows.

Possibly your interpreter is picking up some other locale setting. The
msgcat script will use LC_ALL, LC_MESSAGES or LANG (in that order) and
only makes use of the first one it sees. So perhaps you have an LC_ALL
set someplace - however, I would assume that would force the git-gui
script to use that locale too.

One quick hack would be to modify bin/gitk and after the msgcat
initialization force the locale using:
   msgcat::mclocale en

-- 
Pat Thoyts                            http://www.patthoyts.tk/
PGP fingerprint 2C 6E 98 07 2C 59 C8 97  10 CE 11 E6 04 E0 B9 DD