Restore non-mobile keyboard layout (function keys, arrow keys, esc, etc.)
[guacamole.git] / src / main / webapp / layouts / en-us-qwerty.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2
3 <!DOCTYPE keyboard PUBLIC
4     "-//Guacamole/Guacamole Onscreen Keyboard DTD 0.6.0//EN"
5     "http://guac-dev.org/pub/dtd/guacamole-osk-0.6.0.dtd">
6
7 <!--
8     Guacamole - Clientless Remote Desktop
9     Copyright (C) 2010  Michael Jumper
10
11     This program is free software: you can redistribute it and/or modify
12     it under the terms of the GNU Affero General Public License as published by
13     the Free Software Foundation, either version 3 of the License, or
14     (at your option) any later version.
15
16     This program is distributed in the hope that it will be useful,
17     but WITHOUT ANY WARRANTY; without even the implied warranty of
18     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19     GNU Affero General Public License for more details.
20
21     You should have received a copy of the GNU Affero General Public License
22     along with this program.  If not, see <http://www.gnu.org/licenses/>.
23 -->
24
25 <keyboard lang="en_US" layout="qwerty" size="22">
26     <row>
27         <key>
28             <cap keysym="0xFF1B">Esc</cap>
29         </key>
30         <gap size="0.8"/>
31         <key>
32             <cap keysym="0xFFBE">F1</cap>
33         </key>
34         <gap size="0.1"/>
35         <key>
36             <cap keysym="0xFFBF">F2</cap>
37         </key>
38         <gap size="0.1"/>
39         <key>
40             <cap keysym="0xFFC0">F3</cap>
41         </key>
42         <gap size="0.1"/>
43         <key>
44             <cap keysym="0xFFC1">F4</cap>
45         </key>
46         <gap size="0.8"/>
47         <key>
48             <cap keysym="0xFFC2">F5</cap>
49         </key>
50         <gap size="0.1"/>
51         <key>
52             <cap keysym="0xFFC3">F6</cap>
53         </key>
54         <gap size="0.1"/>
55         <key>
56             <cap keysym="0xFFC4">F7</cap>
57         </key>
58         <gap size="0.1"/>
59         <key>
60             <cap keysym="0xFFC5">F8</cap>
61         </key>
62         <gap size="0.8"/>
63         <key>
64             <cap keysym="0xFFC6">F9</cap>
65         </key>
66         <gap size="0.1"/>
67         <key>
68             <cap keysym="0xFFC7">F10</cap>
69         </key>
70         <gap size="0.1"/>
71         <key>
72             <cap keysym="0xFFC8">F11</cap>
73         </key>
74         <gap size="0.1"/>
75         <key>
76             <cap keysym="0xFFC9">F12</cap>
77         </key>
78     </row>
79     <row>
80         <gap size="0.25"/>
81     </row>
82     <column>
83         <row>
84             <key>
85                 <cap>`</cap>
86                 <cap if="shift">~</cap>
87             </key>
88             <gap size="0.1"/>
89             <key>
90                 <cap>1</cap>
91                 <cap if="shift">!</cap>
92             </key>
93             <gap size="0.1"/>
94             <key>
95                 <cap>2</cap>
96                 <cap if="shift">@</cap>
97             </key>
98             <gap size="0.1"/>
99             <key>
100                 <cap>3</cap>
101                 <cap if="shift">#</cap>
102             </key>
103             <gap size="0.1"/>
104             <key>
105                 <cap>4</cap>
106                 <cap if="shift">$</cap>
107             </key>
108             <gap size="0.1"/>
109             <key>
110                 <cap>5</cap>
111                 <cap if="shift">%</cap>
112             </key>
113             <gap size="0.1"/>
114             <key>
115                 <cap>6</cap>
116                 <cap if="shift">^</cap>
117             </key>
118             <gap size="0.1"/>
119             <key>
120                 <cap>7</cap>
121                 <cap if="shift">&amp;</cap>
122             </key>
123             <gap size="0.1"/>
124             <key>
125                 <cap>8</cap>
126                 <cap if="shift">*</cap>
127             </key>
128             <gap size="0.1"/>
129             <key>
130                 <cap>9</cap>
131                 <cap if="shift">(</cap>
132             </key>
133             <gap size="0.1"/>
134             <key>
135                 <cap>0</cap>
136                 <cap if="shift">)</cap>
137             </key>
138             <gap size="0.1"/>
139             <key>
140                 <cap>-</cap>
141                 <cap if="shift">_</cap>
142             </key>
143             <gap size="0.1"/>
144             <key>
145                 <cap>=</cap>
146                 <cap if="shift">+</cap>
147             </key>
148             <gap size="0.1"/>
149             <key size="2">
150                 <cap keysym="0xFF08">Back</cap>
151             </key>
152         </row>
153
154         <row><gap size="0.1"/></row>
155
156         <row>
157             <key size="1.5">
158                 <cap keysym="0xFF09">Tab</cap>
159             </key>
160             <gap size="0.1"/>
161             <key>
162                 <cap>q</cap>
163                 <cap if="caps">Q</cap>
164                 <cap if="shift">Q</cap>
165                 <cap if="caps,shift">q</cap>
166             </key>
167             <gap size="0.1"/>
168             <key>
169                 <cap>w</cap>
170                 <cap if="caps">W</cap>
171                 <cap if="shift">W</cap>
172                 <cap if="caps,shift">w</cap>
173             </key>
174             <gap size="0.1"/>
175             <key>
176                 <cap>e</cap>
177                 <cap if="caps">E</cap>
178                 <cap if="shift">E</cap>
179                 <cap if="caps,shift">e</cap>
180             </key>
181             <gap size="0.1"/>
182             <key>
183                 <cap>r</cap>
184                 <cap if="caps">R</cap>
185                 <cap if="shift">R</cap>
186                 <cap if="caps,shift">r</cap>
187             </key>
188             <gap size="0.1"/>
189             <key>
190                 <cap>t</cap>
191                 <cap if="caps">T</cap>
192                 <cap if="shift">T</cap>
193                 <cap if="caps,shift">t</cap>
194             </key>
195             <gap size="0.1"/>
196             <key>
197                 <cap>y</cap>
198                 <cap if="caps">Y</cap>
199                 <cap if="shift">Y</cap>
200                 <cap if="caps,shift">y</cap>
201             </key>
202             <gap size="0.1"/>
203             <key>
204                 <cap>u</cap>
205                 <cap if="caps">U</cap>
206                 <cap if="shift">U</cap>
207                 <cap if="caps,shift">u</cap>
208             </key>
209             <gap size="0.1"/>
210             <key>
211                 <cap>i</cap>
212                 <cap if="caps">I</cap>
213                 <cap if="shift">I</cap>
214                 <cap if="caps,shift">i</cap>
215             </key>
216             <gap size="0.1"/>
217             <key>
218                 <cap>o</cap>
219                 <cap if="caps">O</cap>
220                 <cap if="shift">O</cap>
221                 <cap if="caps,shift">o</cap>
222             </key>
223             <gap size="0.1"/>
224             <key>
225                 <cap>p</cap>
226                 <cap if="caps">P</cap>
227                 <cap if="shift">P</cap>
228                 <cap if="caps,shift">p</cap>
229             </key>
230             <gap size="0.1"/>
231             <key>
232                 <cap>[</cap>
233                 <cap if="shift">{</cap>
234             </key>
235             <gap size="0.1"/>
236             <key>
237                 <cap>]</cap>
238                 <cap if="shift">}</cap>
239             </key>
240             <gap size="0.1"/>
241             <key size="1.5">
242                 <cap>\</cap>
243                 <cap if="shift">|</cap>
244             </key>
245         </row>
246
247         <row><gap size="0.1"/></row>
248
249         <row>
250             <key size="1.85">
251                 <cap modifier="caps" keysym="0xFFE5" sticky="true">Caps</cap>
252             </key>
253             <gap size="0.1"/>
254             <key>
255                 <cap>a</cap>
256                 <cap if="caps">A</cap>
257                 <cap if="shift">A</cap>
258                 <cap if="caps,shift">a</cap>
259             </key>
260             <gap size="0.1"/>
261             <key>
262                 <cap>s</cap>
263                 <cap if="caps">S</cap>
264                 <cap if="shift">S</cap>
265                 <cap if="caps,shift">s</cap>
266             </key>
267             <gap size="0.1"/>
268             <key>
269                 <cap>d</cap>
270                 <cap if="caps">D</cap>
271                 <cap if="shift">D</cap>
272                 <cap if="caps,shift">d</cap>
273             </key>
274             <gap size="0.1"/>
275             <key>
276                 <cap>f</cap>
277                 <cap if="caps">F</cap>
278                 <cap if="shift">F</cap>
279                 <cap if="caps,shift">f</cap>
280             </key>
281             <gap size="0.1"/>
282             <key>
283                 <cap>g</cap>
284                 <cap if="caps">G</cap>
285                 <cap if="shift">G</cap>
286                 <cap if="caps,shift">g</cap>
287             </key>
288             <gap size="0.1"/>
289             <key>
290                 <cap>h</cap>
291                 <cap if="caps">H</cap>
292                 <cap if="shift">H</cap>
293                 <cap if="caps,shift">h</cap>
294             </key>
295             <gap size="0.1"/>
296             <key>
297                 <cap>j</cap>
298                 <cap if="caps">J</cap>
299                 <cap if="shift">J</cap>
300                 <cap if="caps,shift">j</cap>
301             </key>
302             <gap size="0.1"/>
303             <key>
304                 <cap>k</cap>
305                 <cap if="caps">K</cap>
306                 <cap if="shift">K</cap>
307                 <cap if="caps,shift">k</cap>
308             </key>
309             <gap size="0.1"/>
310             <key>
311                 <cap>l</cap>
312                 <cap if="caps">L</cap>
313                 <cap if="shift">L</cap>
314                 <cap if="caps,shift">l</cap>
315             </key>
316             <gap size="0.1"/>
317             <key>
318                 <cap>;</cap>
319                 <cap if="shift">:</cap>
320             </key>
321             <gap size="0.1"/>
322             <key>
323                 <cap>'</cap>
324                 <cap if="shift">"</cap>
325             </key>
326             <gap size="0.1"/>
327             <key size="2.25">
328                 <cap keysym="0xFF0D">Enter</cap>
329             </key>
330         </row>
331
332         <row><gap size="0.1"/></row>
333
334         <row>
335             <key size="2.1" class="shift">
336                 <cap modifier="shift" keysym="0xFFE1">Shift</cap>
337             </key>
338             <gap size="0.1"/>
339             <key>
340                 <cap>z</cap>
341                 <cap if="caps">Z</cap>
342                 <cap if="shift">Z</cap>
343                 <cap if="caps,shift">z</cap>
344             </key>
345             <gap size="0.1"/>
346             <key>
347                 <cap>x</cap>
348                 <cap if="caps">X</cap>
349                 <cap if="shift">X</cap>
350                 <cap if="caps,shift">x</cap>
351             </key>
352             <gap size="0.1"/>
353             <key>
354                 <cap>c</cap>
355                 <cap if="caps">C</cap>
356                 <cap if="shift">C</cap>
357                 <cap if="caps,shift">c</cap>
358             </key>
359             <gap size="0.1"/>
360             <key>
361                 <cap>v</cap>
362                 <cap if="caps">V</cap>
363                 <cap if="shift">V</cap>
364                 <cap if="caps,shift">v</cap>
365             </key>
366             <gap size="0.1"/>
367             <key>
368                 <cap>b</cap>
369                 <cap if="caps">B</cap>
370                 <cap if="shift">B</cap>
371                 <cap if="caps,shift">b</cap>
372             </key>
373             <gap size="0.1"/>
374             <key>
375                 <cap>n</cap>
376                 <cap if="caps">N</cap>
377                 <cap if="shift">N</cap>
378                 <cap if="caps,shift">n</cap>
379             </key>
380             <gap size="0.1"/>
381             <key>
382                 <cap>m</cap>
383                 <cap if="caps">M</cap>
384                 <cap if="shift">M</cap>
385                 <cap if="caps,shift">m</cap>
386             </key>
387             <gap size="0.1"/>
388             <key>
389                 <cap>,</cap>
390                 <cap if="shift">&lt;</cap>
391             </key>
392             <gap size="0.1"/>
393             <key>
394                 <cap>.</cap>
395                 <cap if="shift">&gt;</cap>
396             </key>
397             <gap size="0.1"/>
398             <key>
399                 <cap>/</cap>
400                 <cap if="shift">?</cap>
401             </key>
402             <gap size="0.1"/>
403             <key size="3.1" class="shift">
404                 <cap modifier="shift" keysym="0xFFE2">Shift</cap>
405             </key>
406         </row>
407
408         <row><gap size="0.1"/></row>
409
410         <row>
411             <key size="1.6">
412                 <cap modifier="control" keysym="0xFFE3">Ctrl</cap>
413             </key>
414             <gap size="0.1"/>
415             <key size="1.6">
416                 <cap modifier="super" keysym="0xFFEB">Super</cap>
417             </key>
418             <gap size="0.1"/>
419             <key size="1.6">
420                 <cap modifier="alt" keysym="0xFFE9">Alt</cap>
421             </key>
422             <gap size="0.1"/>
423             <key size="6.1">
424                 <cap> </cap>
425             </key>
426             <gap size="0.1"/>
427             <key size="1.6">
428                 <cap modifier="alt" keysym="0xFFE3">Alt</cap>
429             </key>
430             <gap size="0.1"/>
431             <key size="1.6">
432                 <cap modifier="super" keysym="0xFF67">Menu</cap>
433             </key>
434             <gap size="0.1"/>
435             <key size="1.6">
436                 <cap modifier="control" keysym="0xFFE4">Ctrl</cap>
437             </key>
438         </row>
439     </column>
440         <column>
441         <row>
442             <gap size="0.25"/>
443         </row>
444     </column>
445     <column align="center">
446         <row>
447             <key size="1.75">
448                 <cap keysym="0xFF63">Ins</cap>
449             </key>
450             <gap size="0.1"/>
451             <key size="1.75">
452                 <cap keysym="0xFF50">Home</cap>
453             </key>
454             <gap size="0.1"/>
455             <key size="1.75">
456                 <cap keysym="0xFF55">PgUp</cap>
457             </key>
458         </row>
459         <row><gap size="0.1"/></row>
460         <row>
461             <key size="1.75">
462                 <cap keysym="0xFFFF">Del</cap>
463             </key>
464             <gap size="0.1"/>
465             <key size="1.75">
466                 <cap keysym="0xFF57">End</cap>
467             </key>
468             <gap size="0.1"/>
469             <key size="1.75">
470                 <cap keysym="0xFF56">PgDn</cap>
471             </key>
472         </row>
473         <row>
474             <gap/>
475         </row>
476         <row>
477             <key>
478                 <cap keysym="0xFF52">&#x2191;</cap>
479             </key>
480         </row>
481         <row><gap size="0.1"/></row>
482         <row>
483             <key>
484                 <cap keysym="0xFF51">&#x2190;</cap>
485             </key>
486             <gap size="0.1"/>
487             <key>
488                 <cap keysym="0xFF54">&#x2193;</cap>
489             </key>
490             <gap size="0.1"/>
491             <key>
492                 <cap keysym="0xFF53">&#x2192;</cap>
493             </key>
494         </row>
495     </column>
496 </keyboard>