File: keymaps.5

package info (click to toggle)
manpages-pl 1%3A0.7-1
  • links: PTS, VCS
  • area: main
  • in suites: buster, stretch
  • size: 22,276 kB
  • ctags: 7
  • sloc: sh: 112; makefile: 59; perl: 32
file content (423 lines) | stat: -rw-r--r-- 14,377 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
.\" keymaps.5 - Copyright (C) Andries Brouwer 1998
.\" May be freely distributed.
.\" @(#)keymaps.5 1.10 940130 aeb
.\"*******************************************************************
.\"
.\" This file was generated with po4a. Translate the source file.
.\"
.\"*******************************************************************
.\" This file is distributed under the same license as original manpage
.\" Copyright of the original manpage:
.\" Copyright © 1998;Andries Brouwer (free)
.\" Copyright © of Polish translation:
.\" Przemek Borys (PTM) <pborys@dione.ids.pl>, 1998.
.\" Andrzej M. Krzysztofowicz (PTM) <ankry@green.mf.pg.gda.pl>, 2001.
.\" Robert Luberda <robert@debian.org>, 2017.
.TH KEYMAPS 5 "24 kwietnia 1998"  
.SH NAZWA
keymaps \- opisy tablic klawiaturowych dla loadkeys i dumpkeys
.SH OPIS
.LP
Pliki te są używane przez \fBloadkeys\fP(1)  do modyfikowania tablic translacji
używanych przez sterownik klawiatury. Pliki te mogą być generowane na
podstawie tablic translacji przez program \fBdumpkeys\fP(1).
.LP
Format plików jest dość podobny do formatu \fBxmodmap\fP(1). Plik składa się z
linii charsetu, definicji klawiszy lub napisów, przeplecionych komentarzami.
.LP
Komentarze rozpoczynają się od znaków \fB!\fP lub \fB#\fP i trwają do końca
linii. Wszystko, co występuje po tych znakach, ignorowane. Proszę zauważyć,
że komentarze nie muszą zaczynać się w pierwszej kolumnie jak w
\fBxmodmap\fP(1).
.LP
Składnia tablicy klawiszy jest zorientowana liniowo; cała definicja musi
zmieścić się w pojedynczej linii logicznej. Jednak linie logiczne mogą
dzielić się na wiele linii fizycznych dzięki zastosowaniu znaku odwrotnego
ukośnika (\e).
.SH "PLIKI WŁĄCZANE"
Tablica klawiaturowa może włączać do siebie inne tablice klawiaturowe przy
użyciu składni
.LP
.RS
include "ścieżkadopliku"
.RE
.LP
.SH "DEFINICJE CHARSETÓW"
Linia definiująca zestaw znaków (charset) ma postać:
.LP
.RS
.EX
charset "iso\-8859\-x"
.EE
.RE
.LP
Definiuje ona, w jaki sposób interpretować następujące po niej symbole akcji
klawiaturowych (keysym). Na przykład w iso\-8859\-1 symbol mu (lub micro) ma
kod 0265, podczas gdy w iso\-8859\-7 litera mu ma kod 0354.
.SH "PEŁNE DEFINICJE KODÓW KLAWISZY"
Pełna linii definicji kodów klawisza ma postać:
.LP
.RS
.nf
\fBkeycode\fP\fI keynumber \fP\fB=\fP\fI keysym keysym keysym\fP...
.fi
.RE
.LP
\fIkeynumber\fP jest wewnętrznym numerem identyfikującym klawisz, na ogół
odpowiadającym jego kodowi scancode. \fIkeynumber\fP może zostać podany w
postaci dziesiętnej, ósemkowej lub szesnastkowej.  Postać ósemkowa jest
poprzedzona zerem, a szesnastkowa prefiksem \fB0x\fP.
.LP
Każdy z symboli \fIkeysym\fP reprezentuje akcję klawiaturową. Do pojedynczego
klawisza można podwiązać do 256 takich akcji. Dostępne akcje zawierają kody
znaków lub ciągi znaków, przełączanie konsol lub tablic klawiaturowych,
restartowanie maszyny, itd. (pełną listę można uzyskać z \fBdumpkeys\fP(1)
przez wydanie polecenia \fBdumpkeys \-l\fP).
.LP
Każdy z symboli \fIkeysym\fP może zostać poprzedzony znakiem |"+" (plus). W tym
wypadku keysym jest traktowany jako "litera", i na jego wartość "CapsLock"
wpływa w ten sam sposób jak "Shift" (dokładniej, CapsLock odwraca stan
Shift).  Znaki ASCII ("a"\-"z" i "A"\-"Z") są domyślnie CapsLock\-owalne. Jeśli
Shift+CapsLock nie powinny produkować "małych" liter, należy użyć linii o
następującej semantyce
.LP
.RS
.nf
\fBkeycode 30 = +a  A\fP
.fi
.RE
.LP
w pliku z tablicą.
.LP
To, która z akcji dla danego klawisza jest wybierana podczas jego
wciśnięcia, zależy od modyfikatorów, które są aktywne w danej
chwili. Sterownik klawiatury wspiera 9 modyfikatorów. Modyfikatory te są
oznaczone (zdecydowanie arbitralnie) jako Shift, AltGr, Control, Alt,
ShiftL, ShiftR, CtrlL, CtrlR oraz CapsShift. Z każdym z tych modyfikatorów
związana jest waga będąca potęgą dwójki, według następującej tabeli:
.LP
.RS
.TP  24
\fImodyfikator\fP
\fIwaga\fP
.TP  24
Shift
  1
.PD 0
.TP  24
AltGr
  2
.TP  24
Control
  4
.TP  24
Alt
  8
.TP  24
ShiftL
 16
.TP  24
ShiftR
 32
.TP  24
CtrlL
 64
.TP  24
CtrlR
128
.TP  24
CapsShift
256
.PD
.RE
.LP
Efektywna akcja klawisza jest znajdywana przez dodawanie wag wszystkich
modyfikatorów. Domyślnie żaden z nich nie jest używany, więc podczas
naciskania lub zwalniania klawisza pobierana jest akcja numer zero, czyli ta
w pierwszej kolumnie linii definicji klawisza. Gdy użyto na przykład
klawiszy Shift+Alt, użyta zostaje akcja numer 9 (z 10 kolumny).
.LP
Zmiana stanu używanych modyfikatorów może być osiągnięta przez powiązanie
odpowiednich akcji klawiszowych z odpowiednimi klawiszami. Na przykład
przypisanie symbolu Shift do klawisza ustawia modyfikator Shift podczas
naciskania tego klawisza i unieważnia działanie tego modyfikatora podczas
zwolnienia klawisza. Przypisanie AltGr_Lock do klawisza ustawia AltGr po
naciśnięciu tego klawisza, a anuluje po ponownym jego
naciśnięciu. (Domyślnie, Shift, AltGr, Control i Alt są przypisane do
klawiszy, które mają podobne oznaczenia; AltGr może oznaczać prawy klawisz
Alt).
.LP
Należy zauważyć, że powinno się zachować daleko posuniętą ostrożność podczas
przypisywania modyfikatorów do klawiszy. W przeciwnym wypadku może się to
skończyć nieużywalną tablicą klawiaturową. Jeśli na przykład zdefiniuje się
klawisz jako Control w pierwszej kolumnie a zostawi resztę kolumn jako puste
symbole (VoidSymbols), pojawi się problem. Problem wystąpi dlatego, że
naciśnięcie klawisza włącza modyfikator Control, a następne akcje będą
pobierane z piątej kolumny (zobacz tabelę powyżej). Tak więc, jeśli klawisz
zostanie zwolniony, pobierana będzie akcja z piątej kolumny. Jest ona pustym
symbolem, więc nic się nie dzieje. Oznacza to, że modyfikator Control jest
wciąż aktywny, chociaż klawisz został puszczony. Ponowne naciskanie i
zwalnianie klawisza nie daje żadnych rezultatów. Aby temu zapobiec, należy
zawsze definiować wszystkie kolumny tak, aby miały ten sam symbol
modyfikujący. Istnieje do tego poręczna skrótowa notacja, o której niżej.
.LP
Symbole \fIkeysym\fP mogą być podawane w notacji dziesiętnej, ósemkowej,
szesnastkowej lub symbolicznej. Numeryczne notacje używają tego samego
formatu co \fIkeynumber\fP. Notacja unikodowa składa się z "U+", po którym
występują cyfry szesnastkowe. Notacja symboliczna jest podobna do tej z
\fBxmodmap\fP(1). Zauważalne różnice występują dla symboli
numerycznych. Symbole "0", ..., "9" w \fBxmodmap\fP(1)  są zamieniane na
odpowiadające słowa "zero", "one", ..., "nine", aby zapobiec
niejednoznacznościom z notacją numeryczną.
.LP
Powinno się zaznaczyć, że używanie notacji numerycznej dla symboli \fIkeysym\fP
jest wybitnie nieprzenośne, jako że numery akcji klawiszy mogą się różnić z
jednej wersji jądra na drugą, z czego wynika powyższe. Notacja ta może być
używana tylko jeśli wiadomo, że istnieje określona akcja klawiaturowa w
używanym jądrze, dla której bieżąca wersja \fBloadkeys\fP(1)  nie ma nazwy
symbolicznej.
.LP
Jest wiele notacji skrótowych, poprawiających czytelność, a redukujących
pracochłonność i prawdopodobieństwo błędów przy wpisywaniu.
.LP
Przede wszystkim można podać linię specyfikacji tablicy w postaci
.LP
.RS
.EX
keymaps 0\-2,4\-5,8,12
.EE
.RE
.LP
aby wskazać, że te linie tablicy klawiaturowej nie będą wyszczególniały
wszystkich 256 kolumn, lecz tylko jedną ze wskazanych. (Na przykład sam
Shift, AltGr, Control, Control+Shift, Alt i Control+Alt, czyli 7 zamiast 256
kolumn). Jeśli nie poda się takiej linii, zdefiniowane będą tablice
klawiaturowe 0\-M, gdzie M+1 to maksymalna liczba wpisów w jakiejkolwiek
linii definicyjnej.
.LP
Następnie można porzucić wszelkie końcowe wpisy pustych symboli z definicji
klawisza. Pusty symbol oznacza akcję klawiaturową, która nie powoduje
efektu. Na przykład, aby zdefiniować klawisz numer 30 do wyprowadzania 'a'
bez shiftu i 'A' z shiftem, niczego zaś przy wciśniętym AltGr i innych
modyfikatorach, można napisać
.LP
.RS
.nf
keycode  30 = a	A
.fi
.RE
.LP
zamiast bardziej "gadatliwego"
.LP
.RS
.nf
keycode  30 = a	A	VoidSymbol	VoidSymbol \e
		VoidSymbol VoidSymbol VoidSymbol ...
.fi
.RE
.LP
Jako dodatkowe udogodnienie, zwykle możnz używać jeszcze innych definicji.
Jeśli wprowadzona zostanie linia definicji klawisza z tylko jednym kodem
akcji po znaku równości, to ma to specjalne znaczenie. Jeśli kod (numeryczny
lub symboliczny) nie jest literą ASCII, znaczy to, że kod jest w drodze
wyjątku powielany na wszystkie zdefiniowane kolumny. Jeśli, z drugiej
strony, kod jest znakiem ASCII w zakresie 'a', ..., 'z' lub 'A', ..., 'Z',
to tworzone są następujące definicje dla różnych kombinacji
modyfikatorów. (Tabela pokazuje dwa możliwe przypadki: zarówno z pojedynczym
kodem akcji dla małej litery, oznaczonej przez 'x', jak i dla dużej litery,
oznaczonej przez 'Y'.)
.LP
.RS 4
.TP  24
\fImodyfikator\fP
\fIsymbol\fP
.TP  24
brak
x			Y
.PD 0
.TP  24
Shift
X			y
.TP  24
AltGr
x			Y
.TP  24
Shift+AltGr
X			y
.TP  24
Control
Control_x		Control_y
.TP  24
Shift+Control
Control_x		Control_y
.TP  24
AltGr+Control
Control_x		Control_y
.TP  24
Shift+AltGr+Control
Control_x		Control_y
.TP  24
Alt
Meta_x		Meta_Y
.TP  24
Shift+Alt
Meta_X		Meta_y
.TP  24
AltGr+Alt
Meta_x		Meta_Y
.TP  24
Shift+AltGr+Alt
Meta_X		Meta_y
.TP  24
Control+Alt
Meta_Control_x	Meta_Control_y
.TP  24
Shift+Control+Alt
Meta_Control_x	Meta_Control_y
.TP  24
AltGr+Control+Alt
Meta_Control_x	Meta_Control_y
.TP  24
Shift+AltGr+Control+Alt
Meta_Control_x	Meta_Control_y
.PD
.RE
.LP
.SH "DEFINICJE POJEDYNCZYCH MODYFIKATORÓW"
Wszystkie poprzednie postacie linii definicji klawiszy zawsze definiowały
wszystkie M+1 możliwych kombinacji modyfikatorów, niezależnie od tego, czy
taką ilość rzeczywistych kodów akcji, czy nie. Istnieje jednak wariant
składni definicji służący do definiowania pojedynczych akcji dla konkretnej
kombinacji modyfikatorów klawisza. Jest to szczególnie przydatne, jeśli
ładowana jest tablica klawiaturową, która nie odpowiada potrzebom jedynie
przy niektórych kombinacjach modyfikatorów, jak np. AltGr+klawisze
funkcyjne. Można wówczas utworzyć mały lokalny plik przedefiniowujący tylko
te kombinacje modyfikatorów i ładować go po załadowaniu pliku
głównego. Składnia tego formatu jest następująca:
.LP
{\fB plain \fP| <ciąg modyfikatorów> } \fBkeycode\fP \fIkeynumber\fP \fB=\fP
\fIkeysym\fP
.LP
n.p.,
.RS
.EX
.nf
plain keycode 14 = BackSpace
control alt keycode 83 = Boot
alt keycode 105 = Decr_Console
alt keycode 106 = Incr_Console
.fi
.EE
.RE
Użycie "plain" zdefiniuje tylko podstawowy wpis klawisza (np. ten, przy
którym nie są włączone żadne modyfikatory), bez dotykania powiązań innych
kombinacji tego klawisza.
.SH "DEFINICJE ŁAŃCUCHÓW"
Oprócz komentarzy i linii definicji klawiszy, pliki tablic klawiaturowych
mogą zawierać definicje napisów. Są one używane do definiowania kodów akcji
wysyłanych przez poszczególne klawisze funkcyjne. Składnia definicji napisu
to:
.LP
.RS
\fBłańcuch\fP \fIkeysym\fP \fB=\fP "tekst"
.RE
.LP
\fItekst\fP może zawierać literalne znaki, kody ósemkowe w formacie odwrotnego
ukośnika, za którym występuje do trzech cyfr ósemkowych, a także trzy
sekwencje eskejpowe \fB\en\fP, \fB\e\e\fP, i \fB\e"\fP, odpowiednio, dla nowej linii,
odwrotnego ukośnika i cytatu.
.SH "DEFINICJE ZŁOŻONE"
Mogą również występować definicje złożone. Mają one składnię
.LP
.RS
\fBcompose '\fP\fIznak\fP\fB' '\fP\fIznak\fP\fB' to '\fP\fIznak\fP\fB'\fP
.RE
i opisują, w jaki sposób dwa bajty są połączone, tworząc trzeci (gdy jest
używany samodzielny akcent lub klawisz kombinowany). Wykorzystuje się to do
liter akcentowanych i podobnych znaków na standardowej klawiaturze.
.SH SKRÓTY
Z kbd\-0.96 i późniejszymi można używać różnych skrótów.
.TP 
\fBstrings as usual\fP
Definiuje zwykłe wartości dla łańcuchów (ale nie dla klawiszy, do których są
one przypisane.
.TP 
\fBcompose as usual for "iso\-8859\-1"\fP
Definiuje zwykłe kombinacje złożone.
.LP
Aby znaleźć, które symbole \fIkeysym\fP są dostępne do użytku w tablicach
klawiaturowych, należy użyć polecenia
.LP
.RS
.nf
\fBdumpkeys \-\-long\-info\fP
.fi
.RE
.LP
Niestety, obecnie nie ma opisu, co który symbol robi. Trzeba to zgadywać z
nazwy, wydedukowanej ze źródeł jądra.
.LP
.SH PRZYKŁADY
(Trzeba uważać, by użyć linii "keymaps", takiej jak "keymaps 0\-15" albo
pierwsza linia w `dumpkeys` itp.)
.LP
Następujący wpis zamienia lewy klawisz Control i CapsLock:
.LP
.RS
.nf
keycode  58 = Control
keycode  29 = Caps_Lock
.fi
.RE
.LP
Klawisz o numerze 58 jest normalnie Caps Lockiem, a klawisz numer 29 jest
zwykle klawiszem Control.
.LP
Następujący wpis ustawia milsze zachowanie klawiszy Shift i Caps Lock, jak w
starych maszynach do pisania. To znaczy, wciśnięcie klawiszu Caps Lock
jeden, lub więcej razy, włącza klawiaturę w stan CapsLock, a wciśnięcie
dowolnego z Shiftów wyłącza go.
.LP
.RS
.nf
keycode  42 = Uncaps_Shift
keycode  54 = Uncaps_Shift
keycode  58 = Caps_On
.fi
.RE
.LP
Następujący wpis ustawia układ bloku edycyjnego na rozszerzonych
klawiaturach, aby były bardziej podobne do terminali serii VT200:
.LP
.RS
.nf
keycode 102 = Insert
keycode 104 = Remove
keycode 107 = Prior
shift keycode 107 = Scroll_Backward
keycode 110 = Find
keycode 111 = Select
control alt   keycode 111 = Boot
control altgr keycode 111 = Boot
.fi
.RE
.LP
Oto przykład na przypisanie napisu "du\endf\en" do klawisza AltGr\-D.
Używamy "wolnego" kodu akcji F100, nie przypisywanego normalnie do żadnego
klawisza.
.LP
.RS
.nf
altgr keycode 32 = F100
string F100 = "du\endf\en"
.LP
.SH "ZOBACZ TAKŻE"
\fBloadkeys\fP(1), \fBdumpkeys\fP(1), \fBshowkey\fP(1), \fBxmodmap\fP(1)
.SH TŁUMACZENIE
Autorami polskiego tłumaczenia niniejszej strony podręcznika man są:
Przemek Borys (PTM) <pborys@dione.ids.pl>,
Andrzej M. Krzysztofowicz (PTM) <ankry@green.mf.pg.gda.pl>
i
Robert Luberda <robert@debian.org>.
.PP
Polskie tłumaczenie jest częścią projektu manpages-pl; uwagi, pomoc, zgłaszanie błędów na stronie http://sourceforge.net/projects/manpages-pl/. Jest zgodne z wersją \fB 1.15.5 \fPoryginału.