[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Coma decimal



> > Puedes remapear la tecla del punto del teclado numérico para que al
> > pulsarla se escriba una coma en vez del punto. Mírate el comando
> > xmodmap(1).
> 
> Gracias, lo voy a intentar! ¿Pero al hacerlo no voy a modificar el 
> comportamiento, también, para las demás aplicaciones (en XCalculator y en 
> GNUCash funciona correctamente así como está ahora)?

El problema es que algunos de ellos utilizan el soporte para múltiples idiomas
("locale") y toman esa tecla como la coma decimal, mientras que otros no (o sí
lo han tenido en cuenta pero "algo falla", como parece ser el caso).

Lo "correcto" es que todos actúen según la configuración local, en este caso
tomar esa tecla como la coma decimal. Puedes enviar, si lo crees conveniente,
reportes de fallo a los mantenedores de los paquetes Debian para que parcheen
el código fuente original para que tenga en cuenta la configuración local (o
incluso puedes ponerte en contacto directamente con los desarrolladores de los
paquetes originales).

Mientras tanto, una solución es ejecutar xmodmap antes (para fijar esa tecla
del teclado numérico como la coma) y después (para restaurar su valor
original) de ejecutar los programas "conflictivos".

También puedes probar a ejecutarlos así:

    $ LC_NUMERIC=c kspreadsheet &

Esto le indica al programa que utilice el punto como coma decimal (esto tiene
el inconveniente de que seguramente verás puntos en vez de comas en el
programa).

Resumiendo: los programas que utilizan "locale" toman un "." a la entrada como
la coma decimal, mientras que los que no lo usan toman un "." literalmente, y
por eso no funciona y es necesario indicarles una "," literal.

PD: la cosa se pone divertida cuando no se trata de interpretar una tecla a la
entrada sino un determinado caracter almacenado. Por ejemplo, en AWK, si pones
el "locale" a castellano, es necesario poner las comas decimales en el código
fuente con el caracter ",", mientras que si el "locale" está en inglés hay que
poner un "." como coma decimal. Esto es especialmente divertido cuando el
intérprete se queja y empiezas a buscar un fallo en el código fuente, ya que
en principio ignorabas todo este asunto.



Reply to: