SCREEN(1)                                               SCREEN(1)


NAZWA
       screen - menedżer ekranu z emulacją VT100/ANSI

SKŁADNIA
       screen [-opcje] [komenda [argumenty]]
       screen -r [[pid.]tty[.host]]
       screen -r właścicielsesji/[[pid.]tty[.host]]

OPIS
       Screen  jest pełnoekranowym menedżerem okien, który dzieli
       fizyczny terminal między kilkoma procesami (zwykle  inter­
       aktywnymi  powłokami).  Każdy z wirtualnych terminali daje
       funkcjonalność terminala DEC VT100,  a  dodatkowo  również
       pewne  funkcje  sterujące ze standardów ISO 6492 (ECMA 48,
       ANSI X3.64) oraz ISO 2022 (np. wstaw/usuń linię i  obsługę
       wielu  zestawów znaków). Dla każdego wirtualnego terminala
       istnieje bufor  przewijania  oraz  mechanizm  wycinania  i
       wklejania,  który  umożliwia przenoszenie obszarów tekstów
       między oknami.

       W momencie, gdy screen jest wywoływany, tworzy  pojedyncze
       okno z powłoką (lub z podaną komendą), a następnie znika z
       drogi, abyś mógł używać programu  w  normalny  sposób.   W
       dowolnej  chwili możesz utworzyć nowe pełnoekranowe okna z
       innymi programami (również z dodatkowymi powłokami), zabić
       istniejące  okna,  zobaczyć  listę  okien,  włączyć rapor­
       towanie wyjścia, wklejać między nimi tekst,  oglądać  his­
       torię  przewijania,  przełączać  się  między  oknami, itd.
       Wszystkie  okna  uruchamiają   swoje   programy   zupełnie
       niezależnie   od  pozostałych.  Programy  pracują  również
       wtedy, gdy ich okna są niewidoczne,  a  nawet  wtedy,  gdy
       cała sesja screen jest odłączona od terminala użytkownika.
       Gdy program się kończy, screen  (domyślnie)  zabija  okno,
       które  go  zawierało.  Jeśli  okno  to  było  na pierwszym
       planie, wyświetlacz  przełącza  się  na  okno  poprzednie;
       jeśli żadne już nie pozostanie, screen kończy działanie.

       Wszystko   co   wstukasz,   jest  przesyłane  do  programu
       pracującego w bieżącym oknie. Wyjątkiem  jest  jedna  sek­
       wencja,   która  jest  używana  do  inicjalizacji  komendy
       menedżera okien. Domyślnie każda komenda rozpoczyna się od
       control-a  (dalej  skracane  do  C-a), po którym występuje
       drugi klawisz.  Znak komendy i inne powiązania mogą być  w
       pełni  dostosowywane  do  twoich  potrzeb,  choć  mogą być
       zawsze tylko dwuznakowe.

       Screen nie rozumie przedrostka  "C-",  oznaczającego  con­
       trol.  Jako  argumenty  do np. komendy escape lub opcji -e
       używaj proszę notacji daszkowej  ("^A"  zamiast  "C-a")  .
       Screen  drukuje znaki sterujące (złożone z Ctrl) również w
       notacji daszkowej.

       Standardowym  sposobem   utworzenia   nowego   okna   jest
       wstukanie  "C-a  c".   Tworzy  to  nowe  okno  z powłoką i



                         10 czerwca 1999                        1





SCREEN(1)                                               SCREEN(1)


       przełącza się na nie  natychmiast,  niezależnie  od  stanu
       procesu z bieżącego okna. Podobnie można tworzyć nowe okno
       z własną komendą. Trzeba najpierw powiązać komendę z klaw­
       iszem  (w  twoim  pliku .screenrc, lub w linii komend "C-a
       :") a następnie użyć jej zupełnie tak,  jak  komendy  "C-a
       c".   Poza  tym,  nowe okna można tworzyć również z pomocą
       komend w rodzaju:

              screen emacs prog.c

       spod znaku zachęty powłoki z poprzednio utworzonego  okna.
       Nie  spowoduje to uruchomienia kolejnej kopii screen, lecz
       przekaże nazwę komendy i jej argumenty  menedżerowi  okien
       (określonemu  w  zmiennej środowiskowej $STY), który użyje
       jej do utworzenia nowego  okna.   Powyższy  przykład  uru­
       chomiłby  edytor emacs (edytujący prog.c) i przełączył się
       do jego okna.

       Jeśli "/var/run/utmp" jest zapisywalny  przez  screen,  to
       dla  każdego  okna  zostanie  zapisany  odpowiedni rekord,
       który będzie usuwany po zakończeniu pracy okna.   Jest  to
       przydatne   do   pracy  z  "talk",  "script",  "shutdown",
       "rsend",  "sccs"  i  innymi  podobnymi  programami,  które
       używają  pliku  utmp  do  określenia,  kim  jesteś. Dopóki
       screen jest aktywny na twoim terminalu, własny rekord ter­
       minala jest  usuwany z pliku utmp. Zobacz też "C-a L".



PODSTAWY
       Zanim  zaczniesz  używać  screen  musisz  upewnić  się, że
       prawidłowo  wybrałeś  sobie  rodzaj  terminala,   podobnie
       zresztą, jak dla każdego innego programu termcap/terminfo.
       (Możesz tego dokonać, używając np.  tset(1).)

       Jeśli jesteś niecierpliwy i  chcesz  rozpocząć  pracę  bez
       szczególnego  wczytywania  się  w  instrukcję,  powinieneś
       zapamiętać jedną komendę: "C-a ?".   Wpisanie  tych  dwóch
       znaków  spowoduje  wyświetlenie  listy  dostępnych  komend
       screen oraz ich powiązania. Każdy klawisz jest omówiony  w
       sekcji  "DOMYŚLNE  WIĄZANIA  KLAWISZY". Sekcja podręcznika
       "DOSTOSOWYWANIE"   zajmuje   się    zawartością    twojego
       .screenrc.

       Jeśli  twój  terminal  jest  "prawdziwym" terminalem auto-
       marginesowym (nie  pozwala  ostatniej  pozycji  ekranu  na
       bycie   poprawionej   bez   przewinięcia  ekranu),  możesz
       rozważyć  użycie  wersji  terminala,  która  ma  wyłączone
       automatyczne  marginesy.  Zapewni  to właściwe i optymalne
       odświeżanie ekranu we  wszystkich  przypadkach.  Większość
       dzisiejszych  terminali ma "magiczne" marginesy (automaty­
       czne marginesy plus używalna ostatnia  kolumna).  Jest  to
       typ  w  stylu  VT100  i  jest  doskonale przystosowany dla
       screen.    Jeśli   wszystko   co   masz   to   "prawdziwy"



                         10 czerwca 1999                        2





SCREEN(1)                                               SCREEN(1)


       automarginesowy  terminal, screen będzie w stanie go wyko­
       rzystać, jednak odświeżenie znaku wstawionego na  ostatnią
       pozycję  ekranu może nie być możliwe do czasu przewinięcia
       ekranu, lub przesunięcia znaku do innej bezpiecznej  pozy­
       cji. Opóźnienie to może być skrócone przy użyciu terminala
       z właściwością wstawiania znaków (insert-character).



OPCJE LINII KOMEND
       Screen ma następujące opcje linii komend:

       -a   włącz wszystkie właściwości (z pewnymi  wyjątkami)  w
            termcapie  każdego okna, nawet jeśli screen musi prz­
            erysowywać części  wyświetlacza  aby  zaimplementować
            daną funkcję.

       -A   Dostosuj   rozmiary   wszystkich  okien  do  rozmiaru
            bieżącego terminala.  Domyślnie, screen próbuje  odt­
            worzyć stare rozmiary swojego okna podczas podwiesza­
            nia pod terminale zmiennej wielkości  (te  z  "WS"  w
            swoim opisie, np.  suncmd lub jakiś xterm).

       -c plik
            przesłoń       domyślny      plik      konfiguracyjny
            "$HOME/.screenrc" plikem plik.

       -d|-D [pid.tty.host]
            nie uruchamia screen, lecz  odłącza  pracującą  gdzie
            indziej  sesję  screen.   Ma  to  taki  sam efekt jak
            wpisanie "C-a d" z  terminala  sterującego  screen'a.
            -D  jest odpowiednikiem klawisza odłączenia zasilania
            (power detach).   Jeśli  żadna  sesja  nie  może  być
            odłączona,  opcja  ta jest ignorowana. W połączeniu z
            -r/-R można osiągnąć ciekawsze efekty:

       -d -r   Podłącz na  nowo  (reattach)  sesję,  a  jeśli  to
               konieczne, najpierw ją odłącz.

       -d -R   Podłącz  na  nowo  sesję,  a  jeśli  to konieczne,
               najpierw ją odłącz, lub nawet utwórz.

       -d -RR  Podłącz na  nowo  sesję,  a  jeśli  to  konieczne,
               odłącz  ją  lub utwórz. Użyj pierwszej sesji jeśli
               dostępnych jest więcej niż jedna.

       -D -r   Podłącz na  nowo  sesję,  a  jeśli  to  konieczne,
               najpierw odłącz i wyloguj się zdalnie.

       -D -R   Podłącz tu i teraz. Znaczy to: jeśli sesja działa,
               to podłącz na nowo. Jeśli to  konieczne,  najpierw
               odłącz  i zdalnie się wyloguj. Jeśli nie działała,
               utwórz ją i poinformuj użytkownika. Jest  to  ulu­
               biony sposób autora.



                         10 czerwca 1999                        3





SCREEN(1)                                               SCREEN(1)


       -D -RR  Podłącz tu i teraz. Cokolwiek to znaczy, po prostu
               to zrób.

            Uwaga: Zawsze jest dobrym pomysłem  sprawdzenie  sta­
            tusu twoich sesji z pomocą "screen -list".

       -e xy
            określa, że znak komendy to x, a znak generujący lit­
            eralny znak komendy to y. Domyślnym ustawieniem  jest
            "C-a"  i  `a',  co  może być przekazane jako "-e^Aa".
            Podczas  tworzenia  sesji  screen  opcja  ta  ustawia
            domyślny  znak  komendy. W sesji wieloużytkownikowej,
            wszyscy dodani użytkownicy rozpoczną  z  tym  znakiem
            komendy.    Jednak   podczas   podłączenia   do   już
            działającej  sesji,  opcja  ta  zmienia  tylko   znak
            komendy  podłączającego  się  użytkownika.   Opcja ta
            jest równoważna odpowiednio komendom "defescape"  lub
            "escape".

       -f, -fn, i -fa
            włącza  lub wyłącza albo wchodzi w "automatyczny tryb
            przełączania" kontroli przepływu.  Może  to  być  też
            zdefiniowane poprzez "defflow" w pliku .screenrc.

       -h num
            Ustawia bufor przewijania historii na num linii.

       -i   powoduje, że klawisz przerwania (zwykle C-c) przerywa
            wyświetlanie natychmiast gdy włączona  jest  kontrola
            przepływu.   Zobacz komendę "defflow" z .screenrc dla
            szczegółów.  Używanie tej opcji nie jest zalecane.

       -l i -ln
            włącza/wyłącza  tryb  zgłoszeniowy  (dla  odświeżania
            /var/run/utmp).   Można  to  zdefiniować  też poprzez
            komendę "deflogin" pliku .screenrc.

       -ls i -list
            nie  uruchamia  sesji  screen,  lecz  drukuje   listę
            łańcuchów   pid.tty.host  określających  twoje  sesje
            screen.  Sesje oznaczone jako `detached'  (odłączone)
            mogą  być wznowione z pomocą "screen -r". Te, zaznac­
            zone jako `attached'  (podłączone)  działają  i  mają
            terminal  sterujący.  Jeśli  sesja  działa  w  trybie
            wieloużytkownikowym, jest  zaznaczona  jako  `multi'.
            Sesje  oznaczone  jako  `unreachable'  (nieosiągalne)
            żyją albo na innych hostach, albo są `martwe'.  Sesja
            nieosiągalna  jest  uważana za martwą jeśli jej nazwa
            odpowiada albo nazwie hosta lokalnego, albo  podanemu
            parametrowi.  Zobacz flagę -r dla opisu konstruowania
            porównań.  Sesje  zaznaczone  jako  `dead'  (martwe),
            powinny  być  sprawdzane i usuwane.  Zapytaj adminis­
            tratora jeśli nie  jesteś  pewien.  Sesje  usuwa  się
            opcją -wipe.



                         10 czerwca 1999                        4





SCREEN(1)                                               SCREEN(1)


       -L   mówi  screenowi  że  twój automarginesowy terminal ma
            zapisywalną  ostatnią  pozycję  ekranu.   Możesz   to
            ustawić  również  w  swoim  .screenrc, podając `LP' w
            komendzie "termcap".

       -m   powoduje, że  screen  ignoruje  zmienną  środowiskową
            $STY.  "screen  -m"  wymusza  tworzenie  nowej sesji,
            niezależnie od  tego,  czy  screen  jest  wywołany  z
            wewnątrz  innej  sesji  screen  czy  nie. Flaga ta ma
            specjalne znaczenie w połączeniu z opcją `-d':

       -m -d   Uruchom screen w trybie  "odłączonym".  Tworzy  to
               nową  sesję,  lecz  nie podłącza do niej.  Jest to
               przydatne dla skryptów startowych systemu.

       -m -D   To również uruchamia screen w trybie "odłączonym",
               lecz  nie  rozwidla nowego procesu. Komenda kończy
               działanie gdy kończy się sesja.

       -O   wybiera bardziej optymalny tryb wyjściowy dla twojego
            terminala niż prawdziwy VT100 (tyczy się tylko termi­
            nali automarginesowych bez `LP').  Może to być ustaw­
            ione w twoim .screenrc przez podanie `OP' w komendzie
            "termcap".

       -q   Powstrzymuje  drukowanie  komunikatów  o  błędach.  W
            połączeniu  z  "-ls", kod wyjścia jest następujący: 9
            wskazuje katalog bez sesji.  10  wskazuje  katalog  z
            pracującymi,  lecz  niepodłączalnymi sesjami. 11 (lub
            więcej) wskazuje na jedną (lub więcej) nadających się
            do  użycia  sesji.   W połączenie z "-r", kod wyjścia
            jest następujący: 10 oznacza,  że  nie  ma  sesji  do
            wznowienia.  12  (lub  więcej) oznacza, że istnieją 2
            (lub więcej) sesje  do  wznowienia  i  że  powinieneś
            podać, którą wybrać. W innych wypadkach "-q" nie daje
            efektu.

       -r [pid.tty.host]
       -r właścicielsesji/[pid.tty.host]
            wznawia odłączoną sesję screen.   Nie  można  podawać
            żadnych  innych  opcji  (poza  kombinacjami z -d/-D),
            choć  może  być   wymagany   opcjonalny   przedrostek
            [pid.]tty.host (w celu rozróżnienia wielu odłączonych
            sesji  screen).   Druga  postać   jest   używana   do
            podłączenia do sesji screen innego użytkownika, który
            pracuje w trybie wieloużytkownikowym. Oznacza to,  że
            screen   powinien  szukać  sesji  w  katalogu  innego
            użytkownika. Wymaga to setuid-root.

       -R   próbuje  wznowić  pierwszą  odłączoną  sesję  screen,
            którą  znajdzie.  Po  sukcesie  wszystkie  inne opcje
            linii  komend   są   ignorowane.    Jeśli   żadna   z
            odłączonych sesji nie istnieje, uruchamiana jest nowa
            sesja z użyciem podanych opcji, zupełnie jakby -R nie



                         10 czerwca 1999                        5





SCREEN(1)                                               SCREEN(1)


            zostało podane. Opcja ta jest ustawiana domyślnie gdy
            screen jest uruchamiany jako powłoka zgłoszeniowa.

       -s   ustawia domyślną powłokę na podany program. Normalnie
            używana  jest  wartość  zmiennej środowiskowej $SHELL
            (lub "/bin/sh" jeśli jej nie zdefiniowano).  Może  to
            być  też  zdefiniowane  poprzez komendę "shell" pliku
            .screenrc.

       -S nazwasesji
            Podczas tworzenia nowej  sesji,  opcja  ta  może  być
            użyta  do  podania  znaczącej  nazwy  sesji. Nazwa ta
            identyfikuje sesję dla akcji "screen -list" i "screen
            -r". Podmienia domyślny przyrostek [tty.host].

       -t nazwa
            ustawia  tytuł  (a.k.a.)  dla  domyślnej powłoki, lub
            podanego programu.  Zobacz też  komendę  "shelltitle"
            pliku .screenrc.

       -v   Wydrukuj numer wersji.

       -wipe [dopasowanie]
            robi  to samo co "screen -ls", lecz usuwa sesje zami­
            ast zaznaczać je jako martwe ('dead').   Nieosiągalna
            sesja   jest  uważana  za  martwą,  jeśli  jej  nazwa
            odpowiada nazwie hosta lokalnego, lub jakiegoś jawnie
            podanego  parametru.  Zobacz  opis flagi -r dla opisu
            konstruowania dopasowań.

       -x   Podłącz  do  nieodłączonej   sesji   screen.    (Tryb
            wielowyświetlaczowy).



DOMYŚLNE WIĄZANIA KLAWISZY
       Jak  wspomniano,  każda komenda screen składa się z "C-a",
       za którym następuje określony znak. Dla wygody,  wszystkie
       komendy,  które  są powiązane z małymi literami, powiązane
       są też z ich odpowiednikami złożonymi z Ctrl (z  wyjątkiem
       "C-a  a"; zobacz niżej); tak więc "C-a c" zarówno jak "C-a
       C-c" może być używany do utworzenia  okna.  Zobacz  sekcję
       "DOSTOSOWYWANIE" dla opisu komendy.


       Następująca tablica pokazuje domyślne wiązania klawiszy:

       C-a '
       C-a "       (select)      Zapytaj o nazwę okna, do którego
                                 chcesz  się  przełączyć,  lub  o
                                 jego numer.

       C-a 0       (select 0)
        ...           ...



                         10 czerwca 1999                        6





SCREEN(1)                                               SCREEN(1)


       C-a 9       (select 9)
       C-a -       (select -)    Przełącz na okno numer 0 - 9 lub
                                 na puste okno.

       C-a tab     (focus)       Przełącz ogniskowanie wejścia na
                                 następny region.

       C-a C-a     (other)       Włącz   poprzednio   wyświetlane
                                 okno.  Zauważ, że to  połączenie
                                 jest    równoważne   dwukrotnemu
                                 wpisaniu znaku komendy (chyba że
                                 jest    to   przesłonięte).   Na
                                 przykład,  jeśli  używasz  opcji
                                 "-e]x",  ta  komenda  stanie się
                                 "]]".

       C-a a       (meta)        Wyślij  znak  komendy  (C-a)  do
                                 okna. Zobacz komendę escape.

       C-a A       (title)       Zezwól   użytkownikowi   ustawić
                                 nazwę dla bieżącego okna.

       C-a b
       C-a C-b     (break)       Wyślij   do   okna    przerwanie
                                 (break).

       C-a B       (pow_break)   Otwórz na nowo linię terminala i
                                 wyślij przerwanie (break).

       C-a c
       C-a C-c     (screen)      Utwórz nowe  okno  z  powłoka  i
                                 przełącz się na nie.

       C-a C       (clear)       Wyczyść ekran.

       C-a d
       C-a C-d     (detach)      Odłącz screen od tego terminala.

       C-a D D     (pow_detach)  Odłącz i się wyloguj.

       C-a f
       C-a C-f     (flow)        Włącz,   wyłącz,    lub    ustaw
                                 automatyczny przepływ.

       C-a F       (fit)         Zmień  rozmiar  okna  na  obecny
                                 rozmiar regionu.

       C-a C-g     (vbell)       Włącza tryb  wizualnego  dzwonka
                                 screen'a.

       C-a h       (hardcopy)    Zapisz  twardą  kopię  bieżącego
                                 okna do pliku "hardcopy.n".

       C-a H       (log)         Rozpoczyna/kończy   raportowanie



                         10 czerwca 1999                        7





SCREEN(1)                                               SCREEN(1)


                                 bieżącego okna do pliku "screen­
                                 log.n".

       C-a i
       C-a C-i     (info)        Pokaż informację o tym oknie.

       C-a k
       C-a C-k     (kill)        Zniszcz bieżące okno.

       C-a l
       C-a C-l     (redisplay)   Całkowicie odśwież bieżące okno.

       C-a L       (login)       Włącz   slot  zgłoszeniowy  tego
                                 okna.   Dostępne   tylko   jeśli
                                 screen  jest  skonfigurowany  do
                                 odświeżania bazy utmp.

       C-a m
       C-a C-m     (lastmsg)     Powtórz   ostatnią    wiadomość,
                                 wyświetloną w linii komunikatów.

       C-a M       (monitor)     Włącza  monitorowanie  bieżącego
                                 okna.

       C-a space
       C-a n
       C-a C-n     (next)        Przełącz na następne okno.

       C-a N       (number)      Pokaż  numer (i tytuł) bieżącego
                                 okna.

       C-a backspace
       C-a h
       C-a p
       C-a C-p     (prev)        Przełącz  na   poprzednie   okno
                                 (odwrotne do C-a n).

       C-a q
       C-a C-q     (xon)         Wyślij  control-q  do  bieżącego
                                 okna.

       C-a Q       (only)        Skasuj  wszystkie  regiony  poza
                                 bieżącym.

       C-a r
       C-a C-r     (wrap)        Włącz ustawienie zawijania linii
                                 (line-wrap)    bieżącego    okna
                                 (włącz   automatyczne  marginesy
                                 okna).

       C-a s
       C-a C-s     (xoff)        Wyślij do  bieżącego  okna  con­
                                 trol-s.




                         10 czerwca 1999                        8





SCREEN(1)                                               SCREEN(1)


       C-a S       (split)       Podziel  bieżący  region  na dwa
                                 nowe.

       C-a t
       C-a C-t     (time)        Pokaż informację systemową.

       C-a v       (version)     Wyświetl wersję  i  datę  kompi­
                                 lacji.

       C-a C-v     (digraph)     Wstaw dwuznak.

       C-a w
       C-a C-w     (windows)     Pokaż listę okien.

       C-a W       (width)       Włącz 80/132 kolumny.

       C-a x
       C-a C-x     (lockscreen)  Zablokuj (lock) ten terminal.

       C-a X       (remove)      Zabij bieżący region.

       C-a z
       C-a C-z     (suspend)     Zwieś  screen.  Twój system musi
                                 obsługiwać  kontrolę   zadań   w
                                 stylu BSD.

       C-a Z       (reset)       Zresetuj  terminal  wirtualny na
                                 jego wartości "power-on".

       C-a .       (dumptermcap) Zapisz plik ".termcap".

       C-a ?       (help)        Pokaż wiązania klawiszowe.

       C-a C-\     (quit)        Zabij wszystkie okna  i  zakończ
                                 screen.

       C-a :       (colon)       Wejdź do trybu linii komend.

       C-a [
       C-a C-[
       C-a esc     (copy)        Wejdź  w tryb kopiowania/przewi­
                                 jania.

       C-a ]       (paste .)     Zapisz zawartość bufora  wkleja­
                                 nia   na  kolejkę  standardowego
                                 wejścia bieżącego okna.

       C-a {
       C-a }       (history)     Kopiuj i wklej poprzednią  linię
                                 (komend).

       C-a >       (writebuf)    Zapisz bufor wklejania do pliku.

       C-a <       (readbuf)     Wczytuje plik wymiany screena do



                         10 czerwca 1999                        9





SCREEN(1)                                               SCREEN(1)


                                 bufora wklejania.

       C-a =       (removebuf)   Usuwa  plik, używany przez C-a <
                                 i C-a >.

       C-a ,       (license)     Pokazuje, skąd screen  pochodzi,
                                 dokąd  poszedł i dlaczego możesz
                                 go używać.

       C-a _       (silence)     Rozpoczyna/kończy  monitorowanie
                                 bieżącego  okna na nieaktywność.

       C-a *       (displays)    Pokaż listing wszystkich obecnie
                                 podłączonych wyświetlaczy.



DOSTOSOWYWANIE
       "Katalog  gniazd"  (socket  directory)  domyślnie  jest  w
       $HOME/.screen lub zwyczajnie w /tmp/screens. Jeśli  screen
       jest   zainstalowany   z   setuid-root,  to  administrator
       powinien skompilować go z  odpowiednim  (nie  zamontowanym
       przez  NFS)  katalogiem  gniazd.   Jeśli screen nie działa
       jako setuid-root, użytkownik może podać dowolny katalog  o
       prawach 700 poprzez zmienną środowiskową $SCREENDIR.

       W  momencie,  gdy  screen  jest  uruchamiany,  wykonuje on
       komendy  inicjalizacyjne  z   plików   "/etc/screenrc"   i
       ".screenrc"   z   katalogu  domowego  użytkownika.  Są  to
       "domyślne wartości programisty", które można przesłonić  w
       następujące  sposoby:  dla  znalezienia  globalnego  pliku
       screenrc, screen poszukuje zmiennej  środowiskowej  $SYSS­
       CREENRC  (ta  właściwość  przesłaniania może być wyłączona
       podczas kompilacji). Plik screenrc konkretnego użytkownika
       jest  szukany  w  $SCREENRC,  a  potem  w $HOME/.screenrc.
       Opcja -c linii komend ma jeszcze większy priorytet.

       Komendy w tych plikach są  używane  do  ustawiania  opcji,
       wiązania funkcji do klawiszy i do automatycznego zestawia­
       nia jednego lub  więcej  okien  na  starcie  twojej  sesji
       screen.  Komendy są wymieniane jedna na linie; puste linie
       są ignorowane.  Argumenty komend są  rozdzielane  tabulac­
       jami  lub  spacjami  i  mogą być otaczane pojedynczymi lub
       podwójnymi cudzysłowami.  Znak `#' zmienia resztę linii  w
       komentarz, poza sytuacją gdy jest cytowany.  Niezrozumiałe
       linie są ignorowane z wydaniem ostrzeżenia.  Komendy  mogą
       zawierać odniesienia do zmiennych środowiskowych. Składnia
       jest podobna do powłokowej "$VAR" lub "${VAR}". Zauważ, że
       wprowadza  to  niekompatybilność  z  poprzednimi  wersjami
       screen, jako że teraz znak '$' musi  być  chroniony  przez
       '\'   jeśli  nie  chcemy  dokonać  podstawienia  zmiennej.
       Łańcuch w pojedynczych cudzysłowach jest również chroniony
       od podstawienia zmiennych.




                         10 czerwca 1999                       10





SCREEN(1)                                               SCREEN(1)


       Jako  przykłady  z dystrybucją screena są przekazywane dwa
       pliki konfiguracyjne: "etc/screenrc" i  "etc/etcscreenrc".
       Zawierają one wiele przydatnych przykładów różnych komend.

       Dostosowywanie  można  również  wykonywać  'on-line'.  Aby
       wejść  w  tryb komend, wciśnij `C-a :'. Zauważ, że komendy
       rozpoczynające się od "def" zmieniają  wartości  domyślne,
       podczas gdy inne zmieniają ustawienia bieżące.

       Dostępne są następujące komendy:

       acladd nazwyużytkowników [crypted-pw]
       addacl nazwyużytkowników

       Umożliw  użytkownikom  pełny  dostęp  do tej sesji screen.
       Nazwyużytkowników  mogą  być  jednym  użytkownikiem,   lub
       rozdzieloną   przecinkami  listą  użytkowników.  Opcja  ta
       umożliwia  podłączenie  do   sesji   screen   i   wykonuje
       równoważnik  `aclchg  nazwyużytkowników  +rwx  "#?"'.  Aby
       dodać użytkownika  o  ograniczonym  dostępie,  użyj  niżej
       opisanej  komendy  `aclchg'.  Jeśli podany jest opcjonalny
       drugi parametr, to powinno  to  być  zakodowane  (crypted)
       hasło  dla  podanego  użytkownika. `Addacl' jest synonimem
       `acladd'. Przydatne tylko w trybie wieloużytkownikowym.

       aclchg nazwyużytkowników bityuprawnień lista
       chacl nazwyużytkowników bityuprawnień lista

       Zmień   uprawnienia   rozdzielonej    przecinkami    listy
       użytkowników.  Bity  uprawnień są reprezentowane jako `r',
       `w' i `x'. Poprzedzenie symbolu `+' zapewnia  uprawnienie,
       `-'   odbiera   je.   Trzeci   parametr  jest  rozdzieloną
       przecinkami listą  komend  i/lub  okien  (podawanych  albo
       przez numer, albo przez tytuł). Specjalna lista `#' odnosi
       się do wszystkich okien, `?' do wszystkich  komend.  Jeśli
       nazwyużytkowników  składają  się  z pojedynczej `*', akcja
       będzie dotyczyć wszystkich znanych użytkowników.   Komenda
       może  być przez użytkownika wykonywana gdy ma dla niej bit
       `x'.  Użytkownik może do okna  wprowadzać  dane  wejściowe
       jeśli ma bit `w', i żaden inny użytkownik nie blokuje tego
       okna do zapisu. Inne  bity  są  obecnie  ignorowane.   Aby
       wycofać  blokadę zapisu z okna 2: `aclchg nazwaużytkownika
       -w+w 2'.  Aby zezwolić na  dostęp  tylko  dla  odczytu  do
       sesji:   `aclchg  nazwaużytkownika  -w  "#"'.   Gdy  tylko
       użytkownik staje się znany dla programu screen ,  może  on
       dołączać  się  do sesji i (domyślnie) ma pełne uprawnienia
       do wszystkich komend i okien. Uprawnienia wywoływania  dla
       komend  acl,  `at' i innych również powinny być usuwane; w
       przeciwnym wypadku użytkownik może odzyskać prawa  zapisu.
       Uprawnień   specjalnego   użytkownika   nobody  nie  można
       zmieniać tą komendą (zobacz komendę "su").   `Chacl'  jest
       synonimem    `aclchg'.     Działa    jedynie    w   trybie
       wieloużytkownikowym.




                         10 czerwca 1999                       11





SCREEN(1)                                               SCREEN(1)


       acldel nazwaużytkownika

       Usuń użytkownika z listy kontrolnej screena.   Jeśli  jest
       on  obecnie podłączony, wszystkie wyświetlacze użytkownika
       są odłączane od sesji. Nie może się znów podłączyć. Działa
       jedynie w trybie wieloużytkownikowym.

       aclgrp nazwaużytkownika [nazwagrupy]

       Tworzy  grupy  użytkowników,  które  dzielą  wspólne prawa
       dostępu. Nazwa grupy jest nazwą użytkownika lidera  grupy.
       Znaczy  to,  że  jeśli  użytkownik  nie przejdzie kontroli
       dostępu,  robiona  jest   kontrola   dla   lidera   grupy.
       Użytkownika  można  usunąć  ze  wszystkich  grup, używając
       specjalnej wartości "none" jako nazwygrupy.   Jeśli  drugi
       parametr  jest  pominięty, wyświetlane są wszystkie grupy,
       do których należy użytkownik.

       aclumask [[użytkownicy]+bity  |[użytkownicy]-bity  ....  ]
       umask [[użytkownicy]+bity |[użytkownicy]-bity .... ]

       Określa  to  dostęp,  jaki  będą mieli inni użytkownicy do
       okien tworzonych przez  wołającego  komendę.   Użytkownicy
       mogą  nie  być  podani,  może  być  jeden, lub rozdzielona
       przecinkami lista  nazw  użytkowników.  Jeśli  nie  podano
       użytkowników,  zakładana  jest  lista  wszystkich  znanych
       obecnie użytkowników.  Bity są  dowolną  kombinacją  bitów
       kontroli  dostępu,  zdefiniowanych komendą "aclchg". Spec­
       jalna nazwa użytkownika "?" predefiniuje dostęp do  dowol­
       nego  okna,  jaki  na  starcie  dostaną  nieznani  obecnie
       użytkownicy.  Specjalna nazwa użytkownika "??"  predefini­
       uje  dostęp  do  komend,  jaki na starcie dostaną nieznani
       obecnie użytkownicy.  Praw specjalnego użytkownika  nobody
       nie  można  zmieniać  (zobacz komendę "su").  `Umask' jest
       synonimem `aclumask'.

       activity wiadomość

       Gdy w monitorowanym oknie z tła  pojawi  się  jakaś  akty­
       wność,  screen  wyświetla  informację w linii komunikatów.
       Powiadomienie może być przedefiniowywane  komendą  "activ­
       ity".  Znaki `%' w wiadomości są zamieniane na numer okna,
       w którym zaistniała aktywność, a `~' na definicję  dzwonka
       w twoim termcapie.  Domyślną wiadomością jest

                   'Activity in window %'

       Zauważ,  że  domyślnie  monitorowanie jest wyłączone, lecz
       można to zmienić komendą "monitor" (C-a M).

       allpartial on|off

       Jeśli jest to włączone, po zmianie  okna  odświeżana  jest
       tylko bieżąca linia kursora. Ma to wpływ na wszystkie okna



                         10 czerwca 1999                       12





SCREEN(1)                                               SCREEN(1)


       i jest  przydatne  na  powolnych  terminalach.  Poprzednie
       ustawienie  pełnego/częściowego odświeżania dla okna można
       przywrócić poprzez "allpartial off".  Jest to flaga  glob­
       alna,  która  natychmiast  zaczyna  działać  we wszystkich
       oknach, przesłaniając ustawienia  "partial".  Nie  zmienia
       domyślnego zachowania odświeżania nowo tworzonych okien.

       at [identyfikator][#|*|%] komenda [arg ... ]

       Wywołaj  komendę  na innych wyświetlaczach lub oknach tak,
       jakby zostały one tam wprowadzone. "At"  zmienia  kontekst
       (`bieżące  okno' lub `bieżący wyświetlacz') komendy. Jeśli
       pierwszy parametr opisuje  nieunikalny  kontekst,  komenda
       zostanie  wykonania  wiele  razy.  Jeśli pierwszy parametr
       jest w postaci  `identyfikator*',  to  identyfikator  jest
       dopasowywany do nazw użytkowników. Komenda jest wykonywana
       raz na  każdym  wyświetlaczu  wybranego  użytkownika(ków).
       Jeśli  pierwszy parametr jest postaci `identyfikator%', to
       identyfikator jest dopasowywany do wyświetlaczy.  Wyświet­
       lacze  są  nazywane  według tty, do których są podłączone.
       Prefiks `/dev/' lub `/dev/tty' można pominąć.  Jeśli iden­
       tyfikator  zawiera  `#',  lub nie ma nic doklejonego, jest
       dopasowywany do numerów okien i tytułów.  Pominięcie iden­
       tyfikatora na początku `#', `*' lub `%' wybiera wszystkich
       użytkowników, wszystkie wyświetlacze, lub wszystkie  okna.
       Dzieje  się  tak  dlatego,  że dokonywane jest dopasowanie
       prefiksowe.   Zauważ,  że  na  dotkniętych  wyświetlaczach
       pojawi  się  krótki  komunikat,  określający co się stało.
       Prawa są sprawdzane dla inicjatora komendy "at", a nie dla
       właścicieli dotkniętych wyświetlaczy.  Zauważ, że znak '#'
       gdy poprzedza go biała spacja działa jak komentarz.  Można
       go   wycytować,   poprzedzając   znakiem  `\'.   Prawa  są
       sprawdzane  dla  inicjatora  komendy  "at",  a   nie   dla
       właścicieli dotkniętych wyświetlaczy.
       Zastrzeżenie:  Podczas  dopasowywania  okien, komenda jest
       wykonywana  przynajmniej  raz  na  okno.  Komendy,   które
       zmieniają  wewnętrzną  aranżację  okien (jak "other") mogą
       być wywołane ponownie. Uważaj więc przy wywoływaniu komend
       w  rodzaju "login"!.  Niektóre komendy (np. "stuff", "pro­
       cess" lub "paste") wymagają by  z  docelowymi  oknami  był
       związany   wyświetlacz.   Komendy   te  mogą  nie  działać
       właściwie dla "at" krążącego po oknach.

       autodetach on|off

       Ustawia  czy  screen  ma  się  automatycznie  odłączać  po
       odwieszeniu   (hangup),   co   zachowuje  wszystkie  twoje
       pracujące programy aż do ich wznowienia komendą screen -r.
       Gdy   właściwość   jest   wyłączona,   sygnał  odwieszenia
       (wysyłany przy wylogowywaniu się--przyp.  tłum.)  zakończy
       screen    i   wszystkie   procesy,   które   on   zawiera.
       Autoodłączanie jest domyślnie włączone.





                         10 czerwca 1999                       13





SCREEN(1)                                               SCREEN(1)


       autofixterm on|off

       Ustawia czy screen będzie dodawał brakujące właściwości do
       wpisów termcap/info. Jest to domyślnie włączone.

       autonuke on|off

       Ustawia  czy sekwencja czyszczenia ekranu powinna niszczyć
       całe wyjście, które jeszcze nie zostało wypisane na termi­
       nal. Zobacz też "obuflimit".

       bell_msg [wiadomość]

       Gdy  w  oknie  z  tła  wysłany  jest  znak dzwonka, screen
       wyświetla informację w linii komunikatów. Informacja  może
       być   dzięki   tej   komendzie  redefiniowana.  Znaki  `%'
       wiadomości są zamieniane  numerem  dzwoniącego  okna,  `~'
       jest  zamieniana  na  definicję dzwonka w twoim termcapie.
       Domyślną wiadomością jest

                   'Bell in window %'

       W celu powstrzymania drukowania linii informacyjnej, można
       nadać  jej  wartość  pustą (bell_msg "").  Bez parametrów,
       pokazywana jest wiadomość obecna.

       bind klawisz [komenda [arg]]

       Wiąże komendę do klawisza.   Domyślnie,  większość  komend
       udostępnianych  przez  screen  jest przywiązana do jednego
       lub większej ilości klawiszy, wg  opisu  sekcji  "DOMYŚLNE
       WIĄZANIA KLAWISZY", np. komenda tworzenia nowego okna jest
       dowiązana do "C-c"  i  "c".   W  celu  przedefiniowania  i
       definiowania  nowych  wiązań  używana jest komenda "bind".
       Argument klawisz jest albo pojedynczym znakiem, albo dwuz­
       nakową  sekwencją w postaci "^x" (oznaczającą "C-x"), albo
       lewym ukośnikiem z liczbą ósemkową (oznaczającą kod  ASCII
       znaku),  albo  lewym  ukośnikiem z dołączonym znakiem, jak
       "\^" czy "\\".  Argument jeśli  chcesz  może  być  również
       cytowany.   Jeśli  nie  ma  podanego  dalszego  argumentu,
       wszystkie poprzednio zestawione wiązania dla tego klawisza
       są  usuwane. Komenda może być dowolną komendą wymienioną w
       tej sekcji.

       Przykłady:

                   bind ' ' windows
                   bind ^k
                   bind k
                   bind K kill
                   bind ^f screen telnet foobar
                   bind \033 screen -ln -t root -h 1000 9 su

       przywiąże spację do komendy, która wyświetla  listę  okien



                         10 czerwca 1999                       14





SCREEN(1)                                               SCREEN(1)


       (więc  komenda normalnie wywoływana przez "C-a C-w" będzie
       również dostępna jako "C-a spacja"). Następne  trzy  linie
       usuwają domyślne wiązanie zabijania z "C-a C-l" i "C-a l".
       Następnie do  komendy  zabijania  wiązane  jest  "C-a  K".
       Następnie  klawisz  "C-f" jest wiązany z komendą tworzenia
       okna  z  połączeniem  telnetowym  do  foobar,  a   klawisz
       "escape"   jest   wiązany   do   komendy,   która   tworzy
       niezgłoszeniowe okno  z  a.k.a.  "root"  w  slocie  #9,  z
       powłoką  superużytkownika  i  buforem  przewijania na 1000
       linii.

       bindkey [-d] [-m] [-a] [[-k|-t] łańcuch [kmd arg]]

       Komenda  ta  zarządza  wejściowymi  tablicami   translacji
       screena. Każdy wpis w jednej z tablic mówi mu jak reagować
       gdy pojawi się określona sekwencja znaków.  Istnieją  trzy
       tablice:   jedna,  która  powinna  zawierać  akcje  zapro­
       gramowane przez użytkownika, druga  dla  domyślnych  akcji
       emulacji  terminala i trzecia dla trybu kopiowania screena
       do  zajmowania  się  poruszaniem  kursora.  Zobacz  sekcję
       "TRANSLACJA WEJŚCIOWA" dla listy domyślnych wiązań klawis­
       zowych.
       Jeśli podana jest opcja -d,  bindkey  modyfikuje  domyślną
       tablicę, -m zmienia tablicę trybu kopiowania, a bez żadnej
       opcji  wybierana  jest  tablica   użytkownika.    Argument
       łańcuch  jest sekwencją znaków, do której przywiązana jest
       akcja. Może  to  być  albo  skończony  napis,  albo  nazwa
       właściwości  klawiaturowej z termcap (wybierana opcją -k).
       Niektóre  klawisze  terminala  VT100  mogą  wysyłać   inne
       łańcuchy  gdy włączony jest tryb aplikacji (np. ruchy kur­
       sora). Takie klawisze mają dwa wpisy w tablicy translacji.
       Możesz wybrać wpisy trybu aplikacji podając opcję -a.
       Opcja  -t  mówi screenowi by nie dokonywał międzyznakowego
       pomiaru czasu. Nie można go wyłączyć  jeśli  używana  jest
       właściwość termcap.
       Kmd może być dowolną z komend screena o określonej liczbie
       argumentów.  Jeśli kmd jest pominięta, wiązanie klawiszowe
       jest usuwane z tablicy.
       Oto kilka przykładów wiązań klawiaturowych:

               bindkey -d
       Pokaż  wszystkie  domyślne  wiązania  klawiaturowe.  Wpisy
       trybu aplikacji są zaznaczone [A].

               bindkey -k k1 select 1
       Upewnij się, że klawisz "F1" przełącza na okno numer 1.

               bindkey -t foo stuff barfoo
       Uczyń z "foo" skrót dla słowa "barfoo".  Czas  oczekiwania
       jest  wyłączony,  więc  użytkownicy  mogą  się  guzdrać  z
       wklepywaniem.

               bindkey "\024" mapdefault
       To wiązanie klawiszowe powoduje, że "^T" staje się znakiem



                         10 czerwca 1999                       15





SCREEN(1)                                               SCREEN(1)


       specjalnym    wiązań   klawiaturowych.   Jeśli   dokonałeś
       powyższego  wiązania  "stuff  barfoo",  możesz  wprowadzić
       słowo  "foo"  naciskając  "^Tfoo". Jeśli chcesz wprowadzić
       "^T", musisz nacisnąć go dwukrotnie.

               bindkey -k F1 command
       Uczyń  F11  (nie  F1!)  alternatywnym  znakiem  specjalnym
       screena (poza ^A).

       break [czas]

       Wysyłaj  do tego okna przez czas*0.25 sekund sygnał przer­
       wania.  Dla systemów nieposixowych, interwał czasowy  może
       być  zaokrąglany  w  górę do pełnych sekund. Jest to przy­
       datne jeśli do okna jest podłączone urządzenie znakowe  (a
       nie   proces  powłokowy)  (Zobacz  też  rozdział  "RODZAJE
       OKIEN").  Maksymalny czas trwania sygnału przerwania  jest
       ograniczony do 15 sekund.

       breaktype [tcsendbreak|TIOCSBRK |TCSBRK]

       Wybierz  jedną z dostępnych metod generowania sygnału prz­
       erwania dla urządzeń  terminalowych.  Komenda  ta  powinna
       dotykać jedynie bieżącego okna. Wciąż jednak zachowuje się
       identycznie do "defbreaktype".  W  przyszłości  będzie  to
       zmienione.  Wołanie  "breaktype"  bez parametrów wyświetla
       metody przerywania dostępne dla bieżącego okna.

       bufferfile [exchange-file]

       Zmień nazwę pliku używaną do  odczytywania  i  zapisywania
       buforu  wklejania.   Jeśli pominięty jest opcjonalny argu­
       ment  plikowy,  reaktywowane  jest   domyślne   ustawienie
       ("/tmp/screen-exchange").   Następujący przykład przekopi­
       uje plik z hasłami systemowymi na okno screen:

                   C-a : bufferfile /etc/passwd
                   C-a < C-a ]
                   C-a : bufferfile

       c1 [on|off]

       Zmień przetwarzanie kodu c1. "C1  on"  mówi  screenowi  by
       traktował  znaki  wejściowe  z  przedziału  128..159  jako
       funkcje sterujące. Takie 8-bitowe kody są normalnie  takie
       same jak ESC z dołączonym kodem 7-bitowym. Domyślne ustaw­
       ienie przetwarza kody c1  i  może  być  zmienione  komendą
       "defc1".   Użytkownicy  z  fontami,  które  mają użyteczne
       znaki w pozycjach c1 mogą to wyłączyć.

       caption always|splitonly [łańcuch]
       caption string [łańcuch]

       Komenda  ta   kontroluje   wyświetlanie   tytułów   okien.



                         10 czerwca 1999                       16





SCREEN(1)                                               SCREEN(1)


       Normalnie  tytuł  jest używany tylko jeśli na wyświetlaczu
       pokazywanych jest więcej niż jedno okno (tryb podzielonego
       ekranu--splitonly).  Jeśli  typ  jest  ustawiony na always
       screen pokazuje tytuł nawet jeśli wyświetlane  jest  tylko
       jedno okno.  Wartością domyślną jest splitonly.

       Druga postać zmienia tekst używany na tytuł. Możesz używać
       wszystkich znaków specjalnych z rozdziału "ZNAKI SPECJALNE
       TEKSTOWE". Screen używa wartości domyślnej, `%3n %t'.

       Możesz  łączyć  obie  formy,  dając  łańcuch jako argument
       dodatkowy.

       charset zestaw

       Zmień desygnację obecnego slotu zestawu znaków i mapowania
       zestawu  znaków.   Pierwsze  cztery znaki zestawu są trak­
       towane jako desygnatory zestawu znaków, podczas gdy  piąty
       i  szósty  znak,  będące  w zakresie '0' do '3', ustawiają
       mapowanie zestawu znaków GL/GR. Na  każdej  pozycji  można
       użyć  znaku  '.',  co  oznacza, że odpowiadający mu zestaw
       znaków/mapowanie nie powinno być zmieniane.  (zestaw  jest
       wewnętrznie  dopełniany do sześciu znaków przez doklejenie
       znaków '.'). Domyślnym zestawem znaków  dla  nowych  okien
       jest "BBBB02", chyba że aktywna jest komenda "kanji".
       Bieżące ustawienia można obejrzeć komendą "info".

       chdir [katalog]

       Zmień katalog bieżący screena na podany katalog lub, jeśli
       wywołane bez argumentów, na twój katalog domowy (zawartość
       zmiennej  środowiskowej  $HOME).  Wszystkie okna, tworzone
       komendą "screen" z wewnątrz ".screenrc" lub poprzez "C-a :
       screen  ..."  czy  "C-a  c"  będą go używały jako katalogu
       domyślnego.  Bez używania chdir, katalogiem tym byłby kat­
       alog,  z  którego  wywołano  screen.  Pliki twardych kopii
       (hardcopy files) i pliki raportowe zawsze są zapisywane do
       domyślnego katalogu okna, a nie do katalogu bieżącego pro­
       cesu, pracującego w oknie.  Możesz używać  tej  komendy  w
       swoim  .screenrc  wielokrotnie.  Umożliwia to uruchamianie
       różnych okien  w  różnych  katalogach.  Jednakże  ostatnie
       chdir będzie dotyczyć wszystkich okien tworzonych interak­
       tywnie.

       clear

       Czyści bieżące  okno  i  zapisuje  jego  obraz  w  buforze
       przewijania.

       colon [prefiks]

       Umożliwia   wpisywanie  linii  poleceniowych  ".screenrc".
       Przydatne do podręcznej modyfikacji  wiązań  klawiszowych,
       specyficznego   tworzenia  okien  i  zmieniania  ustawień.



                         10 czerwca 1999                       17





SCREEN(1)                                               SCREEN(1)


       Zauważ,  że  słowo  kluczowe  "set"  już   nie   istnieje!
       Zazwyczaj   komendy   tyczą  się  bieżącego  okna,  a  nie
       domyślnych  ustawień  dla   przyszłych   okien.   Wartości
       domyślne  zmienia  się  komendami, rozpoczynającymi się od
       'def...'.

       command

       Komenda ta ma taki sam skutek, jak wpisanie znaku specjal­
       nego  (^A).  Jest chyba przydatna jedynie dla wiązań klaw­
       iaturowych. Zobacz też "bindkey".

       compacthist [on|off]

       Mówi to screenowi czy powstrzymywać doczepione puste linie
       podczas przewijania tekstu w górę w buforze historii.

       console [on|off]

       Zbiera  lub "od-zbiera" (ungrabs) wyjście konsoli do okna.
       Uwaga:  Jedynie  właściciel  /dev/console   może   zbierać
       wyjście  konsoli.   Komenda ta jest dostępna jeśli maszyna
       obsługuje ioctl TIOCCONS.

       copy

       Wejdź w tryb kopiowania/przewijania wstecz.  Umożliwia  to
       kopiowanie  z  bieżącego  okna (i jego historii) tekstu do
       buforu wklejania. W trybie tym  dostępny  jest  vi-podobny
       pełnoekranowy edytor:
       Poruszanie się:
         h,  j,  k, l przesuń linię kursora o linię lub kolumnę o
           kolumnę.
         0, ^ i $ przesuń do krańcowo  lewej  kolumny,  do  pier­
           wszego  lub  ostatniego różnego od białej spacji znaku
           linii.
         H, M i L przesuń kursor do  krańcowo  lewej  kolumny  na
           górze, środku, lub dole okna.
         + i - przesuwa o jedną linię w górę i w dół.
         G  przesuwa  do  podanej  linii  absolutnej  (domyślnie:
           koniec bufora).
         | przesuwa do podanej kolumny absolutnej.
         w, b, e przesuwaj kursor słowo po słowie.
         C-u i C-d przewijaj wyświetlacz w górę i w dół o  podaną
           ilość  linii,  zachowując pozycję kursora. (Domyślnie:
           połowa ekranu).
         C-b i C-f  przewijaj  wyświetlacz  w  górę/dół  o  pełny
           ekran.
         g przesuwa na początek bufora.
         % skacze do podanego procentu bufora.

       Uwaga:
           Komendą  .screenrc  można dostosować klawisze do stylu
           emacsa.   (Np.  markkeys  "h=^B:l=^F:$=^E")   Nie   ma



                         10 czerwca 1999                       18





SCREEN(1)                                               SCREEN(1)


           prostej  metody na pełną mapę klawiszy w stylu emacsa,
           gdyż wymaga to wieloznakowych kodów.

       Zaznaczanie:
           Zakres kopiowania jest ustalany przez ustawienie dwóch
           znaczników.  Tekst  między  nimi zostaje podświetlany.
           Naciśnij
         spację do ustawienia pierwszego lub drugiego  znacznika.
         Y  i y są używane do zaznaczania całej linii lub do zaz­
           naczania od początku linii.
         W zaznacza dokładnie jedno słowo.
       Licznik powtórzeń:
           Każdą  z  tych  komend  można  poprzedzić   licznikiem
           powtórzeń, naciskając cyfry
         0..9,  które są następnie uważane za liczniki powtórzeń.
           Przykład: "C-a C-[ H 10 j 5 Y" skopiuje linie 11 do 15
           do bufora wklejania.
       Szukanie:
         / Vi-podobne szukanie naprzód.
         ? Vi-podobne szukanie wstecz.
         C-a s Emacsopodobne inkrementalne szukanie naprzód.
         C-r Emacsopodobne odwrócone i-szukanie.
       Specjalności:
           Istnieje kilka klawiszy, zachowujących się inaczej niż
           w vi.   Vi  nie  umożliwia  zaznaczania  prostokątnych
           bloków tekstu, lecz screen to umożliwia.  naciśnij
         c  lub  C aby ustawić lewy lub prawy margines. Jeśli nie
           podano  licznika  powtórzeń,  obydwa  odnoszą  się  do
           bieżącej pozycji kursora.
           Przykład:  Wypróbuj to na zapełnionym tekstem ekranie:
           "C-a [ M 20 l SPACE c 10 l 5 j C SPACE".

           Przechodzi to na środkową linię ekranu,  przesuwa  się
           20  kolumn w lewo, zaznacza początek bufora wklejania,
           ustawia lewą kolumnę,  przesuwa  5  kolumn  w  dół  (w
           prawo?--przyp.   tłum.),  zaznacza  prawą  kolumnę,  a
           następnie zaznacza koniec bufora  wklejania.  Wypróbuj
           teraz:
           "C-a [ M 20 l SPACE 10 l 5 j SPACE"

           i zwróć uwagę na różnicę w ilości skopiowanego tekstu.
         J łączy linie. Przełącza się  między  4  trybami:  linie
           rozdzielane  znakiem nowej linii (012), linie sklejone
           bez szwów (lines glued  seamless),  linie  rozdzielone
           pojedynczą    białą    spacją,    linie    rozdzielone
           przecinkami.  Zauważ, że możesz poprzedzać znak  nowej
           linii znakiem CR, używając "crlf on".
         v jest dla wszystkich użytkowników vi z ":set numbers" -
           włącza lewy margines między kolumną 9 a 1. Naciśnij
         a przed ostatnim klawiszem spacji aby włączyć tryb  dok­
           lejania.  W ten sposób bufor wklejania nie będzie nad­
           pisywany, lecz zostanie do niego dopisana nowa  treść.
         A włącza tryb doklejania i ustawia (drugi) znacznik.
         >  ustawia  (drugi) znacznik i zapisuje zawartość bufora



                         10 czerwca 1999                       19





SCREEN(1)                                               SCREEN(1)


           wklejania  do   pliku   wymiany   screena   (domyślnie
           /tmp/screen-exchange) po zakończeniu trybu kopiowania.
           Przykład ten demonstruje jak  wrzucić  do  tego  pliku
           cały bufor przewijania: "C-A [ g SPACE G $ >".
         C-g podaje informację o bieżącej linii i kolumnie.
         x  wymienia  pierwszy znacznik i pozycję kursora. Możesz
           używać tego do dostrajania już ustawionego  znacznika.
         @ nie robi nic. Nawet nie kończy trybu kopiowania.
         Wszystkie  nie  opisane tutaj klawisze kończą tryb kopi­
           owania.

       copy_reg [klucz]

       Już nie istnieje, użyj zamiast tego "readreg".

       crlf [on|off]

       Ma to wpływ na kopiowanie regionów tekstu komendą `C-a ['.
       Jeśli  jest  włączone,  linie  będą  rozdzielane sekwencją
       znaków `CR'  -  `LF'.  W  przeciwnym  wypadku  (domyślnie)
       używane  będzie  tylko  `LF'.  Bez  parametrów,  stan jest
       włączany.

       debug on|off

       Włącza lub wyłącza debuggowanie czasu działania.

       defc1 on|off

       To samo co komenda c1 lecz domyślne ustawienie dla  nowych
       okien jest zmieniane. Początkowym ustawieniem jest `on'.

       defautonuke on|off

       To  samo  co autonuke, lecz domyślne ustawienie dla nowych
       wyświetlaczy  jest  zmieniane.  Początkowe  ustawienie  to
       `off'. Zauważ, że jeśli chcesz być zależnym od typu termi­
       nala, możesz użyć specjalnej właściwości `AN' terminala.

       defbreaktype [tcsendbreak|TIOCSBRK |TCSBRK]

       Wybierz jedną z dostępnych metod generowania sygnału  prz­
       erwania  (break) dla urządzeń terminalowych. Preferowanymi
       metodami są tcsendbreak oraz TIOCSBRK.   Trzecia,  TCSBRK,
       blokuje  całą  sesję screen na czas przerywania, lecz może
       być  jedynym  sposobem  generowania  dłuższych   przerwań.
       Tcsendbreak  i TIOCSBRK mogą (lub nie) dawać długie przer­
       wania ze szpicami (z przerwami?--with spikes)  (np.  4  na
       sekundę).  Jest  to  nie  tylko  zależne  od systemu, lecz
       zależy  również  od   sterowników   układów   szeregowych.
       Wywoływanie "defbreaktype" bez parametru wyświetla bieżące
       ustawienie.





                         10 czerwca 1999                       20





SCREEN(1)                                               SCREEN(1)


       defcharset [zestaw]

       Podobne do komendy charset, lecz domyślne  ustawienie  dla
       nowych  okien  jest  też zmieniane. Po wywołaniu bez argu­
       mentu, pokazuje bieżącą wartość domyślną.

       defescape xy

       Ustaw domyślne znaki komend. Jest to równoważne  "escape",
       ale jest przydatne tylko w sesjach wieloużytkownikowych. W
       takiej sesji "escape" zmienia  znaki  komend  użytkownika,
       który   wywołał  to  polecenia,  podczas  gdy  "defescape"
       zmienia domyślne znaki  komend  dla  użytkowników,  którzy
       będą dodawani później.

       defflow on|off|auto [interrupt]

       To  samo  co  komenda  flow,  lecz zmieniane jest domyślne
       ustawienie dla nowych okien. Początkowym ustawieniem  jest
       `auto'.  Podanie  "defflow auto interrupt" jest równoważne
       opcjom linii komend -fa i -i.

       defgr on|off

       To samo co komenda gr, lecz zmieniane jest domyślne ustaw­
       ienie  dla  nowych  okien.  Początkowym  ustawieniem  jest
       `off'.

       defhstatus [status]

       Linia twardego status, którą otrzymają wszystkie nowe okna
       jest  ustawiana  na  status.  Komenda ta jest przydatna do
       wyświetlenia poprzez  status  każdego  okna  jego  numeru,
       tytułu,  itp.   Status  może zawierać te same dyrektywy co
       komunikaty okna, lecz znakiem specjalnym  (escape  charac­
       ter)  dyrektywy jest '^E' (ósemkowe 005) zamiast '%'. Zro­
       bione jest to w celu  uniemożliwienia  złej  interpretacji
       generowanych  przez program linii statusu.  Jeśli parametr
       status jest pominięty, wyświetlany  jest  bieżący  łańcuch
       domyślny.  Domyślnie, linie statusu nowych okien są puste.

       defkanji jis|sjis|euc

       To samo co komenda kanji,  lecz  zmieniane  jest  domyślne
       ustawienie  dla nowych okien. Początkowym ustawieniem jest
       `off', np. `jis'.

       deflogin on|off

       To samo co komenda login,  lecz  zmieniane  jest  domyślne
       ustawienie  dla nowych okien. W dystrybucji inicjalizowane
       jest to na `on' (zobacz config.h.in).





                         10 czerwca 1999                       21





SCREEN(1)                                               SCREEN(1)


       defmode prawa

       Prawa każdego z nowo zaalokowanych pseudo-tty są ustawiane
       na  prawa.   Prawa są liczbą ósemkową. Początkowo, używane
       są prawa 0622.   (prawa  dostępu,  tryb,  mode  --  przyp.
       tłum.)

       defmonitor on|off

       To  samo  co komenda monitor, lecz zmieniane jest domyślne
       ustawienie dla nowych okien. Początkowym ustawieniem  jest
       `off'.

       defobuflimit limit

       To  samo co obuflimit, lecz zmieniane jest domyślne ustaw­
       ienie dla  nowych  wyświetlaczy.  Początkowym  ustawieniem
       jest  256  bajtów. Zauważ, że jeśli chcesz być zależnym od
       typu terminala, możesz użyć właściwości 'OL'.

       defscrollback num

       To samo co scrollback, lecz zmieniane jest domyślne ustaw­
       ienie  dla nowych okien. Początkowym ustawieniem jest 100.

       defshell komenda

       Synonim komendy shell. Patrz tam.

       defsilence on|off

       To samo co komenda silence, lecz zmieniane  jest  domyślne
       ustawienie  dla nowych okien. Początkowym ustawieniem jest
       `off'.

       defslowpaste msec"

       To samo co slowpaste, lecz zmieniane jest domyślne  ustaw­
       ienie  dla  nowych  okien.  Początkowym ustawieniem jest 0
       milisekund, co oznacza wyłączenie.

       defwrap on|off

       To samo co wrap, lecz zmieniane jest  domyślne  ustawienie
       dla nowych okien. Początkowo zawijanie linii jest włączone
       i może  być  przełączane  komendą  "wrap"  ("C-a  r")  lub
       poprzez "C-a : wrap on|off".

       defwritelock on|off|auto

       To  samo co writelock, lecz zmieniane jest domyślne ustaw­
       ienie dla  nowych  okien.  Początkowo  blokady  zapisu  są
       wyłączone.




                         10 czerwca 1999                       22





SCREEN(1)                                               SCREEN(1)


       defzombie [keys]

       Synonim  komendy  zombie.  Obie w chwili obecnej zmieniają
       wartość domyślną. Patrz tam.

       detach

       Odłącz sesję screen (odłącz ją  od  terminala  i  wrzuć  w
       tło).   Powracasz  wtedy  do  powłoki,  z której wywołałeś
       screen.   Odłączonego  screena  można  wznowić,  wywołując
       screen  z  opcją  -r.   (Zobacz  też  sekcję  "OPCJE LINII
       KOMEND".)

       displays

       Pokazuje   tabularyczny   listing    wszystkich    obecnie
       podłączonych  front-endów użytkownika (wyświetlaczy). Jest
       to przydatne w sesjach wieloużytkownikowych.

       digraph [preset]

       Komenda ta  bierze  użytkownika  o  sekwencję  dwuznakową.
       Wpisane  dwa  znaki są sprawdzane we wbudowanej tablicy, a
       znak wynikowy jest wstawiany do strumienia wejściowego. Na
       przykład,   jeśli  użytkownik  wprowadzi  'a"',  wstawiony
       zostanie a-umlaut. Jeśli  pierwszym  wprowadzonym  znakiem
       jest  0, screen potraktuje następne znaki (do trzech) jako
       liczbę ósemkową.  Opcjonalny argument  preset  jest  trak­
       towany  jako  wejście użytkownika. Można więc zrobić sobie
       klawisz "umlaut". Na przykład, komenda "bindkey ^K digraph
       '"'"  umożliwia  użytkownikowi  generowanie a-umlaut przez
       wpisanie CTRL-K a.

       dumptermcap

       Zapisz wpis termcap dla wirtualnego terminala,  zoptymali­
       zowanego  dla  aktualnie  aktywnego okna. Zapis nastąpi do
       pliku ".termcap" w  katalogu  "$HOME/.screen"  użytkownika
       (lub  tam,  gdzie screen przechowuje swoje gniazda. Zobacz
       sekcję "PLIKI").   Ten  wpis  termcap  jest  identyczny  z
       wartością  zmiennej  środowiskowej  $TERMCAP,  która  jest
       ustawiana przez screen  dla  każdego  okna.  Dla  systemów
       opartych  na  terminfo,  możesz  potrzebować  konwertera w
       rodzaju captoinfo oraz kompilować wpis z pomocą tic.

       echo [-n] wiadomość

       komenda echo może być używana do denerwowania użytkowników
       screen 'wiadomościami dnia'. Zazwyczaj jest to instalowane
       w globalnym /etc/screenrc. Opcja "-n" powoduje zatrzymanie
       wciągania nowej linii.  Zobacz też "sleep".  Echo jest też
       przydatne do testowania online zmiennych środowiskowych.





                         10 czerwca 1999                       23





SCREEN(1)                                               SCREEN(1)


       escape xy

       Ustaw znak komendy na x, a znak generujący literalny  znak
       komendy  (przez wywołanie komendy "meta") na y (podobne do
       opcji -e).   Każdy  argument  może  być  albo  pojedynczym
       znakiem,   albo   dwuznakową   sekwencją  w  postaci  "^x"
       (oznaczającą  "C-x"),  albo  lewym  ukośnikiem  z   liczbą
       ósemkową (kod ASCII znaku), albo lewym ukośnikiem z drugim
       znakiem, w rodzaju "\^" czy "\\".  Domyślną wartością jest
       "^Aa".

       exec [[fdpat] nowakomenda [arg ...]]

       Uruchom  w  bieżącym  oknie  podproces  unixowy (określony
       przez ścieżkę wykonywalną nowakomenda  i  jej  argumenty).
       Przepływ  danych  między stdin/stdout/stderr nowejkomendy,
       procesem początkowo uruchomionym w oknie (powiedzmy  "pro­
       cesem-aplikacji")  i  screenem  (oknem)  jest kontrolowany
       przez wzorzec deskryptora plików fdpat. Wzorzec jest  sek­
       wencją  trójznakową, reprezentującą stdin, stdout i stderr
       nowejkomendy.  Kropka  (.)  łączy  deskryptor   pliku   do
       screena.   Znak  wykrzyknika  (!)  powoduje, że deskryptor
       jest podłączany do procesu-aplikacji. Dwukropek (:)  łączy
       obydwa  te  zadania.  Do nowej komendy będzie przechodziło
       wejście użytkownika, chyba że  komenda  otrzymuje  wyjście
       procesu-aplikacji  (pierwszym  znakiem  fdpat jest `!' lub
       `:') lub do końca fdpat (jako czwarty  znak)  dodano  znak
       potoku (|).
       Wywoływanie  `exec'  bez argumentów pokazuje nazwę i argu­
       menty bieżącego podprocesu aktualnego okna. W każdym oknie
       naraz może działać tylko jeden podproces.
       Gdy  podproces  akurat wykonuje się, komenda `kill' będzie
       dotyczyć jego, a nie procesów okien.
       Dla ciężkostrawnej ilustracji  wszystkich  21  kombinacji,
       zobacz   `doc/fdpat.ps'.   Każdy  rysunek  pokazuje  cyfry
       2,1,0,  odwzorowujące   trzy   deskryptory   nowejkomendy.
       Skrzynka  oznaczona  jako `W' jest normalnym pty, który na
       stronie biernej  (slave)  ma  proces-aplikacji.   Skrzynka
       zaznaczona jako `P' jest drugorzędnym pty, który po swojej
       stronie nadrzędnej (master) ma screen.

       Skróty:
       Biała spacja między słowem `exec', fdpat  i  komendą  może
       być opuszczona.  Fdpat składający się z samych kropek, lub
       jego końcowe kropki można pominąć.  Prosty `|' jest synon­
       imem  do  wzorca  `!..|';   słowo exec można tu pominąć, a
       zawsze można je zastąpić `!'.

       Przykłady:

              exec ... /bin/sh
              exec /bin/sh
              !/bin/sh




                         10 czerwca 1999                       24





SCREEN(1)                                               SCREEN(1)


       Tworzy nową powłokę w tym samym oknie, podczas gdy powłoka
       wyjściowa   wciąż   działa.  Wyjście  obydwu  powłok  jest
       wyświetlane, a wejście użytkownika jest wysyłane do nowego
       /bin/sh.

              exec !.. stty 19200
              exec ! stty 19200
              !!stty 19200

       Ustaw  szybkość tty okna. Jeśli twoja komenda stty operuje
       na stdout, dodaj kolejny `!'.

              exec !..| less
              |less

       Dodaje to przeglądarkę do wyjścia okna. Znak specjalny `|'
       jest  potrzebny  do  uzyskania  kontroli  użytkownika  nad
       przeglądarką, choć dostaje ona  swoje  wejście  z  procesu
       okna.   Działa   to,   ponieważ   less  nasłuchuje  stderr
       (zachowanie, którego screen nie oczekiwałby bez `|') kiedy
       jego  stdin  nie  jest  tty.   Wersje less, nowsze niż 177
       wypadają tu żałośnie; jednak stary, dobry pg wciąż działa.

              !:sed -n s/.*Error.*/\007/p

       Wysyła  wyjście  okna  do  użytkownika  i komendy sed. Sed
       wstawia do wyjścia okna widzianego przez screen  dodatkowy
       znak  dzwonka  (ósemkowy  007).  Spowoduje to wyświetlenie
       komunikatu  "Bell  in  window  x",  za  każdym   łańcuchem
       "Error", który pojawi się w oknie.

       fit

       Zmień  rozmiar  okna na rozmiar bieżącego regionu. Komenda
       ta jest wymagana, gdyż screen automatycznie  nie  adaptuje
       rozmiaru  okna jeśli okno jest wyświetlane więcej niż raz.

       flow [on|off|auto]

       Ustawia  tryb  kontroli  przepływu  dla  tego  okna.   Bez
       parametrów,  przesuwa  on kontrolę bieżącego okna z "auto­
       matic" na "on" na "off".   Zobacz  dyskusję  o  "KONTROLI-
       PRZEPŁYWU",  opisanej  niżej  w tym dokumencie dla pełnych
       szczegółów i odpowiednich  uwag.   Wartość  domyślna  jest
       ustawiana przez `defflow'.

       focus

       Przenieś  ognisko  wejściowe  na  następny region. Jest to
       dokonywane w cykliczny sposób tak, że  region  górny  jest
       wybierany po dolnym.






                         10 czerwca 1999                       25





SCREEN(1)                                               SCREEN(1)


       gr [on|off]

       Włącza/wyłącza  przełączanie  zestawu  znaków  GR (ang. GR
       charset switching). Za każdym razem,  gdy  screen  zauważy
       znak  wejściowy  z  ustawionym  ósmym  bitem, skorzysta ze
       znaku ze slotu GR i wydrukuje znak z obciętym ósmym bitem.
       Domyślną    wartością    (zobacz    też    "defgr")   jest
       nieprzetwarzanie przełączania GR, gdyż może to  spowodować
       niedziałanie zestawu znaków ISO-8859-1.

       hardcopy

       Zapisuje  obecnie wyświetlany obraz do pliku hardcopy.n (w
       katalogu domyślnym okna), gdzie n jest  numerem  bieżącego
       okna.  Komenda  może  albo  doklejać, albo nadpisywać ist­
       niejący plik. Patrz niżej.

       hardcopy_append on|off

       Jeśli jest to ustawione na "on",  screen  będzie  doklejał
       dane  do plików "hardcopy.n" komendy "C-a h". W przeciwnym
       wypadku,  pliki  te  będą  za  każdym  razem  nadpisywane.
       Domyślnie doklejanie jest wyłączone.

       hardcopydir katalog

       Definiuje katalog plików hardcopy. Jeśli jest to nieustaw­
       ione,  pliki  te  lądują  w  bieżącym  katalogu   roboczym
       screena.

       hardstatus [on|off]
       hardstatus [always]lastline|message|ignore [łańcuch]
       hardstatus string [łańcuch]

       Komenda  ta  konfiguruje  używanie i emulację terminalowej
       linii twardego statusu (hardstatus line). Pierwsza  postać
       przełącza czy screen powinien używać sprzętowej linii sta­
       tusu  do  wyświetlania  komunikatów.  Jeśli   flaga   jest
       wyłączona, komunikaty te są nakładane w trybie inwersyjnym
       na linię wyświetlania.  Domyślnym  ustawieniem  jest  `on'
       (włączone).

       Druga  postać  mówi screenowi co robić, jeśli terminal nie
       posiada linii twardego statusu (np. gdy właściwości  term­
       cap/terminfo  "hs", "ts", "fs" i "ds" nie są ustawione). W
       wypadku  użycia  typu   "lastline",   screen   Zarezerwuje
       ostatnią  linię  wyświetlacza  na twardy status. Typ "mes­
       sage" używa screenowego mechanizmu komunikatów, a "ignore"
       mówi  by  screen  nigdy  nie  wyświetlał twardego statusu.
       Jeśli do typu dokleisz słowo "always", screen  użyje  tego
       typu nawet jeśli terminal posiada twardy status.

       Trzecia  postać  określa zawartość linii twardego statusu.
       Domyślnym  łańcuchem  jest  '%h',  tj.  wyświetlany   jest



                         10 czerwca 1999                       26





SCREEN(1)                                               SCREEN(1)


       zachowany  twardy  status okna (ustawialny poprzez \E]0;^G
       or \E_\\).  Możesz to dostosować  do  dowolnego  łańcucha,
       jaki  zechcesz, łącznie ze znakami specjalnymi z rozdziału
       "ZNAKI SPECJALNE  ŁAŃCUCHÓW".   Jeśli  pominiesz  argument
       łańcuch, wyświetlony zostanie łańcuch bieżący.

       Możesz łączyć drugą i trzecią postać, podając łańcuch jako
       argument dodatkowy.

       height [wiersze]

       Ustaw wysokość wyświetlacza na podaną liczbę wierszy.  Bez
       argumentów  następuje  przełączanie  między  wyświetlaczem
       24-liniowym i 42-liniowym.

       help

       Nie jest to naprawdę pomoc online, lecz wyświetlanie  okna
       pomocy,  pokazującego wszystkie wiązania klawiszowe. Pier­
       wsze strony wymieniają wszystkie wewnętrzne komendy wraz z
       ich  obecnymi  wiązaniami.  Dalsze strony pokazują zwycza­
       jowe komendy, po jednej na klawisz.  Przewijanie następuje
       przez  naciskanie  spacji,  a  koniec oglądania to return.
       Wszystkie inne znaki  są  ignorowane.  Zobacz  też  sekcję
       "DOMYŚLNE WIĄZANIA KLAWIATUROWE".

       history

       Użytkownicy  zwykle  pracują  z powłokami, umożliwiającymi
       łatwy dostęp do poprzednich  komend.  Na  przykład  w  csh
       komenda  "!!"  służy  do  powtarzania  ostatniej wywołanej
       komendy.  Screen udostępnia  prosty  sposób  przywoływania
       "komendy, która rozpoczęła się ...": Wpisuje się po prostu
       pierwszą literę  komendy,  następnie  naciska  `C-a  {'  i
       screen  zaczyna  szukać  poprzedniej linii, która zostanie
       dopasowana do `znaku zachęty' na lewo od kursora. Linia ta
       jest  wklejana  do  kolejki wejściowej okna.  W ten sposób
       masz brutalną historię  komend  (stworzoną  z  widzialnego
       okna i jego bufora przewijania).

       hstatus status

       Zmień linię twardego statusu na łańcuch status.

       info

       Używa  linii  komunikatów  do  wyświetlania  informacji  o
       bieżącym  oknie:  są  to   pozycja   kursora   w   postaci
       "(kolumna,wiersz)"  (rozpoczynająca  się  od "(1,1)") sze­
       rokość i wysokość terminala plus rozmiar bufora  przewija­
       nia  w wierszach (np. "(80,24)+50"), bieżący stan kontroli
       przepływu XON/XOFF okna pokazany następująco  (Zobacz  też
       sekcję KONTROLA PRZEPŁYWU):




                         10 czerwca 1999                       27





SCREEN(1)                                               SCREEN(1)


         +flow     automatyczna kontrola przepływu, aktualnie włączona.
         -flow     automatyczna kontrola przepływu, aktualnie wyłączona.
         +(+)flow  włączona kontrola przepływu. Zgadza się z kontrolą automatyczną.
         -(+)flow  wyłączona kontrola przepływu. Nie zgadza się z kontrolą automatyczną.
         +(-)flow  włączona kontrola przepływu. Nie zgadza się z kontrolą automatyczną.
         -(-)flow  wyłączona kontrola przepływu. Zgadza się z kontrolą automatyczną.

       Bieżące   ustawienie   zawijania  linii  (`+wrap'  oznacza
       włączenie,  `-wrap'  wyłączenie)  jest  także  pokazywane.
       Wyświetlane są też flagi `ins', `org', `app', `log', `mon'
       lub `nored'.  Odpowiadają  one  trybom  pracy:  wstawiania
       (insert),  origin,  aplikacji-keypadu  oraz  stanom pracy:
       raportowanie  wyjścia  (log),   monitorowanie   aktywności
       (mon), lub częściowe odświeżanie (nored).

       Wyświetlany  jest  również  aktywny  obecnie zestaw znaków
       (G0, G1, G2, lub G3) oraz w nawiasach kwadratowych zestawy
       znaków terminala, desygnowane obecnie jako G0 do G3.

       Na końcu linii statusu wyświetlane są też dodatkowe tryby,
       zależne od rodzaju okna (Zobacz rozdział "RODZAJE OKIEN").
       Jeśli  maszyna stanu emulatora terminala nie jest w stanie
       domyślnym,  to  linia  info  jest  rozpoczynana  łańcuchem
       określającym bieżący stan.
       Dla informacji o systemie użyj komendy "time".

       ins_reg [klucz]

       Już nie istnieje, użyj "paste".

       kanji jis|euc|sjis [jis|euc|sjis]

       Powiedz  screenowi, jak przetwarzać wejście/wyjście kanji.
       Pierwszy argument ustawia typ kanji bieżącego okna.  Każde
       okno  może  emulować  inny  typ.  Dodatkowy drugi parametr
       mówi, jak zapisywać kody kanji na  podłączonym  terminalu.
       Preferowaną   metodą  ustawiania  typu  wyświetlacza  jest
       używanie wpisu  "KJ"  termcapu.   Zobacz  też  "defkanji",
       który zmienia domyślne ustawienie dla nowych okien.

       kill

       Zabij bieżące okno.
       Jeśli  pracuje w nim komenda `exec', to jest ona zabijana.
       W przeciwnym  wypadku,  proces  (powłoka)  okna  otrzymuje
       sygnał HANGUP, struktura okna jest usuwana, a screen (twój
       wyświetlacz) przełącza się na  inne  okno.  Gdy  niszczone
       jest  ostatnie  okno,  screen  kończy pracę.  Po komendzie
       kill, screen przełącza się na poprzednio wyświetlane okno.
       Uwaga: Użytkownicy emacsa powinni pamiętać o tej komendzie
       przy zabijaniu linii.  Zalecane jest nie używać "C-a" jako
       klawisza specjalnego screena, lub przewiązywać kill do "C-
       a K".




                         10 czerwca 1999                       28





SCREEN(1)                                               SCREEN(1)


       lastmsg

       Wyświetl na nowo ostatnią zawartość linii komunikatów/sta­
       tusu.   Przydatne,  jeśli wpisujesz coś podczas pojawiania
       się komunikatu. Wiadomość bowiem znika gdy przyciśnie  się
       jakiś  klawisz  (chyba że terminal ma sprzętową linię sta­
       tusu). W celu  dostrajania,  zobacz  komendy  "msgwait"  i
       "msgminwait".

       license

       Wyświetl  stronę  opisową.  Jest  to  dokonywane za każdym
       razem, gdy screen jest uruchamiany bez opcji,  co  powinno
       wystarczać. Zobacz tez komendę "startup_message".

       lockscreen

       Zablokuj   ten  wyświetlacz.   Wywołaj  program  blokujący
       screena (/usr/bin/lock lub wbudowany ekwiwalent jeśli  nie
       ma  nic  innego).  Screen  nie  przyjmuje żadnych klawiszy
       komend  dopóki  program  ten  nie  zakończy  działania.  W
       międzyczasie  procesy  okien  mogą  kontynuować działanie,
       gdyż okna są w  stanie  `odłączonym'.   Program  blokujący
       może  być  zmieniony poprzez zmienną środowiskową $LOCKPRG
       (która musi być ustawiana w powłoce, z której screen  jest
       uruchamiany).   Program  ten  jest uruchamiany z uid i gid
       użytkownika.
       Uwaga: Gdy inne powłoki  zostawisz  niezablokowane  i  nie
       masz  ustawionego hasła dla screen, blokowanie jest puste:
       możnaby łatwo podłączyć  się  na  nowo  z  niezablokowanej
       powłoki.  Właściwość ta powinna być raczej nazywana `lock­
       terminal'.

       log [on|off]

       Uruchom/zakończ  zapisywanie  wyjścia  bieżącego  okna  do
       pliku  "screenlog.n"  w  domyślnym  katalogu okna, gdzie n
       jest numerem bieżącego okna. Nazwa pliku może być  zmieni­
       ana  komendą  `logfile'.   Bez podanych parametrów, rapor­
       towanie jest przełączane. Raport sesji jest  doklejany  do
       poprzedniej zawartości wcześniej istniejącego pliku (jeśli
       plik nie istniał, tworzony jest nowy). Bieżąca zawartość i
       zawartość  historii  przewijania  nie  jest uwzględniana w
       raporcie sesji.  Domyślnie wyłączone.

       logfile nazwapliku
       logfile flush sekundy

       Definiuje nazwę plików raportowych.  Domyślną  nazwą  jest
       "screenlog.%n".  Druga postać zmienia liczbę sekund, którą
       screen odczekuje przed wypróżnieniem bufora  pliku  rapor­
       towego  do  systemu  plików.   Domyślną  wartością jest 10
       sekund.




                         10 czerwca 1999                       29





SCREEN(1)                                               SCREEN(1)


       login [on|off]

       Dodaje lub usuwa wpis z bazy utmp dla bieżącego okna. Kon­
       troluje to czy okno jest `wlogowane'. Bez parametrów, stan
       zgłoszeniowy okna jest  przełączany.   Dodatkowo  do  tego
       przełączania,  dobrze  jest  mieć klawisze `log in' i `log
       out'. Np. `bind I login on' i `bind O login  off'  zmapuje
       te klawisze na C-a I i C-a O.  Domyślne ustawienie (w con­
       fig.h.in) powinno być włączone dla screena, pracującego  z
       suid-root.    Użyj   komendy   "deflogin"   do  zmieniania
       domyślnego  stanu  zgłoszeniowego  nowych  okien.  Obydwie
       komendy obecne są tylko jeśli screen został skompilowany z
       obsługą utmp.

       logtstamp [on|off]
       logtstamp after [sekundy]
       logtstamp string [łańcuch]

       Ta komenda kontroluje mechanizm pieczątek czasowych  (time
       stamp)  screena.   Jeśli  pieczątki są włączone, screen po
       dwóch minutach nieaktywności do pliku  raportowego  dodaje
       łańcuch,  zawierający  bieżący czas. Gdy natomiast wyjście
       zaczyna  się  na  nowo,  doklejana  jest  nowa  pieczątka,
       określająca   moment  restartu  emitowania  wyjścia.  Czas
       opóźnienia można  zmieniać  drugą  postacią  tej  komendy.
       Trzecia  postać  jest  używana  do dostosowywania łańcucha
       pieczątki czasowej.  (domyślnie `-- %n:%t -- time-stamp --
       %M/%d/%y %c:%s --\n').

       mapdefault

       Powiedz  screenowi,  że  następny  znak wejściowy powinien
       zostać sprawdzony w domyślnej tablicy wiązań  klawiszowych
       bindkey. Zobacz też "bindkey".

       mapnotnext

       Podobne  do  mapdefault,  lecz  w  ogóle  nie  zagląda  do
       domyślnej tablicy bindkey.

       maptimeout [timo]

       Ustawia opóźnienie międzyznakowe dla sekwencji wejściowych
       do  wykrywania  czasu opóźnienia timo ms. Domyślnym czasem
       jest 300ms. Maptimeout  bez  argumentów  pokazuje  bieżące
       ustawienie. Zobacz też "bindkey".

       markkeys łańcuch

       Jest  to  metoda  zmieniania  mapy klawiszowej, używanej w
       trybie kopiowania/historii. Łańcuch  jest  złożony  z  par
       staryznak=nowyznak,  które  są rozdzielone znakami `:'. Na
       przykład: Łańcuch "B=^B:F=^F" zmieni klawisze `C-b' i  `C-
       f'   na   wiązania   w   stylu   vi.    Komenda  "markkeys



                         10 czerwca 1999                       30





SCREEN(1)                                               SCREEN(1)


       h=^B:l=^F:$=^E"  ustawiłaby  tryb  na  wiązania  w   stylu
       emacsa.  Jeśli twój terminal wysyła znaki, które powodują,
       że przerywasz tryb kopiowania,  to  komenda  ta  może  być
       pomocna  w  wiązaniu  tych znaków do nie robienia niczego.
       Znak braku operacji to `@'  i  jest  używany  następująco:
       "markkeys  @=L=H".  Komenda  ta powoduje odłączenie komend
       `H' i `L'.  Jak pokazano w tym przykładzie, w  pojedynczej
       instrukcji  do  pojedynczej funkcji można przywiązać wiele
       klawiszy.

       meta

       Wstawia  znak  komendy  (C-a)  w   strumieniu   wejściowym
       bieżącego okna.

       monitor [on|off]

       Włącza   monitorowanie  aktywności  okien.   Gdy  jest  to
       włączone, a aktywne okno jest przełączone w tło, otrzymasz
       komunikat  informujący o aktywności. Pojawi się on w linii
       statusu przy pierwszych oznakach wydawania  wyjścia  przez
       tamto okno.  W wyświetlaczu statusu okien takie okno akty­
       wne jest zaznaczane jako  `@'.   Monitorowanie  początkowo
       jest wyłączone.

       msgminwait sek

       Definiuje   czas,   przez   który   screen  czeka  z  nową
       wiadomością gdy  jedna  jest  już  wyświetlana.  Wartością
       domyślną jest 1 sekunda.

       msgwait sek

       Definiuje  czas,  przez  który  komunikat jest wyświetlany
       jeśli screen  nie  jest  poruszany  innymi  aktywnościami.
       Domyślnie 5 sekund.

       multiuser on|off

       Przełącza między trybem wieloużytkownikowym i pojedynczym.
       Standardowo screen działa w trybie pojedynczym.  W  trybie
       wieloużytkownikowym, do umożliwiania użytkownikom dostania
       się do sesji używa się komend `acladd', `aclchg', `aclgrp'
       i `acldel'.

       nethack on|off

       Zmienia  rodzaj  komunikatów  o  błędach,  używanych przez
       screen.  Jeśli znasz grę "nethack", mogą ci  się  spodobać
       podobne jak w niej komunikaty, które często trochę zaciem­
       niają fakty, lecz są zabawniejsze do czytania.  Z  drugiej
       strony,  standardowe  komunikaty  też mogą być często nie­
       jasne.
       Opcja  ta  jest  dostępna  tylko   jeśli   screen   został



                         10 czerwca 1999                       31





SCREEN(1)                                               SCREEN(1)


       skompilowany   ze  zdefiniowaną  flagą  NETHACK.  Domyślne
       ustawienie  jest  wtedy  określone   obecnością   zmiennej
       środowiskowej $NETHACKOPTIONS.

       next

       Przełącz się na następne okno. Komenda ta może być używana
       do cyklicznego przełączania się między listą okien.

       nonblock [on|off]

       Włącz lub wyłącz kontrole przepływu  bieżącego  interfejsu
       użytkownika (wyświetlacza). Jest to używane do uchronienia
       powolnych  wyświetlaczy  od   spowolnienia   przetwarzania
       danych  wyjściowych  przez okno. Komenda ta może być przy­
       datna gdy wiele wyświetlaczy pokazuje te samo okno.  Opcja
       jest normalnie wyłączona dla wszystkich wyświetlaczy.

       number [n]

       Zmień numer bieżącego okna. Jeśli numer n już jest używany
       przez inne okno, okna wymieniają numery między sobą. Jeśli
       nie  poda  się  argumentu, pokazywany jest numer (i tytuł)
       okna.

       obuflimit [limit]

       Jeśli bufor wyjściowy zawiera  więcej  bajtów  niż  podany
       limit,  to  z okien nie będą czytane dalsze dane. Domyślną
       wartością jest 256. Jeśli  masz  szybki  wyświetlacz  (jak
       xterm),  możesz  ustawić  to na większą wartość. Jeśli nie
       poda się argumentów, wyświetlane jest bieżące  ustawienie.

       only

       Zabij wszystkie regiony poza bieżącym.

       other

       Przełącza  na  poprzednio  wyświetlane okno. Jeśli okno to
       już nie istnieje, other działa analogicznie do next.

       partial on|off

       Definiuje czy wyświetlacz powinien być odświeżany (jak dla
       redisplay)  po  przełączaniu  na  bieżące okno. Komenda ta
       dotyczy tylko bieżącego okna.   Aby  dotyczyła  wszystkich
       okien,  należy  skorzystać z komendy allpartial. Domyślnie
       jest to  wyłączone.  Wartość  domyślna  jest  ustalona  na
       stałe, gdyż nie ma na razie komendy defpartial.

       password [kodowane_hasło]

       Gdy  przedstawisz  w  swoim  pliku  ".screenrc" zakodowane



                         10 czerwca 1999                       32





SCREEN(1)                                               SCREEN(1)


       hasło, screen będzie o nie pytał za każdym razem, gdy ktoś
       będzie  próbował  wznowić  odłączony proces. Jest to przy­
       datne jeśli w sesji screen  pracują  uprzywilejowane  pro­
       gramy i chcesz chronić ją od prób podłączenia przez innych
       użytkowników,    podających    się    za    ciebie    (np.
       superużytkownik).   Jeśli  nie  ma  podanego  zakodowanego
       hasła,  screen  dwukrotnie  prosi  o  wstukanie  hasła   i
       umieszcza jego zakodowany odpowiednik w buforze wklejania.
       Domyślną wartością jest `none', która wyłącza  sprawdzanie
       hasła.

       paste [registers [dest_reg]]

       Zapisz  (konkatenowaną)  zawartość  podanych  rejestrów na
       kolejkę stdin bieżącego wejścia. Rejestr  '.'  jest  trak­
       towany   jako   bufor   wklejania.   Jeśli  nie  poda  się
       parametrów, użytkownik jest pytany o  pojedynczy  rejestr.
       Bufor  wklejania  może być wypełniany komendami copy, his­
       tory oraz readbuf.  Inne rejestry można  wypełniać  komen­
       dami register, readreg i paste.  Jeśli paste jest wywołany
       z drugim argumentem,  zawartość  podanych  rejestrów  jest
       umieszczana  w podanym rejestrze docelowym, a nie w oknie.
       Jeśli jako drugi argument użyć  '.',  rejestrem  docelowym
       jest  bufor  wklejania  wyświetlacza.   Zauważ, że "paste"
       używa różnych zasobów: Gdy tylko podany jest  drugi  argu­
       ment,  nie  jest  wymagane  okno  bieżące.  Gdy określenie
       źródła zawiera tylko rejestry (nie  bufor  wklejania),  to
       nie jest w ogóle wymagany bieżący wyświetlacz (podwieszony
       terminal), gdyż rejestry są  zasobami  globalnymi.   Bufor
       wklejania jest osobny dla każdego użytkownika.

       pastefont [on|off]

       Powiedz  screenowi, by do bufora wklejania załączał infor­
       mację o foncie. Domyślnie nie jest to robione. Komenda  ta
       jest  szczególnie przydatna dla fontów wieloznakowych, jak
       kanji.

       pow_break

       Otwórz na nowo linię terminalową  okna  i  wyślij  warunek
       przerwania. Zobacz `break'.

       pow_detach

       Odłączenie  zasilania.  Ogólnie  to  samo  co detach, lecz
       dodatkowo wysyła sygnał HANGUP do procesu  rodzicielskiego
       screena.   UWAGA:  Spowoduje  to wylogowanie w wypadku gdy
       screen został uruchomiony z powłoki zgłoszeniowej.

       pow_detach_msg [komunikat]

       Podany tu komunikat jest  wydawany  za  każdym  razem  gdy
       dokonywane  jest  `odłączenie zasilania'. Może być używane



                         10 czerwca 1999                       33





SCREEN(1)                                               SCREEN(1)


       jako zamiennik komunikatu wylogowywania, lub do  resetowa­
       nia szybkości linii, itp.  Bez parametrów, pokazywany jest
       obecny komunikat.

       prev

       Przełącz na okno o następnym niższym numerze.  Komenda  ta
       może  być używana do cyklicznego przełączania między listą
       okien.

       printcmd [kmd]

       Jeśli kmd nie jest pustym  łańcuchem,  screen  nie  będzie
       używał  właściwości  "po/pf" terminala, jeśli wykryje sek­
       wencję drukowania ansi ESC [ 5 i, lecz  będzie  przerzucał
       potokowo wyjście do kmd.  Powinno to normalnie być komendą
       w rodzaju "lpr" lub "'cat > /tmp/scrprint'".  printcmd bez
       komendy  wyświetla bieżące ustawienie.  Sekwencja ansi ESC
       \ kończy drukowanie i zamyka potok.
       Uwaga: Ostrożnie z tą komendą! Jeśli inni użytkownicy mają
       dostęp zapisu do twojego terminala, będą oni mogli odpalać
       komendy drukowania.

       process [klucz]

       Przerzuć zawartość podanego rejestru do screenowej kolejki
       wejściowej.   Po  uruchomieniu  bez parametrów, zostaniesz
       zapytany o nazwę rejestru.  Tekst jest  przetwarzany  tak,
       jakby  był wpisywany z klawiatury użytkownika.  Komenda ta
       może być przydatna do wiązania wielu akcji pod jeden klaw­
       isz.

       quit

       Zabij  wszystkie okna i zakończ screen.  Zauważ, że w ter­
       minalach VT100-podobnych klawisze C-4 i C-\ są równoważne.
       Powoduje to, że domyślne wiązania są niebezpieczne: Uważaj
       by nie wpisać C-a C-4 podczas wybierania okna numer 4.   W
       celu usunięcia wiązania klawiszowego, użyj zwykłej komendy
       bind (jak dla "bind '^\'").

       readbuf

       Odczytuje zawartość bieżącego  pliku  wymiany  screena  do
       bufora wklejania.  Zobacz też komendę "bufferfile".

       readreg [register [nazwapliku]]

       Robi dwie rzeczy, zależnie od liczby argumentów: w wypadku
       braku, lub przy jednym argumencie, duplikuje bufor wkleja­
       nia  do  podanego rejestru lub rejestru, podanego po znaku
       zachęty.  Przy  dwóch  argumentach,  odczytuje   zawartość
       podanego  pliku do rejestru. Jest to zachowanie podobne do
       wczytywania przez "readbuf" plik wymiany screena do bufora



                         10 czerwca 1999                       34





SCREEN(1)                                               SCREEN(1)


       wklejania  Następujący  przykład  wkleja  systemowy plik z
       hasłami w okno screena  (przy  użyciu  rejestru  p,  gdzie
       pozostaje kopia):

                   C-a : readreg p /etc/passwd
                   C-a : paste p

       redisplay

       Wyświetl  na  nowo  bieżące  okno.  Wymagane  do uzyskania
       pełnego rewyświetlenia w trybie częściowego odświeżania.

       register klucz łańcuch

       Zachowuje podany łańcuch w  rejestrze  klucz.  Zobacz  też
       komendę "paste".

       remove

       Usuń bieżący region. Jest to nieskuteczne (no-op) gdy ist­
       nieje tylko jeden region.

       removebuf

       Usuwa plik wymiany screena, używany przez komendy  "write­
       buf" i "readbuf".

       reset

       Przestaw terminal wirtualny na jego ustawienia początkowe.
       Przydatne, gdy pozostały na nim po jakiejś aplikacji  dzi­
       wne ustawienia.

       screen [-opts] [n] [kmd [arg]]

       Zestaw  nowe  okno.  Z każdą komendą można przekazać opcje
       kontroli przepływu (-f, -fn i -fa), tytułu (a.k.a.)  (-t),
       opcje  zgłoszeniowe  (-l  i -ln), opcję typu terminala (-T
       <term>), i flagę-wszystkich-właściwości  (-a)  oraz  opcję
       bufora przewijania (-h <num>).  Opcja (-M) włącza dla tego
       okna monitorowanie.  Opcja (-L) włącza  dla  niego  rapor­
       towanie  wyjścia.   Jeśli  podany  jest dodatkowa liczba w
       zakresie 0..9, to nowo tworzonemu  oknu  przyznawany  jest
       numer n (lub jeśli numer ten jest już używany, przyznawany
       jest następny dostępny).  Jeśli po  "screen"  podana  jest
       komenda,  to  jest  ona  uruchamiana  w tworzonym oknie; w
       przeciwnym wypadku, uruchamiana  jest  powłoka.  Tak  więc
       jeśli twój ".screenrc" zawiera linie

                   # przykład dla .screenrc:
                   screen 1
                   screen -fn -t foobar -L 2 telnet foobar

       to  screen  utworzy  okno  z  powłoką  (numer #1) i okno z



                         10 czerwca 1999                       35





SCREEN(1)                                               SCREEN(1)


       połączeniem telnet do maszyny foobar (w oknie #2, bez kon­
       troli  przepływu, pod tytułem "foobar") i będzie zapisywać
       raporty ("screenlog.2") sesji  telnetowej.  Zauważ,  że  w
       przeciwieństwie  do poprzednich wersji screena, nie będzie
       tworzone żadne  dodatkowe  okno  domyślne  jeśli  w  twoim
       ".screenrc"  znajdują się komendy "screen". Po zakończeniu
       inicjalizacji,  screen  przełącza  się  na  ostatnie  okno
       podane  w twoim pliku .screenrc lub, jeśli nic nie podano,
       otwiera domyślne okno #0.
       Screen ma wbudowane pewne  właściwości  "cu"  i  "telnet".
       Zobacz też rozdział "RODZAJE OKIEN".

       scrollback num

       Ustawia  rozmiar bufora przewijania dla bieżących okien na
       num wierszy.  Domyślną  wartością  jest  100.  Zobacz  też
       komendę   "defscrollback",   a   do   oglądania  bieżących
       ustawień, skorzystaj z "C-a i".

       select [IDOkna]

       Przełącz się na okno, określone przez IDOkna.  Może to być
       przedrostek  tytułu okna (alfanumeryczna nazwa), lub numer
       okna.  Parametr jest opcjonalny i  jeśli  jest  pominięty,
       zostaniesz  zapytany o identyfikator.  Gdy zestawiane jest
       nowe okno, przyznawany jest mu  pierwszy  dostępny  numer.
       Tak  więc,  pierwsze  okno  można włączyć przez "select 0"
       (nie może być naraz obecnych więcej niż 10 okien, chyba że
       screen został skompilowany z większym ustawieniem MAXWIN).

       sessionname [nazwa]

       Zmień nazwę bieżącej sesji. Zauważ, że dla "screen  -list"
       nazwa  pojawia  się z przyklejonym id-procesu. Jeśli argu­
       ment "nazwa" jest pominięty, wyświetlana  jest  nazwa  tej
       sesji. Uwaga: zmienne środowiskowe $STY wciąż odzwiercied­
       lają  stare  nazwy.  Może   to   powodować   zakłopotanie.
       Domyślna wartość jest tworzona z tty i nazw hosta.

       setenv [zmienna [łańcuch]]

       Ustawia  zmienną  środowiskową zmienna na wartość łańcuch.
       Jeśli podana jest tylko zmienna, użytkownik zostanie zapy­
       tany o jej wartość. Jeśli nie zostaną podane żadne parame­
       try, użytkownik zostanie zapytany tak o zmienną, jak o jej
       wartość.  Środowisko  jest  dziedziczone  przez  wszystkie
       kolejno rozwidlane powłoki.

       shell komenda

       Ustaw  komendę,  używaną  do  tworzenia   nowej   powłoki.
       Przesłania  to wartość zmiennej środowiskowej $SHELL. Jest
       to  przydatne  jeśli  chcesz  uruchomić  rozszerzacza-tty,
       który  chce  wykonywać  program  podany  w  $SHELL.  Jeśli



                         10 czerwca 1999                       36





SCREEN(1)                                               SCREEN(1)


       komenda rozpoczyna się znakiem '-',  powłoka  będzie  uru­
       chomiona jako powłoka zgłoszeniowa.

       shelltitle tytuł

       Ustaw  tytuł  dla  wszystkich  powłok,  tworzonych podczas
       startu lub przez komendę C-A C-c.  Dla szczegółów  o  tym,
       czym   jest  tytuł,  zobacz  dyskusję  "TYTUŁY  (nazywanie
       okien)".

       silence [on|off|sek]

       Przełącza  monitorowanie  ciszy  okien.  Gdy  cisza   jest
       włączona,  a  monitorowane  okno  jest w tle, to po pewnym
       czasie nieaktywności (ciszy)  otrzymasz  w  linii  statusu
       komunikat  o  ciszy.  Domyślny  czas  oczekiwania może być
       zmieniany  komendą  `silencewait',  lub  poprzez   podanie
       liczby   sekund   zamiast  `on'  lub  `off'.   Cisza  jest
       początkowo wyłączona dla wszystkich okien.

       silencewait sek

       Zdefiniuj czas, po którym ma się pojawiać komunikat ciszy.
       Domyślnie 30 sekund.

       sleep num

       Komenda ta powstrzymuje wykonywanie pliku .screenrc na num
       sekund.  Aktywność klawiaturowa przerywa pauzę.   Może  to
       być  przydatne  do dawania użytkownikom szansy na przeczy­
       tanie komunikatów, wydawanych przez "echo".

       slowpaste msek

       Zdefiniuj szybkość, z jaką komenda paste ("C-a ]")  wkleja
       tekst  do okna.  Jeśli parametr jest niezerowy, tekst jest
       wpisywany znak po znaku.  Dodatkowo, screen pauzuje  przez
       msec  milisekund  po  każdym znaku, umożliwiając aplikacji
       przetworzenie wejścia. Używaj slowpaste tylko  jeśli  twój
       system  ma  problemy  kontroli przepływu podczas wklejania
       wielkich fragmentów tekstu.

       sorendition [atr [kolor]]

       Zmień sposób, którego używa screen do podświetlania tekstu
       (w  celu  zaznaczania i drukowania komunikatów).  Atr jest
       liczbą szesnastkową i określa atrybuty  tekstu  (inwersja,
       podkreślenie,   ...).   Kolor  jest  dwucyfrową  liczbą  i
       zmienia kolor pierwszego planu/tła podświetlanego  tekstu.
       Aby znaki pojawiały się w odpowiedni sposób, wymagana jest
       pewna wiedza o wewnętrznej reprezentacji  znaków  screena.
       Domyślną  wartością jest obecnie 10 99 (standout, domyślne
       kolory).




                         10 czerwca 1999                       37





SCREEN(1)                                               SCREEN(1)


       split

       Podziel bieżący region  na  dwa  nowe.  Wszystkie  regiony
       wyświetlacza  zmieniają  rozmiar,  aby  zrobić  miejsce na
       nowy. Puste okno jest wyświetlane na nowym regionie.

       startup_message on|off

       Wybierz, czy chcesz oglądać informację o  kopiowaniu  pod­
       czas  startu.   Domyślnie  jest  to  włączone,  jak pewnie
       zauważyłeś.

       stuff łańcuch

       Przerzuć łańcuch do  bufora  wejściowego  bieżącego  okna.
       Jest to podobne do komendy "paste", lecz mniej ogólne. Nie
       możesz z pomocą tej komendy wklejać dużych  buforów.  Jest
       ona najprzydatniejsza do wiązań klawiaturowych. Zobacz też
       "bindkey".

       su [nazwaużytkownika [hasło [hasło2]]

       Podmień użytkownika wyświetlacza. Komenda pyta o wszystkie
       pominięte  parametry.  Jeśli  w  parametrach podano hasła,
       muszą one być niezakodowane.  Pierwsze  hasło  jest  dopa­
       sowywane  do  systemowej  bazy  passwd,  drugie  do  hasła
       screena, ustawionego komendami "acladd", "password".  "Su"
       może  być przydatne dla administratora screena do testowa­
       nia wieloużytkownikowych konfiguracji.  Gdy  identyfikacja
       się  nie  powiedzie, użytkownik ma dostęp do komend przez­
       naczonych  dla  użytkownika  nobody.   Są   to   "detach",
       "license", "version", "help" oraz "displays".

       suspend

       Zawieś   screena.   Okna  są  w  tym  stanie  `odłączone'.
       Właściwość ta jest zależna od powłoki, zdolnej do kontroli
       zadań.

       term term

       W  środowisku każdego okna, które otworzył screen, zmienna
       środowiskowa $TERM jest ustawiona domyślnie  na  "screen".
       Jeśli  w  lokalnym  pliku termcap nie ma żadnego opisu dla
       takiego terminala, możesz zmienić $TERM na  np.   "vt100".
       Nie  spowoduje to żadnej szkody, gdyż screen jest zgodny z
       vt100/ansi.  Używanie komendy "term" nie jest zalecane dla
       celów  niedomyślnych.   Znaczy to, że możnaby podać ustaw­
       ienia $TERM (np. vt100) dla komendy "screen  rlogin  inna­
       maszyna". Jednak zamiast tego lepiej użyć "screen -T vt100
       rlogin innamaszyna".






                         10 czerwca 1999                       38





SCREEN(1)                                               SCREEN(1)


       termcap term terminal-tweaks [window-tweaks]
       terminfo term terminal-tweaks [window-tweaks]
       termcapinfo term terminal-tweaks [window-tweaks]

       Używanie tej komendy powoduje modyfikacje  wpisów  termcap
       terminala   bez  potrzeby  przechodzenia  przez  trudności
       związane  z  tworzeniem   dostosowanego   wpisu   termcap.
       Dodatkowo,  możesz  opcjonalnie  dostosować  termcap  gen­
       erowany dla okien. Komendy te należy umieścić w  jednym  z
       plików startowych screenrc, gdyż po uruchomieniu emulatora
       terminala stają się one bezużyteczne.
       Jeśli twój system działa w oparciu o bazę terminfo  (zami­
       ast  termcap),  screen będzie rozumiał komendę `terminfo',
       która  ma  takie  same  efekty,  jak  komenda   `termcap'.
       Udostępniono  dwie  oddzielne  komendy, gdyż istnieją sub­
       telne definicje syntaktyczne, np. to gdzie  wymagana  jest
       interpolacja  parametrów  (z  użyciem  `%').  Zauważ, że z
       komendą `terminfo' używa się nazw właściwości z termcap.
       W wielu wypadkach, gdy argumenty są prawidłowe zarówno dla
       składni terminfo jak i termcap, możesz użyć komendy `term­
       capinfo', która jest skrótem dla pary komend  `termcap'  i
       `terminfo', o identycznych argumentach.

       Pierwszy  argument  określa,  do którego terminala (termi­
       nali) odnosi się definicja. Możesz podać wiele nazw termi­
       nali,  rozdzielając  je znakami `|'.  `*' odpowiada wszys­
       tkim terminalom, a `vt*' wszystkim  terminalom,  rozpoczy­
       nającym się od "ft".

       Każdy  argument  tweak  składa  się  z  jednej  lub więcej
       definicji termcap (rozdzielonych dwukropkami), które  mają
       być  wstawione  na  początek  odpowiedniego wpisu termcap,
       rozszerzając go  lub  przesłaniając  istniejące  wartości.
       Pierwszy tweak modyfikuje termcap twojego terminala i zaw­
       iera  definicje,  z  których  twój  terminal  korzysta  do
       wykonywania  pewnych  funkcji.   Jeśli  podasz  tu łańcuch
       pusty, zawartość pozostanie niezmieniona (np. '').   Drugi
       (opcjonalny)  tweak  modyfikuje wszystkie termcapy okien i
       powinien zawierać definicje zrozumiałe dla screena (zobacz
       sekcję "TERMINAL WIRTUALNY".

       Przykłady:

              termcap xterm*  LP:hs@

       Mówi  screenowi, że wszystkie terminale rozpoczynające się
       od `xterm' mają automatyczne marginesy, które  umożliwiają
       odświeżanie  ostatniej pozycji ekranu (LP), lecz nie posi­
       adają prawdziwej linii statusu (brak 'hs' - doklejanie `@'
       wyłącza  wpisy).  Zauważ, że zakładamy `LP' dla wszystkich
       nazw terminala, które rozpoczynają się od "vt", lecz tylko
       jeśli nie podasz komendy termcap dla takiego terminala.

              termcap vt*  LP



                         10 czerwca 1999                       39





SCREEN(1)                                               SCREEN(1)


              termcap vt102|vt220  Z0=\E[?3h:Z1=\E[?3l

       Podaje  właściwość `LP' dla wszystkich terminali rozpoczy­
       nających się od `vt'. Druga linia  dodatkowo  dodaje  sek­
       wencje  specjalne  do  przełączania do (Z0) i z (Z1) trybu
       132 znaków na linię dla vt102 i vt220.  (W  celu  używania
       komend  zmieniających  szerokość,  musisz  w swoim termcap
       podać Z0 i Z1.)

              termcap vt100  ""  l0=PF1:l1=PF2:l2=PF3:l3=PF4

       Pozostawia to twój termcap vt100 w spokoju i  dodaje  wpis
       do termcapu każdego okna.

              termcap h19|z19  am@:im=\E@:ei=\EO  dc=\E[P

       Bierze  termcap  h10  i  z19 i wyłącza automarginesy (am@)
       oraz włącza właściwości trybu wstawiania (im--insert mode)
       i  end-insert  (ei) (znak `@' w łańcuchu `im' znajduje się
       po `=', więc jest częścią łańcucha).  Posiadanie  w  term­
       capie  terminala  definicji  `im' i `ei', screen automaty­
       cznie zareklamuje właściwość character-insert w  termcapie
       każdego  okna.  Każde okno dostanie też właściwość delete-
       character (dc), która będzie przez  screen  tłumaczona  na
       odświeżenie linii (line-update) terminala (udajemy, że nie
       obsługuje on kasowania znaków).

       Jeśli chciałbyś w pełni  określić  wpisy  termcap  każdego
       okna, powinieneś zamiast tego wszystkiego przed uruchomie­
       niem  screena  ustawić  zmienną  $SCREENCAP.   Zobacz  też
       dyskusję w sekcji "TERMINAL WIRTUALNY" i podręcznik syste­
       mowy termcap.

       time

       Używa linii komunikatów do wyświetlania czasu dnia,  nazwy
       hosta  i obciążenia w 1, 5 i 15 minutach (jeśli informacja
       ta jest dostępna w twoim systemie).  Dla informacji specy­
       ficznych oknu, użyj "info".

       title [aliasokna]

       Ustaw  nazwę bieżącego okna na aliasokna. Jeśli nie podano
       nazwy, screen o nią zapyta. Komenda ta była znana  dawniej
       jako `aka'.

       unsetenv zmienna

       Kasuje zmienną środowiskową.

       vbell [on|off]

       Ustawia   wizualny   dzwonek  dla  tego  okna.  Pominięcie
       parametru przełącza ustawienie. Jeśli vbell jest włączony,



                         10 czerwca 1999                       40





SCREEN(1)                                               SCREEN(1)


       lecz  twój  terminal  nie obsługuje wizualnego dzwonka, po
       otrzymaniu  znaku  dzwonka  (^G)  w  linii  statusu   jest
       wyświetlany  `komunikat-vbell'.   Obsługa  vbell terminala
       jest  definiowana   zmienną   termcapa   `vb'   (terminfo:
       'flash').
       Domyślnie,  vbell  jest  wyłączony  i używany jest dzwonek
       audio. Zobacz też `bell_msg'.

       vbell_msg [komunikat]

       Ustawia komunikat wizualnego dzwonka. Jeśli  okno  otrzyma
       znak  dzwonka  (^G),  a  terminal nie obsługuje wizualnego
       dzwonka,  w  linii  statusu  drukowany   jest   komunikat.
       Domyślnym    komunikatem   jest   "Wuff,   Wuff!!".    Bez
       parametrów, pokazywany jest obecny komunikat.

       vbellwait sek

       Zdefiniuj w sekundach opóźnienie, po  każdym  wyświetleniu
       komunikatu o dzwonku. Domyślnie jest to 1 sekunda.

       verbose [on|off]

       Jeśli  tryb verbose (gadatliwy) jest włączony, przy każdym
       tworzeniu okna  istnieje  echo  nazwy  komendy.  Domyślnie
       wyłączone. Bez parametrów, pokazuje obecne ustawienie.

       version

       Wydrukuj w linii statusu bieżącą wersję i datę kompilacji.

       wall komunikat

       Zapisz  na  wszystkie  wyświetlacze  komunikat.  Komunikat
       pojawi się w terminalowej linii statusu.

       width [num]

       Przełączaj  szerokość  okna między 80 a 132 kolumnami, lub
       ustaw na num kolumn.  Wymaga to odpowiedniego terminala  i
       wpisów termcap "Z0" oraz "Z1".  Zobacz dla dalszych infor­
       macji komendę "termcap".

       windows

       Używa linii komunikatów do wyświetlania  listy  wszystkich
       okien.  Każde  okno  jest  wymieniane według numeru wraz z
       nazwą procesu, który  został  w  nim  uruchomiony  (lub  z
       tytułem);  okno  bieżące  jest  zaznaczane przez `*'; okno
       poprzednie jest  zaznaczane  przez  `-';  wszystkie  okna,
       które  są  zalogowane, są zaznaczane jako `$'; okno w tle,
       które otrzymało dzwonek jest zaznaczane jako `!';  okno  w
       tle, które jest monitorowane i zaszła w nim aktywność jest
       zaznaczane jako `@'; okno, które ma włączone  raportowanie



                         10 czerwca 1999                       41





SCREEN(1)                                               SCREEN(1)


       wyjścia  jest zaznaczone jako `(L)'; okna, zajmowane przez
       innych użytkowników są zaznaczane jako `&'; okna w  stanie
       zombie  są  zaznaczane  jako  `Z'.   Jeśli lista jest zbyt
       długa, by  zmieścić  się  w  terminalowej  linii  statusu,
       wyświetlana jest tylko część wokół bieżącego okna.

       wrap [on|off]

       Ustawia  zawijanie  linii  w  oknie. Gdy jest to włączone,
       znak wstawiany na ostatniej kolumnie wiersza  będzie  zaw­
       ijał  na  początek  następnego  wiersza.  W  myśl  dodanej
       właściwości,  backspace  (^H)  również  zawija  od  lewego
       marginesu   do   poprzedniej  linii.   Domyślnie  jest  to
       włączone.

       writebuf

       Zapisuje  zawartość   bufora   wklejania   do   publicznie
       dostępnego  pliku  wymiany  screena.  Jest  to  prymitywne
       narzędzie  komunikacji  między  użytkownikami  screena  na
       danym  hoście.  Nazwa  pliku  może  być ustawiana z pomocą
       komendy bufferfile  i  domyślnie  jest  nią  "/tmp/screen-
       exchange".

       writelock [on|off|auto]

       Jako   dodatek  do  list  kontroli  dostępu,  nie  wszyscy
       użytkownicy muszą być w stanie pisać do tego  samego  okna
       naraz.  Domyślnie,  blokada  zapisu jest w trybie `auto' i
       zapewnia wyłączne prawo  wejścia  dla  użytkownika,  który
       pierwszy  się na dane okno przełączył. Gdy opuści on okno,
       automatycznie  blokadę  mogą  uzyskać  inni   użytkownicy.
       Blokadę  zapisu  bieżącego  okna  można  wyłączyć  komendą
       "writelock off". Jeśli użytkownik wykona  komendę  "write­
       lock  on", to będzie on miał wyłączne prawa zapisu podczas
       przełączania się na inne okna.

       xoff
       xon

       Wstawia na kolejkę stdin bieżącego okna znak  CTRL-s/CTRL-
       q.

       zombie [klawisze]
       defzombie [klawisze]

       Domyślnie  okna screena są usuwane z listy okien gdy tylko
       ich procesy  (np.  powłoki)  zakończą  działanie.  Gdy  do
       komendy zombie podać łańcuch dwóch klawiszy, `martwe' okna
       pozostają na liście. Do usunięcia takiego okna można  użyć
       komendy kill. Naciśnięcie w martwym oknie pierwszego klaw­
       isza ma  ten  sam  efekt.  Naciśnięcie  drugiego  klawisza
       powoduje,  że  screen próbuje wskrzesić okno. Proces, uru­
       chomiony początkowo w oknie  zostanie  ponownie  odpalony.



                         10 czerwca 1999                       42





SCREEN(1)                                               SCREEN(1)


       Wywołanie  zombie  bez parametrów wyczyści ustawienie zom­
       bie, w wyniku czego okna znikną po  zakończeniu  ich  pro­
       cesu.

       Gdy  ustawienie  zombie  jest  obsługiwane  globalnie  dla
       wszystkich okien, komenda ta powinna być nazywana  defzom­
       bie.   Dopóki   potrzebujemy   tego  jako  ustawienia  dla
       poszczególnego  okna,  komendy  zombie  i   defzombie   są
       równoważne.


LINIA KOMUNIKATÓW
       Dodatkowe  komunikaty i diagnostyki są wyświetlane w linii
       komunikatów.  Zwykle linia ta znajduje się na dole ekranu,
       jednak można to przedefiniować na górę podczas kompilacji.
       Jeśli twój terminal ma w termcapie zdefiniowaną linię sta­
       tusu,  screen  skorzysta  właśnie  z  niej.  W  przeciwnym
       wypadku, linia bieżącego ekranu będzie tymczasowo nadpisy­
       wana,  a  wyjście  będzie chwilowo przerywane. Linia komu­
       nikatów jest automatycznie usuwana po paru sekundach  prz­
       erwy.  Może  być też usuwana wcześniej poprzez rozpoczęcie
       naciskania klawiszy.

       Urządzenie  linii  komunikatów  może  być  używane   przez
       aplikacje,  pracujące  w  bieżącym oknie. Narzędziem w tym
       celu jest sekwencja sterująca ANSI, Privacy  message.   Na
       przykład, z powłoki możesz wpisać coś takiego:

              echo   '<esc>^Hello   world   from   window  '$WIN­
              DOW'<esc>\\'

       Gdzie '<esc>' to escape, '^' to literalna strzałka w górę,
       a '\\' zmienia się w pojedynczy lewy ukośnik.


TYPY OKIEN
       Screen daje trzy rodzaje okien. Nowe okna można utworzyć z
       pomocą komendy screen (zobacz też opis w  rozdziale  "DOS­
       TOSOWYWANIE").  Pierwszy  parametr  komendy screen określa
       typ tworzonego okna. Inne typy okien są szczególnymi przy­
       padkami typu normalnego. Zostały one dodane, aby umożliwić
       efektywne   wykorzystanie   screena   jako    multiplekser
       (powielacz) konsolowy ze 100 lub więcej oknami.


       ˇ  Normalne okno zawiera powłokę, lub dowolną inną komendę
          systemową, jaką można uruchomić z powłoki (np.  slogin,
          itd...)


       ˇ  Jeśli  jako  pierwszy  parametr  podana  jest nazwa tty
          (urządzenie znakowe, np.  "/dev/ttya"),  to  okno  jest
          podłączane  bezpośrednio  do tego urządzenia.  Typ tego
          okna jest podobny do "screen  cu  -l  /dev/ttya".   Dla



                         10 czerwca 1999                       43





SCREEN(1)                                               SCREEN(1)


          używania  węzła  urządzenia  wymagane są prawa zapisu i
          odczytu. Dodatkowo, screen  próbuje  użyć  otwarcia  na
          wyłączność,  aby  zaznaczyć  zajęcie  linii połączenia.
          Dozwolony jest dodatkowy  parametr,  składający  się  z
          rozdzielonej  przecinkami listy flag w notacji używanej
          przez stty(1):

          <szybkość>
                 Zwykle 300, 1200, 9600 lub 19200. Dotyczy to tak
                 transmisji, jak i odbierania.

          cs8 or cs7
                 Określa  transmisję ośmiu (lub siedmiu) bitów na
                 bajt.

          ixon or -ixon
                 Włącza   (lub   wyłącza)   programową   kontrolę
                 przepływu (CTRL-S/CTRL-Q) nadawania.

          ixoff or -ixon
                 Włącza   (lub   wyłącza)   programową   kontrolę
                 przepływu odbierania.

          istrip or -istrip
                 Czyści (lub zatrzymuje) ósmy bit w  każdym  ode­
                 branym bajcie.

          Możesz  podać tyle opcji, ile potrzeba. Niepodane opcje
          powodują,  że  sterownik  terminala  pobiera   wartości
          parametrów z połączenia. Wartości te są zależne od sys­
          temu i mogą być wartościami domyślnymi, lub wartościami
          zachowanymi z poprzedniego połączenia.

          Dla  okien  tty,  komenda info pokazuje w linii statusu
          część linii kontroli modemu. Mogą one  zawierać  `RTS',
          `CTS',  'DTR',  `DSR',  `CD'  i  więcej.   Zależy to od
          dostępnych ioctl() oraz nagłówków systemu i  fizycznych
          właściwości  układu  szeregowego.  Sygnały,  które są w
          stanie  niskim  (nieaktywne)  mają  nazwy   poprzedzone
          znakiem  wykrzyknika.  W  przeciwnym  wypadku  są one w
          stanie wysokim. Sygnały  nieobsługiwane  przez  sprzęt,
          lecz  znane  interfejsowi ioctl() są zwykle wyświetlane
          jako niskie.
          Gdy bit statusu  CLOCAL  jest  ustawiony,  cały  zestaw
          sygnałów  modemowych jest umieszczany w nawiasach klam­
          rowych ({ i }). Gdy  ustawiony  jest  bit  CRTSCTS  lub
          TIOCSOFTCAR,  sygnały  `CTS'  lub  `CD' są pokazywane w
          nawiasach.


          Dla okien tty, komenda break powoduje obniżenie sygnału
          linii transmisji danych (TxD) na podany okres czasu. Ma
          to być interpretowane jako sygnał przerwania po drugiej
          stronie.    Podczas   wykonywania   tej   komendy   nie



                         10 czerwca 1999                       44





SCREEN(1)                                               SCREEN(1)


          przesyłane są dane i nie są  zmieniane  linie  kontroli
          modemu.

       ˇ  Jeśli  pierwszym  parametrem jest "//telnet", to drugim
          powinna być nazwa hosta, a opcjonalny  trzeci  parametr
          może podawać numer portu TCP (domyślnie dziesiętne 23).
          Screen podłączy się do  serwera  na  zdalnym  hoście  i
          użyje protokołu telnet do komunikacji.
          Dla  okien  telnet,  komenda info wyświetla szczegóły o
          połączeniu w nawiasach kwadratowych ([ i  ])  na  końcu
          linii statusu.

          b      BINARY. Połączenie jest w trybie binarnym.

          e      ECHO. Wyłączone lokalne echo.

          c      SGA.   Połączenie   jest   w  `trybie  znakowym'
                 (domyślnie: `tryb wierszowy').

          t      TTYPE.  Zdalny  host  zażądał  typu   terminala.
                 Screen  wysyła  nazwę  "screen", chyba że został
                 inaczej pouczony (zobacz też komendę `term').

          w      NAWS. Zdalny host jest powiadamiany  o  zmianach
                 rozmiaru okna.

          f      LFLOW.  Zdalny  host będzie przesyłał informacje
                 kontroli przepływu. (Obecnie ignorowane.)

          Dodatkowymi flagami, przeznaczonymi do debuggowania  są
          x,t i n (XDISPLOC, TSPEED i NEWENV).

          Dla  okien  telnet, komenda break wysyła kod telnet IAC
          BREAK (dziesiętne 243) do zdalnego hosta.


          Ten rodzaj  okien  jest  dostępny  tylko  jeśli  screen
          został  skompilowany ze zdefiniowaną opcją BUILTIN_TEL­
          NET.



ŁAŃCUCHOWE SEWKENCJE SPECJALNE
       Screen daje specjalny mechanizm wstawiania do  komunikatów
       lub  nazw  pliku  informacji  w  rodzaju  bieżącego czasu.
       Znakiem specjalnym jest '%', z jednym wyjątkiem: w obrębie
       twardego statusu okna używane jest '^%' ('^E').

       Oto pełna lista obsługiwanych sekwencji:

       %      znak procentu

       a      'am' albo 'pm'




                         10 czerwca 1999                       45





SCREEN(1)                                               SCREEN(1)


       A      'AM' albo 'PM'

       c      bieżący czas, GG:MM w postaci 24h

       C      bieżący czas, GG:MM w postaci 12h

       d      numer dnia

       D      nazwa dnia tygodnia

       h      twardy status okna

       l      bieżące obciążenie systemu

       m      numer miesiąca

       M      nazwa miesiąca

       n      numer okna

       s      sekundy

       t      tytuł okna

       u      wszyscy inni użytkownicy tego okna

       w      wszystkie numery okien i nazwy

       W      wszystkie numery okien i nazwy poza bieżącą

       y      ostatnie dwie cyfry roku

       Y      pełny rok

       ?      część  do  następnego  '%?'  jest wyświetlana tylko
              jeśli sekwencja rozwija się do niezerowego łańcucha

       :      część else '%?'

       Sekwencje  'c'  i  'C'  mogą  być kwalifikowane przez '0',
       powodując, że screen użyje zera zamiast spacji jako  znaku
       wypełnienia.  Sekwencja  'n' rozumie kwalifikator długości
       (np. '%3n').


KONTROLA PRZEPŁYWU
       Każde okno ma ustawienie kontroli przepływu, które określa
       jak  traktować  znaki XON i XOFF (oraz prawdopodobnie znak
       przerwania  (interrupt)).  Gdy  kontrola  jest  wyłączona,
       znaki   te   są   ignorowane,  co  umożliwia  użytkownikom
       przesyłanie ich w prosty sposób  do  programów  (przydatne
       np. dla edytora emacs).  Minusem jest to, że trzeba będzie
       dłużej czekać aż wyjście z "normalnego" programu zapauzuje
       w  odpowiedzi na XOFF.  Przy włączonej kontroli przepływu,



                         10 czerwca 1999                       46





SCREEN(1)                                               SCREEN(1)


       znaki XON i XOFF są używane do natychmiastowego  przerywa­
       nia  wyjścia  z  bieżącego  okna.  Znaki  te  można  wciąż
       przesyłać  do  bieżącego  programu,  lecz  musisz   używać
       odpowiednich  dwuznakowych  komend screena (zwykle "C-a q"
       (xon) oraz "C-a s" (xoff)).  Komendy xon/xoff są też przy­
       datne  do  wpisywania  C-s  i  C-q obok terminala, przech­
       wytującego te znaki.

       Każde okno ma początkową wartość kontroli przepływu ustaw­
       ianą  albo  opcją  -f,  albo  komendą "defflow" .screenrc.
       Domyślnie, okna są ustawiane na automatyczne  przełączanie
       przepływu.  Może  to  być  potem przełączane między trzema
       stanami--'włączony  ustalony'   (fixed   on),   'wyłączony
       ustalony'  (fixed off) i 'automatyczny' (automatic)--służy
       do tego komenda "flow", podwiązana do "C-a f".

       Tryb automatycznego  przełączania  przepływu  zajmuje  się
       kontrolą przepływu przy użyciu trybu TIOCPKT (podobnie jak
       "rlogin"). Jeśli  sterownik  tty  nie  obsługuje  TIOCPKT,
       screen próbuje znaleźć prawidłowy tryb w oparciu o bieżące
       ustawienie keypadu aplikacji - gdy jest włączony, kontrola
       przepływu  jest  wyłączona  i  odwrotnie.   Oczywiście,  w
       wypadku zajścia potrzeby, wciąż można manipulować kontrolą
       ręcznie.

       Jeśli pracujesz z włączoną kontrolą przepływu i zauważysz,
       że naciskanie klawisza przerwania (zwykle  C-c)  nie  prz­
       erywa  wyświetlania  aż  do  następnych 6-8 linii, spróbuj
       uruchomić screena z opcją "interrupt" (dodaj flagę "inter­
       rupt"  do  komendy  "flow"  w .screenrc, lub użyj opcji -i
       linii komend).  Powoduje  to,  że  wyjście,  które  screen
       zebrał  z przerwanego programu jest wypróżniane. Wadą tego
       jest to, że pamięć terminala zawiera niewypróżnioną wersję
       wyjścia,  co  w  rzadkich przypadkach może powodować pewne
       niedokładności wyjścia.  Na  przykład,  jeśli  przełączasz
       ekrany i powrócisz, lub odświeżysz ekran z pomocą "C-a l",
       to zobaczysz wersję  wyjścia,  która  pojawiłaby  się  bez
       włączonego  "interrupt".  Poza tym, być może podczas pracy
       z programem, który oczekuje wpisywania jako wejście  znaku
       przerwania  (interrupt),  będzie  trzeba wyłączyć kontrolę
       przepływu (lub użyć trybu automatycznego),  ponieważ  jest
       możliwe  przypadkowe przerwanie wyjścia wirtualnego termi­
       nala na  twój  terminal  fizyczny.   Jeśli  zajdzie  takie
       zdarzenie,  zwykłe  odświeżenie  ekranu "C-a l" powinno go
       odtworzyć.



TYTUŁY (nazywanie okien)
       Nazwę każdego okna w wyświetlaczu  (widzianą  w  komendzie
       "windows"  (C-a  w))  można zmienić poprzez ustawianie jej
       jedną z komend title.  Normalnie, wyświetlaną  nazwą  jest
       nazwa  polecenia  programu,  utworzonego  w oknie.  Czasem
       jednak przydatne jest rozróżnić różne programy o tej samej



                         10 czerwca 1999                       47





SCREEN(1)                                               SCREEN(1)


       nazwie,  lub  zmieniać  nazwę  w locie, aby odzwierciedlać
       bieżący stan okna.

       Domyślna  nazwa  okien  powłokowych  może  być   ustawiana
       komendą  "shelltitle"  pliku  .screenrc,  podczas gdy inne
       okna są tworzone komendą "screen" i  mogą  mięć  ustawianą
       nazwę poprzez opcję -t.  Interaktywnie, istnieje sekwencja
       specjalna  łańcuchu  tytułowego  (<esc>knazwa<esc>\)  oraz
       komenda "title" (C-a A).  Pierwsze może być wysyłane przez
       aplikację w celu kontrolowania nazwy okna, a drugie zapyta
       o  nazwę  po  wciśnięciu.  Można też przywiązać nazwy pre­
       definiowane do klawiszy z komendą "title" i  ustawiać  tak
       wszystko w sposób zgrabny i bez zapytywania.

       Screen   ma   pewne  mechanizmy  specyficznej  dla  powłok
       heurystyki,  włączanej  przez  ustawienie  nazwy  okna  na
       "szukaj|nazwa"  i zaaranżowanie zerowej sekwencji specjal­
       nej  tytułu  jako  części  znaku  zachęty.   Część  szukaj
       określa  szukany  łańcuch końca-znaku-zachęty, podczas gdy
       część nazwa określa domyślną nazwę powłoki dla okna. Jeśli
       nazwa  kończy  się  dwukropkiem,  screen spróbuje dodać do
       końca nazwy powłoki nazwę komendy,  uruchomionej  w  oknie
       (np.  "nazwa:kmd").   W przeciwnym wypadku, nazwa bieżącej
       komendy poprzedza podczas działania nazwę powłoki.

       Oto jak to działa:  musisz  zmodyfikować  zachętę  powłoki
       tak,   by  emitowała  zerową  sekwencję  specjalną  tytułu
       (<esc>k</esc>\). Ostatnia część  znaku  zachęty  musi  być
       identyczna  z  łańcuchem,  podanym w części szukaj tytułu.
       Gdy jest to  ustawione,  screen  będzie  używał  sekwencji
       specjalnej tytułu do czyszczenia poprzedniej nazwy komendy
       i przygotowywał się na następną komendę. Potem, po odebra­
       niu  z  powłoki  nowej linii, nastąpi szukanie końca znaku
       zachęty. Po jego znalezieniu,  pobrane  zostanie  pierwsze
       słowo,  znajdujące  się za nim i zostanie użyte jako nazwa
       komendy. Jeśli nazwa komendy rozpoczyna się od  '!',  '%',
       lub '^', to screen użyje pierwszego słowa następnej linii,
       preferując je nad właśnie  znalezioną  nazwę.   Pomaga  to
       użytkownikom  csh  w uzyskiwaniu lepszych nazw komend przy
       używaniu kontroli zadań lub historii.

       Oto kilka przykładów .screenrc:

              screen -t top 2 nice top

       Dodanie tej linii do .screenrc uruchomi  znicowaną  wersję
       komendy "top" w oknie 2 o nazwie "top" (a nie "nice").

                   shelltitle '> |csh'
                   screen 1

       Komendy   te   uruchamiają   powłokę   o   podanym  tytule
       powłokowym.  Tytuł  jest  podany  jako  auto-tytuł,  który
       oczekuje,  że znak zachęty i wpisana komenda będą wyglądać



                         10 czerwca 1999                       48





SCREEN(1)                                               SCREEN(1)


       podobnie do następującego:

              /usr/joe/src/dir> trn

       (za znakiem '> ' następuje szukanie nazwy komendy).   Sta­
       tus okna pokaże podczas działania komendy wartość "trn", a
       po jej zakończeniu powróci do "csh".

              bind R screen -t '% |root:' su

       To polecenie wiąże sekwencję klawiszową "C-a R" do komendy
       "su"  i  przekazuje  jej auto-tytuł "root:". Aby ten tytuł
       zadziałał, ekran powinien wyglądać następująco:

                   % !em
                   emacs file.c

       Użytkownik wpisał tu komendę  "!em"  historii  csh,  która
       uruchomiła poprzednio wpisaną komendę "emacs". Status okna
       pokaże "root:emacs"  podczas  wykonywania  komendy,  a  po
       zakończeniu po prostu "root:".

                   bind o title
                   bind E title ""
                   bind u title (unknown)

       Pierwsze  wiązanie  nie ma żadnych argumentów, więc zapyta
       cię o tytuł (C-a o).   Drugie  wiązanie  wyczyści  bieżące
       ustawienie  auto-tytułu  (C-a E).  Trzecie wiązanie ustawi
       tytuł bieżącego okna na "(unknown)" (C-a u).

       Ważną rzeczą do pamiętania  przy  dodawaniu  zerowej  sek­
       wencji  specjalnej  tytułu  do  znaku  zachęty jest to, że
       niektóre powłoki (np. csh) zliczają wszystkie niesterujące
       znaki jako długość znaku zachęty. Jeśli znaki niewidzialne
       nie  są  wielokrotnością  8,  to  backspace  po  tabulacji
       spowoduje  nieprawidłowe  wyświetlanie. Sposobem ominięcia
       tego jest użycie następującego znaku zachęty:

              set prompt='^[[0000m^[k^[\% '

       Sekwencja specjalna "<esc>[0000m"  nie  tylko  normalizuje
       atrybuty    znakowe,   lecz   dodatkowo   wszystkie   zera
       zaokrąglają długość znaków niewidzialnych do 8.  Użytkown­
       icy basha prawdopodobnie będą chcieli wyświetlać sekwencję
       specjalną przy użyciu PROMPT_COMMAND:

              PROMPT_COMMAND='echo -n -e "\033k\033\134"'

       (Do wysyłania `\' używałem "134" z uwagi na  błąd  w  bash
       1.04).






                         10 czerwca 1999                       49





SCREEN(1)                                               SCREEN(1)


TERMINAL WIRTUALNY
       Każde  okno  w  sesji  screen  emuluje  terminal  vt100  z
       dodanymi kilkoma funkcjami. Emulator vt100 jest  wkodowany
       na sztywno; nie ma emulacji innych terminali.
       Zazwyczaj  screen  usiłuje  emulować tak dużo ze standardu
       vt100/ansi ile tylko możliwe. Jeśli jednak  twój  terminal
       nie  ma  pewnych  właściwości,  emulacja może nie być kom­
       pletna.  W  tych   wypadkach,   screen   musi   powiedzieć
       aplikacją,  że  niektórych właściwości nie ma. Nie jest to
       problem dla maszyn używających termcapa, gdyż screen  może
       używać  zmiennej  $TERMCAP do dostosowywania standardowego
       termcapu screena.

       Jeśli jednak wykonujesz rlogin na inną maszynę, lub  twoja
       maszyna  obsługuje tylko terminfo, metoda ta nie zadziała.
       Z tego powodu, screen daje pewien sposób  na  zajęcie  się
       tymi przypadkami. Oto jak to działa:

       Gdy  screen  próbuje  znaleźć  dla siebie nazwę terminala,
       najpierw szuka wpisu "screen.<term>",  gdzie  <term>  jest
       zawartością  twojej  zmiennej  $TERM.  Jeśli wpis taki nie
       istnieje, próbowany jest "screen"  (lub  "screen-w"  jeśli
       terminal  jest  szeroki  (132  kolumn lub więcej)).  Jeśli
       nawet ten  wpis  nie  został  znaleziony,  jako  substytut
       używany jest "vt100".

       Pomysłem  jest  to,  że  jeśli  masz  terminal,  który nie
       obsługuje ważnej właściwości  (np.  kasowanie  znaku,  lub
       czyszczenie  do  EOS), to możesz zbudować dla screena nowy
       wpis termcap/terminfo (o  nazwie  "screen.<dumbterm>"),  w
       którym  właściwość  ta jest wyłączona. Jeśli ten wpis jest
       zainstalowany na twoich  maszynach,  to  możesz  wykonywać
       rlogin  i wciąż zachowywać poprawny wpis termcap/terminfo.
       Nazwa terminala jest wstawiana do zmiennej  $TERM  wszyst­
       kich  nowych okien.  Dodatkowo też, screen ustawia zmienną
       $TERMCAP,  aby  odzwierciedlała  właściwości   emulowanego
       wirtualnego   terminala.  Zauważ jednak, że na maszynach z
       bazami terminfo, zmienna ta nie ma efektu.  Ponadto,  zmi­
       enna $WINDOW jest ustawiana na numer okna każdego okna.

       Rzeczywisty zestaw właściwości, obsługiwanych przez termi­
       nal wirtualny zależy od  właściwości  obsługiwanych  przez
       terminal fizyczny. Jeśli na przykład terminal fizyczny nie
       obsługuje trybu podkreślania, screen nie  będzie  wstawiał
       właściwości  `us'  i  `ue'  do $TERMCAP.  Jednak do samego
       uruchomienia   screena   potrzeba   minimalnego    zestawu
       właściwości;  są  to  przewijanie,  czyszczenie  ekranu  i
       bezpośrednie adresowanie kursora  (dodatkowo,  screen  nie
       działa  na  terminalach  hardcopy  i na terminalach, które
       nadstukują).

       Wartość $TERMCAP można  też  dostosowywać,  korzystając  z
       komendy  .screenrc "termcap", lub definiując przed startem
       zmienną  środowiskową  $SCREENCAP.   Gdy  to  drugie  jest



                         10 czerwca 1999                       50





SCREEN(1)                                               SCREEN(1)


       zdefiniowane, jego zawartość będzie dosłownie kopiowana do
       zmiennej $TERMCAP każdego okna. Może  to  być  albo  pełna
       definicja terminala, albo plik, w którym zdefiniowany jest
       terminal "screen" (lub/i "screen-w").

       Zauważ, że screen honoruje komendę  "terminfo"  .screenrc,
       jeśli system używa bazy terminfo.

       Gdy  we  wpisie  termcap  obecna  jest właściwość logiczna
       `G0', to terminal, z którego uruchomiono screena obsługuje
       wiele zestawów znaków. Umożliwia to aplikacji np. używanie
       grafiki vt100 lub narodowych zestawów znaków.  Obsługiwane
       są  następujące  komendy  z  ISO 2022: lock shift G0 (SI),
       lock shift G1 (SO), lock shift G2, lock shift  G3,  single
       shift  G2,  oraz single shift G3.  Gdy tworzony (lub rese­
       towany)  jest  terminal  wirtualny,  zestaw   ASCII   jest
       oznaczany jako G0 do G3.  Gdy obecna jest właściwość `G0',
       screen analizuje (jeśli są obecne) właściwości `S0',  `E0'
       i  `C0'.  `S0'  jest  sekwencją,  której terminal używa do
       włączania zestawu znaków graficznych zamiast SI. `E0' jest
       odpowiadającym  zamiennikiem  dla  SO.   `C0' daje łańcuch
       translacji znaku na znak, używany  w  trybie  semigrafiki.
       Łańcuch  ten jest zbudowany podobnie do właściwości `acsc'
       terminfo.

       Gdy we wpisie terminala obecne są właściwości `po' i `pf',
       aplikacje  pracujące  pod screenem mogą wysyłać wyjście na
       port drukarki terminala.  Umożliwia to użytkownikowi posi­
       adanie  w  jednym  oknie aplikacji, wysyłającej wyjście do
       drukarki, podłączonej do terminala, podczas gdy inne  okna
       są  wciąż aktywne (port drukarki jest włączany i wyłączany
       dla każdego fragmentu wyjścia).  Jako efekt uboczny,  pro­
       gramy pracujące w różnych oknach mogą równocześnie wysyłać
       wyjście na drukarkę  .   Dane  wysyłane  do  drukarki  nie
       pojawiają  się  w  oknie.  Komenda info wyświetla w czasie
       aktywności drukarkowej linię rozpoczynającą się od `PRIN'.

       Screen  Obsługuje  linię  twardego  statusu  każdego okna.
       Jeśli okno zostanie wybrane,  twardy  status  wyświetlacza
       jest odświeżany, aby odpowiadał statusowi tego okna. Jeśli
       wyświetlacz nie posiada twardego statusu, to linia  będzie
       wyświetlana  jako  standardowy  komunikat  screena.  Linię
       twardego statusu można zmienić  komendą  ANSI  Application
       Program  Command  (APC): "ESC_<łańcuch>ESC\". Jako ukłon w
       stronę użytkowników xterma, przyjmowana jest też sekwencja
       "ESC]0..2;<string>^G".

       Niektóre  właściwości  są  wstawiane  do zmiennej $TERMCAP
       terminala wirtualnego  tylko  jeśli  można  je  efektywnie
       zaimplementować  na  terminalu fizycznym. Na przykład `dl'
       jest  wstawiane  tylko  jeśli  terminal   obsługuje   albo
       kasowanie  linii,  albo  przewijanie  regionów. Zauważ, że
       może  to  spowodować  zakłopotanie  gdy   sesja   zostanie
       wznowiona  na  innym  terminalu, gdyż wartość $TERMCAP nie



                         10 czerwca 1999                       51





SCREEN(1)                                               SCREEN(1)


       może być zmieniona przez proces rodzicielski.

       Poniżej znajduje się lista sekwencji sterujących,  rozpoz­
       nawanych   przez   screen.    "(V)"   i   "(A)"  określają
       VT100-specyficzne oraz ANSI- lub ISO-specyficzne  funkcje.


       ESC E                      Następna linia.

       ESC D                      Indeks

       ESC M                      Odwróć indeks

       ESC H                      Ustaw tabulację poziomą

       ESC Z                      Wyślij   łańcuch  identyfikacji
                                  vt100

       ESC 7                 (V)  Zachowaj kursor i atrybuty

       ESC 8                 (V)  Odtwórz kursor i atrybuty

       ESC [s                (A)  Zachowaj kursor i atrybuty

       ESC [u                (A)  Odtwórz kursor i atrybuty

       ESC c                      Resetuj do stanu początkowego

       ESC g                      Dzwonek wizualny

       ESC Pn p                   Widzialność kursora (97801)

           Pn = 6                 Niewidzialny

                7                 Widzialny

       ESC =                 (V)  Tryb keypad aplikacji

       ESC >                 (V)  Tryb numerycznego keypadu

       ESC # 8               (V)  Wypełnij ekran E.

       ESC \                 (A)  Terminator łańcucha

       ESC ^                 (A)  Łańcuch  prywatnego  komunikatu
                                  (linia komunikatów)

       ESC !                      Łańcuch  globalnego  komunikatu
                                  (linia komunikatów)

       ESC k                      Łańcuch definicji A.k.a.

       ESC P                 (A)  Łańcuch  kontroli   urządzenia.
                                  Wysyła      bezpośrednio     do



                         10 czerwca 1999                       52





SCREEN(1)                                               SCREEN(1)


                                  hostowego terminala łańcuch bez
                                  interpretacji.

       ESC _                 (A)  Komenda    programu   aplikacji
                                  (twardy status)

       ESC ]                 (A)  Komenda  systemu   operacyjnego
                                  (twardy   status,  hack  tytułu
                                  xterm)

       Control-N             (A)  Zablokuj Shift G1 (SO)

       Control-O             (A)  Zablokuj Shift G0 (SI)

       ESC n                 (A)  Zablokuj Shift G2

       ESC o                 (A)  Zablokuj Shift G3

       ESC N                 (A)  Pojedynczy Shift G2

       ESC O                 (A)  Pojedynczy Shift G3

       ESC ( Pcs             (A)  Desygnuj zestaw znaków jako G0

       ESC ) Pcs             (A)  Desygnuj zestaw znaków jako G1

       ESC * Pcs             (A)  Desygnuj zestaw znaków jako G2

       ESC + Pcs             (A)  Desygnuj zestaw znaków jako G3

       ESC [ Pn ; Pn H            Bezpośrednie  adresowanie  kur­
                                  sora

       ESC [ Pn ; Pn f            jak wyżej

       ESC [ Pn J                 Kasuj w wyświetlaczu

             Pn = None or 0       Od kursora do końca ekranu

                  1               Od początku ekranu do kursora

                  2               Cały ekran

       ESC [ Pn K                 Kasuj w linii

             Pn = None or 0       Od kursora do końca linii

                  1               Od początku linii do kursora

                  2               Całą linię

       ESC [ Pn A                 Kursor w górę

       ESC [ Pn B                 Kursor w dół



                         10 czerwca 1999                       53





SCREEN(1)                                               SCREEN(1)


       ESC [ Pn C                 Kursor w prawo

       ESC [ Pn D                 Kursor w lewo

       ESC [ Pn E                 Kursor na następną linię

       ESC [ Pn F                 Kursor na poprzednią linię

       ESC [ Pn G                 Pozioma pozycja kursora

       ESC [ Pn `                 jak wyżej

       ESC [ Pn d                 Pionowa pozycja kursora

       ESC [ Ps ;...; Ps m        Wybierz interpretację grafiki

             Ps = None or 0       Domyślna interpretacja

                  1               Pogrubienie

                  2          (A)  Mdły

                  3          (A)  Tryb standout (ANSI: kursywa)

                  4               Podkreślenie

                  5               Migotanie

                  7               Negatyw

                  22         (A)  Normalna intensywność

                  23         (A)  Wyłączenie    trybu    standout
                                  (ANSI: wyłączenie kursywy)

                  24         (A)  Nie podkreślone

                  25         (A)  Nie migoczące

                  27         (A)  Obraz pozytywowy

                  30         (A)  Pierwszy plan czarny

                  31         (A)  Pierwszy plan czerwony

                  32         (A)  Pierwszy plan zielony

                  33         (A)  Pierwszy plan żółty

                  34         (A)  Pierwszy plan niebieski

                  35         (A)  Pierwszy plan fioletowy

                  36         (A)  Pierwszy plan cyjankowy



                         10 czerwca 1999                       54





SCREEN(1)                                               SCREEN(1)


                  37         (A)  Pierwszy plan biały

                  39         (A)  Pierwszy plan domyślny

                  40         (A)  Tło czarne

                  ...

                  49         (A)  Tło domyślne

       ESC [ Pn g                 Czyszczenie tab

             Pn = None or 0       Czyszczenie   tab   w   pozycji
                                  bieżącej

                  3               Czyszczenie wszystkich tabów

       ESC [ Pn ; Pn r       (V)  Ustaw region przewijania

       ESC [ Pn I            (A)  Tabulacja pozioma

       ESC [ Pn Z            (A)  Tabulacja wsteczna

       ESC [ Pn L            (A)  Wstaw linię

       ESC [ Pn M            (A)  Skasuj linię

       ESC [ Pn @            (A)  Wstaw znak

       ESC [ Pn P            (A)  Skasuj znak

       ESC [ Pn S                 Przewiń  region  przewijania  w
                                  górę

       ESC [ Pn T                 Przewij  region  przewijania  w
                                  dół

       ESC [ Pn ^                 jak wyżej

       ESC [ Ps ;...; Ps h        Ustaw tryb

       ESC [ Ps ;...; Ps l        Resetuj tryb

             Ps = 4          (A)  Tryb wstawiania

                  20         (A)  Tryb automatycznego linefeed

                  34              Normalna widzialność kursora

                  ?1         (V)  Klawisze kursora aplikacji

                  ?3         (V)  Zmień  szerokość  terminala  na
                                  132 kolumny




                         10 czerwca 1999                       55





SCREEN(1)                                               SCREEN(1)


                  ?5         (V)  Tryb reverse video

                  ?6         (V)  Tryb origin

                  ?7         (V)  Tryb zawijania

                  ?25        (V)  Widzialny kursor

       ESC [ 5 i             (A)  Zacznij     transmitować     do
                                  drukarki (ANSI Media Copy)

       ESC [ 4 i             (A)  Przerwij transmisję do drukarki
                                  (ANSI Media Copy)

       ESC [ 8 ; Ph ; Pw t        Zmień  rozmiar  okna  na   `Ph'
                                  linii  i  `Pw'  kolumn (SunView
                                  special)

       ESC [ c                    Wyślij  łańcuch   identyfikacji
                                  VT100

       ESC [ x                    Wyślij raport parametrów termi­
                                  nala

       ESC [ > c                  Wyślij łańcuch  atrybutów  dru­
                                  gorzędnego urządzenia VT220

       ESC [ 6 n                  Wyślij raport pozycji kursora



TRANSLACJA WEJŚCIA
       Aby  spełniać pełną emulację VT100, screen musi wykryć, że
       w strumieniu wejściowym wygenerowano  sekwencję  znaków  i
       wstawić sekwencję specjalną VT100. Screen robi to w bardzo
       elastyczny sposób,  umożliwiając  zmapowanie  arbitralnych
       komand  na  arbitralne sekwencje znakowe. Dla standardowej
       emulacji VT100, komenda będzie zawsze wstawiać łańcuch  do
       bufora  wejściowego  okna (zobacz też opis komendy stuff).
       Z uwagi na to, że sekwencje generowane  przez  naciśnięcie
       klawisza mogą się zmienić po ponownym podłączeniu z innego
       terminala, można wiązać komendy do nazw termcapowych klaw­
       iszy.  Screen  wstawi  wtedy prawidłowe wiązanie po każdym
       wznowieniu.  Zobacz  też  komendę  bindkey  dla   dalszych
       szczegółów składni i przykładów.

       Oto  tablica  domyślnych wiązań klawiszowych. (A) oznacza,
       że komenda jest wykonywana jeśli klawiatura jest w  trybie
       aplikacji.

       Nazwa klawisza    Nazwa termcap   Komenda
       ______________________________________________________
       Kursor w górę         ku          stuff \033[A
                                         stuff \033OA    (A)



                         10 czerwca 1999                       56





SCREEN(1)                                               SCREEN(1)


       Kursor w dół          kd          stuff \033[B
                                         stuff \033OB    (A)
       Kursor w prawo        kr          stuff \033[C
                                         stuff \033OC    (A)
       Kursor w lewo         kl          stuff \033[D
                                         stuff \033OD    (A)
       Klawisz funkc 0       k0          stuff \033[10~
       Klawisz funkc 1       k1          stuff \033OP
       Klawisz funkc 2       k2          stuff \033OQ
       Klawisz funkc 3       k3          stuff \033OR
       Klawisz funkc 4       k4          stuff \033OS
       Klawisz funkc 5       k5          stuff \033[15~
       Klawisz funkc 6       k6          stuff \033[17~
       Klawisz funkc 7       k7          stuff \033[18~
       Klawisz funkc 8       k8          stuff \033[19~
       Klawisz funkc 9       k9          stuff \033[20~
       Klawisz funk 10       k;          stuff \033[21~
       Klawisz funk 11       F1          stuff \033[22~
       Klawisz funk 12       F2          stuff \033[23~
       Backspace             kb          stuff \010
       Home                  kh          stuff \033[1~
       End                   kH          stuff \033[4~
       Insert                kI          stuff \033[2~
       Delete                kD          stuff \033[3~
       Page up               kP          stuff \033[5~
       Page down             kN          stuff \033[6~
       Keypad 0              f0          stuff 0
                                         stuff \033Op    (A)
       Keypad 1              f1          stuff 1
                                         stuff \033Oq    (A)
       Keypad 2              f2          stuff 2
                                         stuff \033Or    (A)
       Keypad 3              f3          stuff 3
                                         stuff \033Os    (A)
       Keypad 4              f4          stuff 4
                                         stuff \033Ot    (A)
       Keypad 5              f5          stuff 5
                                         stuff \033Ou    (A)
       Keypad 6              f6          stuff 6
                                         stuff \033Ov    (A)
       Keypad 7              f7          stuff 7
                                         stuff \033Ow    (A)
       Keypad 8              f8          stuff 8
                                         stuff \033Ox    (A)
       Keypad 9              f9          stuff 9
                                         stuff \033Oy    (A)
       Keypad +              f+          stuff +
                                         stuff \033Ok    (A)
       Keypad -              f-          stuff -
                                         stuff \033Om    (A)
       Keypad *              f*          stuff *
                                         stuff \033Oj    (A)
       Keypad /              f/          stuff /
                                         stuff \033Oo    (A)



                         10 czerwca 1999                       57





SCREEN(1)                                               SCREEN(1)


       Keypad =              fq          stuff =
                                         stuff \033OX    (A)
       Keypad .              f.          stuff .
                                         stuff \033On    (A)
       Keypad ,              f,          stuff ,
                                         stuff \033Ol    (A)
       Keypad enter          fe          stuff \015
                                         stuff \033OM    (A)



SPECJALNE WŁAŚCIWOŚCI TERMINALA
       Następująca  tablica  opisuje wszystkie właściwości termi­
       nala, które są rozpoznawane przez screen, a których nie ma
       w    podręczniku   termcap(5).    Możesz   umieszczać   te
       właściwości w swoich wpisach termcap (w /etc/termcap)  lub
       używać  komend  `termcap',  `terminfo'  i  `termcapinfo' w
       plikach screenrc.  Często nie jest możliwe wstawienie tych
       właściwości do bazy terminfo.


       LP   (bool)  Terminal  ma  marginesy  w stylu VT100 (`mag­
                    iczne marginesy'). Zauważ, że  ta  właściwość
                    jest  przedawniona, gdyż screen używa zamiast
                    tego standardowego

       Z0   (str)   Zmień szerokość na 132 kolumny.

       Z1   (str)   Zmień szerokość na 80 kolumn.

       WS   (str)   Zmień  rozmiar  wyświetlacza.  Właściwość  ta
                    jako  argumenty bierze oczekiwaną szerokość i
                    wysokość.        Przykład        SunView(tm):
                    '\E[8;%d;%dt'.

       NF   (bool)  Terminal  nie  potrzebuje kontroli przepływu.
                    Przesyłaj ^S i ^Q bezpośrednio do  aplikacji.
                    To  samo  co  'flow off'. Przeciwieństwem tej
                    właściwości jest 'nx'.

       G0   (bool)  Terminal daje sobie radę z sekwencjami wyboru
                    fontu ISO 2022.

       S0   (str)   Przełącz zestaw znaków 'G0' na podany zestaw.
                    Domyślnym jest '\E(%.'.

       E0   (str)   Przełącz zestaw znaków  'G0'  z  powrotem  na
                    standardowy zestaw. Domyślnie to '\E(B'.

       C0   (str)   Użyj  łańcucha  jako  tablicy  konwersji  dla
                    fontu '0'. Zobacz właściwość  'ac'  dla  dal­
                    szych szczegółów.

       CS   (str)   Przełącz klawisze-kursora w tryb aplikacji.



                         10 czerwca 1999                       58





SCREEN(1)                                               SCREEN(1)


       CE   (str)   Przełącz klawisze-kursora z powrotem do trybu
                    normalnego.

       AN   (bool)  Włącz autonuke. Zobacz komendę 'autonuke' dla
                    dalszych szczegółów.

       OL   (num)   Ustaw   limit   bufora   wyjściowego.  Zobacz
                    komendę 'obuflimit' dla dalszych  szczegółów.

       KJ   (str)   Ustaw  typ kanji terminala. Prawidłowe ustaw­
                    ienia to "jis", "euc" i "sjis".

       AF   (str)   Zmień kolor pierwszego planu znaków w postaci
                    zgodnej  z  ANSI.  Właściwość  ta jest prawie
                    zawsze ustawiana na  '\E[3%dm'  ('\E[3%p1%dm'
                    na maszynach terminfo).

       AB   (str)   To samo co 'AF', lecz zmienia kolor tła.

       AX   (bool)  Rozumie  włączanie  domyślnego  koloru  pier­
                    wszego planu/tła ANSI (\E[39m / \E[49m).

       XC   (str)   Opisuje  translację   znaków   na   łańcuchy,
                    zależnie  od bieżącego fontu. Więcej detali w
                    następnej sekcji.

       TF   (bool)  Dodaj  brakujące  właściwości   termcap/info.
                    (Domyślnie ustawione).


TRANSLACJA ZNAKÓW
       Screen  ma  potężny  mechanizm tłumaczenia znaków na arbi­
       tralne łańcuchy, zależnie od bieżącego fontu i typu termi­
       nala.

       Składnia:
           XC=<mapowanie-znaków>{,,<mapowanie-znaków>}
           <mapowanie-znaków> := <desygnator><wzorzec>{,<mapowanie>}
           <mapowanie> := <znak-do-zmapowania><arg-wzorca>

       Elementy w nawiasach mogą być powtarzane wielokrotnie.

       <mapowanie-znaków>  mówi screenowi jak mapować znaki fontu
       <desygnator> ('B': Ascii, 'A': UK, 'K':  niemiecki,  itd.)
       na  łańcuchy.   Każde  <mapowanie< opisuje na jaki łańcuch
       tłumaczyć pojedynczy znak.  Z  uwagi  na  wiele  wspólnego
       różnych   kodów,   używany  jest  mechanizm  wzorców  (np.
       łańcuchy przełączające do i z  jakiegoś  zestawu  znaków).
       Każde  pojawienie się we <wzorcu> znaku '%' jest podmieni­
       ane na <arg-wzorca> podany wraz ze  znakiem.  Jeśli  twoje
       łańcuchy  nie  są  w ogóle podobne, użyj jako wzorca '%' i
       umieść  pełny  łańcuch  w  <arg-wzorca>.   Aby   umożliwić
       używanie rzeczywistego '%', udostępniono mechanizm cytowa­
       nia. Znak '\' cytuje znaki specjalne '\', '%' i ','.



                         10 czerwca 1999                       59





SCREEN(1)                                               SCREEN(1)


       Here is an example:

           termcap hp700 'XC=B\E(K%\E(B,\304[,\326\\\\,\334]'

       Mówi to screenowi jak tłumaczyć duże znaki umlaut  z  ISO­
       latin1  (zestaw  znaków  'B')   na  terminalu hp700, który
       posiada niemiecki zestaw znaków. '\304' będzie  tłumaczone
       na  '\E(K[\E(B' itd. Zauważ, że linia ta jest przetwarzana
       *trzykrotnie* zanim zbudowana zostanie wewnętrzna  tablica
       sprawdzania.   Dlatego   do   uzyskania  pojedynczego  '\'
       potrzeba sporo cytowania.

       Aby umożliwić dalszą emulację, dodano jeszcze jedno rozsz­
       erzenie: jeśli mapowanie tłumaczy niecytowany znak '%', to
       będzie on wysyłany na terminal za każdym razem, gdy screen
       włączy  odpowiedni  <desygnator>.  W  tym specjalnym przy­
       padku,  wzorzec  jest  przyjmowany  jako   '%',   ponieważ
       zazwyczaj  sekwencja  przełączania  znaków i mapowania nie
       mają wiele wspólnego

       Poniższy przykład pokazuje zastosowanie tego rozszerzenia:

           termcap xterm 'XC=K%,%\E(B,[\304,\\\\\326,]\334'

       W  tym  wypadku, na xtermie emulowana jest część niemieck­
       iego zestawu  znaków  ('K').  Jeśli  screen  musi  zmienić
       zestaw  znaków  na  'K',  to  wyśle do terminala sekwencję
       '\E(B', tj. zamiast używany będzie zestaw  ASCII.  Wzorzec
       to  sam  znak  '%',  więc  mapowanie  jest  proste: '[' na
       '\304', '\' na '\326', i ']' na '\334'.


ŚRODOWISKO
       COLUMNS        Liczba kolumn  terminala  (przesłania  wpis
                      termcap).
       HOME           Katalog, w którym szukać .screenrc.
       LINES          Liczba  wierszy  terminala (przesłania wpis
                      termcap).
       LOCKPRG        Program blokujący screena.
       NETHACKOPTIONS Włącza opcję nethack.
       PATH           Używane do lokalizowania uruchamianych pro­
                      gramów.
       SCREENCAP      Dla  dostosowywania  terminalowej  wartości
                      TERMCAP.
       SCREENDIR      Alternatywny katalog gniazd.
       SCREENRC       Alternatywny plik screenrc.
       SHELL          Domyślny program powłokowy  dla  otwierania
                      okien (domyślnie "/bin/sh").
       STY            Alternatywna nazwa gniazda.
       SYSSCREENRC    Alternatywny systemowy plik screenrc.
       TERM           Nazwa terminala.
       TERMCAP        Opis terminala.





                         10 czerwca 1999                       60





SCREEN(1)                                               SCREEN(1)


PLIKI
       .../screen-3.?.??/etc/screenrc
       .../screen-3.?.??/etc/etcscreenrc Przykłady  dystrybucyjne
                                         prywatnych i  globalnych
                                         plików inicjalizacji
       $SYSSCREENRC
       /etc/screenrc                     komendy    inicjalizacji
                                         screena
       $SCREENRC
       $HOME/.screenrc                   Wczytywane            po
                                         /etc/screenrc
       $SCREENDIR/S-<login>
       /tmp/screens/S-<login>            Katalogi       gniazdowe
                                         (domyślnie)
       <socket directory>/.termcap       Zapisywane przez funkcję
                                         wyjściową "termcap"
       /tmp/screens/screen-exchange      lub
       /tmp/screen-exchange              bufor        komunikacji
                                         międzyprocesowej screena
       hardcopy.[0-9]                    Obrazy  ekranów,  stwor­
                                         zone funkcją hardcopy
       screenlog.[0-9]                   Wyjściowe  pliki  rapor­
                                         towe,  utworzone funkcją
                                         log
       /usr/share/terminfo/?/*           lub
       /var/run/utmp                     Wpisy zgłoszeniowe
       $LOCKPRG                          Program, blokujący  ter­
                                         minal.


ZOBACZ TAKŻE
       termcap(5), utmp(5), vi(1), captoinfo(1), tic(1)


AUTORZY
       Oryginalnie  stworzone  przez Oliviera Laumanna. Najnowsza
       wersja wydana przez Wayne Davisona,  Juergena  Weigerta  i
       Michaela Schroedera.

KOPIOWANIE
       Copyright (C) 1999
            Juergen Weigert (jnweiger@immd4.informatik.uni-erlangen.de)
            Michael Schroeder (mlschroe@immd4.informatik.uni-erlangen.de)
       Copyright (C) 1987 Oliver Laumann
       Program  ten jest programem wolnodostępnym; możesz go dys­
       trybuować i/lub  modyfikować  według  GNU  General  Public
       License,  opublikowanej przez FSF; wersja 2, lub (wg uzna­
       nia) dowolna wersja późniejsza.
       Program ten jest dystrybuowane w nadziei, że będzie  przy­
       datny,  lecz bez ŻADNEJ GWARANCJI. Zobacz GNU GPL dla dal­
       szych szczegółów.
       Powinieneś wraz z tym programem  otrzymać  kopię  GNU  GPL
       (zobacz  plik COPYING); jeśli nie, napisz do Free Software
       Foundation, Inc., 59 Temple Place - Suite 330, Boston,  MA



                         10 czerwca 1999                       61





SCREEN(1)                                               SCREEN(1)


       02111-1307, USA

KONTRYBUTORZY
       Ken Beal (kbeal@amber.ssd.csd.harris.com),
       Rudolf Koenig (rfkoenig@immd4.informatik.uni-erlangen.de),
       Toerless Eckert (eckert@immd4.informatik.uni-erlangen.de),
       Wayne Davison (davison@borland.com),
       Patrick Wolfe (pat@kai.com, kailand!pat),
       Bart Schaefer (schaefer@cse.ogi.edu),
       Nathan Glasser (nathan@brokaw.lcs.mit.edu),
       Larry W. Virden (lvirden@cas.org),
       Howard Chu (hyc@hanauma.jpl.nasa.gov),
       Tim MacKenzie (tym@dibbler.cs.monash.edu.au),
       Markku Jarvinen (mta@{cc,cs,ee}.tut.fi),
       Marc Boucher (marc@CAM.ORG),
       Doug Siebert (dsiebert@isca.uiowa.edu),
       Ken Stillson (stillson@tsfsrv.mitre.org),
       Ian Frechett (frechett@spot.Colorado.EDU),
       Brian Koehmstedt (bpk@gnu.ai.mit.edu),
       Don Smith (djs6015@ultb.isc.rit.edu),
       Frank van der Linden (vdlinden@fwi.uva.nl),
       Martin Schweikert (schweik@cpp.ob.open.de),
       David Vrona (dave@sashimi.lcu.com),
       E. Tye McQueen (tye%spillman.UUCP@uunet.uu.net),
       Matthew Green (mrg@mame.mu.oz.au),
       Christopher Williams (cgw@unt.edu),
       Matt Mosley (mattm@access.digex.net),
       Gregory Neil Shapiro (gshapiro@wpi.WPI.EDU).


WERSJA
       Jest  to  wersja  3.9.  Jej  korzenie są złączeniem wersji
       2.3PR7 Wayne Davisona i wielu rozszerzeń wersji 2.0  Oliv­
       era  Laumanna. Zauważ, że wszystkie wersje numerowane jako
       2.x są autorstwa Oliviera Laumanna.

DOSTĘPNOŚĆ
       Najnowsza oficjalna wersja  screena  jest  dostępna  przez
       anonimowy  ftp  z prep.ai.mit.edu, nic.funet.fi lub dowol­
       nego innego hosta dystrybucji GNU.  Domowym hostem screena
       jest ftp.uni-erlangen.de (131.188.3.71), katalog pub/util­
       ities/screen.  Podkatalog `private' zawiera najnowsze wer­
       sje   beta.   Jeśli  chcesz  pomóc,  wyślij  wiadomość  na
       screen@uni-erlangen.de.

BŁĘDY
       ˇ  `dm' (tryb kasowania) i `xs'  nie  są  obsługiwane  (są
          ignorowane).  `xn'  jest  traktowany jako wskaźnik mag­
          icznych marginesów.

       ˇ  Screen nie wie nic o znakach podwojonej  wysokości  lub
          szerokości.  Jest  to  jednak  jedyne miejsce, w którym
          vttest ma prawo się nie powieść.




                         10 czerwca 1999                       62





SCREEN(1)                                               SCREEN(1)


       ˇ  Nie  jest  możliwe  zmienienie  zmiennej  środowiskowej
          $TERMCAP  podczas ponownego podłączania z innego termi­
          nala.

       ˇ  Obsługa  systemów  opartych  o  terminfo  jest   bardzo
          ograniczona. Dodawanie właściwości do $TERMCAP może nie
          mieć żadnych efektów.

       ˇ  Screen nie używa sprzętowych tabów.

       ˇ  Screen musi być na większości systemów instalowany jako
          suid  root.  Inaczej  nie  będzie w stanie w odpowiedni
          sposób zmienić właściciela  pliku  urządzenia  tty  dla
          każdego  okna.   Wymaga  także specjalnych uprawnień do
          zapisu do pliku "/var/run/utmp".

       ˇ  Wpisy z "/var/run/utmp" nie są usuwane gdy screen  jest
          zbijany  SIGKILL.   Powoduje  to,  że niektóre programy
          ("w", "rwho") mówią,  że  użytkownik  jest  zalogowany,
          choć wcale tak nie jest.

       ˇ  Screen może dawać dziwne ostrzeżenia jeśli twój tty nie
          ma wpisu utmp.

       ˇ  Gdy linia modemu zostanie odwieszona, screen nie zawsze
          automatycznie  się  odłączy  (lub  zakończy działanie),
          chyba że sterownik  urządzenia  wysyła  sygnał  HANGUP.
          Aby  odłączyć sesję screena, użyj opcji -d lub -D linii
          komend.

       ˇ  Jeśli ustawione jest hasło, opcje -d, -D  linii  komend
          wciąż odłączają sesję bez pytania.

       ˇ  Zarówno  "breaktype"  jak  i  "defbreaktype"  zmieniają
          metodę generowania przerwania, używaną przez  wszystkie
          urządzenia   terminalowe.   Pierwszy  powinien  zmienić
          tylko ustawienie okna a drugi  tylko  wartość  domyślną
          dla nowych okien.

       ˇ  Podczas  podłączania do sesji wieloużytkownikowej, plik
          .screenrc użytkownika  nie  jest  oglądany.  Ustawienia
          prywatne  użytkowników  muszą  być  włączane  do  pliku
          .screenrc, z którego uruchomiono sesję,  lub  zmieniane
          ręcznie.

       ˇ  Dziwna  wyobraźnia jest bardzo przydatna do zrozumienia
          wszystkich właściwości.

       ˇ  Wysyłaj  raporty  o  błędach,  usprawnienia,  koszulki,
          pieniądze, piwo & pizzę do screen@uni-erlangen.de.







                         10 czerwca 1999                       63