Solucionado No me sale la Ñ en cmd.exe

Estado
Cerrado para nuevas respuestas

Paracosmos

Nuevo Miembro
Miembro
Este es un problema muy extraño. En Windows todo me funciona normal y a la hora de escribir me salen la Ñ ñ y los acentos. Pero cuando abro un cmd.exe en vez de la ñ me sale el simbolo + y si intento poner acentos me salen simbolos raros. ¿A qué puede ser debido esto?:confused:

Muchas gracias de antemano por sus respuestas.
 

jbex

El que peca y reza empata
Administrador
Localiza el autoexec.nt ubicado en la carpeta C:\windows\system32
Abre el dicho archivo, clic con botón derecho -> Abrir con ... (bloc de botas)
Añade al final del documento de comandos: kb16 sp
Guarda los cambios.
Un saludo
 

Paracosmos

Nuevo Miembro
Miembro
El archivo autoexec.nt me sale en mayusculas. ¿Es eso normal?

C:\WINDOWS\system32\AUTOEXEC.NT

Lo he abierto con el bloc de notas y he pegado al final kb16 sp. Lo he guardado y he reiniciado el ordenador. Pero no ha funcionado. En cmd.exe siguen sin salir ni los acentos ni las eñes.

Por cierto, que en el contenido del AUTOEXEC.NT me he fijado que tampoco salen acentos en el texto. Sale un simbolo muy raro. En vez de configuración me sale configuraci¢n.
 

jbex

El que peca y reza empata
Administrador
La misma maniobra con el CONFIG.NT.

Te dejo un enlace de interés.
Generalidades

En MS-DOS, el fichero de definición del teclado está contenido el fichero KEYBOARD.SYS. A partir de MS-DOS 6.2 se incluyó un segundo fichero, KEYBRD2.SYS, que ofrece soporte para los teclados que no habían sido incluidos en el anterior. A pesar de lo que pudiera parecer por su nombre, el fichero KEYBOARD.SYS no es un controlador de dispositivo, sino un fichero que contiene la plantilla de códigos de teclas para cada país.

Cambiar idioma del teclado en MS-DOS

En MS DOS, el cambio de idioma se realiza mediante el programa KEYB.COM, que puede ser invocado desde el "Shell" del DOS o desde el fichero CONFIG.SYS; en el primer caso se suele utilizar una línea en el fichero de configuración AUTOEXEC.BAT. La sintaxis es la siguiente:

  • Desde el intérprete de comandos ("Shell") o en el fichero AUTOEXEC.BAT:
Insertar CODE, HTML o PHP:
KEYB [xx[,[yyy][,[unidad:][ruta]nombrearchivo]]] [/E] [/ID:nnn]
  • En el archivo CONFIG.SYS, utilice la sintaxis siguiente:
Insertar CODE, HTML o PHP:
INSTALL=[[unidad-dos:]ruta-dos]KEYB.COM [xx[,[yyy][,[unidad:][ruta]nombrearchivo]]] [/E] [/ID:nnn]
Los parámetros y modificadores tienen el significado siguiente:

  • xx Código alfabético (dos letras) que especifica una distribución de teclado (país o idioma). En la tabla que sigue encontrará una lista de valores válidos para este parámetro.
  • yyy Código numérico que especifica el juego de caracteres (página de códigos). En la tabla incluida al final podrá consultar una lista de valores válidos para este parámetro. Si no especifica este valor, KEYB usará el juego de caracteres actual.
  • [unidad:][ruta]nombrearchivo Especifica la ubicación y nombre del archivo de definición del teclado. El archivo predeterminado es KEYBOARD.SYS. Si este fichero se encuentra en un directorio incluido en la ruta por defecto (path), no es necesario especificar estos parámetros.
  • [unidad-dos:]ruta-dos Especifica la ubicación del archivo KEYB.COM.
  • /E Especifica que está instalado un teclado extendido. Hay que utilizar este modificador si va a usar un teclado de este tipo con un equipo 8086 (PC XT) .
  • /ID:nnn Es un código numérico que especifica el teclado en uso. Este modificador sólo se requiere para tres países (Francia, Italia y Reino Unido) que tienen más de una configuración de teclado para el mismo idioma.
  • /ID:nnn Es un código numérico que especifica el teclado en uso. Este modificador sólo se requiere para tres países (Francia, Italia y Reino Unido) que tienen más de una configuración de teclado para el mismo idioma.
La tabla adjunta muestra los valores aceptados para xx, yyy y nnn, para cada país o idioma incluido en KEYBOARD.SYS:

Ejemplo: Para usar un teclado alemán si su archivo KEYBOARD.SYS está en el directorio DOS de la unidad C, escribiría el siguiente comando:

keyb gr,,c:\dos\keyboard.sys

Códigos de salida: Los códigos de salida del programa KEYB.COM son los siguientes:

0 El archivo de definición de teclado se cargó con éxito.

1 Se usó un código de teclado, juego de caracteres o sintaxis no válido.

2 El archivo de definición de teclado falta o es incorrecto.

4 Se produjo un error de comunicación con el teclado o el monitor.

5 El juego de caracteres solicitado no ha sido preparado.

Estas condiciones de error pueden ser controladas en el fichero autoexec.bat mediante una secuencia de órdenes if errorlevel colocadas después de la sentencia tal como se muestra en el ejemplo:
Insertar CODE, HTML o PHP:
keyb sp,,C:\DOS\keyboard.sys

if errorlevel 5 goto Error5

if errorlevel 4 goto Error4

if errorlevel 2 goto Error2

if errorlevel 1 goto Error1

echo OK página de códigos cargada con éxito

goto FIN

:Error5

echo Error:  El juego de caracteres no ha sido preparado

goto FIN

:Error4

echo Error con el teclado o monitor
Observe que las declaraciones if errorlevel aparecen en orden decreciente, ya que MS DOS considera que la declaración IF es cierta si el parámetro ERRORLEVEL devuelto por KEYB.COM es mayor o igual que el parámetro especificado en el comando IF.

Además del programa KEYB.COM, el controlador ANSI.SYS, que se carga en el fichero de configuración CONFIG.SYS, permite modificar indiviualmente una tecla, de forma que responda con un código determinado.

Nota: El soporte para idiomas ofrecido por MS DOS es un sistema enrevesado y oscuro que utiliza seis tipos de órdenes!!. Es seguramente uno de los mejores ejemplos de las chapuzas que pueden realizar los programadores para amargar la vida a la gente normal.

Cambiar idioma del teclado en Windows
Por su parte, el SO Windows permite remapear los símbolos correspondientes a cada tecla (cambiar el "idioma") de forma muy sencilla. Menú de inicio configuración Panel de Control Teclado Seleccionar pestaña "Idioma".

Aparece un cuadro de diálogo en el que se pueden agregar, seleccionar y quitar idiomas; se puede seleccionar el idioma predeterminado (el que aparecerá por defecto al arrancar el Sistema); habilitar un indicador en la barra de tareas (un icono junto al reloj). Muy útil para cambiar el sentido de una tecla en medio de un documento o entrada de datos, y seleccionar una combinación de teclas que permita cambiar el idioma sin acudir al ratón.

Alemania gr 850, 437
Bélgica be 850, 437
Brasil br 850, 437
Checoslovaquia (checo) cz 852, 850
Checoslovaquia (eslovaco) sl 852, 850
Dinamarca dk 850, 865
España sp 850, 437
Estados Unidos us 850, 437
Finlandia su 850, 437
Francés canadiense cf 850, 863
Francia fr 850, 437 120, 189
Hungría hu 852, 850
Italia it 850, 437 141, 142
Latinoamérica la 850, 437
Noruega no 850, 865
Países Bajos nl 850, 437
Polonia pl 852, 850
Portugal po 850, 860
Reino Unido uk 850, 437 166, 168
Suecia sv 850, 437
Suiza (francés) sf 850, 437
Suiza (alemán) sg 850, 437
Yugoslavia yu 852, 850
Insertar CODE, HTML o PHP:
http://www.zator.com/Hardware/H7_1_2a.htm
Otra solución que encontré en la red:
Para que CMD y COMMAND tengan el idioma en español:
1.- Modificar la cadena de registro: HKEY_CURRENT_USER-->Keyboard Layout-->Preload-->"Predeterminado", modificar el valor a 40a, que corresponde al idioma Español.
2.- Comprobar que en COMMAND, nos funciona la orden "kb16 sp". Acto seguido, el teclado tiene que escribir bien en español.
3.- Para no tener que cambiar de idioma manualmente dentro de COMMAND, editar fichero "autoexec.nt" (C:\Windows\System32), y añadir la entrada -REM Install keyboard language -lh kb16 sp

Un saludo
 

Paracosmos

Nuevo Miembro
Miembro
Me están pasando cosas muy raras en el ordenador:

HKEY_CURRENT_USER-->Keyboard Layout-->Preload-->(Predeterminado) me sale (valor no establecido). En modificar le pongo el valor 0000040a, que se supone que es el valor en castellano. ¿Verdad? Pues al reiniciar el ordenador esos cambios han desaparecido y vuelve a estar en (Predeterminado) (valor no establecido)

Al reiniciar me da error de keyboard.

En COMMAND la orden kb16 sp funciona. Entonces ya puedo poner la ñ y los acentos en cmd.exe. Pero el cambio no es permanente. Al reiniciar ya no salen ni las ñ ni los acentos en cmd.exe. Tambien me da error de keyboard. Y lo más raro de todo es que ahora me salen simbolos chinos en vez de acentos en cmd.exe.

Los cambios propuestos en AUTOEXEC.NT no funcionan.

Si recuerdan ya les abrí anteriormente otra consulta porque me salían simbolos chinos raros en los menús de windows. ¿Puede ser esto un sintoma de una intrusión en mi ordenador desde china?
 

Paracosmos

Nuevo Miembro
Miembro
Otro dato más. No sé si servirá de algo. En COMMAND la orden kb16 sp sí que funciona, pero después de usarla obtengo este mensaje:

Código de teclado actual: SP tabla de códigos: 850
La tabla de códigos activa no está disponible en el dispositivo CON

¿A qué se puede referir con eso de no estar disponible en CON?

Y como ya he comentado antes al reiniciar otra vez sin ñ en el cmd.exe :confused:
 

Paracosmos

Nuevo Miembro
Miembro
Hola. Soy yo de nuevo. Al final de COMMAND.COM en cmd.exe me sale una linea muy rara

C:\>
3 &s t  s^_ZY[XSQRWVf >*@

- 1252,

Antes te contest que kb16 sp funcionaba. Pero en realidad lo hace de una forma muy rara. Tras escribir kb16 sp en command.com s que me salen las pero las tildes no salen normal. Sale un doble acento.:confused:

Puede ser ese galimatias un sintoma de infeccion? Puedo abrir una consulta en la sección de hijackthis con este problema?
 

Paracosmos

Nuevo Miembro
Miembro
Lamento ser tan pesado con este tema. Pero es que ahora veo cosas en el ordenador que no me parecen normales.

Los archivos IO.SYS CONFIG.SYS y MSDOS.SYS tienen cero bytes. El AUTOEXEC.BAT también tiene cero bytes. ¿Eso es normal?
 

Kbite

Aprender y compartir
Administrador
Hola Paracosmos.

Los archivos que indicas son legítimos, pertenecen al sistema y solo deberían ser visibles si has "Mostrado los archivos ocultos del sistema".

Es completamente normal que estén vacíos, y si están en el sistema habrá algúna razón para ello ya que tienen que ver con MS-DOS que se usa como consola de comandos.

Todo parece ser, tal como te señalaba jbex, que se trata del idioma que no reconoce el cmd. Deberías intentar de nuevo sus indicaciones ya que son las que se recomiendan en cualquier soporte a Windows que he consultado.

No obstante podrías reparar los archivos del Windows en busca de algún error en los mismos o algúno corrupto: Recuperar los archivos del sistema en Windows XP

Saludos. Kbite
 

Paracosmos

Nuevo Miembro
Miembro
He probado todas las indicaciones propuestas por jbex y no funciona ninguna.

sfc /scannow no cambia nada.

Lo único que se me ocurre es dejaros un par de capturas de pantalla para que podais comprobar las cosas raras que me hace cmd.exe

Esto es lo que pasa con command.com
cmd2B1JPG-1.jpg
solo salen un montón de simbolos raros.

Y con kb16 sp ya puedo poner ñ y tildes pero cmd no las reconoce.
cmd2B2JPG-1.jpg
Fijaros que pongo ñoño y me sale DODO o algo así.
 

Paracosmos

Nuevo Miembro
Miembro
¡Problema resuelto!

Explico todos los pasos seguidos por si interesa conocer la solución:

Abrir cmd.exe con ejecutar. En la ventana de cmd, en la esquina superior izquierda sale un simbolito con una C:\ pequeñita. Click con el botón derecho del mouse sobre ella y se despliega un menú. Seleccionamos propiedades. En propiedades seleccionamos la pestaña fuente, escogemos fuente Lucida Console y aceptar. Si nos pregunta si queremos aplicar las propiedades sólo a la ventana actual o todas las ventanas con el mismo título escogemos que todas las ventanas.

¡Arreglado!
 

Paracosmos

Nuevo Miembro
Miembro
Dejo un enlace que me ayudó a resolver este problema.

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.png


CMD con Raster Fonts:

cmd_raster.png


CMD con Lucida Console:

cmd_lucida.png


Para añadir fuentes, podemos seguir el documento de Microsoft: http://support.microsoft.com/default.aspx?scid=kb;EN-US;Q247815, 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í:
Insertar CODE, HTML o PHP:
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 y 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_font.png


CMD con ProggyCleanTT:

cmd_proggy.png


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_proggy.png



Fuente: www.vicente-navarro.com/blog/2007/07/29/cambiar-la-fuente-del-cmd-de-windows/

El caso es que comprobé personalmente con regedit la entrada HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Console\TrueTypeFont
Dentro me encontré un montón de simbolos raros en chino o japonés. He borrado del registro todas esas mandangas raras en chino y he dejado esa entrada del registro tal y como debería estar, solo con el Lucida Console y nada más.
 

Kbite

Aprender y compartir
Administrador
Hola Paracosmos.

Pues gracias por dejarnos la solución que le diste al problema, seguro será útil a otros usuarios.

Gracias y un saludo. Kbite
 
Estado
Cerrado para nuevas respuestas
Arriba Pie