41 |
======================== |
======================== |
42 |
The keymaps are line based. There are four different types of lines: |
The keymaps are line based. There are four different types of lines: |
43 |
|
|
44 |
1) include-lines |
1) include lines |
45 |
Syntax: |
Syntax: |
46 |
include <another-map-file> |
include <another-map-file> |
47 |
|
|
48 |
|
Example: |
49 |
|
include common |
50 |
|
|
51 |
2) map-lines |
|
52 |
|
2) map lines |
53 |
Syntax: |
Syntax: |
54 |
map <hex-number> |
map <hex-number> |
55 |
|
|
56 |
|
Example: |
57 |
|
map 0x41d |
58 |
|
|
59 |
Map-lines specifies how the remote RDP server should interpret the |
Map-lines specifies how the remote RDP server should interpret the |
60 |
sent scancodes. |
sent scancodes. |
61 |
|
|
62 |
|
|
63 |
3) Translation-lines |
3) Translation lines |
64 |
Syntax: |
Syntax: |
65 |
<keysym-name> <scancode> [flags..] |
<keysym-name> <scancode> [flags..] |
66 |
|
|
67 |
|
Example: |
68 |
|
onehalf 0x29 shift |
69 |
|
|
70 |
The scancode can be found in scancodes.h. Note: The scancode value for |
The scancode can be found in scancodes.h. Note: The scancode value for |
71 |
extended keys can be calculated by OR:ing with 0x80. Example: The |
extended keys can be calculated by OR:ing with 0x80. Example: The |
72 |
Delete key have the scancode sequence 0xe0, 0x52. You can get the |
Delete key have the scancode sequence 0xe0, 0x52. You can get the |
74 |
|
|
75 |
python -c "print hex(0x80 | 0x52)" |
python -c "print hex(0x80 | 0x52)" |
76 |
|
|
77 |
If flags are "altgr", "shift", the scancode sent for this |
If flags are "altgr", "shift", the scancode sent for this keysym will |
78 |
keysym will be prefix with AltGr, or Shift. |
be prefixed with AltGr, or Shift. |
79 |
|
|
80 |
If flags include "addupper", an translation for this keysyms uppercase |
If flags includes "addupper", a translation for this keysyms uppercase |
81 |
name will as well, in addition to the non-uppercase name. Example: |
name will be added as well, in addition to the non-uppercase |
82 |
|
name. Example: |
83 |
|
|
84 |
x 2d addupper |
x 2d addupper |
85 |
|
|
103 |
keys will not be sent to the remote side. |
keys will not be sent to the remote side. |
104 |
|
|
105 |
|
|
106 |
|
5) sequence lines |
107 |
|
Syntax: |
108 |
|
sequence <event-keysym-name> <keysym-name1> <keysym-name2> ... |
109 |
|
|
110 |
|
Examples: |
111 |
|
sequence eacute dead_acute e |
112 |
|
sequence F12 f o o at e x a m p l e period c o m |
113 |
|
|
114 |
|
Sequence lines allows you to specify that multiple scancodes should be |
115 |
|
sent to the RDP server, in response to one X11 keyboard event. Note: |
116 |
|
The sequence is sent at the X11 KeyPress event. Nothing is sent at |
117 |
|
KeyRelease. |
118 |
|
|
119 |
|
|
120 |
Suggested X11 keysym mapping on PCs |
Suggested X11 keysym mapping on PCs |
121 |
=================================== |
=================================== |
122 |
Unfortunately, there is no standard for which keysyms a given key |
Unfortunately, there is no standard for which keysyms a given key |