Como posso descobrir se o arquivo ~ / .XCompose foi carregado?

17

Eu adicionei uma sequência simples, mas não funciona. Como posso descobrir se o sistema operacional (Ubuntu 12.10 com Unity) está realmente carregando o arquivo?

    
por Tim 28.12.2012 / 02:18

1 resposta

14

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.

    
por 01.01.2013 / 04:32