screen

Autres langues

Langue: pl

Autres versions - même langue

Version: 10 czerwca 1999 (openSuse - 09/10/07)

Autres sections - même nom

Section: 1 (Commandes utilisateur)

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 interaktywnymi 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æ raportowanie wyj¶cia, wklejaæ miêdzy nimi tekst, ogl±daæ historiê 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 sekwencja, 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 control. 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 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 klawiszem (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 uruchomi³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 terminala 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 (automatyczne 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" automarginesowy terminal, screen bêdzie w stanie go wykorzystaæ, 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 pozycji. 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 przerysowywaæ czê¶ci wy¶wietlacza aby zaimplementowaæ dan± funkcjê.
-A
Dostosuj rozmiary wszystkich okien do rozmiaru bie¿±cego terminala. Domy¶lnie, screen próbuje odtworzyæ stare rozmiary swojego okna podczas podwieszania 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 ulubiony sposób autora.
-D -RR
Pod³±cz tu i teraz. Cokolwiek to znaczy, po prostu to zrób.
Uwaga: Zawsze jest dobrym pomys³em sprawdzenie statusu twoich sesji z pomoc± "screen -list".
-e xy
okre¶la, ¿e znak komendy to x, a znak generuj±cy literalny 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, zaznaczone 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 administratora je¶li nie jeste¶ pewien. Sesje usuwa siê opcj± -wipe.
-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 terminali automarginesowych bez `LP'). Mo¿e to byæ ustawione 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 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 zamiast 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)
...      ...
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 bie¿±cego okna do pliku "screenlog.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 control-s.
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ê kompilacji.
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/przewijania.
C-a ]      (paste .)
Zapisz zawarto¶æ bufora wklejania 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 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 $SYSSCREENRC (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 zestawiania jednego lub wiêcej okien na starcie twojej sesji screen. Komendy s± wymieniane jedna na linie; puste linie s± ignorowane. Argumenty komend s± rozdzielane tabulacjami 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.

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.

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". Specjalna nazwa u¿ytkownika "?" predefiniuje dostêp do dowolnego okna, jaki na starcie dostan± nieznani obecnie u¿ytkownicy. Specjalna nazwa u¿ytkownika "??" predefiniuje 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¶ aktywno¶æ, screen wy¶wietla informacjê w linii komunikatów. Powiadomienie mo¿e byæ przedefiniowywane komend± "activity". 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 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 globalna, 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¶wietlacze s± nazywane wed³ug tty, do których s± pod³±czone. Prefiks `/dev/' lub `/dev/tty' mo¿na pomin±æ. Je¶li identyfikator zawiera `#', lub nie ma nic doklejonego, jest dopasowywany do numerów okien i tytu³ów. Pominiêcie identyfikatora 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", "process" 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.

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 terminal. 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 dwuznakow± 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 (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 zaprogramowane 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ñ klawiszowych.
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 kursora). 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 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³ przerwania. Dla systemów nieposixowych, interwa³ czasowy mo¿e byæ zaokr±glany w górê do pe³nych sekund. Jest to przydatne 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 przerwania 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 argument plikowy, reaktywowane jest domy¶lne ustawienie ("/tmp/screen-exchange"). Nastêpuj±cy przyk³ad przekopiuje 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 ustawienie 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. 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± traktowane 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 katalog, 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 procesu, 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 interaktywnie.

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ñ. 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 specjalnego (^A). Jest chyba przydatna jedynie dla wi±zañ klawiaturowych. 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 pierwszego 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 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 zaznaczania 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 doklejania. W ten sposób bufor wklejania nie bêdzie nadpisywany, lecz zostanie do niego dopisana nowa tre¶æ.

A w³±cza tryb doklejania i ustawia (drugi) znacznik.

> ustawia (drugi) znacznik i zapisuje zawarto¶æ bufora 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 kopiowania.

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 terminala, mo¿esz u¿yæ specjalnej w³a¶ciwo¶ci `AN' terminala.

defbreaktype [tcsendbreak|TIOCSBRK |TCSBRK]

Wybierz jedn± z dostêpnych metod generowania sygna³u przerwania (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 przerwania 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.

defcharset [zestaw]

Podobne do komendy charset, lecz domy¶lne ustawienie dla nowych okien jest te¿ zmieniane. Po wywo³aniu bez argumentu, 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 ustawienie 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 character) dyrektywy jest '^E' (ósemkowe 005) zamiast '%'. Zrobione 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).

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 ustawienie 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 ustawienie 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 ustawienie 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 ustawienie dla nowych okien. Pocz±tkowo blokady zapisu s± wy³±czone.

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 traktowany 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, zoptymalizowanego 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.

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 "procesem-aplikacji") i screenem (oknem) jest kontrolowany przez wzorzec deskryptora plików fdpat. Wzorzec jest sekwencj± 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 argumenty 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 synonimem 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

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 "automatic" 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.

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æ istniej±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 nieustawione, 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 statusu 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 termcap/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 "message" 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 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. Pierwsze strony wymieniaj± wszystkie wewnêtrzne komendy wraz z ich obecnymi wi±zaniami. Dalsze strony pokazuj± zwyczajowe 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)") szeroko¶æ i wysoko¶æ terminala plus rozmiar bufora przewijania 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):


  +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".

lastmsg

Wy¶wietl na nowo ostatni± zawarto¶æ linii komunikatów/statusu. 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ê statusu). 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 `lockterminal'.

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æ zmieniana komend± `logfile'. Bez podanych parametrów, raportowanie 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 raportowego do systemu plików. Domy¶ln± warto¶ci± jest 10 sekund.

login [on|off]

Dodaje lub usuwa wpis z bazy utmp dla bie¿±cego okna. Kontroluje 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 config.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 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 aktywne 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ê zaciemniaj± fakty, lecz s± zabawniejsze do czytania. Z drugiej strony, standardowe komunikaty te¿ mog± byæ czêsto niejasne.
Opcja ta jest dostêpna tylko je¶li screen zosta³ 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æ przydatna 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 has³o, screen bêdzie o nie pyta³ za ka¿dym razem, gdy kto¶ bêdzie próbowa³ wznowiæ od³±czony proces. Jest to przydatne je¶li w sesji screen pracuj± uprzywilejowane programy 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 traktowany 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, history oraz readbuf. Inne rejestry mo¿na wype³niaæ komendami 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 argument, 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³ informacjê 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 jako zamiennik komunikatu wylogowywania, lub do resetowania 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 sekwencjê 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 klawisz.

quit

Zabij wszystkie okna i zakoñcz screen. Zauwa¿, ¿e w terminalach 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 wklejania 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 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 istnieje tylko jeden region.

removebuf

Usuwa plik wymiany screena, u¿ywany przez komendy "writebuf" i "readbuf".

reset

Przestaw terminal wirtualny na jego ustawienia pocz±tkowe. Przydatne, gdy pozosta³y na nim po jakiej¶ aplikacji dziwne 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 raportowanie 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 po³±czeniem telnet do maszyny foobar (w oknie #2, bez kontroli 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 argument "nazwa" jest pominiêty, wy¶wietlana jest nazwa tej sesji. Uwaga: zmienne ¶rodowiskowe $STY wci±¿ odzwierciedlaj± 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 zapytany o jej warto¶æ. Je¶li nie zostan± podane ¿adne parametry, 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 komenda rozpoczyna siê znakiem '-', pow³oka bêdzie uruchomiona 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 przeczytanie 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).

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 podczas 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 dopasowywane do systemowej bazy passwd, drugie do has³a screena, ustawionego komendami "acladd", "password". "Su" mo¿e byæ przydatne dla administratora screena do testowania wielou¿ytkownikowych konfiguracji. Gdy identyfikacja siê nie powiedzie, u¿ytkownik ma dostêp do komend przeznaczonych 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æ ustawienia $TERM (np. vt100) dla komendy "screen rlogin innamaszyna". Jednak zamiast tego lepiej u¿yæ "screen -T vt100 rlogin innamaszyna".

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 generowany 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 (zamiast termcap), screen bêdzie rozumia³ komendê `terminfo', która ma takie same efekty, jak komenda `termcap'. Udostêpniono dwie oddzielne komendy, gdy¿ istniej± subtelne 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 `termcapinfo', która jest skrótem dla pary komend `termcap' i `terminfo', o identycznych argumentach.

Pierwszy argument okre¶la, do którego terminala (terminali) odnosi siê definicja. Mo¿esz podaæ wiele nazw terminali, rozdzielaj±c je znakami `|'. `*' odpowiada wszystkim terminalom, a `vt*' wszystkim terminalom, rozpoczynaj±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 zawiera 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 posiadaj± 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
termcap vt102|vt220 Z0=\E[?3h:Z1=\E[?3l

Podaje w³a¶ciwo¶æ `LP' dla wszystkich terminali rozpoczynaj±cych siê od `vt'. Druga linia dodatkowo dodaje sekwencje 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 termcapie terminala definicji `im' i `ei', screen automatycznie 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 uruchomieniem screena ustawiæ zmienn± $SCREENCAP. Zobacz te¿ dyskusjê w sekcji "TERMINAL WIRTUALNY" i podrêcznik systemowy 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 specyficznych 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, 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 informacji 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 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 zawija³ 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ê "writelock 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 klawisza ma ten sam efekt. Naci¶niêcie drugiego klawisza powoduje, ¿e screen próbuje wskrzesiæ okno. Proces, uruchomiony pocz±tkowo w oknie zostanie ponownie odpalony. Wywo³anie zombie bez parametrów wyczy¶ci ustawienie zombie, w wyniku czego okna znikn± po zakoñczeniu ich procesu.

Gdy ustawienie zombie jest obs³ugiwane globalnie dla wszystkich okien, komenda ta powinna byæ nazywana defzombie. 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ê statusu, screen skorzysta w³a¶nie z niej. W przeciwnym wypadku, linia bie¿±cego ekranu bêdzie tymczasowo nadpisywana, a wyj¶cie bêdzie chwilowo przerywane. Linia komunikatów jest automatycznie usuwana po paru sekundach przerwy. 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 '$WINDOW'<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 "DOSTOSOWYWANIE"). Pierwszy parametr komendy screen okre¶la typ tworzonego okna. Inne typy okien s± szczególnymi przypadkami 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 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 odebranym 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 systemu 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 klamrowych ({ 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 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_TELNET.

£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'
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, znaki XON i XOFF s± u¿ywane do natychmiastowego przerywania 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¿ przydatne do wpisywania C-s i C-q obok terminala, przechwytuj±cego te znaki.

Ka¿de okno ma pocz±tkow± warto¶æ kontroli przep³ywu ustawian± 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 przerywa wy¶wietlania a¿ do nastêpnych 6-8 linii, spróbuj uruchomiæ screena z opcj± "interrupt" (dodaj flagê "interrupt" 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 terminala 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 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 predefiniowane 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 specjalnej 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 odebraniu 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æ podobnie do nastêpuj±cego:

/usr/joe/src/dir> trn

(za znakiem '> ' nastêpuje szukanie nazwy komendy). Status 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 sekwencji 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¿ytkownicy 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).

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æ kompletna. 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 wszystkich 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, zmienna $WINDOW jest ustawiana na numer okna ka¿dego okna.

Rzeczywisty zestaw w³a¶ciwo¶ci, obs³ugiwanych przez terminal 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 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 resetowany) 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 posiadanie 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, programy 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 mo¿e byæ zmieniona przez proces rodzicielski.

Poni¿ej znajduje siê lista sekwencji steruj±cych, rozpoznawanych 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 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 kursora
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ó³
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
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
?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 terminala
ESC [ > c
Wy¶lij ³añcuch atrybutów drugorzê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 klawiszy. 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)

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)

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 terminala, 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 (`magiczne 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 dalszych szczegó³ów.
CS  (str)
Prze³±cz klawisze-kursora w tryb aplikacji.
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 ustawienia 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 pierwszego 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 arbitralne ³añcuchy, zale¿nie od bie¿±cego fontu i typu terminala.

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 podmieniane 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 cytowania. Znak '\' cytuje znaki specjalne '\', '%' i ','.

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 ISOlatin1 (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 rozszerzenie: 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 przypadku, 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ê¶æ niemieckiego 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 programó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.

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, stworzone funkcj± hardcopy
screenlog.[0-9]
Wyj¶ciowe pliki raportowe, utworzone funkcj± log
/usr/share/terminfo/?/*
lub
/var/run/utmp
Wpisy zg³oszeniowe
$LOCKPRG
Program, blokuj±cy terminal.

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 dystrybuowaæ i/lub modyfikowaæ wed³ug GNU General Public License, opublikowanej przez FSF; wersja 2, lub (wg uznania) dowolna wersja pó¼niejsza.

Program ten jest dystrybuowane w nadziei, ¿e bêdzie przydatny, lecz bez ¯ADNEJ GWARANCJI. Zobacz GNU GPL dla dalszych 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 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 Olivera 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 dowolnego innego hosta dystrybucji GNU. Domowym hostem screena jest ftp.uni-erlangen.de (131.188.3.71), katalog pub/utilities/screen. Podkatalog `private' zawiera najnowsze wersje 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 magicznych 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¶æ.
*
Nie jest mo¿liwe zmienienie zmiennej ¶rodowiskowej $TERMCAP podczas ponownego pod³±czania z innego terminala.
*
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.