2013-02-11 53 views
6

如何在Windows上將mercurial命令行的語言永久更改爲英語?如in this answer所述設置LANG環境變量可以暫時幫助一個命令窗口,但是可以以某種方式在mercurial.ini(或hgrc)中設置語言或以其他方式設置語言?如何在Windows上永久更改mercurial命令行的語言?

背後的原因是:德語的mercurial輸出被打破,所有特殊字符(Umlaute等)都不能正確顯示。

回答

9

可以LANGUAGE環境變量設置爲en_US.UTF-8無論是對當前用戶或全局使用Control Panel - >All Control Panel Items - >System - >Advanced system settings - >Advanced - >Environment variables,創建UserSystem新的變量。

創建後,您的更改將只適用於cmd或其他程序的新實例。

請注意,這似乎是LANGUAGE env。除了hgTortoiseHg之外,變量不是其他程序所關注的東西。我能夠將它安裝在我的Windows 7中(英文)並設置爲LANGUAGE=de_DE.UTF-8。這已經改變了hg以德語報道大多數消息,但它並沒有影響我的其他任何程序 - 他們仍然會說英語。

+0

就像對其他答案發表評論:我不想將LANG環境變量設置爲「全局」。我只想改變mercurial的語言。 – James 2013-02-11 09:02:44

+0

我已經更新了我的答案,提到使用'LANGUAGE'似乎不影響其他程序。 – mvp 2013-02-11 09:12:17

+0

謝謝。雖然這似乎也有點「黑客」,但似乎起作用。謝謝。 – James 2013-02-11 10:08:53

0

我猜你用SET來設置環境變量。這隻會修改當前命令窗口生命週期的變量。

您是否嘗試過使用SETX永久設置LANG環境變量?這將永久修改變量。但是請注意,它不會修改當前的命令窗口,因此您需要打開一個新的命令窗口來查看更改的效果。

+3

我不想將LANG環境變量設置爲「全局」。我只想改變mercurial的語言。 – James 2013-02-11 09:01:44

6

如果要將命令行語言更改爲英語,請轉至您的mercurial安裝路徑(例如,在windows C:\Program Files\Mercurial\),然後​​,並將錯誤的當前語言文件夾(例如de)重命名爲_de。

現在hg會回退到默認語言en