Home | History | Annotate | Line # | Download | only in jolla_vndr
      1  1.1  snj // Instructions
      2  1.1  snj //
      3  1.1  snj // 1. Set basic layout by:
      4  1.1  snj //    setxkbmap -rules evdev -model jollasbj -layout cz
      5  1.1  snj //
      6  1.1  snj // 2. Set variant by:
      7  1.1  snj //    setxkbmap -rules evdev -model jollasbj -layout cz -variant qwerty
      8  1.1  snj //
      9  1.1  snj // 3. Set multilayout by:
     10  1.1  snj //    setxkbmap -rules evdev -model jollasbj -layout "us,cz" -variant ",qwerty" -option grp:ctrl_shift_toggle
     11  1.1  snj //    This sets the basic us layout active. You can switch to qwerty
     12  1.1  snj //    variant of cz layout by pressing ctrl+shift.
     13  1.1  snj //
     14  1.1  snj // Pitfalls
     15  1.1  snj //
     16  1.1  snj // 1. Many to one mappings
     17  1.1  snj //
     18  1.1  snj // Higher level input method components don't necessarily handle many to
     19  1.1  snj // one mappings correctly. They may assume that there exists only a one
     20  1.1  snj // to one mapping between a hardware key and a symbol. Therefore you
     21  1.1  snj // should take care not to introduce many to one mappings for keys that
     22  1.1  snj // are going to be reverse mapped from a symbol to a hardware key.
     23  1.1  snj //
     24  1.1  snj // Currently at least the modifier keys are affected. Clients may set
     25  1.1  snj // states, such as autorepeat, for hardware keys by reverse mapping a
     26  1.1  snj // modifier symbol to a hardware key and then setting the state for the
     27  1.1  snj // first hardware key that maps to the symbol. The correct way would be
     28  1.1  snj // to modify the state of all hardware keys mapping to a given symbol.
     29  1.1  snj //
     30  1.1  snj // We are nice and keep the mappings one to one for clients that don't
     31  1.1  snj // choose to handle many to one mappings.
     32  1.1  snj 
     33  1.1  snj 
     34  1.1  snj 
     35  1.1  snj default partial alphanumeric_keys
     36  1.1  snj xkb_symbols "common" {
     37  1.1  snj     include "pc(pc105)"
     38  1.1  snj     include "jolla_vndr/sbj(common-keys)"
     39  1.1  snj 
     40  1.1  snj     // This section should not be included by any other section. It's
     41  1.1  snj     // referenced only once by rule file to allow multiple layout
     42  1.1  snj     // configurations.
     43  1.1  snj };
     44  1.1  snj 
     45  1.1  snj partial hidden alphanumeric_keys
     46  1.1  snj xkb_symbols "common-keys" {
     47  1.1  snj 
     48  1.1  snj     // These keycodes are beyond the X11 255 limit value so it would
     49  1.1  snj     // only be valid for the use with SW which supports extended keycodes,
     50  1.1  snj     // like xkbcommon.
     51  1.1  snj 
     52  1.1  snj     // generated from the headset, must always be in the map.
     53  1.1  snj     key <I264>	{ [	XF86Phone							] };
     54  1.1  snj };
     55