Como criar um atalho de teclado para emular uma tecla específica (não um comando)?

Como criar um atalho de teclado para emular uma tecla específica (não um comando)?

Estou usando o Ubuntu 19.10 em um Mac e, portanto, não tenho uma Deletetecla no teclado.

Para emular essa chave, posso fazer Fn+ Backspacemas gostaria de escolher outra combinação de teclas como Super+ Backspace. Isso é possível?

Responder1

Isso fará o trabalho:

Primeiramente:edite o /usr/share/X11/xkb/symbols/pcarquivo XKB executando o seguinte comando no terminal:

sudo nano /usr/share/X11/xkb/symbols/pc

Em segundo lugar:encontre esta linha:

key <BKSP> {    [ BackSpace, BackSpace  ]   };

E comente adicionando //antes assim:

//key <BKSP> {  [ BackSpace, BackSpace  ]   };

Em terceiro lugar:copie e cole o seguinte código abaixo da linha comentada emem segundo lugaracima:

key <BKSP> {
    type= "PC_SUPER_LEVEL2",
    symbols[Group1]=  [ BackSpace, Delete ]
};

E salve o arquivo.

Em quarto lugar:limpe o cache XKB executando o seguinte comando no terminal:

sudo rm -rf /var/lib/xkb/*

Finalmente:reinicie seu sistema para ativar sua nova configuração xkb ou recarregue a nova configuração xkb definindo um layout de mapa xkb usando o seguinte comando no terminal:

setxkbmap -layout us

e teste sua nova combinação de teclas.


Esta solução deve fazer com que pressionar Super+ Backspacefuncione como pressionar a Deletetecla.

Para alterar a combinação para Shift+ Backspace você pode mudar PC_SUPER_LEVEL2para PC_SHIFT_LEVEL2emem terceiro lugar acima.

Responder2

Um comando pode emular um pressionamento de tecla específico. Uma maneira de fazer isso é criar um atalho personalizado para executarxdotool(fonte) sobreConfigurações > Teclado > Atalhos personalizados:

captura de tela

Responder3

Não, não pode ser possível fazer isso de forma geral, Fnnão pode ser visto como outra chave, de acordo com esteresponder:

O Fnnão é realmente comparável. É uma chave de hardware que não pode ser conectada diretamente pelos sistemas operacionais. Pressionar Fne outra tecla faz com que um código totalmente diferente seja enviado ao sistema operacional.
Exemplos disso incluem XF86AudioMute, XF86Eject e assim por diante. O sistema operacional não consegue detectar se Fnestá pressionado ou não.

Eu pensei que seria possível usar gnome-tweakso pacote, dentro de:

Teclado mouse->Opções adicionais de layout

mas não, você pode definir o comportamento de cada chave especial (da chave básica Ctrlà antiga Meta), mas como Fnnão é uma chave de software, você não pode alterar sua função.

Você pode criar um atalho personalizado para fazer essa Deleteemulação, mas é necessário um comando.

informação relacionada