Programa para mostrar as teclas digitadas (atalhos) em exibição

10

Vou fazer uma apresentação sobre um produto de software e ele tem alguns atalhos-chave que quero mostrar. Existe um programa que exibe os atalhos de teclado que usei?

    
por aphex 22.01.2013 / 11:38

2 respostas

9

Existe um programa chamado key-mon que monitora as teclas pressionadas. Já faz algum tempo desde que eu usei, mas funcionou bem e sua exibição é bastante atraente.

    
por 22.01.2013 / 12:03
1

Você pode usar xev (eventos X) para fazer isso.

Inicie o aplicativo que você deseja monitorar, por exemplo, xman & .

Em seguida, use wmctrl -l para listar janelas X. Poderia ser assim:

0x00400009  0 VLAN-.... urxvt
0x00e0007a  0 VLAN-.... Iceweasel
0x00800011  0 VLAN-.... xman

Você precisa do ID da janela (hex) na primeira coluna; para obtê-lo, você poderia usar grep e buscar a linha pela quarta coluna (o nome do aplicativo, que é muito mais natural para você usar como humano) - quando você tem a linha, você pode obter a primeira coluna com cut (o primeiro campo com -f1 , usando um delimitador de espaço em branco -d" " para campos separados).

Você pode analisar os dados (para obter o ID) de várias maneiras ou até mesmo inserir o ID manualmente, é claro. (Os zeros na segunda coluna acima são o número da área de trabalho.)

Então, tente

xev -id 'wmctrl -l | grep xman | cut -d" " -f1' | tee event.txt

Ele mostrará os pressionamentos de teclas (e mais) no mesmo terminal que o comando foi chamado; mais, com tee , ele armazenará o que você vê em um arquivo. Pode ser uma boa idéia deixar a saída ser mostrada em stdout no terminal, pois isso mostrará instantaneamente a ação; Além disso, se você não executar o comando como um processo em segundo plano (com & ), poderá finalizá-lo facilmente com Ctrl-C.

OBSERVAÇÃO Funciona para urxvt e xman, mas por alguma razão, falha para Iceweasel na lista acima (grava algo, mas não apresenta eventos importantes como claros (de longe) como é o caso com esses outros exemplos.

    
por 24.01.2013 / 19:56