GNU/Linux >> Linux Esercitazione >  >> Linux

Cosa significa questo output di Xev?

Sono interessato a rimappare alcuni tasti sulla mia tastiera. In particolare, voglio tenere premuto il tasto Funzione, premere il tasto F1 e fare in modo che questo attivi uno script. So che xev è utile per capire quale codice chiave è associato alla pressione di un tasto. Ad esempio, quando premo x chiave, ottengo:

KeyPress event, serial 41, synthetic NO, window 0x2600001,
    root 0xae, subw 0x0, time 1597243, (-190,43), root:(910,336),
    state 0x0, keycode 53 (keysym 0x78, x), same_screen YES,
    XLookupString gives 1 bytes: (78) "x"
    XmbLookupString gives 1 bytes: (78) "x"
    XFilterEvent returns: False

KeyRelease event, serial 41, synthetic NO, window 0x2600001,
    root 0xae, subw 0x0, time 1597363, (-190,43), root:(910,336),
    state 0x0, keycode 53 (keysym 0x78, x), same_screen YES,
    XLookupString gives 1 bytes: (78) "x"
    XFilterEvent returns: False

Questo ha senso per me.

Tuttavia, quando premo Funzione-F1, non capisco cosa succede. Perché premere Funzione-F1 sembra comportarsi come se avessi anche tenuto premuto il pulsante Windows e digitato la lettera l ?

xev output quando premo Function-F1:

KeyPress event, serial 41, synthetic NO, window 0x2600001,
    root 0xae, subw 0x0, time 1735349, (-157,221), root:(943,514),
    state 0x0, keycode 133 (keysym 0xffeb, Super_L), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyPress event, serial 41, synthetic NO, window 0x2600001,
    root 0xae, subw 0x0, time 1735350, (-157,221), root:(943,514),
    state 0x40, keycode 46 (keysym 0x6c, l), same_screen YES,
    XLookupString gives 1 bytes: (6c) "l"
    XmbLookupString gives 1 bytes: (6c) "l"
    XFilterEvent returns: False

MappingNotify event, serial 41, synthetic NO, window 0x0,
    request MappingKeyboard, first_keycode 8, count 248

KeyPress event, serial 41, synthetic NO, window 0x2600001,
    root 0xae, subw 0x0, time 1735356, (-157,221), root:(943,514),
    state 0x40, keycode 160 (keysym 0x1008ff2d, XF86ScreenSaver), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyRelease event, serial 41, synthetic NO, window 0x2600001,
    root 0xae, subw 0x0, time 1735357, (-157,221), root:(943,514),
    state 0x40, keycode 160 (keysym 0x1008ff2d, XF86ScreenSaver), same_screen YES,
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False

MappingNotify event, serial 42, synthetic NO, window 0x0,
    request MappingKeyboard, first_keycode 8, count 248

KeyRelease event, serial 42, synthetic NO, window 0x2600001,
    root 0xae, subw 0x0, time 1735463, (-157,221), root:(943,514),
    state 0x40, keycode 46 (keysym 0x6c, l), same_screen YES,
    XLookupString gives 1 bytes: (6c) "l"
    XFilterEvent returns: False

KeyRelease event, serial 43, synthetic NO, window 0x2600001,
    root 0xae, subw 0x0, time 1735470, (-157,221), root:(943,514),
    state 0x40, keycode 133 (keysym 0xffeb, Super_L), same_screen YES,
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False

Quando premo Funzione-F1 con una finestra di testo focalizzata, digita la lettera l .

Informazioni di base:esecuzione di Lubuntu 11.10 su un Toshiba r835. Felice di fornire ulteriori dettagli che potrebbero essere utili.

MODIFICA:

Per confronto, quando digito Function-F12, ottengo:

KeyPress event, serial 41, synthetic NO, window 0x2200001,
    root 0xae, subw 0x0, time 8369184, (-620,473), root:(480,766),
    state 0x0, keycode 78 (keysym 0xff14, Scroll_Lock), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyRelease event, serial 41, synthetic NO, window 0x2200001,
    root 0xae, subw 0x0, time 8369344, (-620,473), root:(480,766),
    state 0x0, keycode 78 (keysym 0xff14, Scroll_Lock), same_screen YES,
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False

Volevo verificare se c'è qualcosa di speciale nei tasti F1-F12, ma sembra che almeno alcuni funzionino come mi aspetto.

Correlati:suono "Dumthe Output" in Ubuntu 14.04?

Risposta accettata:

Quando dici Funzione-F1, suppongo tu intenda premere quel piccolo tasto divertente Fn nell'angolo di un laptop seguito dal tasto F1 in alto a sinistra della tastiera. E che stai cercando di mappare uno dei tasti extra come Sleep che hanno alcune tastiere per laptop. Sembra che quel tasto stia letteralmente premendo più tasti per te. Per prima cosa vedo Win+L come una combinazione. Su Windows, questo collegamento blocca lo schermo, ma non avvia lo screensaver. Successivamente, vedo una mappatura per XF86ScreenSaver che potrebbe significare che X sta vedendo una sorta di codice chiave di sospensione. Immagino che quel tasto sulla tastiera del tuo laptop invii fisicamente quei tre codici chiave di Win + L + Sleep per comodità per gli utenti Windows di bloccare rapidamente lo schermo e attivare lo screensaver. Non sono sicuro di un buon modo per filtrarli. Il tasto Fn sulle tastiere normalmente non è visto dal kernel Linux. Invece, cambia i codici che la tastiera dice al kernel. Quando stavo cercando di utilizzare un telecomando PowerPoint USB RF con OOo su Linux, ho scoperto che il pulsante per avviare/arrestare la presentazione era solo un controllo debole per inviare codici chiave F5 ed ESC alternati. Altri pulsanti erano zoppi come inviare b per oscurare lo schermo.


Linux
  1. Cosa significa ">/dev/null 2>&1" in questo articolo di Crontab Basics??

  2. Cosa significa il valore del simbolo dal comando nm?

  3. Cosa significa - in questo comando Linux?

  4. Cosa succede se [[ $? -ne 0 ]]; significa in .ksh

  5. Cosa significa #define X X?

Cosa significa chmod 777

Cosa significa essere "sh compatibile"?

Cosa indica questa statistica del processo?

Nessuna variabile DISPLAY X11 - cosa significa?

Cosa produce pwd?

Cosa significa un + alla fine dei permessi da ls -l?