mousekeys revision 154daed1
1 2// $Xorg: mousekeys,v 1.3 2000/08/17 19:54:34 cpqbld Exp $ 3 4// Interpretations for arrow keys and a bunch of other 5// common keysyms which make it possible to bind "mouse" 6// keys using xmodmap and activate or deactivate them 7// from the keyboard. 8 9default partial xkb_compatibility "mousekeys" { 10 11 // Keypad actions. 12 // 13 interpret.repeat= True; 14 15 interpret KP_1 { 16 action = MovePtr(x=-1,y= +1); 17 }; 18 interpret KP_End { 19 action = MovePtr(x=-1,y= +1); 20 }; 21 22 interpret KP_2 { 23 action = MovePtr(x=+0,y= +1); 24 }; 25 interpret KP_Down { 26 action = MovePtr(x=+0,y= +1); 27 }; 28 29 interpret KP_3 { 30 action = MovePtr(x=+1,y=+1); 31 }; 32 interpret KP_Next { 33 action = MovePtr(x=+1,y=+1); 34 }; 35 36 interpret KP_4 { 37 action = MovePtr(x=-1,y=+0); 38 }; 39 interpret KP_Left { 40 action = MovePtr(x=-1,y=+0); 41 }; 42 43 interpret KP_6 { 44 action = MovePtr(x=+1,y=+0); 45 }; 46 interpret KP_Right { 47 action = MovePtr(x=+1,y=+0); 48 }; 49 50 interpret KP_7 { 51 action = MovePtr(x=-1,y=-1); 52 }; 53 interpret KP_Home { 54 action = MovePtr(x=-1,y=-1); 55 }; 56 57 interpret KP_8 { 58 action = MovePtr(x=+0,y=-1); 59 }; 60 interpret KP_Up { 61 action = MovePtr(x=+0,y=-1); 62 }; 63 64 interpret KP_9 { 65 action = MovePtr(x=+1,y=-1); 66 }; 67 interpret KP_Prior { 68 action = MovePtr(x=+1,y=-1); 69 }; 70 71 interpret KP_5 { 72 action = PointerButton(button=default); 73 }; 74 interpret KP_Begin { 75 action = PointerButton(button=default); 76 }; 77 78 interpret KP_F2 { 79 action = SetPtrDflt(affect=defaultButton,button=1); 80 }; 81 interpret KP_Divide { 82 action = SetPtrDflt(affect=defaultButton,button=1); 83 }; 84 85 interpret KP_F3 { 86 action = SetPtrDflt(affect=defaultButton,button=2); 87 }; 88 interpret KP_Multiply { 89 action = SetPtrDflt(affect=defaultButton,button=2); 90 }; 91 92 interpret KP_F4 { 93 action = SetPtrDflt(affect=defaultButton,button=3); 94 }; 95 interpret KP_Subtract { 96 action = SetPtrDflt(affect=defaultButton,button=3); 97 }; 98 99 interpret KP_Separator { 100 action = PointerButton(button=default,count=2); 101 }; 102 interpret KP_Add { 103 action = PointerButton(button=default,count=2); 104 }; 105 106 interpret KP_0 { 107 action = LockPointerButton(button=default,affect=lock); 108 }; 109 interpret KP_Insert { 110 action = LockPointerButton(button=default,affect=lock); 111 }; 112 113 interpret KP_Decimal { 114 action = LockPointerButton(button=default,affect=unlock); 115 }; 116 interpret KP_Delete { 117 action = LockPointerButton(button=default,affect=unlock); 118 }; 119 120 // Additional mappings for Solaris keypad compatibility 121 interpret F25 { // aka KP_Divide 122 action = SetPtrDflt(affect=defaultButton,button=1); 123 }; 124 interpret F26 { // aka KP_Multiply 125 action = SetPtrDflt(affect=defaultButton,button=2); 126 }; 127 interpret F27 { // aka KP_Home 128 action = MovePtr(x=-1,y=-1); 129 }; 130 interpret F29 { // aka KP_Prior 131 action = MovePtr(x=+1,y=-1); 132 }; 133 interpret F31 { // aka KP_Begin 134 action = PointerButton(button=default); 135 }; 136 interpret F33 { // aka KP_End 137 action = MovePtr(x=-1,y= +1); 138 }; 139 interpret F35 { // aka KP_Next 140 action = MovePtr(x=+1,y=+1); 141 }; 142 143 interpret.repeat= False; 144 145 146 // New Keysym Actions. 147 // 148 interpret Pointer_Button_Dflt { 149 action= PointerButton(button=default); 150 }; 151 interpret Pointer_Button1 { 152 action= PointerButton(button=1); 153 }; 154 interpret Pointer_Button2 { 155 action= PointerButton(button=2); 156 }; 157 interpret Pointer_Button3 { 158 action= PointerButton(button=3); 159 }; 160 interpret Pointer_DblClick_Dflt { 161 action= PointerButton(button=default,count=2); 162 }; 163 interpret Pointer_DblClick1 { 164 action= PointerButton(button=1,count=2); 165 }; 166 interpret Pointer_DblClick2 { 167 action= PointerButton(button=2,count=2); 168 }; 169 interpret Pointer_DblClick3 { 170 action= PointerButton(button=3,count=2); 171 }; 172 interpret Pointer_Drag_Dflt { 173 action= LockPointerButton(button=default); 174 }; 175 interpret Pointer_Drag1 { 176 action= LockPointerButton(button=1); 177 }; 178 interpret Pointer_Drag2 { 179 action= LockPointerButton(button=2); 180 }; 181 interpret Pointer_Drag3 { 182 action= LockPointerButton(button=3); 183 }; 184 185 interpret Pointer_EnableKeys { 186 action= LockControls(controls=MouseKeys); 187 }; 188 interpret Pointer_Accelerate { 189 action= LockControls(controls=MouseKeysAccel); 190 }; 191 interpret Pointer_DfltBtnNext { 192 action= SetPtrDflt(affect=defaultButton,button= +1); 193 }; 194 interpret Pointer_DfltBtnPrev { 195 action= SetPtrDflt(affect=defaultButton,button= -1); 196 }; 197 198 199 // Allow an indicator for MouseKeys. 200 indicator "Mouse Keys" { 201// !allowExplicit; 202 indicatorDrivesKeyboard; 203 controls= MouseKeys; 204 }; 205}; 206