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