2011-02-21 15:52:32 +0000 2011-02-21 15:52:32 +0000
138
138

Afficher les touches pressées sous Linux

Sous Windows, il existe un programme appelé Keyboard Jedi qui affiche les touches pressées sur le clavier.

Existe-t-il un équivalent pour Linux ?

Réponses (10)

129
129
129
2011-02-21 17:57:11 +0000

D'autres ont mentionné xev, qui est bon quand on utilise X11. Cependant, lorsque vous êtes à la console, showkey est ce que vous voulez.

Et si vous êtes à une session SSH ou un vrai terminal, vous pouvez utiliser /usr/lib/ncurses/examples/demo_altkeys (disponible dans Debian dans le paquet ncurses-examples).

Notez que xev pour “a” donne 38, alors que showkey pour “a” donne 30, parce que xev rapporte des scancodes, alors que showkey par défaut rapporte des keycodes.

51
51
51
2012-04-26 11:46:33 +0000

Egalement screenkey , un outil de diffusion d'écran qui affiche les touches actionnées à l'écran.

39
39
39
2011-02-21 15:59:30 +0000

Il existe le programme xev pour le mode graphique - voir la page de manuel de xev .

Sur Ubuntu/Debian, il est intégré dans le paquet x11-utils.

35
35
35
2011-11-05 19:52:41 +0000

Si vous cherchez quelque chose qui vous montre graphiquement sur quelle touche vous appuyez actuellement (peut-être pour le coin d'un screencast), key-mon pourrait être le ticket.

33
33
33
2014-10-31 15:40:38 +0000
chris@retina:~$ xinput list
 ⎡ Virtual core pointer id=2 [master pointer (3)]
 ⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
 ⎜ ↳ bcm5974 id=13 [slave pointer (2)]
 ⎜ ↳ Logitech Unifying Device. Wireless PID:1028 id=9 [slave pointer (2)]
 ⎣ Virtual core keyboard id=3 [master keyboard (2)]
     ↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
     ↳ Power Button id=6 [slave keyboard (3)]
     ↳ Power Button id=7 [slave keyboard (3)]
     ↳ Sleep Button id=8 [slave keyboard (3)]
     ↳ FaceTime HD Camera (Built-in) id=11 [slave keyboard (3)]
     ↳ Apple Inc. Apple Internal Keyboard / Trackpad id=12 [slave keyboard (3)]
     ↳ daskeyboard id=10 [slave keyboard (3)]
     ↳ daskeyboard id=14 [slave keyboard (3)]
 chris@retina:~$ xinput test 14
 key release 36 
 key press 43 
 hkey release 43 
 key press 26 
 ekey release 26 
 key press 46 
 lkey release 46 
 key press 46 
 lkey release 46 
 key press 32 
 okey release 32 
 key press 37 
 key press 54 
 ^C
 chris@retina:~$
25
25
25
2015-05-30 17:39:54 +0000

La meilleure commande que je connaisse pour cette fonctionnalité est showkey , avec le paramètre -a.

Vous pouvez essayer, et Ctrl + D pour sortir :

showkey -a
18
18
18
2014-10-06 08:50:56 +0000

Vous pouvez également utiliser evtest. Dans certaines situations, il est préférable à xev car il affiche les clés même si une clé est déjà capturée.

Pour installer sous Ubuntu Linux Mint , faites

sudo apt-get install evtest

pour exécuter sudo evtest et choisissez un numéro de périphérique.

Exemple de sortie :

$ sudo evtest
No device specified, trying to scan all of /dev/input/event*
Available devices:
/dev/input/event0: Lid Switch
/dev/input/event1: Power Button
/dev/input/event2: Power Button
/dev/input/event3: AT Translated Set 2 keyboard
/dev/input/event4: ETPS/2 Elantech Touchpad
/dev/input/event5: Logitech Logitech G930 Headset
/dev/input/event6: Video Bus
/dev/input/event7: HDA Intel HDMI HDMI/DP,pcm=8
/dev/input/event8: HDA Intel HDMI HDMI/DP,pcm=7
/dev/input/event9: HDA Intel HDMI HDMI/DP,pcm=3
/dev/input/event10: HDA Intel PCH Headphone
/dev/input/event11: HDA Intel PCH Mic
/dev/input/event12: WebCam SC-10HDP12B24N
/dev/input/event13: ELAN Touchscreen
Select the device event number [0-13]: 5
Input driver version is 1.0.1
Input device ID: bus 0x3 vendor 0x46d product 0xa1f version 0x101
Input device name: "Logitech Logitech G930 Headset"
Supported events:
  Event type 0 (EV_SYN)
  Event type 1 (EV_KEY)
    Event code 114 (KEY_VOLUMEDOWN)
    Event code 115 (KEY_VOLUMEUP)
    Event code 163 (KEY_NEXTSONG)
    Event code 164 (KEY_PLAYPAUSE)
    Event code 165 (KEY_PREVIOUSSONG)
    Event code 256 (BTN_0)
    Event code 257 (BTN_1)
    Event code 258 (BTN_2)
    Event code 259 (BTN_3)
    Event code 260 (BTN_4)
    Event code 261 (BTN_5)
    Event code 262 (BTN_6)
    Event code 263 (BTN_7)
    Event code 264 (BTN_8)
    Event code 265 (BTN_9)
  Event type 4 (EV_MSC)
    Event code 4 (MSC_SCAN)
Properties:
Testing ... (interrupt to exit)
Event: time 1412585327.807585, type 4 (EV_MSC), code 4 (MSC_SCAN), value c00b5
Event: time 1412585327.807585, type 1 (EV_KEY), code 163 (KEY_NEXTSONG), value 1
Event: time 1412585327.807585, -------------- SYN_REPORT ------------
Event: time 1412585327.927557, type 4 (EV_MSC), code 4 (MSC_SCAN), value c00b5
Event: time 1412585327.927557, type 1 (EV_KEY), code 163 (KEY_NEXTSONG), value 0
Event: time 1412585327.927557, -------------- SYN_REPORT ------------
13
13
13
2011-02-21 16:28:57 +0000

Si vous êtes à l'invite d'un shell, vous pouvez appuyer sur Ctrl-v puis sur la touche qui vous intéresse pour voir le résultat. Par exemple, sur mon système, appuyer sur Ctrl-v puis sur la flèche droite affiche ^[[C qui signifie Echappement, Crochet de gauche, C.

Comme d'autres l'ont mentionné, xev est le chemin à suivre pour X11.

6
6
6
2011-02-21 16:00:19 +0000

Vous voudriez xev .

5
5
5
2015-11-15 07:13:44 +0000
xev | grep 'keycode'
    state 0x0, keycode 36 (keysym 0xff0d, Return), same_screen YES,
    state 0x0, keycode 37 (keysym 0xffe3, Control_L), same_screen YES,
    state 0x4, keycode 37 (keysym 0xffe3, Control_L), same_screen YES,
    state 0x0, keycode 37 (keysym 0xffe3, Control_L), same_screen YES,
    state 0x4, keycode 52 (keysym 0x7a, z), same_screen YES,
    state 0x4, keycode 37 (keysym 0xffe3, Control_L), same_screen YES,
    state 0x0, keycode 54 (keysym 0x63, c), same_screen YES,
    state 0x0, keycode 52 (keysym 0x7a, z), same_screen YES,
    state 0x0, keycode 54 (keysym 0x63, c), same_screen YES,