Lo hice y lo entendí

El blog de Vicente Navarro
29 jul

Cambiar la fuente del CMD de Windows

Ya son cuatro las entradas anteriores dedicadas al Cygwin. Esta no es exactamente la quinta, ya que vamos a contar algo genérico de Windows, pero sí es algo que es mucho más útil cuando usamos Cygwin que cuando no lo usamos, ya que en realidad el CMD de Windows normalmente no se usa más que para escribir un par de comandos, entre otras cosas porque Windows no da facilidades para trabajar en la consola.

Por defecto, el CMD sólo nos permite usar dos fuentes: Raster Fonts (fuentes bitmap con la apariencia de la fuente VGA de la consola de los PCs) y la fuente True Type Lucida Console.

cmd properties

CMD con Raster Fonts:

cmd Raster Fonts

CMD con Lucida Console:

cmd Lucida Console

Para añadir fuentes, podemos seguir el documento de Microsoft: Necessary criteria for fonts to be available in a command window, que nos explica que hemos de añadir entradas en HKLM\Software\Microsoft\Windows NT\CurrentVersion\Console\TrueTypeFont de tipo String y nombre 00, 000, 0000, etc., con la fuente deseada (escrita tal y como aparecen en HKLM\Software\Microsoft\Windows NT\CurrentVersion\Fonts) en el campo de datos. Por ejemplo, para añadir la fuente Courier New, modificaríamos el registro de forma que el export de dicha rama del registro quedara así:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Console\TrueTypeFont]
"0"="Lucida Console"
"00"="Courier New"

Por supuesto, sobra decir que para la consola, deberíamos de usar únicamente fuentes monoespaciadas (aquellas en las que, por ejemplo, una i tiene igual de ancho que una m y, por tanto, no deforma las alineaciones de caracteres). Las fuentes de programación Proggy están muy bien para la consola.

regedit console fonts

CMD con ProggyCleanTT:

cmd ProggyCleanTT

En las capturas de artículos anteriores de Cygwin se ve que normalmente uso la fuente Lucida Console para el Cygwin. Este es la apariencia que tiene con ProggyCleanTT:

Cygwin ProggyCleanTT

Algunos enlaces

Windows Vista lleva una nueva fuente llamada Consolas que necesita activar al menos el anti-aliasing para que se alineé bien y el ClearType para sacarle el máximo provecho. Podemos descargar un zip con todas las nuevas fuentes de Windows Vista en Consolas as my new IDE font for Visual Studio 2005 y el pack de fuentes Consolas de la web de Microsoft: Consolas Font Pack for Microsoft Visual Studio 2005, pero dicha fuente parece que no cumple los requisitos que aparecen en la web de Microsoft que mencionaba antes y no la podemos usar para el CMD.

Información interesante sobre el CMD y documentación sobre algunas claves del registro que le afectan: Windows XP Professional Product Documentation: Cmd

He descubierto que en mundogeek.net se trató el tema Cambiar la fuente de la consola de Windows e incluso se puede descargar un programa llamado Windows Console Font Adder que ayuda a añadir fuentes para ser usadas en la consola. También hay un artículo sobre Fuentes para programación.

Actualización 23/4/08: En el blog de IE (¿?) explican cómo usar la fuente Consolas en el CMD de Windows Vista. En Windows XP, siguiendo el procedimiento, aunque la fuente se añade a la lista de fuentes disponibles, al elegirla no cambia. Hay varios comentarios en el blog que se quejan de lo mismo.

El procedimiento consiste en ejecutar:

reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Console\TrueTypeFont" /v 00 /d Consolas

en la línea de comandos (y parece que en Windows Vista con permisos de administrador).

Entradas relacionadas

5 Comentarios a “Cambiar la fuente del CMD de Windows”

  • patata dice:

    Felicidades, Vicente

    Soy un informatico obligado a mantener sistemas desarrollados bajo MS-DOS. Llevaba tiempo buscando la manera de personalizar la consola de w2000, y no había encontrado nada…hasta ahora. Prometo seguirte, y a ver si algún día puedo colaborar en algo

  • patata Me alegro de que te haya resultado útil. ¡Por aquí eres bienvenido!

  • danielek dice:

    Prueben con la fuente “Consolas” de Microsoft, está excelente, también para programar.

  • danielek Sí, como ya comentaba en el artículo, la fuente Consolas está muy bien… Desafortunadamente, parece que no se puede usar en el CMD.

Trackbacks y pingbacks:

Tema LHYLE09, creado por Vicente Navarro