Capítol 5. Lligams de tecla amb la terminal

Com utilitzar els lligams de tecla amb el Konsole

Introducció

El Konsole utilitza fitxers *.keytab per a traduir les combinacions de tecles en caràcters de control i seqüències d'escapament que s'envien a l'intèrpret d'ordres o a programes interactius (generalment programes que utilitzen la memòria intermèdia d'una pantalla alternativa, p. ex., vim, less, screen) executant-se a l'intèrpret d'ordres.

Els usuaris poden personalitzar la configuració dels vincles de tecla al Konsole utilitzant l'Editor per als lligams de tecla. Es pot configurar una combinació de tecles per a enviar un control específic o una seqüència d'escapament al terminal.

Podeu obrir l'Editor per als lligams de tecla des de l'entrada del menú ArranjamentEdita el perfil actual..., i anant a la pestanya Teclat. Allà hi ha els esquemes de lligams de tecla que apareixen de manera predeterminada al Konsole.

Combinacions de tecles i modes

Les combinacions de tecles segueixen el patró:

Tecla (+|-) modes

per exemple:

Up+Shift+AppScreen
Down+Shift-AppScreen
Space+Ctrl

Els noms de les tecles es defineixen en el fitxer de capçalera qnamespace.h, amb el prefix «Qt::Key_» suprimit, per a una llista dels noms de tecla, consulteu l'enumeració de Qt::Key a la documentació de les Qt.

Un signe de «+» precedint un nom de mode, voldrà dir que aquest mode està establert; per a una tecla modificadora, això vol dir que s'ha de prémer, mentre que per a tots els altres modes voldrà dir que aquest mode en particular està en vigor (és a dir, actiu). Per exemple, «+Ctrl» vol dir que la combinació de tecles només funcionarà si es prem la tecla Ctrl.

Un signe de «-» precedint un nom de mode, voldrà dir que aquest mode es reinicia; bàsicament, això és tot el contrari de posar «+» abans d'un nom de mode, de manera que per a una tecla modificadora això voldrà dir que no s'ha de prémer la tecla, mentre que per a tots els altres modes voldrà dir que aquest mode en particular està inactiu. Per exemple, «-Ctrl» voldrà dir que la combinació de tecles només funcionarà si no es prem la tecla Ctrl.

Nota

Si el nom d'un mode no està present en una combinació de tecles, s'ignorarà el seu estat.

Els modes admesos de lligams de tecla es llisten a continuació:

Alt, Ctrl, Shift

Es poden utilitzar un o més d'aquests modes en una combinació de tecles, si s'estableix algun d'ells, la combinació de tecles utilitzarà aquesta tecla modificadora, respectivament; i viceversa si es reinicia

AnyModifier

Si s'estableix aquest mode, la combinació de tecles utilitzarà qualsevol tecla modificadora (qualsevol de les tres tecles modificadores anteriors); i viceversa si es reinicia

Ansi

Si s'estableix aquest mode, el Konsole enviarà seqüències d'escapament i de control ANSI

Si aquest mode es reinicia, el Konsole enviarà seqüències d'escapament i de control VT52

AppScreen

Si s'estableix aquest mode, la combinació de tecles només afectarà els programes interactius que utilitzen la memòria intermèdia d'una pantalla alternativa

Si es reinicia aquest mode, la combinació de tecles només afectarà la terminal quan s'utilitzi la memòria intermèdia d'una pantalla normal

Nota

El Konsole utilitza dues memòries intermèdies de pantalla:

  • La memòria intermèdia d'una pantalla normal (predeterminat): permet desplaçar-vos per a veure les línies anteriors de la sortida, aquesta és la memòria intermèdia predeterminada que normalment feu servir per a executar ordres, etc.

  • La memòria intermèdia d'una pantalla alternativa: la terminal canviarà a aquesta memòria intermèdia quan executeu un programa interactiu (p. ex., less, vim, screen, tmux, etc.)

KeyPad

Si s'estableix aquest mode, la combinació de tecles utilitzarà una tecla en el teclat numèric. Aquest mode és útil per a distingir entre les tecles del teclat i les tecles del teclat numèric. Per exemple, quan Bloq Núm està actiu, podeu configurar dues combinacions de tecles separades, una amb la tecla «1» del teclat (normalment sota la tecla F1) i l'altra amb la tecla «1» del teclat numèric. El mateix concepte s'aplica quan Bloq Núm està desactivat per a les tecles Fi, Inici, tecles del cursor, etc. al teclat numèric

AppCursorKeys

Aquest mode implementa el Mode de tecles del cursor (DECCKM) de VT100. Controla les seqüències d'escapament que envia cada tecla del cursor (Fletxa amunt, Fletxa avall, Fletxa dreta, Fletxa esquerra), depenent de si aquest mode està establert o reiniciat

De manera predeterminada, el Konsole segueix el comportament de XTerm de tractar les tecles Inici i Fi com a tecles de cursor respecte a DECCKM

AppKeyPad

Si s'estableix aquest mode, la combinació de tecles només funcionarà quan el teclat numèric es trobi en el mode d'aplicació (DECKPAM)

Si es reinicia aquest mode, la combinació de tecles només funcionarà quan el teclat numèric es trobi en el mode numèric (DECKPNM)

NewLine

Si s'estableix aquest mode, la tecla Retorn del teclat numèric enviarà tant el retorn de carro «\r» com els caràcters de control de línia nova «\n»

Si es reinicia aquest mode, la tecla Retorn només enviarà un retorn de carro «\r»

El mateix s'aplica a la tecla Retorn del teclat numèric

Aquest mode emula el LNM - Mode salt de línia/línia nova

Cal tenir en compte que cada combinació de tecles i els modes (estableix/reinicia) haurà de ser única. Per exemple, considereu les dues regles següents:

  • A+Shift : «A»

  • a : «a»

El Konsole no acceptarà la regla amb la lletra petita «a», haureu d'afegir un «-Shift» a aquesta regla perquè funcioni.

El camp de sortida

Al camp de sortida hi podeu afegir les seqüències d'escapament o caràcters de control que voleu que el Konsole enviï al terminal quan es premi la combinació de tecles associada.

També podeu utilitzar qualsevol de les paraules clau següents, cadascuna de les quals té un significat especial al Konsole:

  • scrollUpLine : desplaça una línia amunt al cau de desplaçament de l'historial de l'intèrpret d'ordres

  • scrollUpPage : desplaça una pàgina amunt al cau de desplaçament de l'historial de l'intèrpret d'ordres

  • scrollDownLine : desplaça una línia avall al cau de desplaçament de l'historial de l'intèrpret d'ordres

  • scrollDownPage : desplaça una pàgina avall al cau de desplaçament de l'historial de l'intèrpret d'ordres

  • scrollUpToTop : desplaça amunt fins al començament del cau de desplaçament de l'historial de l'intèrpret d'ordres

  • scrollDownToBottom : desplaça avall fins al final del cau de desplaçament de l'historial de l'intèrpret d'ordres

També podeu utilitzar cadenes amb sintaxi de cadena C; podeu utilitzar les seqüències d'escapada següents:

  • \E : Escapada

  • \\ : Barra inversa

  • \" : Cometes

  • \t : Tabulació

  • \r : Retorn de carro

  • \n : Línia nova

  • \b : Retrocés

  • \xHH : on HH són dos dígits hexadecimals

    Suggeriment

    Això es pot utilitzar per a enviar caràcters de control ASCII, p. ex., «\x00» és el caràcter NUL

Altres recursos del sistema

Hi ha altres recursos del sistema que poden afectar els lligams de tecla amb la terminal:

  • Consulteu la base de dades terminfo o termcap per a les seqüències d'escapament i els caràcters de control esperats que se suposa que envia cada combinació de tecles.

  • És probable que el vostre sistema tingui altres bases de dades de teclat que també calgui sincronitzar, (p. ex., /etc/inputrc i readline per a l'intèrpret d'ordres BASH), ja que afecten les operacions (interaccions) lligades amb les combinacions de tecles.

Informació relacionada

Per a obtenir més informació sobre les seqüències d'escapament i els caràcters de control, consulteu la documentació següent: