📄 keymapping.txt
字号:
Keyboard mapping================This release of rdesktop uses a new, portable keyboard mappingimplementation. It should hopefully work on all X11 systems. This newimplementation only looks at X11 keysyms: Not on (nonportable)keycodes or modifier status. This means that rdesktop will obey yourlocal keyboard configuration. For example, if you have swappedCapsLock and Control, rdesktop will use this mapping. XKB is currently not used. It seems like a good idea to me, but sincesome X servers (like Xvnc) does not support XKB, we still need to usethe plain old interface as well, at least. There are still some small problems.* CapsLock: CapsLock changes are never sent to the RDP server. rdesktop does not know which keys that are modified by CapsLock and which are not. So, the CapsLock indicator in Wordpad etc will always be off.Composing/Multi_key is supported. For more information, see: MIT: $SRC/xc/nls/X11/locale/Compose/iso8859-1 XFree86: /usr/X11R6/lib/X11/locale/*/Compose Solaris' Openwin: /usr/openwin/include/X11/Suncompose.h /usr/openwin/lib/locale/*/Compose Irix6: compose(5)Keymap files============The names of the keymaps follows RFC1766. (You can find a translation from Windows keyboard layout numbers tokeymap names by looking atHKEY_LOCAL_MACHINE\SOFTWARE\Classes\MIME\Database\RFC1766 in theregistry.)Contents of keymap files========================The keymaps are line based. There are four different types of lines:1) include-linesSyntax:include <another-map-file>2) map-linesSyntax:map <hex-number>Map-lines specifies how the remote RDP server should interpret thesent scancodes. 3) Translation-linesSyntax:<keysym-name> <scancode> [flags..]The scancode can be found in scancodes.h. Note: The scancode value forextended keys can be calculated by OR:ing with 0x80. Example: TheDelete key have the scancode sequence 0xe0, 0x52. You can get thescancode value to put into the map file by running:python -c "print hex(0x80 | 0x52)"If flags are "altgr", "shift", the scancode sent for thiskeysym will be prefix with AltGr, or Shift. If flags include "addupper", an translation for this keysyms uppercasename will as well, in addition to the non-uppercase name. Example:x 2d addupper...will add an translation for "X" automatically, just like if youwould specify:X 2d shiftIf flags include "localstate", the modifier to send will be determinedby the local modifier state. If flags is "inhibit", nothing will be sent to the server. 4) enable_composeIf any line starts with the keyword "enable_compose", rdesktop willenable local Compose/Multi_key handling. Enabling this will often makeit impossible to compose characters with dead keys (on the remoteside). This is because when local compose support is enabled, deadkeys will not be sent to the remote side. Suggested X11 keysym mapping on PCs===================================Unfortunately, there is no standard for which keysyms a given keyshould generate. If you have a PC-keyboard with Windows keys, I suggest this mapping:Keyboard keys:CtrlLeft WinLeft AltLeft Space AltGr WinRight Menu CtrlRight...should generate keysyms:Control_L Super_L Alt_L space Mode_switch Super_R Menu Control_RAdditionally:Shift-Alt should produce Meta_LShift-AltGr should produce Multi_Key. Use a modifier-map like this:shift Shift_L (0x32), Shift_R (0x3e)lock Caps_Lock (0x25)control Control_L (0x42), Control_R (0x6d)mod1 Alt_L (0x40)mod2 Num_Lock (0x4d)mod3 Mode_switch (0x71)mod4 Super_L (0x73), Super_R (0x74)mod5 Scroll_Lock (0x4e)Updating / writing keymap files===============================When writing new or updating keymap files, please use comments andblanks, to increase readability. The "sv" keymap is a good template. When you need to add a translation to a keymap file, do: 1. Get the "key number" for this key, by looking at keynums.png. 2. Take a look at scancodes.h, and look for SCANCODE_KEY_<my-key-number>. The scancode value is at the end of the line. If the line contains (SCANCODE_EXTENDED | 0xsomething), then you should OR 0x80 to this value. For example, you can do: python -c "print hex(0x80 | 0xsomething)" 3. Put the scancode (from step 2) and keysym name (found in the error message) into the keymap file. Special keys============* The combination Ctrl-Alt-Enter toggles between fullscreen and non-fullscreen mode. * Meta, Hyper and Super are treated as windows keys. RDP4 does not support the windows keys though, so if you are running RDP4, these keys will translate to Ctrl-Esc. Links=====http://www.win.tue.nl/~aeb/linux/kbd/scancodes.html
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -