Keyboard-HOWTO.pl.txt

(59 KB) Pobierz
  The Linux Keyboard HOWTO
  Andries Brouwer, aeb@cwi.nl
  v2.5, 27 sierpie 1997
  Wersja polska: Gwidon S. Naskrent naskrent@hoth.amu.edu.pl
  v1.1, 29 X 1997


  Notka ta zawiera informacje na temat klawiatury i konsoli w Linuxie,
  oraz uywania znakw spoza ASCII. Opisuje ona wersj 2.0 Linuxa.  Doku-
  ment ten zosta napisany w standardzie ISO-8859-2.  Orygina tego doku-
  mentu znajduje si pod adresem
  ______________________________________________________________________

  Spis treci




















































  1. Uyteczne programy

  2. Oglnie o klawiaturze

  3. Oglnie o konsoli

  4. Kasowanie terminala

     4.1 Sprztowe kasowanie klawiatury

  5. Delete i Backzspace

     5.1 Jak powiedzie Unixowi jakiego znaku chcesz uywa eby skasowa ostatnio napisany znak?
        5.1.1 "Kiedy getty dobrze oddawao DEL i BS, ale teraz si popsuo"
        5.1.2 "Login zachowuje si inaczej przy pierwszej i drugiej prbie logowania"
     5.2 Jak powiedziec Linuxowi jaki kod wysya po naciniciu klawisza
        5.2.1 Dlaczego klawisz Backspace nie wysya domylnie wstecznej spacji?
     5.3 Jak nakaza X zamian Delete i Backspace
     5.4 Jak powiedzie emacsowi co robi gdy otrzyma Delete lub wsteczn spacj
     5.5 Jak nakaza emacsowi zamienienie Delete i Backspace
     5.6 Jak nakaza kermitowi zamienienie Delete i Backspace
     5.7 Jak poinformowa xterm o twoich ulubionych trybach tty
     5.8 Jak poinformowa xmosaic e klawisz Backspace wypisuje Del
     5.9 Lepsze rozwizanie dla programw uywajcych Motifa, jak netscape
     5.10 Co z termcap i terminfo?

  6. Zestawy znakw konsoli

  7. Przeczanie konsoli

     7.1 Zmiana numeru Wirtualnych Konsoli

  8. Ctrl-Alt-Del i inne specjalne kombinacje klawiszy

     8.1 Ctrl-Alt-Del (przeadowanie)
     8.2 Inne kombinacje
     8.3 Kombinacje w X
     8.4 Kombinacje Dosemu
     8.5 Skadanie symboli

  9. Rne waciwoci konsoli

  10. Jak wyj z trybu surowego

  11. Diody na klawiaturze

  12. Zmienna TERM

     12.1 Terminfo

  13. Jak zmusi inne programy do dziaania ze znakami spoza ASCII

  14. Co dokadnie robi XFree86-2.1 podczas inicjalizacji ukadu klawiatury?

  15. Niecodzienne klawisze i klawiatury

  16. Przykady uycia loadkeys i xmodmap

     16.1 "Mog uywa tylko jednego palca do pisania"

  17. Zmiana trybu ekranowego

     17.1 Instrukcje co do uywania resizecons

  18. Zmiana czstoci powtarzania klawiszy

  19. Przewijanie

  20. Wygaszanie ekranu

  21. Zrzuty ekranu

  22. Niektre waciwoci vt100 - tryb klawiszy aplikacji

  23. Niekompatybilo sprztowa



  ______________________________________________________________________

  1.  Uyteczne programy


  Ponisze pakiety zawieraj programy odnoszce si do klawiatury lub
  konsoli:

  kbd-0.90.tar.gz zawiera loadkeys, dumpkeys, showkey, setmetamode,
  setleds, setfont, showfont, mapscrn, kbd_mode, chvt, resizecons,
  disalloc, getkeycodes, setkeycodes.

  util-linux-2.6 zawiera setterm, kbdrate. (Tak, more w util-linux 2.6
  zrzuca core z powodu konfliktu nazw. Zachowaj swoj star kopi, albo
  uywaj util-linux-2.5, albo zmie 'savetty' na

  shutils-1.12 zawiera stty.

  open-1.4.tgz zawiera open (ktre powinno si przemianowa na openvt.
  Patrz te dynamic-vc-1.1.tar.gz).

  SVGATextMode-1.6.tar.gz zawiera SVGATextMode, program ktry zastpuje
  stare resizecons

  Dystrybucja X zawiera xmodmap, xset, kbd_mode (patrz te X386keybd(1)
  co do sytuacji pod XFree86 1.3, oraz Xserver(1) co do rozszerzenia
  XKEYBOARD pod X11R6).

  termcap-2.0.8.tar.gz zawiera termcap, star baz danych waciwoci
  terminala. ncurses-1.9.9e.tar.gz zawiera baz termlib ktra zastpuje
  termcap (wiele programw jednak cigle uywa termcap).

  Patrz loadkeys(1), setleds(1), setmetamode(1) co do kodw wysyanych
  przez rne klawisze i ustawiania diod poza X. Pod X, uyj xmodmap(1).

  Patrz setfont(8) co do adowania czcionek konsoli. Wielu ludzi woli
  zaadowa jak czcionk w rodzaju iso01.f16, poniewa domylna jest czcionk
  sprztow karty graficznej, i czsto jest to czcionka "Code Page 437", w
  ktrej brakuje akcentowanych znakw i innych symboli z zestawu Latin-1.

  Patrz setterm(1), kbdrate(8) co do waciwoci takich jak kolory ta i
  pisma, wygaszanie ekranu, szybko powtarzania klawiszy - wszystko poza
  X.  Pod X, patrz xset(1), te co do dwiku przy naciniciu klawisza i
  gonoci dzwonka.

  Plik /etc/termcap definiuje Esc-sekwencje dla wielu programw ktre
  odnosz si do konsoli (lub innego terminala). Bardziej nowoczesna
  wersja znajduje si w /usr/lib/terminfo. (Patrz terminfo(5).  Pliki
  terminfo s kompilowane kompilatorem terminfo /usr/lib/terminfo/tic,
  patrz tic(1). Ich zawarto obejrze mona uywajc programu infocmp, patrz
  infocmp(1). Sekwencje konsoli linuxowej opisane s w console_codes(4).



  2.  Oglnie o klawiaturze


  Naciskasz klawisz, a kontroler klawiatury wysya kody skanowe do
  sterownika klawiatury jdra. Niektre klawiatury mona programowa, ale
  przewanie kody klawiszy odpowiadajce klawiszom s stae.  Sterownik
  klawiatury jdra przesya po prostu cokolwiek otrzymuje do programu
  aplikacji, gdy ta jest w trybie skanowania kodw, na przykad podczas
  dziaania X. W przeciwnym razie przekada on strumie kodw skanowych na
  kody klawiszy, odpowiadajce zdarzeniom nacinicia i zwolnienia klawisza
  (pojedyncze nacinicie klawisza moe wytworzy do szeciu kodw skanowych).
  Kody te [klawiszy] s przesyane do programu aplikacji gdy znajduje si
  on w trybie kodw klawiszy (uywane, na przykad, przez showkey). W
  przeciwnym razie, owe kody klawiszy porwnywane s z rozkadem
  klawiatury, i znaleziony tam znak lub cig znakw jest przesyany do
  aplikacji, bd nastpuje wykonanie opisanej tam czynnoci.  (Na przykad,
  jeli nacinie si i zwolni klawisz a, klawiatura wysya kody skanowe 0x1e
  i 0x9e, przeksztacane s one na kody klawiszy 30 i 158, a potem
  przesyane jako 0141, kod ASCII lub Latin-1 litery 'a'; jeli nacinie si
  i zwolni Delete, klawiatura wysya kody skanowe 0xe0 0x53 0xe0 0xd3,
  przeksztacane na kody klawiszy 111 i 239, a potem przesyane jako
  czterosymbolowa sekwencja ESC [ 3 ~, wszystko to zakadajc amerykaski
  ukad klawiatury jako domylny (przykadem kombinacji klawiszy ktrej
  przypisana jest czynno jest Ctrl-Alt-Del).

  Tumaczenia pomidzy nieczstymi kodami skanowymi i klawiszy mona dokona
  uywajc narzdzia setkeycodes - tylko bardzo nieliczni bd go potrzebowa.
  Tumaczenia pomidzy kodami klawiszy i znakami bd cigami znakw lub
  czynnoci, to jest ukadem klawiatury, dokonuje si przy pomocy narzdzia
  loadkeys.  Po szczegy patrz getkeycodes(8), setkeycodes(8),
  dumpkeys(1), loadkeys(1).

  Tam gdzie w powyszym opisie pisz "przesane do aplikacji", znaczy to
  rzeczywicie "przesane do sterownika terminala". To jest, dalsze
  przetwarzanie jest bardzo podobne do przetwarzania tekstu ktry
  odbierany jest na zczu szeregowym. Szczegy tego przetwarzania ustala
  program .


  3.  Oglnie o konsoli


  I odwrotnie, kiedy wypisujesz co na konsol, najpierw podpada to pod
  standardowe przetwarzanie tty, a potem dostarczane jest sterownikowi
  konsoli. Sterownik konsoli emuluje vt100 i przekada dane wejciowe aby
  rozpozna Esc-sekwencje vt100 (ruchu kursora, czyszczenia ekranu itp.)
  Znaki ktre nie s czci Esc-sekwencji s najpierw przetwarzane na
  Unicode, uywajc jednej z czterech tablic odwzorowa jeli konsola nie
  bya od pocztku w trybie UTF-8, potem odnoszone do tabeli opisujcej
  zaleno midzy wartociami Unicode i pozycjami w czcionce, a uzyskane
  omio- lub dziewiciobitowe indeksy zapisywane s w pamici ekranu, gdzie
  powoduj wywietlenie ksztatw znakw znalezionych w ROMie znakowym karty
  graficznej. Do ROMu znakowego mona zaadowa wasne czcionki uywajc
  setfont, zaadowa odpowiadajc tablic odwzorowa Unicode uywajc
  loadunimap, i zaadowa tablic odwzorowa uytkownika uywajc mapscrn.
  Wicej szczegw poniej.

  Istnieje wiele konsol (zwanych Wirtualnymi Konsolami lub Wirtualnymi
  Terminalami) ktre dziel ten sam ekran. Moesz ich uywa jako oddzielnych
  urzdze, albo uruchamiajc na nich oddzielne sesje logowania, albo po
  prostu przesyajc na nie jakie dane wyjciowe z pocztku czy koca system
  log. Patrz niej ("Przeczanie konsol") co do tego jak je ustawia i
  przecza si midzy nimi.



  4.  Kasowanie terminala


  Na ekranie s mieci, a wszystkie nacinicia klawiszy daj w efekcie znaki
  do rysowania ramek. Co robi?

  Wiele programw przerysuje ekran po naciniciu ^L. Moe to pomc w
  sytuacji gdy na ekranie znajduj si mieci z modemu lub nadany
  komunikat. Komenda clear czyci ekran.

  Komenda reset kasuje sterownik konsoli. Pomaga to w sytuacji gdy ekran
  peen jest dziwnych znakw graficznych, a take jeli skurczy si do jednej
  linii na dole. Jeli nie masz tej komendy, bd jeli robi ona co innego,
  stwrz wasn dodajc ponisze dwie linie do pliku wykonywalnego reset w
  swojej ciece:



       #!/bin/sh
       echo -e \\033c




  to jest, masz zamiar posa dwa znaki: Esc-c, na konsol.

  Dlaczego ekran czasami si miesza i wywietlane jest 24 lub jedna linia,
  zamiast zwykych 25? C, gwnym winowajc jest tutaj TERM=vt100 (albo jaki
  inny terminal z 24 liniami) zamiast TERM= linux przy czeniu si
  zdalnie. Jeli stanie si to na /dev/tty2 napisz:



       % cat > /dev/tty2
       ^[c
       ^D




  na jakie innej WK (gdzie wpisujesz cztery symbole do cat: Esc, c,
  Enter, Ctrl-D) i odwie ekran na /dev/tty2 (moliwie uywajc ^L), co
  przywrci porzdek. Oczywicie staym rozwizaniem jest uywanie
  odpowiedniego kawaka termcap lub terminfo.

  Dlaczego tak si dzieje e czasami dostajesz mas znakw do rysowania
  ramek, np. po wysaniu na ekran pliku binarnego za pomoc cat ?
  Istnieje wiele Esc-sekwencji ktre zmieniaj zestaw znakw, a twj plik
  moe przypadkiem zawiera niektre z nich. Esc c to oglne przekasowanie,
  lekarstwo na wszystko, ale jeeli wiesz dokadnie co poszo nie tak,
  moesz to naprawi b...
Zgłoś jeśli naruszono regulamin