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