how to set desired language in git-gui?

GitGit Gui

Git Problem Overview


I recently came to git for a project I participate to. I found git gui rather handy (under OSX Snow Leopard) to srtat with but I would much like if it were not localized (in French, in my case). Is there preference or hack to have git gui displayed in english?

Git Solutions


Solution 1 - Git

For Windows users the are two choices as well:

1) Set the LANG environment variable to en.

a) Overall for Windows: http://www.itechtalk.com/thread3595.html

b) For the git shell only:

If you don't want to affect anything else except git applications you might add the following line in the beginning of C:\Program Files\Git\cmd\git.cmd file:

@set LANG=en

Please note that this will only work when launching commands from the git shell - GIT GUI launched from the start menu will not be affected

*2) Delete or rename relevant .msg file in C:\Program Files\Git\share\git-gui\lib\msgs

You save on not modifying any setup shell (especially if you use cmd.exe shells) but you lose on international functionality.

Credits: These answers originated in the official issue raised in msysgit project which can be found here: http://code.google.com/p/msysgit/issues/detail?id=302

Solution 2 - Git

You could remove/rename the translation file from the install, french would be

... /share/git-gui/lib/msgs/fr.msg

Don't know about OS-X, but under windows (msysgit) that would normally be C:\Program Files\Git\share\git-gui\lib\msgs, and on Linux (and others) /usr/share/git-gui/lib/msgs/ .

(and gitk ... /share/gitk/lib/msgs/ )

Solution 3 - Git

Note that setting @set LANG=en in cmd file helps, but only when you start GitGUI with that cmd file. This is not the case when you start it from the Start menu: it calls wish.exe directly. If you change the link to run cmd script, it shows text command window along with GUI, which is unwanted. That is why for me renaming .msg file is a way of choice.

Solution 4 - Git

For Linux you can use from a terminal:

LC_ALL=en_US.utf8 git gui

to start your git-gui for example temporary in english from your current terminal. This solution will affect only your current instance of git-gui and nothing else. Credit goes to Junio C Hamano

*Update for use in .desktop files (persistent solution):

To always start a program with the desired locale setting from your *.desktop file you have to modify it's Exec=... section to start in a modified environment.

From:

...
Exec="/usr/bin/your-program"
...

To:

...
Exec=env LC_ALL=en_US.utf8 "/usr/bin/your-program"
...

Update for missing locales:

Sometimes your system might complain with:

-bash: warning: setlocale: LC_ALL: cannot change locale (en_US)

In this case you most likely don't have the proper locale generated, yet. (If you see English text nevertheless it's probably your system that's using the C locale as a fallback)

Generating the missing locale:

  • [How to][3] in a Debian environment
  • [How to][4] in an Ubuntu environment

[3]: https://wiki.debian.org/Locale#Standard "Debian" [4]: https://help.ubuntu.com/community/Locale#A.28Re-.29Generating_locales

Solution 5 - Git

export LANG=en_US

should do. It will affect everything you run from this shell, though.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionJulien View Question on Stackoverflow
Solution 1 - GitOleg SakharovView Answer on Stackoverflow
Solution 2 - GitJoakim ElofssonView Answer on Stackoverflow
Solution 3 - GitAndrey BetenevView Answer on Stackoverflow
Solution 4 - GitxmoexView Answer on Stackoverflow
Solution 5 - GitMichael Krelin - hackerView Answer on Stackoverflow