2010-07-30 7 views
7

Acabo de instalar Mercurial 1.6 en mi MacBook con Mac OS X 10.5.8¿Por qué Mercurial muestra el texto de ayuda en alemán? ¿Cómo puedo cambiar esto?

"hg" me muestra texto de ayuda en lo que parece ser una mezcla aleatoria de inglés y alemán, "hg -v" muestra texto en Alemán. ¿Por qué?

Estoy, de hecho, en Alemania y mi Mac tiene un teclado alemán. Tengo Alemania como locale del sistema, pero el inglés es el idioma.

Hablo alemán con fluidez, por lo que tener hg me habla en alemán no es un problema insalvable. Pero el inglés es mi lengua materna y el idioma en el que prefiero trabajar.

¿Alguien sabe cómo anular este irritante comportamiento de hg?

Respuesta

3

Debe establecer una variable de entorno; de lo contrario, se predetermina a la configuración regional de su usuario.

La variable debe llamarse LANG y debe tener el valor en_US para darle textos en inglés (EE. UU.).

Resultados en Windows (lo sé, estás en Mac, pero no sé cómo hacerlo allí):

[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

Gracias Lasse: su respuesta me puso en el camino correcto.

Mac OS X, aunque he configurado el idioma en Sytem Preferences/International en inglés, todavía tengo "LANG = de_DE.UTF-8" en el entorno de línea de comandos. [OS X error?]

No estoy seguro si la anulación de esto globalmente podría romper algo, así que lo "arreglé" por ahora con un pequeño script llamado "hg" en mi directorio utils, colocado en mi camino antes de que la cosa real, que anula LANG antes de llamar a la verdadera hg:

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

... que funciona en OS X a pesar de mis habilidades de secuencias de comandos shell sub-rudimentaria, pero depende del comportamiento impar de "que" en OS X En OS X, "which" realmente encuentra el hg "real". En Linux, otoh, este script se encuentra de nuevo y entra en la recursión infinita.

0

Mi solución es cambiar el nombre de la carpeta de idiomas por el idioma que me gustaría eliminar de HG. En mi caso, la carpeta tiene esta ubicación: /Library/Python/2.7/site-packages/mercurial/locale/da

Cuestiones relacionadas