meu teclado está danificado, a tecla [é] está sempre pressionada e isso me impede de trabalhar. No windows encontrei o software sharpkey para desabilitar o botão [é], mas no Ubuntu não encontrei solução. Em muitos fóruns falam sobre o Xmodmap mas não consigo trabalhar no terminal porque o botão [é] costuma ser PRESSIONADO. Por favor, você poderia me dar uma solução para esse problema. Obrigado
Responder1
O que eu tentaria:
Conecte um teclado USB lá ou entre na máquina usando ssh.
Abra um terminal e execute
xev -event keyboard
. Ele mostrará algumas coisas na tela. Se você omitir os argumentos, notará que mais algumas coisas serão mostradas se você mover o mouse também.Em seguida, pressione a combinação de teclas que deseja desativar [é]. As informações na tela mudarão e você terá que procurar o
keycode
valor.Execute algo assim, alterando
<value>
o valor obtidokeycode
na última etapa:xmodmap -e 'keycode <value>='
Por exemplo, se eu quiser desabilitar a
~
tecla ( Shift + ` ), terei que executar:xmodmap -e 'keycode 49='
Eu só tentei isso com maispadrãochaves, comoCaps Lock... mas acho que deveria funcionar com isso também. Eu espero que isso ajude!
Responder2
Um script bash simples para meu uso pessoal foi carregado emhttps://github.com/anitaggu/ikbdop.
Para desativar o teclado interno do laptop,
./ikbdop.sh detach
Para ativar o teclado novamente
./ikbdop.sh attach
Um breve tutorial também é carregado emYouTube
Responder3
Nenhum dos métodos mencionados acima funciona no Wayland. Não tenho certeza sobre outros ambientes de desktop, mas a maneira mais fácil de desabilitar uma tecla específica em um teclado específico no sway-wm é usar o keyd. No entanto, requer o terminal e eu sugiro que você use o teclado USB após remover o teclado físico até que isso seja feito.
- Clone a chave do GitHub, construa-o e inicie o daemon.
git clone https://github.com/rvaiya/keyd
cd keyd
make && sudo make install
sudo systemctl enable keyd && sudo systemctl start keyd
- Encontre o nome da tecla e do teclado problemáticos. Corra
sudo keyd monitor
para obter algo assim:
device added: 0fac:0ade keyd virtual keyboard (/dev/input/event20)
device added: 03f0:5341 PIXART HP Wireless Keyboard and Mouse Consumer Control (/dev/input/event18)
device added: 03f0:5341 PIXART HP Wireless Keyboard and Mouse (/dev/input/event17)
device added: 03f0:5341 PIXART HP Wireless Keyboard and Mouse (/dev/input/event7)
device added: 06cb:7f13 Synaptics TM3253-001 (/dev/input/event5)
device added: 0001:0001 AT Translated Set 2 keyboard (/dev/input/event0)
keyd virtual keyboard 0fac:0ade enter up
keyd virtual keyboard 0fac:0ade kp5 down
Eu tenho dois teclados conectados. Um está PIXART HP Wireless
com 03f0:5341
e outro AT Translated Set 2 keyboard
com 0001:0001
. Esses códigos são usados pelo keyd para reconhecer seus teclados. Portanto, anote o código e o nome da chave para a próxima etapa. A última coluna fornece os nomes das chaves. Aqui, saí enter
e pressionei kp5
.
- Edite o arquivo
/etc/keyd/default.conf
para:
[ids]
0001:0001 #code of attached keyboard from earlier
[main]
kp5 = noop #Ignore the key 'kp5'
- Finalmente,
sudo keyd reload
Para desativar uma tecla específica de todos os teclados. Edite o default.conf
mencionado acima como
[ids]
*
[main]
kp5 = noop
Responder4
1) Detecte o código da tecla do teclado que você deseja desativar:
Método A:
Este método só funciona se você estiver tentando desabilitar teclas normais, não F1, F2, F3....etc.
Enquanto você lê esta resposta, clique com o botão direito em qualquer lugar da minha resposta -> cliqueInspecionar elementoouInspecionar, cole esse código noconsoleguia e pressione Enter:
window.addEventListener('keypress', (e) => console.log(e.keyCode) )
Clique novamente na minha resposta com o botão esquerdo do mouse e pressione a tecla que deseja desativar, você notará um número impresso noconsoledo navegador.
copie esse número e siga para a próxima etapa.
Método B:
este método deve funcionar com todas as teclas do seu teclado
abra oterminale use o xev
utilitário da seguinte maneira:
$ xev -event keyboard
uma pequena janela será aberta, pressione a tecla do teclado que deseja desabilitar e feche a pequena janela, você notará uma saída no seu terminal, entre essa saída, você verá algo como keycode 93
. copie o código dessa tecla do teclado e siga a próxima etapa.
2) Desative a chave:
abra oterminale use o xmodmap
utilitário da seguinte maneira:
xmodmap -e 'keycode <value>='
- no lugar do
<value>
acima, substitua-o peloCódigo chavevocê obteve da etapa 1 o método A ou B.