  Kolory na terminalach Linux-owych.
  Autor: Thorbjrn Ravn Andersen, ravn@dit.ou.dk v1.4, 7
  Sierpnia 1997 WWeerrssjjaa ppoollsskkaa:: BBaarrttoosszz
  MMaarruusszzeewwsskkiiBB..MMaarruusszzeewwsskkii@@jjttzz..oorrgg..ppll..  v1.3, 5 Listopada 1997


  Wikszo dystrybucji Linux-a ma polecenie 'ls' suce do wywietla
  nia zawartoci katalogu, ktre mona znacznie uatrakcyjni uywajc
  rnych kolorw, ale skonfigurowanie tego zgodnie z wasnymi upodoba
  niami moe nie by tak atw spraw.  Dokument ten opisuje rne
  aspekty i podejcia ustawiania polecenia 'ls' przez konfigurowanie
  istniejcego oprogramowania plus lokalizacja alternatywnego opro
  gramowania nie zawartego w dystrybucjach Slackware czy RedHat, ktrego
  mona uy na wikszoci systemw unix-owych.  Wersja HTML (w orygi
  nale) jest take dostpna na mojej stronie WWW
  <http://www.dit.ou.dk/~ravn/colour-ls>.  Dokument ten zosta napisany
  w standardzie ISO-8859-2.
  ______________________________________________________________________

  Spis treci


  1. Wprowadzenie.

  2. Szybki start dla niecierpliwych.

  3. Czy ja to w ogle mam?

  4. Z jakich kolorw mona wybiera ?

  5. Jak skonfigurowa kolory dla ls?

  6. Jak skonfigurowa inny standard tekstowy ni biae-na-czarnym ?

     6.1 Xterm.
     6.2 Konsole wirtualne.
        6.2.1 /etc/issue
        6.2.2 /etc/profile lub .profile.
        6.2.3 /etc/login lub .login
     6.3 Logowanie zdalne.

  7. Oprogramowanie.

  8. Od tumacza.



  ______________________________________________________________________

  11..  WWpprroowwaaddzzeenniiee..


  W ostatnich latach kolorowe monitory stay si bardzo popularne, i
  uytkownicy zaczynaj to wykorzystywa przez uywanie programw, ktre
  wykorzystuj kolory do wizualizacji rnych szczegw takich jak
  sowa kluczowe w jzykach programowania czy podkrelenie sw le
  napisanych.

  Poniewa konsola Linux-owa obsuguje kolory, oryginalna wersja GNU ls
  zostaa szybko zmodyfikowana, aby wywietla kolorowe informacje i
  program ten zosta doczony do dystrybucji Slackware ok. wersji 2.0.
  Ulepszone wersje tych at weszy w skad standardowej dystrybucji GNU
  ls i dlatego powinny by czci wszystkich nowych dystrybucji Linux-
  a.


  Wersja ta jest w gwnej mierze przepisan wersj pierwotn
  zawierajc informacje na temat xterminala i atania jdra.

  Informacja zawarta w tym dokumencie zostaa sprawdzona na dystrybucji
  RedHat 4.1 i zostaa oryginalnie skompilowana na dystrybucji Slackware
  2.0.2 i jdrze w wersi 1.1.54. Informacje na temat aty zostay
  uzyskane z Dystrybucji Slackware 2.2.0 z jdrem 1.2.13 i powok tcsh
  jako domyln oraz pniej sprawdzona na jdrze 2.0.27. Jeli uywasz
  jakiej innej konfiguracji czy wersji unix-a, to bd wdziczny za
  info na temat systemu operacyjnego i wersji oraz czy kolory s
  dostpne jako standardowe.


  22..  SSzzyybbkkii ssttaarrtt ddllaa nniieecciieerrpplliiwwyycchh..


  Jeli masz _n_o_w_ dystrybucj Linux-a, to zmodyfikuj pliki w swoim
  katalogu domowym tak jak to pokazano. Efekt bdzie widoczny po
  ponownym zalogowaniu si.



       ~/.bashrc:
           alias ls="ls --color"

       ~/.cshrc:
           alias ls 'ls --color'





  I to wszystko!

  Moesz take zrobi swj plik .colourrc, eby mie swoje kolory
  (``dircolors -p >$HOME/.colourrc''). Jest tam duo komentarzy, wic
  nie powiniene mie problemw z modyfikacjami. Po ustawieniu
  wszystkich kolorw piszesz ``eval `dircolors $HOME/.colourrc`'' eby
  ustawienia zadziaay.


  33..  CCzzyy jjaa ttoo ww ooggllee mmaamm??


  Przede wszystkim powiniene wiedzie czy masz wersj ls, ktra umie
  kolorowa. Sprbuj wyda takie polecenie na konsoli Linux-owej
  (chocia na xterm-ie te powinno si uda):



       % ls --color




  (% jest tu znakiem zachty systemu).

  Jeli dostaniesz komunikat o bdzie mwicy, e ls nie rozumie tej
  opcji, to musisz zainstalowa nowsz wersj pakietu GNU fileutils.
  Jeli nie masz odpowiedniego pakietu aktualizacyjnego dla swojej
  dystrybucji, to cignij ostatni wersj z najbliszego ci lustra GNU
  i zainstaluj bezporednio ze rda.

  Jeli _n_i_e dostae komunikatu o bdzie, to masz ls, ktre rozumie to
  polecenie. Niestety niektre wczeniejsze wersje zawarte w dystrybucji
  Slackware (i moliwe, e w innych) miay bdy. ls zawarte w
  dystrybucji RedHat 4.1 jest w wersji 3.13, ktra jest w porzdku.



       % ls --version
       ls - GNU fileutils-3.13




  Jeli uruchomie polecenie ``ls -- color'' na konsoli tekstowej
  Linux-a, to rezultat powienien by pokolorowany zgodnie z domylnymi
  ustawieniami i moesz teraz zdecydowa czy jest co co chcesz zmieni
  czy nie.

  Jeli uruchomie je w xterm-ie, to moge lub nie - zauway zmian w
  kolorach. W przeciwiestwie do ls, oryginalny program xterm nie
  obsugiwa kolorw dla programw uruchamianych w nim, ale ostatnie
  wersj to robi. Jeli twj xterm nie obsuguje kolorw, to powiniene
  zdoby nowsz wersj tak jak to opisano na kocu tego dokumentu. W
  midzyczasie przecz si na tryb tekstowy i pracuj tam.


  44..  ZZ jjaakkiicchh kkoolloorrww mmoonnaa wwyybbiieerraa ??


  Ten skrypt (dziki dla wielu tych, ktrzy przysali mi wersj bash)
  pokazuje wszystkie standardowe kombinacje kolorw na biecej konsoli.
  Jeli adne kolory sie nie pojawi, oznacza to, i twoj konsola nie
  obsuguje ANSI.


     #!/bin/bash
     # Wywietl kolory ANSI.
     #
     esc="\033["
     echo -n " _ _ _ _ _40 _ _ _ 41_ _ _ _42 _ _ _ 43"
     echo "_ _ _ 44_ _ _ _45 _ _ _ 46_ _ _ _47 _"
     for fore in 30 31 32 33 34 35 36 37; do
       line1="$fore  "
       line2="    "
       for back in 40 41 42 43 44 45 46 47; do
         line1="${line1}${esc}${back};${fore}m Normal  ${esc}0m"
         line2="${line2}${esc}${back};${fore};1m Bold    ${esc}0m"
       done
       echo -e "$line1\n$line2"
     done



  Numer koloru pierwszego planu jest pokazany po lewej stronie, a ta -
  w prostokcie. Jeli chcesz znaki jaskrawe dodajesz "1" do parametrw,
  tak e jasny niebieski na biaym to: "37;44;1". Caa sekwencja
  selekcji to: ESC [ 3 7 ; 4 4 ; 1 m.

  Uwaga: To w chwili obecnej nie moe by jaskrawe, wic nie moesz
  mie tego (jaskrawy brzowy) jako co innego ni pierwszy plan.
  Limit ten wynika ze sprztu.


  The colours are:
          0 - black    4 - blue           3# is foreground
          1 - red      5 - magenta        4# is background
          2 - green    6 - cyan
          3 - yellow   7 - white          ;1 is bold

  55..  JJaakk sskkoonnffiigguurroowwaa kkoolloorryy ddllaa llss??


  Jeli chcesz zmodyfikowa standardowe kolory, to potrzebujesz swojej
  osobistej kopii w swoim katalogu domowym, co uzyskasz przy pomocy
  polecenia:


  % cd ; dircolors -p > .coloursrc



  Po modyfikacji tego dobrze skomentowanego pliku musisz wczyta go do
  zmiennej rodowiskowej LS_COLORS, co mona zwykle zrobi poleceniem:


       eval `dircolors .colourrc`



  Musisz umieci t lini w swoim .bashrc (.cshrc, .tcshrc) (w
  zalenoci od twojej powoki), aby robi to automatycznie przy kadym
  logowaniu si. Wicej szczegw znajdziesz w stronie podrcznika man
  dircolors(1).


  66..  JJaakk sskkoonnffiigguurroowwaa iinnnnyy ssttaannddaarrdd tteekkssttoowwyy nnii bbiiaaee--nnaa--cczzaarrnnyymm ??


  Bdziesz musia przekaza sterownikowi twojego terminala kod, ktry
  chcesz mie jako domylny. Nie ma standardowego sposobu, aby to
  zrobi, ale w przypadku Linux-a masz program setterm.

  "setterm" uywa informacji zawartych w bazie danych o terminalach, aby
  ustawi atrybuty. Tak si wybiera:


       setterm -foreground black -background white -store



  gdzie -store poza waciw zmian powoduje, e ustawienia staj si
  take domylne dla biecej konsoli. Wymaga to, aby biecy terminal
  (zmienna rodowiskowa TERM) by opisany "wystarczajco dobrze" w bazie
  danych "termcap". Jeli setterm z jakich powodw nie dziaa, to tu
  jest kilka alternatyw:


  66..11..  XXtteerrmm..


  Jeden z tych Xterminali powinien by dostpny i przynajmniej jeden z
  nich obsuguje kolory.


       xterm -fg white -bg blue4
       color_xterm -fg white -bg blue4
       color-xterm -fg white -bg blue4
       nxterm -fg white -bg blue4



  gdzie 'color_xterm' obsuguje kolorow wersj 'ls'. Ten konkretny
  wybr przypomina kolory uywane na SGI.


  66..22..  KKoonnssoollee wwiirrttuuaallnnee..


  Moesz zmodyfikowa jdro raz na zawsze, tak samo jak udostpniajc
  standard podczas dziaania dla konsol wirtualnych przez sekwencj ze
  znakiem ESC. Jeli skompilowae swoje wasne jdro to zalecam
  modyfikacj jdra.

  Plik ze rde jdra, ktry powiniene zmodyfikowa okoo linii 1940,
  to /usr/src/linux/drivers/char/console.c


             def_color       = 0x07;   /* white */
             ulcolor         = 0x0f;   /* bold white */
             halfcolor       = 0x08;   /* grey */



  Ja uywam biaego na niebieskim:


             def_color       = 0x17;   /* white */
             ulcolor         = 0x1f;   /* bold white */
             halfcolor       = 0x18;   /* grey */



  Liczby to kody atrybutw w postaci szesnastkowej uywane przez kart
  graficzn: najbardziej znaczca cyfra ("1" w przykadzie powyej) jest
  tem; najmniej znaczca - pierwszym planem.  0=czarny, 1=niebieski
  2=zielony, 3=jasno-niebieski, 4=czerwony, 5=purpurowy,
  6=brzowy/ty, 7=biay. Dodaj 8, aby uzyska kolory jaskrawe.
  Zauwa, e w wikszoci przypadkw jaskrawe to = mrugajce znaki,
  matowe to.  (Od sjlam1@mda023.cc.monash.edu.au
  <mailto:sjlam1@mda023.cc.monash.edu.au>).

  Moesz take dostarczy nowy standard podczas dziaania dla
  wirtualnych konsol, na bazie na-ekran z niestandardowymi sekwencjami
  ANSI (znalazem podczas przgldania rde jdra)


       ESC [ 8 ]



  ktra ustawia domylne kolory na biece to i pierwszy plan.  Wtedy
  acuch resetujcy atrybuty (ESC [ m) wybiera te kolory zamiast
  biaego i czarnego.

  Waciwie bdziesz musia wysa ten acuch na konsol poleceniem
  echo za kadym razem kiedy restartujesz komputer. Zalenie od tego do
  czego uywasz swojego Linux-a, moe by kilka odpowiednich miejsc:


  66..22..11..  //eettcc//iissssuuee


  To jest miejsce, gdzie wywietla si komunikat "Welcome to Linux
  xx.yy", i jest to dobry wybr dla komputera, na ktrym pracujesz tylko
  ty. (Przypuszczalnie bdzie zmor dla uytkownikw logujcych si
  zdalnie przy pomocy telnet-a). Plik ten jest tworzony podczas startu
  (Slackware w /etc/rc.d/rc.S; RedHat w /etc/rc.d/rc.local), i
  powiniene zmodyfikowa linie wygldajce mniej wicej tak:



       echo ""> /etc/issue
       echo Welcome to Linux /bin/uname -a | /bin/cut -d\  -f3. >> /etc/issue




  na:


       ESCAPE="<wstaw tu znak escape>"
       echo "${ESCAPE}[H${ESCAPE}[37;44m${ESCAPE}[8]${ESCAPE}[2J"> /etc/issue
       echo Welcome to Linux /bin/uname -a | /bin/cut -d\  -f3. >> /etc/issue



  Ten kod spowoduje przesunicie kursora na pocztek strony, ustawienie
  koloru (tutaj: biay na niebieskim), zapisanie tego wyboru i
  wyczyszczenie reszty ekranu. Modyfikacja zadziaa przy nastpnym
  starcie systemu. Zapamitaj, aby wpisa kod klawisza ESC przy pomocy
  Ctrl-Q w emacs-ie, Ctrl-V w vi lub `Esc w joe, bo wyglda na to, e
  powoka, w ktrej si uruchamia ten skrypt nie rozumie sekwencji:
  /033.


  66..22..22..  //eettcc//pprrooffiillee lluubb ..pprrooffiillee..



       if [ "$TERM" = "console" ]; then
           echo "\033[37;44m\033[8]" #
     # albo uyj setterm
           setterm -foreground white -background blue -store
       fi




  66..22..33..  //eettcc//llooggiinn lluubb ..llooggiinn



       if ( "$TERM" == "console" ) then
         echo "\033[37;44m\033[8]"
     # albo uyj setterm
           setterm -foreground white -background blue -store
       endif




  66..33..  LLooggoowwaanniiee zzddaallnnee..


  Powiniene by w stanie uy setterm tak jak to byo pokazane wyej.
  Jeszcze raz: wymaga to, aby zdalny komputer wiedzia wystarczajco
  duo na temat twojego terminala i eby emulator terminala, przy pomocy
  ktrego si logujesz, obsugiwa kolory. Z moich dowiadcze wynika,
  e najlepszymi emulatorami vt100 dostpnymi obecnie na inne platformy
  to:


    MS-DOS:         MS-Kermit (darmowy, nie jest prod. Microsoftu)

    Windows 95/NT:  Kermit/95 (shareware)


    OS/2:           Kermit/95 (shareware).  Zauwa jednak, e
     standardowy telnet rozumie kolory i mona go ustawi lokalnie.

  Szczegy na temat Kermita znajdziesz na
  <http://www.columbia.edu/kermit/>


  77..  OOpprrooggrraammoowwaanniiee..


  Wszystkie informacje opisane tutaj zakadaj instalacj GNU/Linux-a.
  Jeli masz co innego (jak np. Sun-a z X-ami czy co takiego), to
  moesz zdoby i samemu sobie skompilowa programy.

  Kolorowa wersja xterm-a jest oparta na standardowych rdach xterm-a
  z at dostpn na kadym serwerze X11R6. Xterm dystrybuowany wraz z
  R6.3 podobno ma natywn obsug kolorw, ale nie by przeze mnie
  testowany.

  Na przykad tutaj: color-xterm-R6pl5-patch.gz

  Przejrzyj dokumentacj jeli uywasz starszej wersji X-w.  Uwaga: Nie
  prbowaem tego samemu !!!

  Mona go pobra z serwera: ftp.icm.edu.pl. We wersj co najmniej
  3.13.

  Bdziesz jeszcze potrzebowa aty, ktr moesz pobra z tego samego
  katalogu, a nazywa si ona "color-ls-3.12.0.3.patch.gz"

  Osobicie udao mi si skompilowa color-ls na Solaris-ie, SunOS-ie i
  Irix-ie.

  Bybym wdziczny za wszelki odzew na temat tego tekstu. Mj adres
  pocztowy: ravn@dit.ou.dk

  --

  Thorbjrn Ravn Andersen


  88..  OOdd ttuummaacczzaa..


  Tumaczenie to jest chronione prawami autorskimi  Bartosza
  Maruszewskiego.  Dozwolone jest rozprowadzanie i dystrybucja na
  prawach takich samych jak dokument oryginalny.

  Jeli znalaze jakie race bdy ortograficzne, gramatyczne,
  skadniowe, techniczne to pisz do mnie:

  B.Maruszewski@jtz.org.pl

  Na pewno znajdziesz tu jakie niejasne i niepolskie konstrukcje.
  Jeli wpadniesz na lepszy pomys daj mi zna.

  Oficjaln stron tumacze HOWTO jest http://www.jtz.org.pl/

  Aktualne wersje przetumaczonych dokumentw znajduj si na teje
  stronie. Dostpne s take poprzez anonimowe ftp pod adresem
  ftp.jtz.org.pl w katalogu /HOWTO/.

  Przetumaczone przeze mnie dokumenty znajduj si take na mojej
  stronie WWW. <http://www.jtz.org.pl/bartek/tlumaczenie.html> S tam
  te odwoania do Polskiej Strony Tumaczeniowej.

  Kontakt z nasz grup, grup tumaczy moesz uzyska poprzez list
  dyskusyjn jtz@ippt.gov.pl. Jeli chcesz sie na ni zapisa, to wylij
  list o treci subscribe jtz Imi Nazwisko na adres
  majordomo@ippt.gov.pl






























































