2010-07-30 7 views
7

Ho appena installato Mercurial 1.6 sul mio MacBook con Mac OS X 10.5.8Perché Mercurial mostra il testo della guida in tedesco? Come posso cambiare questo?

"hg" mi mostra il testo della guida in quello che sembra essere un mix casuale di inglese e tedesco, "hg -v" mostra il testo tutto in Tedesco. Perché?

Sono, infatti, in Germania e il mio Mac ha una tastiera tedesca. Ho la Germania come localizzazione di sistema, ma l'inglese come lingua.

Parlo correntemente il tedesco, quindi avere una buona conoscenza di me in tedesco non è un problema insormontabile. Ma l'inglese è la mia lingua madre e la lingua in cui preferisco lavorare.

Qualcuno sa come ignorare questo comportamento irritante di hg?

risposta

3

È necessario impostare una variabile di ambiente, altrimenti imposta automaticamente la locale dell'utente.

La variabile deve essere denominata LANG e deve avere il valore en_US per fornire testi in inglese (USA).

Risultati su Windows (lo so, siete su Mac, ma non so come farlo lì):

[C:\] :set lang=de_DE 

[C:\] :hg version 
Mercurial Distributed SCM (version 1.6.1023) 

Copyright (C) 2005-2010 Matt Mackall <[email protected]> und andere 
Dies ist freie Software; siehe Quellen fⁿr Kopierbestimmungen. Es besteht 
KEINE GewΣhrleistung fⁿr das Programm, nicht einmal der Marktreife oder der 
Verwendbarkeit fⁿr einen bestimmten Zweck. 

[C:\] :set lang=en_US 

[C:\] :hg version 
Mercurial Distributed SCM (version 1.6.1023) 

Copyright (C) 2005-2010 Matt Mackall <[email protected]> and others 
This is free software; see the source for copying conditions. There is NO 
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 

[C:\] : 
1

Grazie Lasse: la tua risposta mi ha messo sulla strada giusta.

Mac OS X, anche se ho impostato la lingua in Preferenze Sytem/Internazionale in inglese, ha ancora "LANG = de_DE.UTF-8" nell'ambiente della riga di comando. [OS X bug?]

Non sono sicuro che l'override globale potrebbe rompere qualcosa, quindi l'ho "riparato" per ora con un piccolo script chiamato "hg" nella mia directory utils, inserito nel mio percorso prima che la cosa reale, che sostituisce LANG prima di chiamare la vera hg:

LANG="en_EN.UTF-8" 
REALHG=$(which hg) 
$REALHG [email protected] 

... che funziona su OS X, nonostante le mie capacità di scripting di shell sub-rudimentale, ma dipende dal comportamento strano di "che" su OS X In OS X, "che" trova effettivamente il "vero" hg. Su Linux, otoh, questo script si ritrova di nuovo e va in ricorsione infinita.

0

La mia soluzione è quella di rinominare la cartella della lingua per la lingua che vorrei rimuovere da HG. Nel mio caso la cartella ha questa posizione: /Library/Python/2.7/site-packages/mercurial/locale/da

Problemi correlati