martes, 25 de febrero de 2020

Cambiar el idioma de mensajes del SDK de .NET Core

.NET Core Pues va un post cortito a modo de autorecordatorio, porque es algo que me ha pasado ya varias veces y siempre tengo que ponerme a investigar cómo solucionarlo.

Personalmente me gusta tener todos los entornos y herramientas de desarrollo en inglés, básicamente porque cuando encontramos problemas es más fácil encontrar soluciones si a la hora de buscar utilizamos los términos en este idioma... bueno, y de paso, evito ver algunas traducciones terribles ;)

Pues bien, en el caso del SDK de .NET Core, el idioma no es una característica que podamos elegir a la hora de instalarlo. Se instalarán todos los idiomas disponibles (podéis verlo por ejemplo en la carpeta %programfiles%\dotnet\sdk\3.1.101), y los mensajes se mostrarán en el idioma configurado por defecto en nuestra máquina. En mi equipo, por ejemplo, se muestra todo en idioma español:
C:\>dotnet xyz
No se pudo ejecutar porque no se encontró el comando o archivo especificados.
Algunas de las posibles causas son:
  * Escribió mal un comando dotnet integrado.
  * Intentó ejecutar un programa .NET Core, pero dotnet-xyz no existe.
  * Tiene planeado ejecutar una herramienta global, pero no se encontró un ejecutable 
    con prefijo dotnet con este nombre en la RUTA DE ACCESO.

C:\>_

Sin embargo, existe una forma de forzar el uso de un idioma determinado en el SDK estableciendo la variable de entorno DOTNET_CLI_UI_LANGUAGE. Por ejemplo, para hacer que todo se muestre en inglés, podríamos hacer algo así:
C:\>set DOTNET_CLI_UI_LANGUAGE=en

C:\>dotnet xyz
Could not execute because the specified command or file was not found.
Possible reasons for this include:
  * You misspelled a built-in dotnet command.
  * You intended to execute a .NET Core program, but dotnet-info does not exist.
  * You intended to run a global tool, but a dotnet-prefixed executable 
    with this name could not be found on the PATH.

C:\>_
Mi yo del futuro seguro agradecerá esta entrada. Y si de paso ayuda a alguien más, pues genial ;)

Publicado en Variable not found.

2 comentarios:

  1. Yo también tengo todo en inglés, pero a veces viene bien un mensaje en español pues puede ser mas claro.

    Lo ideal (para mi), sería poder ver ambos idiomas.

    ResponderEliminar
  2. Hola!

    Pues ya sabes, basta con cambiarlo a tu antojo cuando lo veas necesario. Y si es frecuente, siempre podrías escribirte un pequeño script (por ejemplo un .bat) que lo haga por tí ;)

    Saludos!

    ResponderEliminar