LESSKEY(1) General Commands Manual LESSKEY(1) NUME lesskey - personalizeaza combinaiile de taste pentru less SINOPSIS (invechit) lesskey [-o ieire] [--] [intrare] lesskey [--output=ieire] [--] [intrare] lesskey -V lesskey --version SCOPUL Acest document descrie formatul fiierului sursa lesskey, care este utilizat de less versiunea 582 i ulterioare. In versiunile anterioare ale less, un program separat numit lesskey era utilizat pentru a compila fiierul sursa lesskey intr-un format ineles de less. Aceasta etapa de compilare nu mai este necesara i programul lesskey este, prin urmare, depreciat, dei formatul de fiier ramane acceptat de less insui. DESCRIERE Un fiier lesskey specifica un set de combinaii de taste i variabile de mediu care urmeaza sa fie utilizate de invocarile ulterioare ale less. FORMATUL FIIERULUI Fiierul de intrare este format din una sau mai multe seciuni. Fiecare seciune incepe cu o linie care identifica tipul de seciune. Seciunile posibile sunt: #command Personalizeaza asocierile combinaiilor de taste cu comenzile. #line-edit Personalizeaza asocierile combinaiilor de taste cu editarea liniei de comanda. #env Definete variabilele de mediu. Liniile goale i liniile care incep cu un simbol hash (#) sunt ignorate, cu excepia cazurilor menionate mai jos. SECIUNEA COMENZI Seciunea de comenzi incepe cu linia #command Daca seciunea de comanda este prima seciune din fiier, aceasta linie poate fi omisa. Seciunea de comanda consta din linii de forma: ir iu-alb> aciune [ir-extra] Spaiul alb este orice secvena de unul sau mai multe spaii i/sau tabulaii. ir este tasta (tastele) de comanda care invoca aciunea. ir poate fi o singura tasta de comanda sau o secvena de pana la 15 taste. aciune este numele aciunii ,,less", din lista de mai jos. Caracterele din ir pot aparea literal sau pot fi precedate de un semn de accent circumflex ,,^" pentru a indica o tasta de control. O bara oblica inversa urmata de una pana la trei cifre octale poate fi utilizata pentru a specifica un caracter prin valoarea sa octala. O bara oblica inversa urmata de anumite caractere specifica caracterele de intrare dupa cum urmeaza: \b RETROCEDARE(BACKSPACE) (0x08) \e ESCAPE (0x1B) \n LINIE_NOUA (0x0A) \r RETURN (0x0D) \t TABULATOR (0x09) \k urmat de un singur caracter reprezinta caracterul sau caracterele produse atunci cand este apasata una dintre aceste taste: \kb RETROCEDARE (tasta de RETROCEDARE) \kB ctrl-RETROCEDARE \kd SAGEATA IN JOS \kD PAGINA URMATOARE \ke END \kh HOME \ki INSERARE \kl SAGEATA LA STANGA \kL ctrl-SAGEATA LA STANGA \kr SAGEATA LA DREAPTA \kR ctrl-SAGEATA LA DREAPTA \kt TABULATOR INAPOI \ku SAGEATA IN SUS \kU PAGINA PRECEDENTA \kx TERGERE \kX ctrl-TERGERE \k1 F1 O bara oblica inversa urmata de orice alt caracter indica faptul ca acel caracter trebuie luat literal. Caracterele care trebuie sa fie precedate de o bara oblica inversa includ caret ,,^", spaiu, tabulator, semnul hash ,,#" i bara oblica inversa insai. O aciune poate fi urmata de un ir ,,extra". Atunci cand o astfel de comanda este introdusa in timpul rularii less, aciunea este efectuata, iar apoi irul extra este analizat, ca i cum ar fi tastat in less. Aceasta caracteristica poate fi utilizata in anumite cazuri pentru a extinde funcionalitatea unei comenzi. De exemplu, a se vedea comenzile ,,{" i ,,:t" din exemplul de mai jos. irul extra are o semnificaie speciala pentru aciunea ,,quit"(ieire): atunci cand less iese, valoarea ASCII a primului caracter din irul extra este utilizata ca stare de ieire. EXEMPLU Urmatorul fiier de intrare descrie setul de taste de comanda implicite utilizate de less. Documentaia privind fiecare comanda poate fi gasita in pagina de manual less, sub secvena de taste care invoca comanda. #command \r forw-line \n forw-line e forw-line j forw-line \kd forw-line ^E forw-line ^N forw-line k back-line y back-line ^Y back-line ^K back-line ^P back-line J forw-line-force K back-line-force Y back-line-force d forw-scroll ^D forw-scroll u back-scroll ^U back-scroll \40 forw-screen f forw-screen ^F forw-screen ^V forw-screen \kD forw-screen b back-screen ^B back-screen \ev back-screen \kU back-screen z forw-window w back-window \e\40 forw-screen-force F forw-forever \eF forw-until-hilite R repaint-flush r repaint ^R repaint ^L repaint \eu undo-hilite \eU clear-search g goto-line \kh goto-line < goto-line \e< goto-line p percent % percent \e( left-scroll \e) right-scroll \kl left-scroll \kr right-scroll \e{ no-scroll \e} end-scroll { forw-bracket {} } back-bracket {} ( forw-bracket () ) back-bracket () [ forw-bracket [] ] back-bracket [] \e^F forw-bracket \e^B back-bracket G goto-end \e> goto-end > goto-end \ke goto-end \eG goto-end-buffered = status ^G status :f status / forw-search ? back-search \e/ forw-search * \e? back-search * n repeat-search \en repeat-search-all N reverse-search \eN reverse-search-all ^O^N osc8-forw-search ^On osc8-forw-search ^O^P osc8-back-search ^Op osc8-back-search ^O^O osc8-open & filtru m set-mark M set-mark-bottom \em clear-mark ' goto-mark ^X^X goto-mark E examine :e examine ^X^V examine :n next-file :p prev-file t next-tag T prev-tag :x index-file :d remove-file - toggle-option :t toggle-option t s toggle-option o ## Utilizai un nume de opiune lung prin inceperea ## irului suplimentar cu O liniua; de exemplu: ## s toggle-option -log-file\n _ display-option | pipe v visual ! shell # pshell + firstcmd H help h help V version 0 digit 1 digit 2 digit 3 digit 4 digit 5 digit 6 digit 7 digit 8 digit 9 digit q quit Q quit :q quit :Q quit ZZ quit PRECEDENA Comenzile specificate de lesskey au prioritate faa de comenzile implicite. O tasta de comanda implicita poate fi dezactivata prin includerea acesteia in fiierul de intrare cu aciunea ,,invalid". Alternativ, o tasta poate fi definita sa nu faca nimic prin utilizarea aciunii ,,noaction". ,,noaction" este similara cu <>, dar less va emite un bip de eroare pentru o comanda ,,invalid", dar nu i pentru o comanda ,,noaction". In plus, TOATE comenzile implicite pot fi dezactivate prin adaugarea acestei linii de control la fiierul de intrare: #stop Aceasta va face ca toate comenzile implicite sa fie ignorate. Linia #stop trebuie sa fie ultima linie din seciunea respectiva a fiierului. Reinei ca #stop poate fi periculos. Deoarece toate comenzile implicite sunt dezactivate, trebuie sa furnizai suficiente comenzi inainte de linia #stop pentru a activa toate aciunile necesare. De exemplu, lipsa unei comenzi ,,quit" poate duce la frustrare. SECIUNEA EDITAREA LINIEI Seciunea de editare a liniei incepe cu linia: #line-edit Aceasta seciune specifica noi combinaii de taste pentru comenzile de editare a liniilor, intr-un mod similar cu modul in care sunt specificate combinaiile de taste pentru comenzile obinuite in seciunea #command. Seciunea de editare a liniei consta dintr-o lista de taste i aciuni, cate una pe linie, ca in exemplul de mai jos. EXEMPLU Urmatorul fiier de intrare descrie setul de taste implicite de editare a liniei utilizate de less: #line-edit \t forw-complete \17 back-complete \e\t back-complete ^L expand ^V literal ^A literal \el right \kr right \eh left \kl left \eb word-left \e\kl word-left \ew word-right \e\kr word-right \ei insert \ex delete \kx delete \eX word-delete \ekx word-delete \e\b word-backspace \e0 home \kh home \e$ end \ke end \ek up \ku up \ej down ^G abort VARIABILELE DE MEDIU LESS Seciunea variabilelor de mediu incepe cu linia #env Aceasta linie este urmata de o lista de atribuiri ale variabilelor de mediu. Fiecare linie este formata dintr-un nume de variabila de mediu, un semn egal (=) i valoarea care urmeaza sa fie atribuita variabilei de mediu. Spaiul alb inainte i dupa semnul egal este ignorat. Variabilele atribuite in acest mod sunt vizibile numai pentru less. Daca o variabila este specificata in mediul sistemului i, de asemenea, intr-un fiier ,,lesskey", valoarea din fiierul ,,lesskey" are intaietate. Daca numele variabilei este urmat de += in loc de =, irul este adaugat la valoarea existenta a variabilei. Acest lucru funcioneaza in prezent numai daca orice linie += urmeaza imediat definiia originala a aceleiai variabile (cu o linie =), fara sa intervina definiii ale altor variabile. Se poate adauga numai la o variabila definita anterior in fiier; nu se poate adauga la o variabila din mediul sistemului. irul de caractere este adaugat literal, fara niciun spaiu alb suplimentar, astfel incat, daca se dorete un spaiu alb, acesta trebuie adaugat la sfaritul liniei precedente; (nu poate fi adaugat la inceputul irului += deoarece spaiul dupa semnul egal este ignorat, dupa cum s-a menionat mai sus). In irul de caractere de dupa semnul =, un subir de caractere de forma ${NUME} este inlocuit cu valoarea variabilei de mediu ,,NUME". Valoarea variabilei poate proveni fie din mediul sistemului, fie dintr-un fiier ,,lesskey" anterior, fie dintr-o definiie anterioara in fiierul ,,lesskey" curent. Inlocuirile simple de text pot fi efectuate prin utilizarea sintaxei ${NUME/IR/INLOCUIRE}. Aceasta inlocuiete toate instanele ,,IR" din variabila de mediu numita cu textul ,,INLOCUIRE". IR este comparat folosind o simpla comparaie de text; nu sunt acceptate metacaractere. O prezena de bara oblica sau de acolada dreapta (de inchidere ,,}") in IR sau INLOCUIRE trebuie sa fie eludata prin precedarea sa cu doua bare oblice inverse. Daca INLOCUIRE este un ir gol, toate instanele din IR sunt eliminate. O bara oblica imediat inaintea acoladei drepte poate fi omisa. Se pot efectua inlocuiri multiple utilizand sintaxa ${NUME/IR1/INLOCUIRE1/IR2/INLOCUIRE2} i aa mai departe. CONFIGURARE CONDIIONALA Daca o linie incepe cu #version urmat de un operator relaional i un numar de versiune, restul liniei este analizat daca i numai daca versiunea curenta a less (sau lesskey) corespunde operatorului. Acest lucru poate fi util daca un fiier lesskey este utilizat de diferite versiuni ale less. De exemplu, sa presupunem ca o noua comanda numita ,,sideways-search" este adaugata in less versiunea 777. Urmatoarea linie ar atribui comanda tastei Q, dar numai in versiunile de less care o accepta. Linia ar fi ignorata de versiunile anterioare celei 777. #version >= 777 Q sideways-search Aceti ase operatori sunt acceptai: > Mai mare decat < Mai mic decat >= Mai mare sau egal cu <= Mai mic sau egal cu = Egal cu != Nu este egal cu Caracteristica #version nu este acceptata in less i lesskey inainte de versiunea 594. In aceste versiuni mai vechi, toate liniile #version sunt ignorate. EXEMPLU Urmatorul fiier de intrare definete opiunile ,,-i" i ,,-S" atunci cand less este rulat i, la versiunea 595 i versiunile ulterioare, adauga opiunea ,,--color". #env ## (Observai ca trebuie sa existe un spaiu la sfaritul liniei urmatoare, ## pentru a separa opiunea ,,--color" de opiunea ,,-S".) LESS = -i -S #version >= 595 LESS += --color=Hkc CONSULTAI I less(1) AVERTISMENTE In sistemele MS-DOS i OS/2, anumite taste trimit o secvena de caractere care incep cu un caracter NUL (0). Acest caracter NUL ar trebui sa fie reprezentat ca \340 intr-un fiier ,,lesskey". DREPTURI DE AUTOR Drepturi de autor (C) 1984-2024 Mark Nudelman <> face parte din proiectul GNU i este software liber. Il putei redistribui i/sau modifica in conformitate cu termenii (1) Licenei Publice Generale GNU, publicata de Free Software Foundation; sau (2) Licenei Less. Consultai fiierul README din distribuia <> pentru mai multe detalii privind redistribuirea. Ar fi trebuit sa primii o copie a Licenei Publice Generale GNU impreuna cu sursa pentru <>; consultai fiierul COPYING. In caz contrar, scriei la Free Software Foundation, 59 Temple Place, Suite 330, Boston, MA 02111-1307, SUA. De asemenea, ar trebui sa fi primit o copie a Licenei less; consultai fiierul LICENSE. less este distribuit in sperana ca va fi util, dar FARA NICI O GARANIE; fara nici macar garania implicita de COMERCIALIZARE sau de ADECVARE LA UN SCOP PARTICULAR. Pentru mai multe detalii, consultai Licena publica generala GNU. AUTOR Mark Nudelman Raportai erorile la https://github.com/gwsw/less/issues. TRADUCERE Traducerea in limba romana a acestui manual a fost facuta de Remus- Gabriel Chelu Aceasta traducere este documentaie gratuita; citii Licena publica generala GNU Versiunea 3 sau o versiune ulterioara cu privire la condiii privind drepturile de autor. NU se asuma NICIO RESPONSABILITATE. Daca gasii erori in traducerea acestui manual, va rugam sa trimitei un e-mail la . Versiunea 668: 6 octombrie 2024 LESSKEY(1)