Provided by: manpages-ro_4.27.0-1_all bug

NUME

       tset, reset - inițializează sau reinițializează starea terminalului

SINOPSIS

       tset [-IQVcqrsw] [-] [-e caracter] [-i caracter] [-k caracter] [-m valoare-alocare] [tip-terminal]
       reset [-IQVcqrsw] [-] [-e caracter] [-i caracter] [-k caracter] [-m valoare-alocare] [tip-terminal]

DESCRIERE

   tset  inițializare
       Acest program inițializează terminalele.

       Mai  întâi,  tset  recuperează  valorile  curente ale modului terminalului dumneavoastră. Pentru aceasta,
       testează succesiv

       •   ieșirea de eroare standard,

       •   ieșirea standard,

       •   intrarea standard și

       •   în final „/dev/tty”

       pentru a obține parametrii terminalului. După ce a obținut aceste valori, tset memorează ce descriptor de
       fișier trebuie să utilizeze atunci când actualizează parametrii.

       În continuare, tset determină tipul de terminal pe care îl utilizați. Această determinare  se  face  după
       cum urmează, folosind primul tip de terminal găsit.

       1. Argumentul terminal specificat în linia de comandă.

       2. Valoarea variabilei de mediu TERM.

       3. Numai pentru sistemele BSD: tipul de terminal asociat cu dispozitivul de ieșire de eroare standard din
       fișierul /etc/ttys; (pe sistemele UNIX de tip System-V și pe sistemele care utilizează această convenție,
       getty(8)  face  această  treabă  prin  definirea lui TERM în funcție de tipul care i-a fost transmis prin
       /etc/inittab).

       4. Tipul de terminal implicit, „unknown”, nu este potrivit pentru aplicațiile curses.

       Dacă tipul de terminal nu a fost specificat în linia de comandă, se aplică atunci alocările opțiunii  -m;
       a se vedea subsecțiunea „Alocarea tipului de terminal”. Apoi, dacă tipul de terminal începe cu un semn de
       întrebare  „?”,  utilizatorului  i se cere confirmarea tipului de terminal. Un răspuns gol confirmă tipul
       sau se poate introduce un alt tip pentru a specifica un nou tip.  Odată  ce  tipul  de  terminal  a  fost
       determinat,  se  recuperează  descrierea  terminalului  respectiv.  În  cazul în care nu se găsește nicio
       descriere a terminalului pentru tipul respectiv, utilizatorului i se solicită un alt tip de terminal.

       Odată ce descrierea terminalului este recuperată,

       •   dacă opțiunea „-w” este activată, tset poate actualiza dimensiunea ferestrei terminalului.

           Dacă dimensiunea  ferestrei  nu  poate  fi  obținută  de  la  sistemul  de  operare,  dar  descrierea
           terminalului (sau mediul, de exemplu, variabilele LINES și COLUMNS specifică acest lucru), utilizează
           această opțiune pentru a defini noțiunea de dimensiune a ferestrei pe care o are sistemul de operare.

       •   dacă opțiunea „-c” este activată, sunt definite caracterele backspace, de întrerupere și de închidere
           a liniei (line kill), pe lângă multe altele

       •   cu  excepția  cazului în care este activată opțiunea „-I”, șirurile de inițializare a terminalului și
           tabulatorului sunt trimise la ieșirea de eroare standard, și, dacă dispozitivul terminal nu pare a fi
           un pseudoterminal (care ar putea fi utilizat de un program emulator de  terminal),  tset  așteaptă  o
           secundă în cazul în care a fost emisă o reinițiere hardware.

       •   la  urmă,  dacă caracterele de ștergere, întrerupere și închidere a liniei (line kill) s-au modificat
           sau nu sunt definite la valorile lor implicite, valorile acestora sunt afișate la ieșirea  de  eroare
           standard.

   reset  reinițializare
       Atunci când este invocat ca reset, tset stabilește modurile terminalului la valorile „sănătoase”:

       •   stabilește canonic modurile de „pregătire” și de ecou,

       •   dezactivează modurile cbreak și raw,

       •   activează conversia liniilor noi și

       •   restabilește caracterele speciale de intrare la valorile lor implicite

       înainte  de a face inițializarea terminalului descrisă mai sus. De asemenea, în loc să utilizeze șirurile
       inițializare ale terminalului, se utilizează șirurile de restabilire (reinițializare) ale terminalului.

       Comanda reset este utilă după ce un program moare lăsând un terminal într-o stare anormală:

       •   este posibil să trebuiască să tastați

               <LF>reset<LF>

           (caracterul se salt de linie, „ line-feed” este în mod normal «control-J») pentru a  face  terminalul
           să  funcționeze,  deoarece  este posibil ca funcția retur de cărucior să nu mai funcționeze în starea
           anormală.

       •   De asemenea, de multe ori, terminalul nu va transmite comanda.

   Configurarea mediului
       Adesea este de dorit să se introducă  în  mediul  shell-ului  tipul  de  terminal  și  informații  despre
       capacitățile terminalului. Acest lucru se face cu ajutorul opțiunii -s.

       Atunci  când  este specificată opțiunea -s, comenzile de introducere a informațiilor în mediul shell-ului
       sunt scrise la ieșirea standard. Dacă variabila de mediu SHELL se termină în „csh”, comenzile sunt pentru
       csh(1), în caz contrar, sunt pentru sh(1). Comenzile csh  setează  și  dezactivează  variabila  de  shell
       noglob,  lăsând-o  neschimbată.  Următoarea  linie din fișierele .login sau .profile va inițializa corect
       mediul:

           eval `tset -s opțiuni ... `

   Alocarea tipului de terminal
       Atunci când terminalul nu este conectat la sistem (sau când  informațiile  curente  ale  sistemului  sunt
       incorecte),  tipul de terminal derivat din fișierul /etc/ttys sau din variabila de mediu TERM este adesea
       ceva generic, cum ar fi network, dialup sau unknown. Atunci când tset este  utilizat  într-un  script  de
       pornire,  este  adesea de dorit să se furnizeze informații despre tipul de terminal utilizat pe astfel de
       porturi.

       Opțiunile -m fac corespondența între un set de condiții și un tip de terminal, adică  îi  spun  lui  tset
       „Dacă mă aflu în acest port la o anumită viteză, ghicește că mă aflu pe acel tip de terminal”.

       Argumentul  opțiunii  -m  constă  dintr-un  tip  de  port  opțional, un operator opțional, o specificație
       opțională a vitezei de transmisie, un caracter opțional de două puncte „:” și un tip de  terminal.  Tipul
       de  port  este un șir de caractere (delimitat fie de operator, fie de caracterul două puncte). Operatorul
       poate fi orice combinație între „>”, „<”, „@”, și „! ”'; „>” înseamnă mai mare decât,  „<”  înseamnă  mai
       mic  decât, „@” înseamnă egal cu și „!” inversează sensul testului. Viteza de transmisie este specificată
       ca un număr și este comparată cu viteza ieșirii de eroare standard (care ar trebui să fie  terminalul  de
       control). Tipul terminalului este un șir de caractere.

       Dacă  tipul  de  terminal  nu  este  specificat  în  linia de comandă, se aplică alocările -m la tipul de
       terminal. Dacă tipul de port și viteza  de  transmisie  se  potrivesc  cu  alocarea,  tipul  de  terminal
       specificat  în  alocare  înlocuiește tipul curent. Dacă sunt specificate mai multe alocări, se utilizează
       prima alocare aplicabilă.

       De exemplu, luați în considerare următoarea alocare: dialup>9600:vt100.  Tipul  de  port  este  dialup  ,
       operatorul  este  >,  specificația  vitezei  de  transmisie  este 9600, iar tipul de terminal este vt100.
       Rezultatul acestei alocări este de a specifica faptul că, dacă tipul de terminal este dialup, iar rata de
       baud este mai mare de 9600 baud, se va utiliza un tip de terminal vt100.

       Dacă nu este specificată nicio rată de transmisie, tipul de terminal se  va  potrivi  cu  orice  rată  de
       transmisie.  Dacă  nu este specificat niciun tip de port, tipul de terminal se va potrivi cu orice tip de
       port. De exemplu, -m dialup:vt100 -m :?xterm va face ca  orice  port  dialup,  indiferent  de  viteza  de
       transmisie,  să  corespundă  tipului  de  terminal  vt100,  iar  orice tip de port care nu este dialup să
       corespundă tipului  de  terminal  ?xterm.  Rețineți  că,  din  cauza  semnului  de  întrebare  din  față,
       utilizatorul va fi întrebat pe un port implicit dacă utilizează de fapt un terminal xterm.

       Nu  sunt  permise  caractere  de  spații  în  alb  în argumentul opțiunii -m. De asemenea, pentru a evita
       problemele cu metacaracterele, se sugerează ca întregul argument al  opțiunii  -m  să  fie  plasat  între
       ghilimele  simple  și  ca utilizatorii csh să introducă un caracter de bară oblică inversă „\” înainte de
       orice semn de exclamare „!”.

OPȚIUNI

       Opțiunile sunt următoarele:

       -c   Stabilește caracterele și modurile de control.

       -e caracter
            Stabilește caracterul de ștergere la caracter.

       -I   Nu trimite șirurile de inițializare a terminalului sau a tabulatorului către terminal.

       -i caracter
            Stabilește caracterul de întrerupere la caracter.

       -k caracter
            Stabilește caracterul de închidere a liniei (line kill) la caracter.

       -m valoare-alocare
            Specifică o alocare de la un tip de port la un terminal; a se vedea subsecțiunea  „Alocarea  tipului
            de terminal”.

       -Q   Nu  afișează  nicio  valoare pentru caracterele de ștergere, întrerupere și închidere a liniei (line
            kill). În mod normal, tset afișează valorile pentru caracterele de control care diferă  de  valorile
            implicite ale sistemului.

       -q   Tipul  terminalului  este  afișat  la ieșirea standard, iar terminalul nu este inițializat în niciun
            fel. Opțiunea „-” este echivalentă, dar arhaică.

       -r   Afișează tipul terminalului la ieșirea de eroare standard.

       -s   Afișează secvența de comenzi de shell pentru  a  inițializa  variabila  de  mediu  TERM  la  ieșirea
            standard; a se vedea subsecțiunea „Configurarea mediului”.

       -V   raportează versiunea de ncurses care a fost utilizată în acest program și iese.

       -w   Redimensionează fereastra pentru a se potrivi cu dimensiunea dedusă prin setupterm(3NCURSES). În mod
            normal,  acest  lucru  nu are niciun efect, cu excepția cazului în care setupterm nu este capabil să
            detecteze dimensiunea ferestrei.

       Argumentele pentru opțiunile -e, -i și -k pot fi introduse fie sub formă de caractere reale, fie folosind
       notația „hat”, adică «control-h» poate fi specificat ca „^H” sau „^h”.

       Dacă nu se indică nici -c, nici -w, se presupun ambele opțiuni.

MEDIU

       Comanda tset utilizează aceste variabile de mediu:

       SHELL
            îi indică lui tset dacă trebuie să inițializeze TERM folosind sintaxa sh(1) sau csh(1).

       TERM indică tipul de terminal. Fiecare tip de terminal este distinct, deși multe sunt similare.

       TERMCAP
            poate indica locația unei baze de date termcap. Dacă nu este o rută absolută, de exemplu, nu  începe
            cu un caracter „/”, tset elimină variabila din mediu înainte de a căuta descrierea terminalului.

FIȘIERE

       /etc/ttys
              numele  portului  de  sistem  în  baza  de  date  de  alocare  a tipului de terminal (numai pentru
              versiunile BSD).

       /etc/terminfo
              directorul bazei de date de descriere a terminalului compilat

PORTABILITATE

       Nici IEEE Std 1003.1/The Open Group Base Specifications Issue 7  (POSIX.1-2008)  și  nici  X/Open  Curses
       Issue 7 nu documentează tset sau reset.

       Instrumentul  AT&T  tput  (AIX,  HP-UX,  Solaris)  a  încorporat manipularea în modul terminal, precum și
       caracteristicile bazate pe termcap, cum ar fi reinițializarea tabulatoarelor  din  tset  în  BSD  (4.1c),
       probabil  cu  intenția de a face tset depășit. Cu toate acestea, fiecare dintre aceste sisteme oferă încă
       tset. De fapt, instrumentul reset utilizat în mod obișnuit este întotdeauna un alias pentru tset.

       Instrumentul tset oferă compatibilitate cu mediile BSD; în majoritatea Unix-urilor moderne,  /etc/inittab
       și  getty(8)  pot defini TERM în mod corespunzător pentru fiecare linie telefonică, eliminând ceea ce era
       cea mai importantă utilizare a lui tset. Această implementare se comportă ca și tset  de  pe  4.4BSD,  cu
       câteva excepții pe care le vom analiza acum.

       Câteva  opțiuni  sunt  diferite,  deoarece  variabila TERMCAP nu mai este acceptată sub terminfo bazat pe
       ncurses:

       •   Opțiunea -S din BSD tset nu mai funcționează; imprimă  un  mesaj  de  eroare  la  ieșirea  de  eroare
           standard și moare.

       •   Opțiunea -s definește numai TERM, nu și TERMCAP.

       A  existat  o caracteristică nedocumentată în 4.4BSD care prevedea că invocarea lui tset prin intermediul
       unei legături numite „TSET” (sau prin orice alt  nume  care  începe  cu  o  literă  majusculă)  determina
       terminalul să folosească numai majuscule. Această caracteristică a fost omisă.

       Opțiunile -A, -E, -h, -u și -v au fost eliminate din instrumentul tset în 4.4BSD. Niciuna dintre ele nu a
       fost  documentată în 4.3BSD și toate au o utilitate limitată, în cel mai bun caz. Opțiunile -a, -d și -p,
       în mod similar, nu sunt documentate sau utile, dar au fost păstrate deoarece se pare că sunt utilizate pe
       scară largă. Se recomandă cu tărie ca orice utilizare a acestor trei opțiuni să fie  schimbată  pentru  a
       utiliza  în schimb opțiunea -m. Prin urmare, opțiunile -a, -d și -p sunt omise din rezumatul de utilizare
       de mai sus.

       Sistemele foarte vechi, de exemplu, 3BSD, foloseau un alt controlor de terminal care a fost  înlocuit  în
       4BSD  la  începutul  anilor  1980. Pentru a se adapta la aceste sisteme mai vechi, 4BSD tset a prevăzut o
       opțiune -n pentru a specifica faptul că trebuie utilizat noul controlor de terminal. Această implementare
       nu oferă această opțiune.

       Este permisă în continuare specificarea opțiunilor -e, -i și -k fără  argumente,  deși  se  recomandă  cu
       tărie ca o astfel de utilizare să fie fixată pentru a specifica explicit caracterul.

       Începând  cu  4.4BSD,  executarea  tset  ca  reset nu mai implică opțiunea -Q. De asemenea, interacțiunea
       dintre opțiunea „-” și argumentul terminal din unele implementări istorice ale tset a fost eliminată.

       Opțiunile -c și -w nu se regăsesc în implementările anterioare.  Cu  toate  acestea,  în  4.4BSD  a  fost
       furnizată o altă funcție de schimbare a dimensiunii ferestrei.

       •   În  4.4BSD,  tset  utilizează  dimensiunea  ferestrei  din  descrierea  termcap  pentru  a  configura
           dimensiunea ferestrei în cazul în care tset nu poate obține dimensiunea ferestrei de la  sistemul  de
           operare.

       •   În  ncurses, tset obține dimensiunea ferestrei folosind setupterm(3NCURSES), care poate proveni de la
           sistemul de operare, de la variabilele de mediu LINES și COLUMNS sau de la descrierea terminalului.

       Obținerea dimensiunii ferestrei din descrierea terminalului este comună ambelor  implementări,  dar  este
       considerată  depășită.  Singura  sa  utilizare  practică  este pentru terminalele hardware. În general, o
       dimensiune a ferestrei nu ar fi nefixată decât în cazul în care ar exista o problemă în obținerea valorii
       de la sistemul de operare (iar setupterm ar eșua în continuare). Din acest motiv,  variabilele  de  mediu
       LINES  și  COLUMNS  pot  fi utile pentru a rezolva problemele legate de dimensiunea ferestrei. Acestea au
       dezavantajul că, dacă fereastra este redimensionată, aceste variabile trebuie recalculate  și  realocate.
       Programul resize(1) distribuit împreună cu xterm(1) vă ajută în această activitate.

ISTORIC

       O  comandă  reset  scrisă  de  Kurt Shoens a apărut în 1BSD (martie 1978). Aceasta a stabilit caracterele
       erase (ștergere) și kill (omorâre) la ^H (backspace) și, respectiv, @. Mark Horton a îmbunătățit  această
       reset  în 3BSD (octombrie 1979), adăugând caracterele intr, quit, start/stop și eof, precum și modificând
       programul pentru a evita modificarea oricăror configurări ale utilizatorului. Acea versiune de  reset  nu
       folosea termcap.

       Eric  Allman a scris o comandă distinctă tset pentru 1BSD, folosind un precursor al termcap numit ttycap.
       Comentariile lui Allman din codul sursă indică  faptul  că  a  început  să  lucreze  în  octombrie  1977,
       continuând  dezvoltarea  în  următorii  câțiva  ani.  La  sfârșitul anului 1979, a migrat la termcap și a
       gestionat variabila TERMCAP. Comentariile ulterioare indică faptul că tset a fost modificat în septembrie
       1980 pentru a utiliza logica copiată din programul 3BSD „reset” atunci când  a  fost  invocat  ca  reset.
       Această versiune a apărut în 4.1cBSD, la sfârșitul anului 1982. Alți dezvoltatori, precum Keith Bostic și
       Jim Bloom, au continuat să modifice tset până la lansarea 4.4BSD în 1993.

       Implementarea ncurses a fost ușor adaptată din sursele 4.4BSD pentru a utiliza API-ul terminfo de Eric S.
       Raymond <esr@snark.thyrsus.com>.

CONSULTAȚI ȘI

       csh(1), sh(1), stty(1), terminfo(3NCURSES), tty(4), terminfo(5), ttys(4), environ(7)

TRADUCERE

       Traducerea    în   limba   română   a   acestui   manual   a   fost   făcută   de   Remus-Gabriel   Chelu
       <remusgabriel.chelu@disroot.org>

       Această traducere este  documentație  gratuită;  citiți  Licența publică generală GNU Versiunea 3  sau  o
       versiune   ulterioară   cu  privire  la  condiții  privind  drepturile  de  autor.   NU  se  asumă  NICIO
       RESPONSABILITATE.

       Dacă găsiți erori în traducerea acestui manual, vă rugăm să  trimiteți  un  e-mail  la  translation-team-
       ro@lists.sourceforge.net.

ncurses 6.5                                     18 ianuarie 2025                                         tset(1)