GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Was bedeutet diese Ausgabe von Xev?

Ich bin daran interessiert, einige Tasten auf meiner Tastatur neu zu belegen. Insbesondere möchte ich die Funktionstaste gedrückt halten, die F1-Taste drücken und dadurch ein Skript auslösen. Ich kenne das xev ist nützlich, um herauszufinden, welcher Tastencode einem Tastendruck zugeordnet ist. Zum Beispiel, wenn ich das x drücke Schlüssel erhalte ich:

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

Das ergibt für mich Sinn.

Wenn ich jedoch Funktion-F1 drücke, verstehe ich nicht, was passiert. Warum scheint sich das Drücken von Funktion-F1 so zu verhalten, als hätte ich auch die Windows-Taste gedrückt und den Buchstaben l eingegeben ?

xev Ausgabe, wenn ich Funktion-F1 drücke:

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

Wenn ich bei einem fokussierten Textfenster Funktion-F1 drücke, wird der Buchstabe l eingegeben .

Hintergrundinformationen:Laufendes Lubuntu 11.10 auf einem Toshiba r835. Gerne geben wir Ihnen weitere Details, die hilfreich sein könnten.

BEARBEITEN:

Zum Vergleich, wenn ich Funktion-F12 eingebe, bekomme ich:

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

Ich wollte überprüfen, ob die F1-F12-Tasten etwas Besonderes sind, aber es sieht so aus, als ob zumindest einige von ihnen so funktionieren, wie ich es erwarte.

Verwandter:„Dumthe Output“-Sound in Ubuntu 14.04?

Akzeptierte Antwort:

Wenn Sie Funktion-F1 sagen, meinen Sie vermutlich das Drücken dieser lustigen kleinen Fn-Taste in der Ecke eines Laptops, gefolgt von der F1-Taste oben links auf der Tastatur. Und dass Sie versuchen, eine der zusätzlichen Tasten wie Sleep zuzuordnen, die einige Laptop-Tastaturen haben. Es sieht so aus, als würde diese Taste buchstäblich mehrere Tasten für Sie drücken. Zuerst sehe ich Win+L als eine Kombination. Unter Windows sperrt diese Verknüpfung den Bildschirm, startet aber nicht den Bildschirmschoner. Als nächstes sehe ich eine Zuordnung für XF86ScreenSaver, was bedeuten könnte, dass X eine Art Sleep-Keycode sieht. Ich vermute, dass diese Taste auf Ihrer Laptop-Tastatur diese drei Tastencodes von Win + L + Sleep physisch sendet, um Windows-Benutzern den Bildschirm schnell zu sperren und den Bildschirmschoner zu aktivieren. Ich bin mir nicht sicher, wie ich diese herausfiltern kann. Die Fn-Taste auf Tastaturen wird normalerweise nicht vom Linux-Kernel gesehen. Stattdessen ändert es, welche Codes die Tastatur dem Kernel mitteilt. Als ich versuchte, eine USB-RF-PowerPoint-Fernbedienung mit OOo unter Linux zu verwenden, entdeckte ich, dass die Schaltfläche zum Starten/Stoppen der Präsentation nur eine lahme Steuerung war, um abwechselnd F5- und ESC-Tastencodes zu senden. Andere Tasten waren genauso lahm wie das Senden von b, um den Bildschirm zu leeren.


Linux
  1. Was bedeutet „rm ist gehasht“?

  2. Was bedeutet Symbolwert vom nm-Befehl?

  3. Was bedeutet - in diesem Linux-Befehl?

  4. Was bedeutet, wenn [[ $? -ne 0 ]]; bedeuten in .ksh

  5. Was bedeutet #define X X?

Was bedeutet chmod 777

Was bedeutet es, „sh-kompatibel“ zu sein?

Was zeigt diese Prozessstatistik an?

Keine X11-DISPLAY-Variable - was bedeutet das?

Was bedeutet diese Warnung?

Was bedeutet Keine weiteren Variablen in dieser MIB-Ansicht übrig (Linux)?