kbd vs ssh i console.sh

Jakub Bogusz qboosh w pld.org.pl
Nie, 17 Lut 2002, 01:00:58 CET


On Sat, Feb 16, 2002 at 09:55:48PM +0100, Jan Rekorajski wrote:
> Co niby ma robić poniższy fragment z /etc/profile.d/console.sh:
> 
> if [ "$CONSOLEMAP" != "" ]; then
>          # Switch the G0 charset map from the default
>          # ISO-8859-1
>          # to the user-defined map (loaded with
>          # consolefonts)
>         if [ -w /proc/$$/fd/0 -a -t 0 ]; then
>                 echo -n -e '\033(K' > /proc/$$/fd/0
>         else
>                 echo -n -e '\033(K' > /dev/tty
>         fi
> fi
> 
> Może mi to ktoś wyjaśnić?

Przełączyć terminal z domyślnej mapy iso-8859-1 na mapę user-defined,
wczytywaną z fontem (np. iso-8859-2).

> Dla informacji powiem że przez to g* zaczęły mi znikać polskie znaki po
> wymianie console-tools na kbd. Po wywaleniu tego magicznie wszystko
> wróciło do normy...

Jakiego fontu używasz na terminalu, jaką on ma mapę?
np. lat2a-16 z pakietu kbd używa kodów znaków (w unikodzie) odpowiadającym
znakom z iso-8859-1, więc mogą one zniknąć po "\e(K" (zależy czy jakaś
mapa była wczytana dodatkowo).
Używanie takiego pseudo-8859-1 ma jedną zaletę - po resecie terminala
nie trzeba przywracać kodowania user-defined. Ale się kaszani np. przy
konsoli pracującej w utf-8.

Font lat2u-16 (dorzucony osobno do kbd) ma poprawną unimapę i z tym
fontem powyższy fragment działa dobrze (sprawdzone na co najmniej
kilkunastu systemach).


-- 
Jakub Bogusz    http://prioris.mini.pw.edu.pl/~qboosh/



Więcej informacji o liście dyskusyjnej pld-devel-pl