Linux | Tutorial

Remapeando teclas no Linux (keyd)

O que é o keyd?

O keyd é um daemon que captura a entrada do teclado a partir do udev e devolve um mapeamento alternativo configurado pelo usuário. Além do keyd, existe também o xmodmap, mas este só funciona no X.org, enquanto o keyd funciona no X.org, no Wayland e até no TTY; ele é universal.

Como instalar e usar o keyd?

Segundo o Repology, o keyd está nos repositórios de várias distribuições populares. Se não estiver, você pode seguir as instruções na página do GitHub.


Depois de instalado, você pode habilitar e iniciar o serviço do systemd:

sudo systemctl enable keyd && sudo systemctl start keyd

Se você não quer ou não usa o systemd, pode iniciá-lo manualmente, mas ele precisa ser executado como root; portanto, recomenda-se configurá-lo como um serviço de init.

Por fim, só falta configurá-lo. Para isso, abra o arquivo /etc/keyd/default.conf:

[ids]
*
[main]

# Usa o Ctrl direito como Enter
rightcontrol = enter
# Caps Lock é k
capslock = k

A sintaxe é simples: na primeira seção ([ids]), você coloca o ID do teclado que quer usar. Normalmente só um teclado é usado, então nesse caso usa-se um asterisco (explicarei mais adiante como especificar um teclado).

Depois, em [main], segue-se a sintaxe tecla_de_entrada = tecla_de_saída. Como visto no código de exemplo, você pode adicionar muitas entradas, desde que sejam declaradas em linhas diferentes.

Se quiser adicionar comentários à configuração, pode usar o símbolo de cerquilha (#).


Se quisermos descobrir o nome de uma tecla, podemos usar o comando keyd monitor para encontrar seu nome exato. Além de teclados, o keyd também detecta outros dispositivos, como mouses.

ItsZariep@PC~-> keyd monitor
device added: 0603:00f5 SINO WEALTH Mechanical Keyboard (/dev/input/event6)
device added: 0603:00f5 SINO WEALTH Mechanical Keyboard Consumer Control (/dev/input/event5)
device added: 0603:00f5 SINO WEALTH Mechanical Keyboard (/dev/input/event3)
device added: 30fa:0400 USB Optical Mouse  (/dev/input/event2)
SINO WEALTH Mechanical Keyboard 0603:00f5       m up
SINO WEALTH Mechanical Keyboard 0603:00f5       leftcontrol up
SINO WEALTH Mechanical Keyboard 0603:00f5       rightshift down
SINO WEALTH Mechanical Keyboard 0603:00f5       rightshift up
SINO WEALTH Mechanical Keyboard 0603:00f5       tab down
SINO WEALTH Mechanical Keyboard 0603:00f5       tab up
USB Optical Mouse       30fa:0400       leftmouse down
USB Optical Mouse       30fa:0400       leftmouse up
USB Optical Mouse       30fa:0400       rightmouse down
USB Optical Mouse       30fa:0400       rightmouse up
USB Optical Mouse       30fa:0400       mouse2 down
USB Optical Mouse       30fa:0400       mouse2 up
USB Optical Mouse       30fa:0400       mouse1 down
USB Optical Mouse       30fa:0400       mouse1 up
SINO WEALTH Mechanical Keyboard 0603:00f5       leftcontrol down
SINO WEALTH Mechanical Keyboard 0603:00f5       c down

Se você realmente quiser especificar um teclado em particular, pode usar a saída do comando keyd monitor. No meu caso, é 0603:00f5. Se eu quisesse que as alterações valessem apenas para esse teclado, usaria esse ID. Note que você deve evitar trocar a porta onde o teclado está conectado, pois o ID pode mudar.

Mais opções

O keyd é muito poderoso e permite fazer coisas como j+k = esc. Se quiser ver todo o potencial do keyd, pode consultar a página dele no GitHub ou ler o manual.


Avatar

ItsZariep

YouTuber e programador, utiliza Linux desde 2015

Sobre mim


© 2026 ItsZariep

Powered by Tessera for Hugo