คำจำกัดความเขียน ( $XCOMPOSE
, ~/.XCompose
หรือแฟ้มภายใต้/usr/share/X11/locale
) จะถูกโหลดโดยการประยุกต์ใช้ลูกค้าแต่ละรายไม่ได้โดยเซิร์ฟเวอร์เอ็กซ์ ~/.XCompose
เพื่อให้แน่ใจว่าโปรแกรมที่คุณกำลังทดสอบกับการโหลด คุณสามารถดูไฟล์ที่อ่านด้วย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
แอปพลิเคชันส่วนใหญ่โหลดไฟล์เมื่อเริ่มต้นเท่านั้นดังนั้นคุณจะต้องรีสตาร์ทแอปพลิเคชันหากคุณเปลี่ยนคำจำกัดความการเขียน
หากแอปพลิเคชันไม่โหลดไฟล์เหล่านี้เป็นไปได้ว่าพวกเขาไม่ได้ใช้ 'วิธีการป้อนข้อมูล X' (xim) คุณสามารถบังคับให้แอปพลิเคชัน GTK หรือ QT ใช้งาน xim:
$ GTK_IM_MODULE=xim QT_IM_MODULE=xim strace -e open xterm |& grep Compose
หากวิธีนี้ช่วยแก้ไขปัญหาได้คุณควรพิจารณาการตั้งค่าตัวแปรสภาพแวดล้อมทั่วโลกหรือใช้alias
เป็นวิธีแก้ปัญหาในแต่ละแอป