Combinações de teclas do Terminal

Como o usa as combinações de teclas

Introdução
O usa arquivos *.keytab para traduzir as combinações de teclas em caracteres de controle e sequências de escape que são enviadas para o shell ou para os programas interativos (normalmente os programas que usam o buffer da tela alternativa, ⪚ vim, less, screen) executados a partir da linha de comando.
Os usuários poderão personalizar a configuração das combinações de teclas no com o Editor de Atalhos de Teclado. Poderá também configurar uma combinação de teclas para enviar um controle específico ou sequência de escape para o terminal.
Você poderá abrir o Editor de Atalhos de Teclado a partir do item de menu Configurações Editar o perfil atual e indo à página Teclado. Aqui aparecem enumerados os esquemas de Combinações de Teclas que disponibilizados por padrão no .

Combinações de Teclas e Modos
As combinações de teclas seguem o padrão:

Tecla (+|-) Modos

por exemplo:

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

Os nomes das teclas estão definidos no arquivo qnamespace.h, com o prefixo Qt::Key_ removido. Para obter uma lista com os nomes das teclas, consulte a enumeração Qt::Key na documentação do .
Um + que antecede o nome de um Modo significa que esse modo está definido; para uma tecla modificadora, indicando que está pressionada, enquanto que para os outros modos significa que esse modo em particular está em efeito (, ativo). Por exemplo, o +Ctrl significa que a combinação de teclas só irá funcionar se a tecla estiver pressionada.
Um - que antecede o nome de um Modo significa que esse modo está desativado; basicamente, este é o oposto de colocar um + antes do nome de um Modo. Assim, para uma tecla modificadora, isso significa que a tecla não está pressionada enquanto que, para todos os outros modos, significa que esse modo em particular está inativo. Por exemplo, o -Ctrl significa que a combinação de teclas só irá funcionar se a tecla não estiver pressionada.
Se um nome de Modo não estiver presente em uma combinação de teclas, o seu estado será ignorado.
Os modos de Combinações de Teclas aparecem relacionados abaixo:
Alt, Ctrl, Shift 	 Um ou mais Modos como estes poderão ser usados em uma combinação de teclas. Caso algum deles esteja definido, a combinação de teclas usa essa tecla modificadora, respectivamente, ou se não estiver definido, aplica-se o modo inverso.
AnyModifier 	 Se este modo estiver definido, a combinação de teclas usa qualquer tecla modificadora (das acima mencionadas) e se não estiver definido, não utilizará
Ansi 	 Se este modo estiver definido, o irá enviar as sequências de controle e escape do ANSI
Se este modo não estiver definido, o irá enviar as sequências de controle e escape do VT52
AppScreen 	 Se este modo estiver definido, a combinação de teclas só irá afetar os programas interativos que usam o buffer da tela alternativa
Se este modo estiver desativado, a combinação de teclas só irá afetar o terminal quando estiver usando o buffer da tela norma
O utiliza dois buffers de tela:
O buffer de tela normal (padrão): permite-lhe rolar para ver as linhas de resultado anteriores. Este é o buffer padrão que normalmente usado para executar os comandos,
O buffer de tela alternativa: o terminal muda para este buffer quando você executar um programa interativo (⪚, less, vim, screen, tmux... )
KeyPad 	 Se este modo estiver ativo, a combinação de teclas usa uma tecla no teclado numérico. Este modo é útil para distinguir entre as teclas no teclado normal e as equivalentes no teclado numérico. Por exemplo, quando o Num Lock está ligado, você poderá configurar duas combinações de teclas em separado, uma que usa a tecla 1 no teclado (normalmente abaixo da tecla F1) e a outra usando a tecla 1 no teclado numérico. O mesmo conceito se aplica quando o Num Lock está desligado para as teclas End, Home, Setas direcionais, etc., no teclado numérico
AppCursorKeys 	 Este modo implementa o Modo das Teclas de Cursores (DECCKM) do VT100. Ele controla as sequências de escape que cada tecla de cursor (Para cima, Para baixo, Direita, Esquerda) envia, dependendo de este modo estar ativado ou desativado
Por padrão, o segue o comportamento do XTerm para tratar as teclas Home e End como teclas de cursores, no que diz respeito ao DECCKM
AppKeyPad 	 Se este modo estiver ativo, a combinação de teclas só irá funcionar quando o teclado numérico estiver no Modo de Aplicativo (DECKPAM)
Se este modo estiver desativado, a combinação de teclas só irá funcionar quando o teclado numérico estiver no Modo Numérico (DECKPNM)
NewLine 	 Se este modo estiver ativo, a tecla Return (Enter) do teclado irá enviar ambos os caracteres de controle 'Carriage Return' "\r" e 'New Line' "\n"
Se este modo estiver desativado, a tecla Return só irá enviar um 'Carriage Return' "\r"
O mesmo se aplica à tecla Enter no teclado numérico
Este modo emula o Modo LNM - Line Feed/New Line
Repare que cada combinação de teclas e modos (ativado/desativado) deverá ser única. Por exemplo, considerando as duas regras seguintes:
A+Shift : A
a : a
O não aceitará a regra da letra minúscula a e você precisará adicionar um -Shift a essa regra para que ela funcione.

O campo Saída
No campo Saída, você poderá adicionar as sequências de escape ou caracteres de controle que deseja que o envie para o terminal, quando a combinação de teclas associada for pressionada.
Você também poderá usar qualquer uma das seguintes palavras-chave, tendo cada uma delas um significado especial no :
scrollUpLine : sobe uma linha no buffer de rolagem do histórico do shell
scrollUpPage : sobe uma página no buffer de rolagem do histórico do shell
scrollDownLine : desce uma linha no buffer de rolagem do histórico do shell
scrollDownPage : desce uma página no buffer de rolagem do histórico do shell
scrollUpToTop : sobe até ao início do buffer de rolagem do histórico do shell
scrollDownToBottom : desce até o final do buffer de rolagem do histórico do shell
Você também pode usar strings com sintaxes de texto em C, com as seguintes sequências de escape:
\E : Escape
\\ : Barra invertida
\" : Aspas
\t : Tabulação
\r : Carriage Return
\n : Nova linha
\b : Backspace
\xHH : onde HH são dois dígitos hexadecimais
Isto poderá ser usado para enviar caracteres de controle em , ⪚, \x00 que corresponde ao caractere NUL

Outros recursos do sistema
Existem outros recursos do sistema que poderão afetar as combinações de teclas do terminal:
Consulte o banco de dados do terminfo ou termcap para conhecer as sequências de escape e caracteres de controle esperados que cada combinação de teclas deve enviar.
É provável que o seu sistema tenha outros bancos de dados de teclado que devem estar igualmente sincronizadas (⪚, /etc/inputrc e readline para a linha de comando BASH), pois afetam as operações (interações) associadas às combinações de teclas.

Leitura complementar
Para mais informações sobre as sequências de escape e caracteres de controle, consulte a seguinte documentação:
Guia de usuário do VT100
Guia de usuário do VT102
Documentação abrangente e indispensável das Sequências de Controle do XTerm