sbj revision 188967be
1188967beSsnj// Instructions 2188967beSsnj// 3188967beSsnj// 1. Set basic layout by: 4188967beSsnj// setxkbmap -rules evdev -model jollasbj -layout cz 5188967beSsnj// 6188967beSsnj// 2. Set variant by: 7188967beSsnj// setxkbmap -rules evdev -model jollasbj -layout cz -variant qwerty 8188967beSsnj// In practice this is equivalent to: 9188967beSsnj// setxkbmap -rules evdev -model jollasbj -layout cz_qwerty 10188967beSsnj// However, the latter form isn't portable so always use the -variant option. 11188967beSsnj// 12188967beSsnj// 3. Set multilayout by: 13188967beSsnj// setxkbmap -rules evdev -model jollasbj -layout "us,cz" -variant ",qwerty" -option grp:ctrl_shift_toggle 14188967beSsnj// This sets the basic us layout active. You can switch to qwerty 15188967beSsnj// variant of cz layout by pressing ctrl+shift. 16188967beSsnj// 17188967beSsnj// Pitfalls 18188967beSsnj// 19188967beSsnj// 1. Many to one mappings 20188967beSsnj// 21188967beSsnj// Higher level input method components don't necessarily handle many to 22188967beSsnj// one mappings correctly. They may assume that there exists only a one 23188967beSsnj// to one mapping between a hardware key and a symbol. Therefore you 24188967beSsnj// should take care not to introduce many to one mappings for keys that 25188967beSsnj// are going to be reverse mapped from a symbol to a hardware key. 26188967beSsnj// 27188967beSsnj// Currently at least the modifier keys are affected. Clients may set 28188967beSsnj// states, such as autorepeat, for hardware keys by reverse mapping a 29188967beSsnj// modifier symbol to a hardware key and then setting the state for the 30188967beSsnj// first hardware key that maps to the symbol. The correct way would be 31188967beSsnj// to modify the state of all hardware keys mapping to a given symbol. 32188967beSsnj// 33188967beSsnj// We are nice and keep the mappings one to one for clients that don't 34188967beSsnj// choose to handle many to one mappings. 35188967beSsnj 36188967beSsnj 37188967beSsnj 38188967beSsnjdefault partial alphanumeric_keys 39188967beSsnjxkb_symbols "common" { 40188967beSsnj include "pc(pc105)" 41188967beSsnj include "jolla_vndr/sbj(common-keys)" 42188967beSsnj 43188967beSsnj // This section should not be included by any other section. It's 44188967beSsnj // referenced only once by rule file to allow multiple layout 45188967beSsnj // configurations. 46188967beSsnj}; 47188967beSsnj 48188967beSsnjpartial hidden alphanumeric_keys 49188967beSsnjxkb_symbols "common-keys" { 50188967beSsnj 51188967beSsnj // These keycodes are beyond the X11 255 limit value so it would 52188967beSsnj // only be valid for the use with SW which supports extended keycodes, 53188967beSsnj // like xkbcommon. 54188967beSsnj 55188967beSsnj // generated from the headset, must always be in the map. 56188967beSsnj key <I264> { [ XF86Phone ] }; 57188967beSsnj}; 58