Comment puis-je savoir si le file ~ / .XCompose a été chargé?

J'ai ajouté une séquence simple, mais ça ne marchera pas. Comment puis-je savoir si le operating system (Ubuntu 12.10 avec Unity) charge réellement le file?

Les définitions de composition ( $XCOMPOSE , ~/.XCompose ou un file sous /usr/share/X11/locale ) sont chargées par chaque application client et non par le server X. Assurez-vous donc que l'application que vous testez charge ~/.XCompose . Vous pouvez voir quels files il lit avec 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 plupart des applications ne chargent le file qu'au démarrage, vous devrez donc redémarrer l'application si vous modifiez vos définitions de composition.

Si l'application ne charge pas ces files, il est probable qu'ils n'utilisent pas la 'méthode d'input X' (xim). Vous pouvez forcer les applications GTK ou QT à utiliser xim:

 $ GTK_IM_MODULE=xim QT_IM_MODULE=xim strace -e open xterm |& grep Compose 

Si cela résout le problème, vous devez envisager de définir les variables d'environnement globalement ou utiliser un alias comme solution de contournement par application.