He agregado una secuencia simple, pero no funcionará. ¿Cómo puedo saber si el sistema operativo (Ubuntu 12.10 con Unity) está realmente cargando el archivo?
He agregado una secuencia simple, pero no funcionará. ¿Cómo puedo saber si el sistema operativo (Ubuntu 12.10 con Unity) está realmente cargando el archivo?
Respuestas:
Las definiciones Componer ( $XCOMPOSE
, ~/.XCompose
o un archivo bajo /usr/share/X11/locale
) se cargan por cada aplicación cliente, no por el servidor X. Así que asegúrese de que la aplicación con la que está probando se esté cargando ~/.XCompose
. Puede ver con qué archivos está leyendo strace
:
$ strace -e open xterm |& grep Compose
open("/home/gilles/.XCompose", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/share/X11/locale/en_US.UTF-8/Compose", O_RDONLY) = 5
$ touch .XCompose
$ strace -e open xterm |& grep Compose
open("/home/gilles/.XCompose", O_RDONLY) = 5
La mayoría de las aplicaciones solo cargan el archivo cuando se inician, por lo que tendrá que reiniciar la aplicación si cambia las definiciones de redacción.
Si la aplicación no está cargando estos archivos, es probable que no estén utilizando el 'método de entrada X' (xim). Puede forzar a las aplicaciones GTK o QT a usar xim:
$ GTK_IM_MODULE=xim QT_IM_MODULE=xim strace -e open xterm |& grep Compose
Si esto soluciona el problema, entonces debería considerar establecer las variables de entorno de forma global, o utilizarlo alias
como solución alternativa por aplicación.