setxkbmap fr, dead keys do not work under
yakuake (typing the dead key
^ immediately prints a
^, rather than wait for the next character), while they work in
xterm. The font I'm using supports them, and it is possible to input them e.g. in vim using digraphs.
Looking for a fix, thanks.
Had that problem too (with a French keyboard). I found no solution to it with the default input method installed by KDE (XIM) - and I'm not enough of a system wizard to tweak it -, but I found a workaround by using another input method : ibus.
Here's what worked for me:
Install im-config, a package that allows you to change the system input method :
apt-get install im-config zenity
Install ibus and qt-config (libpinyin also allows you to get a method for entering Chinese characters using a pinyin transliteration - for those who are interested - that's what the two last packages in this line are for) :
apt-get install ibus ibus-qt4 qt4-qtconfig ibus-libpinyin libpinyin-utils
Set the base parameters of ibus (e.g. your national keyboard) :
Tell the system that ibus should be the default input method in software using the Qt graphic library (that is, all native KDE applications like Konsole, etc.):
Use im-config to choose ibus as your default input method for all X11 applications:
To make those changes recognized in every future X11 session, add these lines to your ~/.xsessionrc file (or create it if you don't have one yet):
#!/bin/bash export GTK_IM_MODULE=ibus export XMODIFIERS=@im=ibus export QT_IM_MODULE=ibus ibus-daemon -drx
In my case (it might not be yours), because I'm using tcsh and not bash as the default shell in my Konsole sessions, and because for whichever reason X11 failed to read .xsessionrc at every new startup, I also had to add this line to the .tcshrc shell startup file:
Finally, in the IBus panel (that should now appear in the system tray), in the "Preferences" panel, "Advanced" tab, be sure to check the box "Use system keyboard layout", so that the keyboard layout used corresponds to what you have already chosen (and so that any additional options, e.g. position of the Compose Key, is taken into account).
Don't know why there was no simpler solution, and why the default input method does not take the dead keys mechanism into account (I checked in xev: the events were correctly sent by X11 to XIM, but Qt applications just ignored it!). Well anyway, I'm happy with the workaround.