1*2b949d04SAndroid Build Coastguard Workerdefault partial xkb_compatibility "misc" { 2*2b949d04SAndroid Build Coastguard Worker 3*2b949d04SAndroid Build Coastguard Worker virtual_modifiers Alt,Meta,Super,Hyper,ScrollLock; 4*2b949d04SAndroid Build Coastguard Worker 5*2b949d04SAndroid Build Coastguard Worker // Interpretations for some other useful keys. 6*2b949d04SAndroid Build Coastguard Worker 7*2b949d04SAndroid Build Coastguard Worker interpret Terminate_Server { 8*2b949d04SAndroid Build Coastguard Worker action = Terminate(); 9*2b949d04SAndroid Build Coastguard Worker }; 10*2b949d04SAndroid Build Coastguard Worker 11*2b949d04SAndroid Build Coastguard Worker setMods.clearLocks= True; 12*2b949d04SAndroid Build Coastguard Worker 13*2b949d04SAndroid Build Coastguard Worker // Sets the "Alt" virtual modifier. 14*2b949d04SAndroid Build Coastguard Worker 15*2b949d04SAndroid Build Coastguard Worker interpret Alt_L+Any { 16*2b949d04SAndroid Build Coastguard Worker //useModMapMods= level1; 17*2b949d04SAndroid Build Coastguard Worker virtualModifier= Alt; 18*2b949d04SAndroid Build Coastguard Worker action = SetMods(modifiers=modMapMods); 19*2b949d04SAndroid Build Coastguard Worker }; 20*2b949d04SAndroid Build Coastguard Worker 21*2b949d04SAndroid Build Coastguard Worker interpret Alt_L { 22*2b949d04SAndroid Build Coastguard Worker action = SetMods(modifiers=Alt); 23*2b949d04SAndroid Build Coastguard Worker }; 24*2b949d04SAndroid Build Coastguard Worker 25*2b949d04SAndroid Build Coastguard Worker interpret Alt_R+Any { 26*2b949d04SAndroid Build Coastguard Worker //useModMapMods= level1; 27*2b949d04SAndroid Build Coastguard Worker virtualModifier= Alt; 28*2b949d04SAndroid Build Coastguard Worker action = SetMods(modifiers=modMapMods); 29*2b949d04SAndroid Build Coastguard Worker }; 30*2b949d04SAndroid Build Coastguard Worker 31*2b949d04SAndroid Build Coastguard Worker interpret Alt_R { 32*2b949d04SAndroid Build Coastguard Worker action = SetMods(modifiers=Alt); 33*2b949d04SAndroid Build Coastguard Worker }; 34*2b949d04SAndroid Build Coastguard Worker 35*2b949d04SAndroid Build Coastguard Worker // Sets the "Meta" virtual modifier. 36*2b949d04SAndroid Build Coastguard Worker 37*2b949d04SAndroid Build Coastguard Worker interpret Meta_L+Any { 38*2b949d04SAndroid Build Coastguard Worker //useModMapMods= level1; 39*2b949d04SAndroid Build Coastguard Worker virtualModifier= Meta; 40*2b949d04SAndroid Build Coastguard Worker action = SetMods(modifiers=modMapMods); 41*2b949d04SAndroid Build Coastguard Worker }; 42*2b949d04SAndroid Build Coastguard Worker 43*2b949d04SAndroid Build Coastguard Worker interpret Meta_L { 44*2b949d04SAndroid Build Coastguard Worker action = SetMods(modifiers=Meta); 45*2b949d04SAndroid Build Coastguard Worker }; 46*2b949d04SAndroid Build Coastguard Worker 47*2b949d04SAndroid Build Coastguard Worker interpret Meta_R+Any { 48*2b949d04SAndroid Build Coastguard Worker //useModMapMods= level1; 49*2b949d04SAndroid Build Coastguard Worker virtualModifier= Meta; 50*2b949d04SAndroid Build Coastguard Worker action = SetMods(modifiers=modMapMods); 51*2b949d04SAndroid Build Coastguard Worker }; 52*2b949d04SAndroid Build Coastguard Worker 53*2b949d04SAndroid Build Coastguard Worker interpret Meta_R { 54*2b949d04SAndroid Build Coastguard Worker action = SetMods(modifiers=Meta); 55*2b949d04SAndroid Build Coastguard Worker }; 56*2b949d04SAndroid Build Coastguard Worker 57*2b949d04SAndroid Build Coastguard Worker // Sets the "Super" virtual modifier. 58*2b949d04SAndroid Build Coastguard Worker 59*2b949d04SAndroid Build Coastguard Worker interpret Super_L+Any { 60*2b949d04SAndroid Build Coastguard Worker //useModMapMods= level1; 61*2b949d04SAndroid Build Coastguard Worker virtualModifier= Super; 62*2b949d04SAndroid Build Coastguard Worker action = SetMods(modifiers=modMapMods); 63*2b949d04SAndroid Build Coastguard Worker }; 64*2b949d04SAndroid Build Coastguard Worker 65*2b949d04SAndroid Build Coastguard Worker interpret Super_L { 66*2b949d04SAndroid Build Coastguard Worker action = SetMods(modifiers=Super); 67*2b949d04SAndroid Build Coastguard Worker }; 68*2b949d04SAndroid Build Coastguard Worker 69*2b949d04SAndroid Build Coastguard Worker interpret Super_R+Any { 70*2b949d04SAndroid Build Coastguard Worker //useModMapMods= level1; 71*2b949d04SAndroid Build Coastguard Worker virtualModifier= Super; 72*2b949d04SAndroid Build Coastguard Worker action = SetMods(modifiers=modMapMods); 73*2b949d04SAndroid Build Coastguard Worker }; 74*2b949d04SAndroid Build Coastguard Worker 75*2b949d04SAndroid Build Coastguard Worker interpret Super_R { 76*2b949d04SAndroid Build Coastguard Worker action = SetMods(modifiers=Super); 77*2b949d04SAndroid Build Coastguard Worker }; 78*2b949d04SAndroid Build Coastguard Worker 79*2b949d04SAndroid Build Coastguard Worker // Sets the "Hyper" virtual modifier. 80*2b949d04SAndroid Build Coastguard Worker 81*2b949d04SAndroid Build Coastguard Worker interpret Hyper_L+Any { 82*2b949d04SAndroid Build Coastguard Worker //useModMapMods= level1; 83*2b949d04SAndroid Build Coastguard Worker virtualModifier= Hyper; 84*2b949d04SAndroid Build Coastguard Worker action = SetMods(modifiers=modMapMods); 85*2b949d04SAndroid Build Coastguard Worker }; 86*2b949d04SAndroid Build Coastguard Worker 87*2b949d04SAndroid Build Coastguard Worker interpret Hyper_L { 88*2b949d04SAndroid Build Coastguard Worker action = SetMods(modifiers=Hyper); 89*2b949d04SAndroid Build Coastguard Worker }; 90*2b949d04SAndroid Build Coastguard Worker 91*2b949d04SAndroid Build Coastguard Worker interpret Hyper_R+Any { 92*2b949d04SAndroid Build Coastguard Worker //useModMapMods= level1; 93*2b949d04SAndroid Build Coastguard Worker virtualModifier= Hyper; 94*2b949d04SAndroid Build Coastguard Worker action = SetMods(modifiers=modMapMods); 95*2b949d04SAndroid Build Coastguard Worker }; 96*2b949d04SAndroid Build Coastguard Worker 97*2b949d04SAndroid Build Coastguard Worker interpret Hyper_R { 98*2b949d04SAndroid Build Coastguard Worker action = SetMods(modifiers=Hyper); 99*2b949d04SAndroid Build Coastguard Worker }; 100*2b949d04SAndroid Build Coastguard Worker 101*2b949d04SAndroid Build Coastguard Worker // Sets the "ScrollLock" virtual modifier and 102*2b949d04SAndroid Build Coastguard Worker // makes it actually lock when pressed. Sets 103*2b949d04SAndroid Build Coastguard Worker // up a map for the scroll lock indicator. 104*2b949d04SAndroid Build Coastguard Worker interpret Scroll_Lock+Any { 105*2b949d04SAndroid Build Coastguard Worker virtualModifier= ScrollLock; 106*2b949d04SAndroid Build Coastguard Worker action = LockMods(modifiers=modMapMods); 107*2b949d04SAndroid Build Coastguard Worker }; 108*2b949d04SAndroid Build Coastguard Worker 109*2b949d04SAndroid Build Coastguard Worker include "ledscroll" 110*2b949d04SAndroid Build Coastguard Worker 111*2b949d04SAndroid Build Coastguard Worker include "misc(assign_shift_left_action)" 112*2b949d04SAndroid Build Coastguard Worker}; 113*2b949d04SAndroid Build Coastguard Worker 114*2b949d04SAndroid Build Coastguard Workerpartial xkb_compatibility "assign_shift_left_action" { 115*2b949d04SAndroid Build Coastguard Worker // Because of the irrevertable modifier mapping in symbols/pc, 116*2b949d04SAndroid Build Coastguard Worker // <LFSH> is getting bound to the Lock modifier when using 117*2b949d04SAndroid Build Coastguard Worker // symbols/shift(both_capslock), creating unwanted behaviour. 118*2b949d04SAndroid Build Coastguard Worker // This is a quirk, to circumvent the problem. 119*2b949d04SAndroid Build Coastguard Worker interpret Shift_L { 120*2b949d04SAndroid Build Coastguard Worker action = SetMods(modifiers = Shift); 121*2b949d04SAndroid Build Coastguard Worker }; 122*2b949d04SAndroid Build Coastguard Worker}; 123