Keyboard shortcuts (Português)
Este artigo visa fornecer uma lista (não tão popular) dos atalhos de teclado padrão e também fornece informações sobre sua personalização.
Atalhos padrão
Kernel (SysRq)
Existem certos atalhos de baixo nível implementados no kernel por meio da tecla sysrq que podem ser usados para depuração e recuperação de um sistema instável ou travado. Sempre que possível, recomenda-se que estes atalhos sejam utilizados ao invés de fazer um desligamento forçado via hardware (segurando o botão de energia até desligar completamente o sistema).
Ativação
systemd possui a máscara de bits de permissões sysrq definida como 0x10 por padrão, que não permite reinicialização ou sinalização de processo, entre outras coisas. Para permitir o uso completo da tecla sysrq no seu sistema, adicione kernel.sysrq=1
à sua configuração de sysctl. Valores maiores que 1 podem ser usados para ativar seletivamente funções sysrq; veja a documentação do Linux Kernel para detalhes. Se desejar tê-la ativada já durante o inicialização, adicione a configuração apropriada para a configuração do sysctl. Se quiser ter certeza de que elas serão ativadas mesmo antes das partições serem montadas e no initrd, então adicione sysrq_always_enabled=1
nos parâmetros do kernel.
Observe que alterar a configuração por esses métodos fará com que as alterações persistam durante as reinicializações. Se você quiser tentar alterar as configurações do sysrq apenas para sua sessão atual, pode executar sysctl kernel.sysrq=1
ou echo "1" > /proc/sys/kernel/sysrq
Existem alguns riscos óbvios de segurança envolvidos na ativação completa da tecla sysrq. Além de forçar reinicializações e similares, ela pode ser usada para despejar o conteúdo dos registros da CPU, o que teoricamente poderia revelar informações confidenciais. Como usá-la requer acesso físico ao sistema (a menos que você saia do seu caminho), a maioria dos usuários de desktop provavelmente considerará o nível de risco aceitável. Dito isso, certifique-se de entender completamente as implicações da ativação e a dinâmica do contexto maior em que seu sistema está operando antes de ativar o sysrq completamente.
Reinicialização
Uma linguagem comum para decorá-las é, do inglês, "Reboot Even If System Utterly Broken" (ou simplesmente "REISUB"), que quer dizer, a grosso modo, "reinicie mesmo se o sistema estiver completamente quebrado". Outra maneira de se lembrar da sequência de teclas é pensar na palavra, "BUSIER" lida de trás para frente (também do inglês, que quer dizer algo como ocupado demais).
Atalho | Descrição |
---|---|
Alt+SysRq+r Unraw
|
Toma o controle do teclado do servidor X, e assume. |
Alt+SysRq+e Terminate
|
Envia o sinal SIGTERM a todos os processos, permitindo encerrá-los de maneira não arbitrária ou forçada. |
Alt+SysRq+i Kill
|
Envia o sinal SIGKILL para todos os processos, forçando-os a se encerrarem imediatamente. |
Alt+SysRq+s Sync
|
Grava os dados na unidade de disco rígido. |
Alt+SysRq+u Unmount
|
Desmonta e remonta todos os sistemas de arquivos em modo somente leitura. |
Alt+SysRq+b Reboot
|
Reinicia o sistema. |
Matando um processo que esteja consumindo memória excessivamente
Alt+SysRq+f
pode ser usado para chamar o matador OOM (out-of-memory) sem causar kernel panic se nada puder ser eliminado. O matador OOM usa um conjunto de heurísticas para escolher o processo relativamente não vital que está usando mais memória e matá-lo. Isso é muito útil para interromper um processo que bloqueia seu sistema, causando surtos excessivos, como um script de navegador descontrolado, e pode aliviar a necessidade de uma reinicialização em muitos casos. Observe que o matador OOM pode ter como alvo uma ampla variedade de processos, apesar de suas heurísticas bem-intencionadas e pode ser um pouco imprevisível, portanto, tenha cuidado ao chamá-lo casualmente.
Solução de problemas
- Se estiver usando um gerenciador de exibição e após
Alt+SysRq+e
você for levado à tela de login (ou à sua área de trabalho caso o login automático estiver ativado), então provavelmente a diretivaRestart=always
no arquivo service é a responsável. Se necessário, edite a unit, embora isto não deve evitar que a sequência "REISUB" funcione. - Caso todas as combinações acima funcionem, exceto
Alt+SysRq+b
, tente usar a teclaAlt
do lado oposto do teclado. - Em laptops que usam a tecla
Fn
para diferenciar a funçãoSysRq
dePrtScrn
, pode não ser necessário usar a teclaFn
(isto é, simplesmente pressionarAlt+PrtSc+letra
pode ser o suficiente). - Em laptops Lenovo,
SysRq
é frequentemente configurada comoFn+S
. Para usá-la, pressione e segureAlt
, então pressioneFn+s
, solteFn
es
e, ainda segurandoAlt
use a combinação de teclas acima. - Pode ser necessário pressionar
Ctrl
junto deAlt
. Então, por exemplo, o atalho completo pode serCtrl+Alt+SysRq+b
.
Veja Wikipedia:Magic SysRq key para mais detalhes.
Console virtual
Veja Console do Linux#Atalhos de teclado.
Xorg e Wayland
Teclas de atalho | Descrição | Notas |
---|---|---|
Ctrl+Alt+F1 , F2 , F3 , ...
|
Alterna para o n-ésimo console virtual | Se não funcionar, tente Ctrl+Fn+Alt+F… com as demais teclas de função.
|
Shift+Insert Mouse Button 2
|
Cola texto do PRIMARY buffer | Por padrão, o Qt mapeia Shift+Insert para a área de transferência ao invés do buffer PRIMARY (veja exemplo [1]) enquanto Ctrl+Shift+Insert é mapeado para o buffer PRIMARY.
|
Personalização
Readline
Readline é uma biblioteca comumente usada para edição de linha; e é usada, por exemplo pelo Bash, FTP, e muitos outros (veja detalhes do pacote readline, na coluna "Required By" da tabela, para mais exemplos). É semelhante ao estilo de edição do Emacs e do vi, que podem ser personalizados com sequências de escape. Combinações padrão de teclas estão listadas em sua documentação.
Zsh
Zsh utiliza ZLE para ligar atalhos a widgets, scripts e comandos.
Xorg
Veja Xorg/Keyboard configuration#Frequently used XKB options alguns atalhos comuns, que são desativados por padrão.
Em um ambiente gráfico, podemos querer executar um comando quando certa combinação de teclas é pressionada (isto é, um comando ligado a uma keysym). Existem várias maneiras de se fazer isso:
- A maneira mais prática é usando ferramentas de baixo nível , como uma daemon acpid. Nem todas as teclas são suportadas, mas uma configuração de maneira bastante uniforme é possível para teclas, conexão com fontes de energia e até mesmo ao plugar/desplugar um conector de fone de ouvido. Também é difícil executar programas dentro de uma sessão do X corretamente.
- A maneira universal é usando utilitários do Xorg (por exemplo, xbindkeys) e eventualmente as ferramentas de seu gerenciador de janelas ou ambiente de desktop.
- A maneira mais rápida é através de programas de terceiros que façam tudo via interface gráfica, tais como a Central de Controle do GNOME.
sxhkd
Uma simplória daemon hotkey para o X com uma poderosa e compacta sintaxe de configuração. Veja sxhkd para detalhes.
actkbd
Da site do actkbd:
- actkbdAUR (disponível no AUR) é uma simples daemon que interliga ações a eventos de teclado. É capaz de reconhecer combinações de tecla com suporte a eventos do tipo pressionar, repetir e soltar. Atualmente suporta somente a interface linux-2.6 evdev. Utiliza um arquivo de configuração em forma de planilha de texto que contém todas as vinculações de tecla.
Um modelo de configuração, bem como guia, estão disponíveis aqui.
xbindkeys
xbindkeys permite mapeamento avançado de teclas para ações independentemente do ambiente de desktop (Desktop Environment).
xbindkeys
difícil de usar, experimente o gerenciador gráfico xbindkeys_config-gtk2AUR disponível no AUR.Ambientes de desktop
Gerenciadores de janela
Associação de teclas para X-selection-paste
Usuários que preferem usar mais o teclado ao invés do mouse podem se beneficiar de um atalho de teclado para operação de colagem que até então é feita através do botão intermediário do mouse. Isto é especialmente útil em um ambiente baseado em utilização do teclado. Um exemplo de como seria este fluxo de trabalho vem a seguir:
- No Firefox, selecione (com o mouse) um texto que deseja pesquisar no google.
- Pressione
Ctrl+k
para abrir o campo de busca. - Pressione
F9
para colar o texto, ao invés de ter que mover o ponteiro do mouse para dentro do campo de busca e usar o botão intermediário do mouse para colá-lo.
Shift+Insert
tem uma funcionalidade parecida, mas diferente. Veja #Xorg: Shift+Insert
insere o buffer da área de transferência, e não o x-selection-buffer. Em algumas aplicações, ambos os buffers são espelhados.O método sugerido aqui usa três pacotes::
- xsel para dar acesso ao conteúdo do x-selection-buffer.
- Xbindkeys para vincular pressionamento de teclas a uma ação.
- xvkbdAUR para passar a string do buffer para a aplicação ao emular uma entrada de teclado.
Este exemplo vincula uma operação do x-selection-paste à tecla F9
:
.xbindkeysrc
"xvkbd -no-jump-pointer -xsendevent -text "\D1`xsel`" 2>/dev/null" F9
O código "\D1"
estabelece uma pause de 100 ms para inserir a seleção do buffer (veja a site do xvkbd).
-xsendevent
ao xvkbd.Os códigos para outras teclas diferentes de F9
podem ser determinados usando xbindkeys -k
.
Referências (em inglês):
XMonad Window Manager
No gerenciador de janela xmonad existe uma função embutida para colar o conteúdo do x-selection-buffer. De modo a vincular esta função a um pressionamento de teclas, (aqui, a tecla Insert
), a seguinte configuração pode ser usada:
xmonad.hs
import XMonad.Util.Paste ... -- X-selection-paste buffer , ((0, xK_Insert), pasteSelection) ]
Dicas e truques
- Se você é adepto ao uso do computador primordialmente com teclado, você pode gostar de um Gerenciadores de janela#Gerenciadores de janela de tiling.