xkbmap with combining diacritics

Joshua Crowgey jcrowgey at uw.edu
Thu Feb 21 12:48:26 PST 2013

On 02/18/2013 08:40 PM, James Cloos wrote:
>>>>>> "JC" == Joshua Crowgey<jcrowgey at uw.edu>  writes:
> JC>  However, I was unable to implement the mapping (shown in the link to
> JC>  tulaliplushootseed.com) completely because the output of many of the
> JC>  upper case (shifted) keystrokes should be a series of unicode
> JC>  characters rather than a single one.  That is, I have to use
> JC>  combining diacritics.
> To do that without using an x input method you need to define symbols
> for the sequences, put those symbols into the xkb file and add mappings
> from those symbols to the character sequences into the Compose tables.
> An example can be seen in the Arabic Lam-Alef ligatures section of the
> en_US.UTF-8/Compose file.  (In that case the symbols happen to be
> unicode characters in their own right, but only because they were part
> of a legacy encoding for which unicode wanted to support 1:1 round trip
> conversions.  They were added to that legacy encoding to be used exactly
> for the purpose of facilitating keyboard entry of a character sequence.)
> You would need to be defined symbols in keysymdef.h for each string with
> integer values outside of the range specified for unicode/iso10646.
> The above is the how.  Whether it is reasonable policy, especially as
> compared to an xim is a question I'll leave for others.  In the xim
> case, ibus (as suggested in the other reply) and scim are good choices.
> -JimC

Thanks very much JimC,

I will certainly investigate the en_US.UTF-8/Compose file to see what 
you mean about the Arabic Lam-Alef ligature defined there.

One thing that your reply makes me wonder is if there is the possibility 
to define keysyms in my user directory rather than at the system level. 
  You know, something analogous to ~/.vim or ~/texmf/?
If so, that would be a very useful solution for me.

In any case, I'm working on my own computer for this project so I have 
root and can modify system files if it becomes necessary.

I'll try to find out more about scim and xim.  In theory, kmfl allows 
one to install tauvelsoft style keyboards as well.  I've got the source 
for a Lushootseed tauvelsoft keyboard and the kmfl-comp program compiles 
it just fine.  However, I haven't been able to make my debian testing 
distro recognize the keyboard (either on ibus or scim).  The 
instructions I've found were on SIL's website and they were discussing 
their own 'balsa' distro and mostly said 'click here' or 'click there' 
in a gui which isn't extant on my xfce4 desktop.

I should be playing with this again over the weekend.  I'll reply again 
as I get stuck.  Thanks again for the valuable advice and let me assure 
you that any follow up info is greatly appreciated.

Best regards,

More information about the xorg mailing list