
Responder1
Não tenho uma resposta completa, mas aqui estão algumas coisas que podem ajudar.
Se o seu teclado estiver conectado a um computador com desktop gui baseado em Gnome ou KDE,Chave automáticapode ser usado para transformar as teclas em teclas de atalho que podem fazer quase tudo que você imaginar. Como as teclas pressionadas no pad são provavelmente indistinguíveis das teclas correspondentes no teclado normal, qualquer coisa que você fizer também as afetará.
Execute xev
a partir de um terminal e pressione cada tecla do teclado para ver quais códigos de acesso são gerados. Eles provavelmente são iguais aos de um teclado normal, mas se não, você pode usar esses códigos para diferenciar os dois.
Se você estiver em um sistema embarcado (ou mesmo em um servidor) sem interface gráfica, o procedimento acima não funcionará.
Não sou muito versado em dispositivos Linux, masessepost pode lhe dar uma pista sobre como processar a entrada do teclado diretamente em um script ou programa. Depois de pressionar as teclas no script, você pode fazer o que quiser em resposta a elas.
Como este é um script/programa, você terá que descobrir uma maneira de levar sua saída ao destino desejado.
A primeira abordagem que vem à mente é usar um cano. Isso funcionará se a saída for apenas para um programa.
Se a solução precisar ser um pouco mais geral, um canal nomeado pode funcionar. Ainda não precisei usá-los, então estou um pouco incompleto sobre como você usaria o mesmo pipe nomeado conectado serialmente a programas diferentes.
Responder2
Solução é usarmultipressmétodo de entrada.
No aplicativo é necessário definir o método de entrada multipress manualmente. Se você quiser ter o multipress como padrão, você precisa criar um arquivo /.xinputrc
com conteúdo:
GTK_IM_MODULE=multipress
QT_IM_MODULE=multipress