how to set desired language in git-gui?

2019-01-30 21:20发布

问题:

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?

回答1:

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



回答2:

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/ )



回答3:

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.



回答4:

export LANG=en_US

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



回答5:

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 in a Debian environment
  • How to in an Ubuntu environment


标签: git git-gui