Xavier Cremaschi wrote: > Hi all, > > I am currently looking at keyboards layout in > /usr/lib/enlightenment/modules/illume/keyboards/ > > The syntax seems simple : > key x y w h > normal ' apostrophe > shift " quotedbl > capslock ' apostrophe > > But I cannot find any doc/blog/thread/keyboard with "composing features" > in it. > There is composition for ` ' ^ " ~ as well as some others. This is achieved via "dead keys", press the ^ key first (nothing happens) then press o, and you get an ô. similiar for all the others. (`'^"~) If you want a ^ sign without a vowel under it, press the ^ followed by space.
Example of such a key: key 375 30 30 30 normal " dead_diaeresis shift ^ dead_circumflex capslock ~ dead_tilde For a complete example, take a look at: http://www.aitel.hist.no/~helgehaf/openmoko/ Here you find a Norwegian keyboard, with these 5 dead keys: ^"~`' You can download a package, or just the Norwegian.kbd file. Feel free to use it as a starting point for other languages. > I need to put "few" big keys (for fingers, not stylus). If you need a bigger key, use the "w" and "h" you mention above. Look at the Terminal keyboard. The spacebar is wider because it has a bigger "w" setting. > I also need to write in French or Spanish so I need to easily write any > combination of aeiou (respectively AEIOU) and ´`^¨ (and also Ñ ñ Ç ç...) > The Norwegian keyboard provides examples for Ñ and ñ. I think you need to use dead_cedilla to get Ç and ç, unless you want to create a key just for the ç. To find _all_ the symbols, special keys and dead keys possible, try strings /usr/lib/libX11.so.6 | less There will be lots of uninteresting output too, look for stuff that look like key names. Or pipe it all to a file, and search the file later. Perhaps there are other ways of composing as well. The dead key approach is easy to learn though. > On my computers I usually use QWERTY keyboard with "US International", > which gives powerful composing possibilities to the user, see : > http://www.cs.umu.se/~hegner/Misc/Windowskb/windows0x.png > > Therefore I would like to create this kind of key : > key x y w h > normal e "e" > shift E "E" > diacritic1 é "é" > diacritic2 è "è" > diacritic3 ê "ê" > shift+diacritic1 É "É" > shift+diacritic2 È "È" > shift+diacritic3 Ê "Ê" > etc You don't need to change anything for the "e" key to get this. If you add dead keys for `'^, then you will get èéê automatically, and the same for all other vowels as well. > > I would like : > - to have 3 or 4 toggles that would modify the key layout and behaviour > (like the weel-known shift key that e->E or E->e) So far I only found three shift states that can be specified freely: * normal (no shift) * shift * caps It'd be interesting to know if there are more, then I could have the euro sign in its proper place instead of a capslock kludge. > - or to have one super "shift" key with multiple states, which would > cycle between 4 or 5 states, for example normal_keyboard, ´_keyboard, > `_keyboard, ^_keyboard Dead keys gives you `_keyboard, '_keyboard, "_keyboard, ^_keyboard, ~_keyboard, cedille_keyboard and quite a few others. :-) libX11.so seems to have provisions for 20 different dead keys. An extra shiftstate could be interesting to get symbols that aren't merely modifications of ascii letters. Dead keys handle the rest. I haven't figured out more shiftstates though. On the other hand, there is always the option of having one or more "symbol" keyboards with really special stuff. Helge Hafting _______________________________________________ Openmoko community mailing list community@lists.openmoko.org http://lists.openmoko.org/mailman/listinfo/community