~/.XCompose 파일이 로드되었는지 어떻게 확인할 수 있나요?

~/.XCompose 파일이 로드되었는지 어떻게 확인할 수 있나요?

간단한 시퀀스를 추가했지만 작동하지 않습니다. 운영 체제(Unity가 설치된 Ubuntu 12.10)가 실제로 파일을 로드하고 있는지 확인하는 방법은 무엇입니까?

답변1

Compose 정의( $XCOMPOSE또는 ~/.XCompose그 아래의 파일 /usr/share/X11/locale)는 X 서버가 아닌 각 클라이언트 응용 프로그램에 의해 로드됩니다. 따라서 테스트 중인 응용 프로그램이 로드되고 있는지 확인하십시오 ~/.XCompose. 어떤 파일을 읽고 있는지 확인할 수 있습니다 strace.

$ strace -e open,openat 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,openat xterm |& grep Compose
open("/home/gilles/.XCompose", O_RDONLY) = 5

대부분의 애플리케이션은 시작 시에만 파일을 로드하므로 작성 정의를 변경하는 경우 애플리케이션을 다시 시작해야 합니다.

응용 프로그램이 이러한 파일을 로드하지 않으면 X 입력 방법(xim)을 사용하지 않는 것일 수 있습니다. GTK 또는 QT 애플리케이션이 xim을 사용하도록 강제할 수 있습니다.

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

문제가 해결되면 환경 변수를 전역적으로 설정하거나 alias애플리케이션별 해결 방법으로 설정하는 것을 고려해야 합니다.

관련 정보