As definições de composição ( $XCOMPOSE
, ~/.XCompose
ou um arquivo em /usr/share/X11/locale
) são carregadas por cada aplicativo cliente, não pelo servidor X. Portanto, verifique se o aplicativo com o qual você está testando está carregando ~/.XCompose
. Você pode ver quais arquivos estão sendo lidos com 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
A maioria dos aplicativos só carrega o arquivo quando eles são iniciados, então você terá que reiniciar o aplicativo se alterar suas definições de composição.
Se o aplicativo não estiver carregando esses arquivos, é provável que eles não estejam usando o 'método de entrada X' (xim). Você pode forçar aplicativos GTK ou QT a usar o xim:
$ GTK_IM_MODULE=xim QT_IM_MODULE=xim strace -e open xterm |& grep Compose
Se isso resolver o problema, você deve considerar definir as variáveis de ambiente globalmente ou usar alias
como uma solução alternativa por aplicativo.