键盘支持
此页面介绍硬件、配置和功能。 使用教程 也已提供。
摘要
Oberon 使用连接到 6 针 DIN 连接器的 PS/2 式键盘,或连接到 4 针 USB 连接器的键盘。 在需要时,数字键盘可以接管 鼠标 的功能。
如何安装键盘驱动程序
新安装的 Oberon 系统设置为使用 PS/2 式,101 键键盘,美国布局。
目前,支持 11 种其他键盘布局:比利时、加拿大、瑞士德语、德语、德沃夏克、法语、挪威语、波兰语、芬兰语、土耳其语、英国英语。
除了美国键盘外,每个键盘都由一个键盘映射文件定义,并且可以通过执行 System.Directory Key*.Bin\d ~
列出所有这些文件。
可以使用以下方式安装其他键盘布局的键盘驱动程序
- 在启动时,设置 配置字符串 Keyboard = mapfilename
- 或执行以下命令,该命令可以在 Oberon.Text 的“系统”部分进行编辑。
ConfigInput.Keyboard [ mapfilename | ^ ]
- 设置键盘驱动程序,使其与具有指定布局的键盘一起使用。 可以使用 System.Directory Key*.Bin\d ~ 获取现有映射文件名的列表。 不存在美国文件;省略参数以安装美国键盘。
转义兼容性/中和
中和键用于删除显示器上的所有标记,包括插入符号、标记和文本选择。 F2 键被定义为所有 Oberon 系统实现的中和键。 在早期的实现中,Esc 键被分配了此功能。 这样做会导致无法在某些需要它的应用程序(例如终端模拟应用程序)中生成 Esc 字符。
转义兼容性选项在启动时由 配置字符串 EscCompat 控制,并允许用户定义 Esc 键的含义
EscCompat = 0(默认)Esc 键保留其传统含义。
EscCompat = 1 Esc 键也是一个中和键。 然后必须通过 F3 生成 Esc 字符。
在这两种情况下,也可以使用 Shift-Esc 或 Alt-27 生成 Esc 字符。
数字锁定
数字锁定在启动时由 配置字符串 NumLock 控制
NumLock = 1(默认)激活数字锁定模式
NumLock = 0 禁用它
如何安装 USB 键盘驱动程序
UsbKeyboard.Init
- 安装 USB 键盘驱动程序。 USB 系统 必须已经处于活动状态。
如何支持另一个键盘
如果您的特定键盘不存在键盘映射,则提供 Keyboard.Mod 来帮助构建键盘表文件。 使用它的说明包含在源代码中。 请将您的作品提交给开发团队,以包含在后续版本中。
ASCII 和 Latin-1(ISO 8859-1)字符集
Oberon 基于标准 ASCII 字符集代码点 00H 到 7FH。 这些字符使用相应标记的键生成,包括使用美国 101 键键盘上的 Shift 键。 为了跨平台可移植性,Oberon 通常不支持键盘上提供的所有键。
可以通过按住 Alt 键并在数字小键盘上键入十进制值来生成对应于十进制代码点的可打印字符或函数。
要找出某个键的相应可打印字符以及十进制代码点和十六进制代码点,请执行 EditKeys.GetKeyCode 并按照系统日志中的说明进行操作。 该命令在 EditKeys.Tool 中有记录。
代码点 00H 到 1FH
Hex | Dec. Key Ctrl TTY
| stroke symbol
----+--------------------------------
00 | 0 Ctrl-Shift-` NUL
01 | 1 Ctrl-a SOH
02 | 2 Ctrl-b STX
03 | 3 Ctrl-c ETX
04 | 4 Ctrl-d EOT
05 | 5 Ctrl-e ENQ
06 | 6 Ctrl-f ACK
07 | 7 Ctrl-g BEL
08 | 8 Ctrl-h BS
09 | 9 Tab Ctrl-i HT
0A | 10 Ctrl-j LF
0B | 11 Ctrl-k VT
0C | 12 Ctrl-l FF
0D | 13 Enter Ctrl-m CR
0E | 14 Ctrl-n SO
0F | 15 Ctrl-o SI
10 | 16 Ctrl-p DLE
11 | 17 Ctrl-q DC1
12 | 18 Ctrl-r DC2
13 | 19 Ctrl-s DC3
14 | 20 Ctrl-t DC4
15 | 21 Ctrl-u NAK
16 | 22 Ctrl-v SYN
17 | 23 Ctrl-w ETB
18 | 24 Ctrl-x CAN
19 | 25 Ctrl-y EM
1A | 26 Ctrl-z SUB
1B | 27 Esc Ctrl-[ ESC
1C | 28 Ctrl-\ FS
1D | 29 Ctrl-] GS
1E | 30 Ctrl-Shift-6 RS
1F | 31 Ctrl-Shift-- US
代码点 20H 到 7FH
所有字符都是可打印的,除了 DEL。
Hex | .0 .1 .2 .3 .4 .5 .6 .7 .8 .9 .A .B .C .D .E .F
----+------------------------------------------------
2. | SP ! " # $ % & ' ( ) * + , - . /
3. | 0 1 2 3 4 5 6 7 8 9 : ; < = > ?
4. | @ A B C D E F G H I J K L M N O
5. | P Q R S T U V W X Y Z [ \ ] ^ _
6. | ` a b c d e f g h i j k l m n o
7. | p q r s t u v w x y z { | } ~ DEL
代码点 80H 到 FFH
将特殊语言字符分配给代码点 80H 到 95H 是 Oberon 附带字体的属性。 在 HTML 中,任何 ISO Latin-1 字符都可以写成 &#xxx;,其中 xxx 是字符的十进制代码点,替换实体引用。 在剩下的代码点中,一些被 Oberon 使用,另一些则未分配。 Latin-1 字符 - ISO 8859-1,拉丁文字符 - 可以在美国键盘上生成,如下表所示,使用 Alt 键或 死键 击键(在出现 A、O、U、“ 或 ^ 时,隐含需要 Shift 键)。
Hex | Dec. Key Alt Deadkey Entity
| stroke stroke reference
----+----------------------------------------------
80 | 128 Ä Alt-A Alt-" + A Ä
81 | 129 Ö Alt-O Alt-" + O Ö
82 | 130 Ü Alt-U Alt-" + U Ö
83 | 131 ä Alt-a Alt-" + a ä
84 | 132 ö Alt-o Alt-" + o ö
85 | 133 ü Alt-u Alt-" + u ü
86 | 134 † Alt-^ + a â
87 | 135 ‡ Alt-^ + e ê
88 | 136 ˆ Alt-^ + i î
89 | 137 ‰ Alt-^ + o ô
8A | 138 Š Alt-^ + u û
8B | 139 à Alt-` + a à
8C | 140 è Alt-` + e è
8D | 141 Alt-` + i ì
8E | 142 ò Alt-` + o ò
8F | 143 ù Alt-` + u ù
90 | 144 é Alt-' + e é
91 | 145 ë Alt-e Alt-" + e ë
92 | 146 ï Alt-i Alt-" + i ï
93 | 147 “ Alt-c ç
94 | 148 á Alt-' + a á
95 | 149 • Alt-n ñ
96 | 150 – Alt-s ß
----------- OType.Mod handles up to 9B -----------
97 | 151 £
98 | 152 ¶
99 | 153 Ç
9A | 154
9B | 155 ›
9C to 9F --- not assigned
A0 | 160 Insert
A1 | 161 Delete
A2 | 162 PageUp
A3 | 163 PageDown
A4 | 164 F1 Setup (in Oberon.Mod)
A5 | 165 F2 Neutralise (in Oberon.Mod)
A6 | 166 --- not assigned Scroll (in Draw ??)
A7 | 167 F4 Scroll Lock (in Draw ??)
A8 | 168 Home
A9 | 169 End
AA to C0 --- not assigned
C1 | 193 Up arrow
C2 | 194 Down arrow
C3 | 195 Right arrow
C4 | 196 Left arrow
C5 to F4 --- not assigned
F5 | 245 F5 Display off/on (in Oberon.Mod)
F6 | 246 F6
F7 | 247 F7 Reset palette (in Oberon.Mod)
F8 | 248 F8
F9 | 249 F9 Update display (in Oberon.Mod)
FA | 250 F10
FB | 251 F11
FC | 252 F12
FD | 253 --- not assigned
FE | 254 Esc
FF | 255 Quit Reboot (in Oberon.Mod)
ASCIITab 工具
ASCIITab.Tool 提供了另一种方法来键入带重音的字符,更普遍地说,任何代码点,作为 ALT 键组合,前提是安装了基于 Gadgets 的 GUI。 执行 Desktops.OpenDoc ASCIITab.Tool
将打开一个文本文档查看器,其中包含一个表格,从中选择要插入到其他文本查看器中正在编辑的文本中的字符。 8 行 32 列的表格包含 Oberon10 字体(Oberon 默认字体)中的可打印字符。 在文本中设置插入符号,并在表格中 MM 点击要插入到插入符号处的字符。
要更改表格的字体,请在 Gadgets.ChangeAttr Font Oberon10.Scn.Fnt ~
中编辑字体名称(根据需要),选择表格(MR 点击)并执行命令。 之后,取消选择表格并继续编辑。 对于更大的字体,需要调整表格大小。 由于表格是一个具有 ASCIITab.NewFrame 作为生成器的工具,因此也可以使用 Gadgets.Insert ASCIITab.NewFrame ~
将其插入插入符号的任何位置。
仅使用小写字母编写 Oberon
患有 重复性劳损 (RSI) 的人可能希望仅使用小写字母编写 Oberon。 常见问题解答 中描述了三种使这成为可能的方法。
[顶部]
2002 年 7 月 11 日 - 版权所有 © 2002 ETH Zürich。 保留所有权利。
电子邮件:oberon at lists.inf.ethz.ch
主页:www.ethoberon.ethz.ch