Provided by:
manpages-pl_20060617-2_all 
NAZWA
tput - inicjalizuj terminal lub pytaj bazę terminfo
SKŁADNIA
tput [-Ttyp] nazwawaciwoci [parm ... ]
tput [-Ttyp] init
tput [-Ttyp] reset
tput [-Ttyp] longname
tput -S <<
OPIS
Narzędzie tput robi użytek z bazy terminfo, dając możlwiość dojścia do
zależnych od terminala właściwości z poziomu powłoki (zobacz sh(1)), a
także inicjalizowania lub resetowania terminala, lub zwracania długiej
nazwy żądanego typu terminala.
Jeśli atrybut (nazwawaciwoci) jest typu łańcuchowego, tput wydaje
wartość łańcuchową, a jeśli jest typu całkowitego, wydaje liczbę
całkowitą. Jeśli atrybut jest wartością logiczną, tput po prostu
ustawia kod wyjścia (0 to prawda, jeśli terminal ma daną właściwość, a
1 to fałsz, jeśli terminal żądanej właściwości nie posiada) i nie
wydaje żadnego wyjścia tekstowego.
Przed użyciem zwróconej wartości, użytkownik powinien przetestować kod
wyjscia i upewnić się, że wynosi on 0. (Zobacz sekcje KODY WYJŚCIA i
DIAGNOSTYKA.) Dla kompletnej listy właściwości i nazwwaciwoci
związanych z każdą z nich, zobacz terminfo(5).
-Ttyp określa typ terminala. Normalnie opcja ta jest niepotrzebna,
gdyż wartość domyślna jest pobierana ze zmiennej środowiskowej
TERM. Jeśli podane jest -T, zmienne powłoki LINES i COLUMNS będą
ignorowane, a system operacyjny nie będzie zapytywany o
rzeczywisty rozmiar ekranu.
nazwawaciwoci
określa atrybut z bazy terminfo. Gdy wkompilowana jest obsługa
termcap, można podawać również termcapowe nazwy atrybutów.
parm Jeśli atrybut jest łańcuchem, który wymaga parametrów, argumenty
param zostaną przeniesione do tego łańcucha. Wszystkie argumenty
numeryczne zostaną atrybutowi przekazane jako liczby.
-S umożliwiwa używanie więcej niż jednej właściwości na jedno
wywołanie tput. Właściwości muszą być przekazywane do tput ze
standardowego wejścia, a nie przez linię poleceń (zobacz
przykład). Na linię dozwolona jest tylko jedna nazwawaciwoci.
Opcja -S zmienia znaczenie kodów wyjścia 0 i 1 (zobacz sekcję
KODY WYJŚCIA).
init Jeśli baza terminfo istnieje i znajduje się w niej opis dla
terminala użytkownika (zobacz wyżej -Ttyp), to stanie sie co
następuje: (1) jeśli istnieją łańcuchy inicjalizacyjne, to
zostaną one wysłane (is1, is2, is3, if, iprog), (2) wszelkie
opóźnienia (np. nowej linii), podane w opisie zostaną ustawione
w sterowniku tty, (3) rozszerzanie tabulacji zostanie włączone
lub wyłączone, zależnie od specyfikacji w opisie i (4) jeśli
tabulacje nie są rozszerzane, ustawione zostaną standardowe
tabulacje (co 8 spacji). Jeśli opis nie zawiera informacji
wymaganej dla któregoś z tych czterech działań, to zostanie ono
cicho pominięte.
reset Zamiast wystawiania łańcuchów inicjalizacji, wysłane zostaną (o
ile są obecne) łańcuchy resetowania (rs1, rs2, rs3, rf). Jeśli
łańcuchy resetowania nie są zdefiniowane, lecz zdefiniowane są
łańcuchy inicjalizacji, to wysłane zostaną łańcuchy
inicjalizacji. W przeciwnym wypadku, reset działa analogicznie
do init.
longname
Jeśli obecna jest baza terminfo i istnieje w niej opis dla
terminala użytkownika (zobacz wyżej -Ttyp), to wyświetlona
zostanie długa nazwa terminala. Długa nazwa jest ostatnią nazwą
w pierwszej linii opisu terminala w bazie terminfo [zobacz
term(5)].
PRZYKŁADY
tput init
Inicjalizuj terminal według typu terminala ze zmiennej
środowiskowej TERM. Komenda ta powinna być załączona do .profile
każdego użytkownika po wyeksportowaniu zmiennej środowiskowej
TERM, jak pokazano w podręczniku profile(4).
tput -T5620 reset
Resetuj terminal AT&T 5620, przeciążając rodzaj terminala ze
zmiennej środowiskowej TERM.
tput cup 0 0
Wyślij sekwencję do przesunięcia kursora do wiersza 0, kolumny 0
(lewy górny narożnik ekranu, znany zwykle jako "domowa" (home)
pozycja kursora).
tput clear
Wyślij na bieżący terminal sekwencję czyszczącą ekran.
tput cols
Wydrukuj liczbę kolumn w bieżącym terminalu.
tput -T450 cols
Wydrukuj liczbę kolumn terminala 450.
bold=`tput smso` offbold=`tput rmso`
Ustaw zmienne powłoki bold na początek sekwencji trybu standout i
offbold na koniec sekwencji trybu standout bieżącego terminala.
Może to być użyte w znaku zachęty: echo "${bold}Proszę wpisać
imię: ${offbold}\c"
tput hc
Ustaw kod wyjścia, określający czy terminal jest terminalem hard
copy.
tput cup 23 4
Wyślij sekwencję przesuwającą kursor do wiersza 23 w 4 kolumnie.
tput longname
Wydrukuj długą nazwę terminala TERM, określoną w bazie terminfo.
tput -S <<!
> clear
> cup 10 10
> bold
> !
Ten przykład pokazuje przetwarzania przez tput kilku właściwości w
jednym wywołaniu. Przykład ten czyści ekran, przesuwa kursor do
pozycji 10, 10 i włącza tryb wytłuszczenia. Lista jest kończona
znakiem wykrzyknika, znajdującym się w osobnej linii.
PLIKI
/usr/share/terminfo
skompilowana baza opisu terminala
/usr/include/curses.h
plik nagłówkowy curses(3X)
/usr/include/term.h
plik nagłówkowy terminfo
/usr/share/tabset/*
ustawienia tab dla niektórych terminali w formacie odpowiednim
do wysyłania na terminal (sekwencje specjalne, ustawiające
marginesy i tabulacje); dla dalszych informacji, zobacz sekcję
"Tabs and Initialization" terminfo(4).
ZOBACZ TAKŻE
clear(1), stty(1), tabs(5). profile(5), terminfo(4) w podręczniku
System Administrator's Reference Manual. Rozdział 10 podręcznika
Programmer's Guide.
KODY WYJŚCIA
Jeśli nazwawaciwoci jest typu logicznego, dla prawdy zwracana jest
wartość 0, a dla fałszu 1. Wyjątkiem jest użycie opcji -S.
Jeśli nazwawaciwoci jest typu łańcuchowego, zwracane jest 0, gdy
własciwość jest zdefiniowana dla tego terminala (wartość
nazwywaciwoci jest zwracana na standardowe wyjście); zwracane jest 1
jeśli właściwość nazwawaciwoci nie jest zdefiniowana dla tego
terminala (na stdout nie jest nic wypisywane).
Jeśli nazwawaciwoci jest typu logicznego, lub łańcuchowego i użyto
opcji -S, w wypadku gdy wszystkie linie były pomyślne zwracane jest 0.
Ponieważ nie można określić, która z linii się nie powiodła, nie jest
zwracana wartość 1. Kody wyjścia 2, 3 i 4 mają swoją tradycyjną
interpretację.
Jeśli nazwawaciwoci jest typu całkowitego, zwracane jest zawsze 0.
Aby określić czy własciwość jest zdefiniowana, użytkownik musi testować
wartość standardowego wyjścia. Wartość -1 oznacza, że własciwość nie
jest zdefiniowana dla tego terminala.
Wszystkie inne kody wyjścia oznaczają błędy; zobacz sekcję DIAGNOSTYKA.
DIAGNOSTYKA
tput drukuje następujące komunikaty o błędach i ustawia odpowiednie
kody błędów:
kod błędu komunikat błędu
0 (nazwawaciwoci jest zmienną numeryczną, która nie jest
podana w bazie terminfo(5) tego typu terminala, np.
tput -T450 lines i tput -T2621 xmc)
1 nie jest drukowany żaden komunikat błędu, zobacz sekcję KODY
WYJŚCIA.
2 błąd użycia.
3 nieznany typ terminala, lub brak bazy terminfo.
4 nieznana własciwość nazwawaciwoci terminfo
PRZENOŚNOŚĆ
Opcje longname i -S oraz właściwości podstawiania parametrów, używane w
przykładzie cup nie są obsługiwane w BSD curses i w AT&T/USL curses
przed SVr4.
tput(1)