keyboard - клавиатура персонального компьютера.
Клавиатура персонального компьютера используется для ввода данных, переключения экранов и направления некоторых управляющих сигналов компьютеру. Система UNIX выполняет эмуляцию экрана и клавиатуры терминала и при этом извлекает пользу из некоторых особенных клавиш и их комбинаций. Эти клавиши и их комбинации имеют специальные названия, которые уникальны в системе UNIX и могут соответствовать, а могут и не соответствовать меткам клавиш на вашей клавиатуре. Эти клавиши будут описаны позже.
Когда вы нажимаете клавишу, происходит одно из следующих событий:
Когда нажимается клавиша, клавиатура посылает компьютеру скан-код, который интерпретируется драйвером клавиатуры. Интерпретация кодов клавиш может быть изменена так, что клавиши могут начать функционировать по другому, отлично от их установок по умолчанию.
Различают три особенных события при нажатии клавиш:
Переключение экранов (многоэкранный режим)
Для переключения на следующий экран нажмите Ctrl-PrtSc, используя клавиши Ctrl и PrtSc. Любой активный экран может быть выбран нажатием alt-Fn, где Fn - одна из функциональных клавиш. F1 относится к дисплею компьютера (/dev/tty01).
Сигналы
Сигналы оказывают воздействие на процесс или несколько процессов. Примерами сигналов являются Ctrl-d (конец ввода и выход из оболочки), Ctrl-\ (завершение процесса), Ctrl-s ( остановка выдачи еа экран) и Ctrl-q (возобновление выдачи).
Обычно символы ставятся в соответствие сигналам с помощью stty(1). Единственный способ поставить сигнал в соответствие символам через посредство stty.
Изменение значения нажатий клавиш
Действительный код, посылаемый драйверу клавиатуры, может быть изменен с помощью комбинации некоторых клавиш. Например, клавиша SHIFT меняет значение символов ASCII буквенно-цифровых клавиш. Удерживание клавиши Ctrl при нажатии других клавиш генерирует управляющие коды (Ctrl-d, Ctrl-s, Ctrl-q и др.).
Специальные клавиши
INTR | Del | Останавливает текущее действие и возвращает в оболочку. Эта клавиша называется также RUB OUT или INTERRUPT. |
BACKSPACE | <- | Удаляет первый символ слева от курсора. Заметьте, что клавиша "движения курсора влево" также имеет метку "стрелка влево", но она не удаляет символы. |
Ctrl-d | Ctrl-d | Сигнализирует о конце ввода с клавиатуры; кроме того осуществляет выход из текущей оболочки. |
Ctrl-h | Ctrl-h | Удаляет первый символ слева от курсора. Называется также ERASE. |
Ctrl-q | Ctrl-q | Возобновляет выдачу после ее остановки с помощью нажатия Ctrl-s. |
Ctrl-s | Ctrl-s | Останавливает выдачу на экран (работа программы не прекращается). |
Ctrl-u | Ctrl-u | Удаляет все символы на текущей строке. Называется также KILL. |
Ctrl-\ | Ctrl-\ | Прекращает выполнение текущей команды и создает core-файл, если это разрешено. (Рекомендуется только для отладки.) |
ESCAPE | Esc | Специальный код для некоторых программ. В текстовом редакторе vi(C) переключает режим вставки в командный режим. |
RETURN | (down-left arrow or ENTER) | Завершает введение командной строки и ининциирует действие оболочки. |
Fn | Fn | Функциональная клавиша n. F1-F12 используются без нажатия SHIFT. F13-F24 генерируются с помощью SHIFT. F25-F36 генерируются с помощью Ctrl-F1 через F12, F37-F48 генерируются с помощью Ctrl-Shift-F1 через F12. |
0 | nop | nop | nop | nop | nop | nop | nop | nop | O |
1 | esc | esc | nop | nop | esc | esc | nop | nop | O |
2 | '1' | '!' | nop | nop | '1' | '!' | nop | nop | O |
3 | '2' | '@' | nop | nop | '2' | '@' | nop | nop | O |
4 | '3' | '#' | nop | nop | '3' | '#' | nop | nop | O |
5 | '4' | '$' | nop | nop | '4' | '#' | nop | nop | O |
6 | '5' | '%' | nop | nop | '5' | '%' | nop | nop | O |
7 | '6' | '^' | rs | rs | '6' | '^' | rs | rs | O |
8 | '7' | '&' | nop | nop | '7' | '&' | nop | nop | O |
9 | '8' | '*' | nop | nop | '8' | '*' | nop | nop | O |
10 | '9' | '(' | nop | nop | '9' | '(' | nop | nop | O |
11 | '0' | ')' | nop | nop | '0' | ')' | nop | nop | O |
12 | '-' | '_' | ns | ns | '-' | '_' | ns | ns | O |
13 | '=' | '+' | nop | nop | '=' | '+' | nop | nop | O |
14 | bs | bs | del | del | bs | bs | del | del | O |
15 | ht | btab | nop | nop | ht | btab | nop | nop | O |
16 | 'q' | 'Q' | dc1 | dc1 | 'q' | 'Q' | dc1 | dc1 | C |
17 | 'w' | 'W' | etb | etb | 'w' | 'W' | etb | etb | C |
18 | 'e' | 'E' | enq | enq | 'e' | 'E' | enq | enq | C |
19 | 'r' | 'R' | dc2 | dc2 | 'r' | 'R' | dc2 | dc2 | C |
20 | 't' | 'T' | dc4 | dc4 | 't' | 'T' | dc4 | dc4 | C |
21 | 'y' | 'Y' | em | em | 'y' | 'Y' | em | em | C |
22 | 'u' | 'U' | nak | nak | 'u' | 'U' | nak | nak | C |
23 | 'i' | 'I' | ht | ht | 'i' | 'I' | ht | ht | C |
24 | 'o' | 'O' | si | si | 'o' | 'O' | si | si | C |
25 | 'p' | 'P' | dle | dle | 'p' | 'P' | dle | dle | C |
26 | '[' | '{' | esc | esc | '[' | '{' | esc | esc | O |
27 | ']' | '}' | gs | gs | ']' | '}' | gs | gs | O |
28 | cr | cr | nl | nl | cr | cr | nl | nl | O |
29 | ctrl | ctrl | ctrl | ctrl | ctrl | ctrl | ctrl | ctrl | O |
30 | 'a' | 'A' | soh | soh | 'a' | 'A' | soh | soh | C |
31 | 's' | 'S' | dc3 | dc3 | 's' | 'S' | dc3 | dc3 | C |
32 | 'd' | 'D' | eot | eot | 'd' | 'D' | eot | eot | C |
33 | 'f' | 'F' | ack | ack | 'f' | 'F' | ack | ack | C |
34 | 'g' | 'G' | bel | bel | 'g' | 'G' | bel | bel | C |
35 | 'h' | 'H' | bs | bs | 'h' | 'H' | bs | bs | C |
36 | 'j' | 'J' | nl | nl | 'j' | 'J' | nl | nl | C |
37 | 'k' | 'K' | vt | vt | 'k' | 'K' | vt | vt | C |
38 | 'l' | 'L' | np | np | 'l' | 'L' | np | np | C |
39 | ';' | ':' | nop | nop | ';' | ':' | nop | nop | O |
40 | '\' | '"' | nop | nop | '\' | '"' | nop | nop | O |
41 | '`' | '~' | nop | nop | '`' | '~' | nop | nop | O |
42 | lshift | lshift | lshift | lshift | lshift | lshift | lshift | lshift | O |
43 | '\\' | '|' | fs | fs | '\\' | '|' | fs | fs | O |
44 | 'z' | 'Z' | sub | sub | 'z' | 'Z' | sub | sub | O |
45 | 'x' | 'X' | can | can | 'x' | 'X' | can | can | C |
46 | 'c' | 'C' | etx | etx | 'c' | 'C' | etx | etx | C |
47 | 'v' | 'V' | syn | syn | 'v' | 'V' | sin | sin | C |
48 | 'b' | 'B' | stx | stx | 'b' | 'B' | stx | stx | C |
49 | 'n' | 'N' | so | so | 'n' | 'N' | so | so | C |
50 | 'm' | 'M' | cr | cr | 'm' | 'M' | cr | cr | C |
51 | ',' | '<' | nop | nop | ',' | '<' | nop | nop | O |
52 | '.' | '>' | nop | nop | ',' | '>' | nop | nop | O |
53 | '/' | '?' | nop | nop | '/' | '?' | nop | nop | O |
54 | rshift | rshift | rshift | rshift | rshift | rshift | rshift | rshift | O |
55 | '*' | '*' | nscr | nscr | '*' | '*' | nscr | nscr | O |
56 | alt | alt | alt | alt | alt | alt | alt | alt | O |
57 | ' ' | ' ' | ' ' | ' ' | ' ' | ' ' | ' ' | ' ' | O |
58 | clock | clock | clock | clock | clock | clock | clock | clock | O |
59 | fkey1 | fkey13 | fkey25 | fkey37 | scr1 | scr11 | scr1 | scr11 | O |
60 | fkey2 | fkey14 | fkey26 | fkey38 | scr2 | scr12 | scr2 | scr12 | O |
61 | fkey3 | fkey15 | fkey27 | fkey39 | scr3 | scr13 | scr3 | scr13 | O |
62 | fkey4 | fkey16 | fkey28 | fkey40 | scr4 | scr14 | scr4 | scr14 | O |
63 | fkey5 | fkey17 | fkey29 | fkey41 | scr5 | scr15 | scr5 | scr15 | O |
64 | fkey6 | fkey18 | fkey30 | fkey42 | scr6 | scr16 | scr6 | scr16 | O |
65 | fkey7 | fkey19 | fkey31 | fkey43 | scr7 | scr7 | scr7 | scr7 | O |
66 | fkey8 | fkey20 | fkey32 | fkey44 | scr8 | scr8 | scr8 | scr8 | O |
67 | fkey9 | fkey21 | fkey33 | fkey45 | scr9 | scr9 | scr9 | scr9 | O |
68 | fkey10 | fkey22 | fkey34 | fkey46 | scr10 | scr10 | scr10 | scr10 | O |
69 | nlock | nlock | dc3 | dc3 | nlock | nlock | dc3 | dc3 | O |
70 | slock | slock | del | del | slock | slock | del | del | O |
71 | fkey49 | '7' | '7' | '7' | '7' | '7' | '7' | '7' | N |
72 | fkey50 | '8' | '8' | '8' | '8' | '8' | '8' | '8' | N |
73 | fkey51 | '9' | '9' | '9' | '9' | '9' | '9' | '9' | N |
74 | fkey52 | '-' | '-' | '-' | '-' | '-' | '-' | '-' | N |
75 | fkey53 | '4' | '4' | '4' | '4' | '4' | '4' | '4' | N |
76 | fkey54 | '5' | '5' | '5' | '5' | '5' | '5' | '5' | N |
77 | fkey55 | '6' | '6' | '6' | '6' | '6' | '6' | '6' | N |
78 | fkey56 | '+' | '+' | '+' | '+' | '+' | '+' | '+' | N |
79 | fkey57 | '1' | '1' | '1' | '1' | '1' | '1' | '1' | N |
80 | fkey58 | '2' | '2' | '2' | '2' | '2' | '2' | '2' | N |
81 | fkey59 | '3' | '3' | '3' | '3' | '3' | '3' | '3' | N |
82 | fkey60 | '0' | '0' | '0' | '0' | '0' | '0' | '0' | N |
83 | del | '.' | del | del | del | del | del | del | N |
84 | nop | nop | nop | nop | nop | nop | nop | nop | O |
85 | fkey11 | fkey23 | fkey35 | fkey47 | scr11 | scr11 | scr11 | scr11 | O |
86 | fkey12 | fkey24 | fkey36 | fkey48 | scr12 | scr12 | scr12 | scr12 | O |
87 | fkey11 | fkey23 | fkey35 | fkey47 | scr11 | scr11 | scr11 | scr11 | O |
88 | fkey12 | fkey24 | fkey36 | fkey48 | scr12 | scr12 | scr12 | scr12 | O |
89 | nop | nop | nop | nop | nop | nop | nop | nop | O |
90 | nop | nop | nop | nop | nop | nop | nop | nop | O |
91 | nop | nop | nop | nop | nop | nop | nop | nop | O |
92 | nop | nop | nop | nop | nop | nop | nop | nop | O |
93 | nop | nop | nop | nop | nop | nop | nop | nop | O |
94 | nop | nop | nop | nop | nop | nop | nop | nop | O |
95 | nop | nop | nop | nop | nop | nop | nop | nop | O |
96 | fkey50 | fkey50 | fkey50 | fkey50 | fkey50 | fkey50 | fkey50 | fkey50 | O |
97 | fkey53 | fkey53 | fkey53 | fkey53 | fkey53 | fkey53 | fkey53 | fkey53 | O |
98 | fkey58 | fkey58 | fkey58 | fkey58 | fkey58 | fkey58 | fkey58 | fkey58 | O |
99 | fkey55 | fkey55 | fkey55 | fkey55 | fkey55 | fkey55 | fkey55 | fkey55 | O |
100 | fkey49 | fkey49 | fkey49 | fkey49 | fkey49 | fkey49 | fkey49 | fkey49 | O |
101 | fkey51 | fkey51 | fkey51 | fkey51 | fkey51 | fkey51 | fkey51 | fkey51 | O |
102 | fkey57 | fkey57 | fkey57 | fkey57 | fkey57 | fkey57 | fkey57 | fkey57 | O |
103 | fkey59 | fkey59 | fkey59 | fkey59 | fkey59 | fkey59 | fkey59 | fkey59 | O |
104 | fkey60 | fkey60 | fkey60 | fkey60 | fkey60 | fkey60 | fkey60 | fkey60 | O |
105 | del | del | del | del | del | del | del | del | 0 |
106 | nop | nop | nop | nop | nop | nop | nop | nop | O |
107 | nop | nop | nop | nop | nop | nop | nop | nop | O |
108 | nop | nop | nop | nop | nop | nop | nop | nop | O |
109 | nop | nop | nop | nop | nop | nop | nop | nop | O |
110 | nop | nop | nop | nop | nop | nop | nop | nop | O |
111 | nop | nop | nop | nop | nop | nop | nop | nop | O |
112 | nop | nop | nop | nop | nop | nop | nop | nop | O |
113 | nop | nop | nop | nop | nop | nop | nop | nop | O |
114 | nop | nop | nop | nop | nop | nop | nop | nop | O |
115 | nop | nop | nop | nop | nop | nop | nop | nop | O |
116 | nop | nop | nop | nop | nop | nop | nop | nop | O |
117 | nop | nop | nop | nop | nop | nop | nop | nop | O |
118 | nop | nop | nop | nop | nop | nop | nop | nop | O |
119 | nop | nop | nop | nop | nop | nop | nop | nop | O |
120 | nop | nop | nop | nop | nop | nop | nop | nop | O |
121 | nop | nop | nop | nop | nop | nop | nop | nop | O |
122 | nop | nop | nop | nop | nop | nop | nop | nop | O |
123 | nop | nop | nop | nop | nop | nop | nop | nop | O |
124 | nop | nop | nop | nop | nop | nop | nop | nop | O |
125 | nop | nop | nop | nop | nop | nop | nop | nop | O |
126 | nop | nop | nop | nop | nop | nop | nop | nop | O |
127 | nop | nop | nop | nop | nop | nop | nop | nop | O |
128 | rctrl | rctrl | rctrl | rctrl | rctrl | rctrl | rctrl | rctrl | O |
129 | ralt | ralt | ralt | ralt | ralt | ralt | ralt | ralt | O |
130 | fkey60 | fkey60 | fkey60 | fkey60 | fkey60 | fkey60 | fkey60 | fkey60 | O |
131 | del | del | del | del | del | del | del | del | 0 |
132 | fkey49 | fkey49 | fkey49 | fkey49 | fkey49 | fkey49 | fkey49 | fkey49 | O |
133 | fkey57 | fkey57 | fkey57 | fkey57 | fkey57 | fkey57 | fkey57 | fkey57 | O |
134 | fkey51 | fkey51 | fkey51 | fkey51 | fkey51 | fkey51 | fkey51 | fkey51 | O |
135 | fkey59 | fkey59 | fkey59 | fkey59 | fkey59 | fkey59 | fkey59 | fkey59 | O |
136 | fkey53 | fkey53 | fkey53 | fkey53 | fkey53 | fkey53 | fkey53 | fkey53 | O |
137 | fkey55 | fkey55 | fkey55 | fkey55 | fkey55 | fkey55 | fkey55 | fkey55 | O |
138 | fkey50 | fkey50 | fkey50 | fkey50 | fkey50 | fkey50 | fkey50 | fkey50 | O |
139 | fkey58 | fkey58 | fkey58 | fkey58 | fkey58 | fkey58 | fkey58 | fkey58 | O |
140 | '/' | nop | nop | nop | '/' | nop | nop | nop | O |
141 | cr | cr | nl | nl | cr | cr | nl | nl | O |
nop | 0 | Действия нет - "пустое" нажатие клавиши |
lshift | 2 | Левая клавиша shift |
rshift | 3 | Правая клавиша shift |
clock | 4 | фиксация Capslock |
nclock | 5 | фиксация Numlock |
slock | 6 | фиксация Scroll lock |
alt | 7 | Клавиша Alt |
btab | 8 | Ключ обратной табуляции - генерирует фиксированную последовательность (esc [ Z) |
ctrl | 9 | Клавиша Ctrl |
nscr | 10 | Переключение на следующий экран |
scr1 | 11 | Переключение на экран #1 |
... | ||
scr16 | 26 | Переключение на экран #16 |
fkey1 | 27 | Функциональная клавиша #1 |
... | ||
fkey96 | 122 | Функциональная клавиша #96 |
rctl | 128* | Правая клавиша Ctrl |
ralt | 129* | Правая клавиша Alt |
* Только в режиме AT |
nul | 0 | dc1 | 17 |
soh | 1 | dc2 | 18 |
stx | 2 | dc3 | 19 |
etx | 3 | dc4 | 20 |
eot | 4 | nak | 21 |
enq | 5 | syn | 22 |
ack | 6 | etb | 23 |
bel | 7 | can | 24 |
bs | 8 | em | 25 |
ht | 9 | sub | 26 |
nl | 10 | esc | 27 |
vt | 11 | fs | 28 |
np | 12 | gs | 29 |
cr | 13 | rs | 30 |
so | 14 | ns | 31 |
si | 15 | del | 127 |
dle | 16 |
1 | ESC[M | ESC[Y | ESC[k | ESC[w |
2 | ESC[N | ESC[Z | ESC[l | ESC[x |
3 | ESC[O | ESC[a | ESC[m | ESC[y |
4 | ESC[P | ESC[b | ESC[n | ESC[z |
5 | ESC[Q | ESC[c | ESC[o | ESC[@ |
6 | ESC[R | ESC[d | ESC[p | ESC[[ |
7 | ESC[S | ESC[e | ESC[q | ESC[\ |
8 | ESC[T | ESC[f | ESC[r | ESC[] |
9 | ESC[U | ESC[g | ESC[s | ESC[^ |
10 | ESC[V | ESC[h | ESC[t | ESC[_ |
11 | ESC[W | ESC[i | ESC[u | ESC[' |
12 | ESC[X | ESC[j | ESC[v | ESC[{ |
Home | ESC[H | End | ESC[F |
Up arrow | ESC[A | Down arrow | ESC[B |
Page up | ESC[I | Page down | ESC[G |
Left arrow | ESC[D | 5 | ESC[E |
Right arrow | ESC[C | Insert | ESC[L |