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

Neubelegung der Ein/Aus-Taste zum Löschen?

Ich habe ein Macbook Pro mit Ubuntu 13.10 mit FluxBox. Leider befindet sich der Netzschalter physisch über der Rücktaste, wo ich die Löschtaste erwarten würde. In OS X kann das PowerKey-Programm verwendet werden, um die Netztaste zum Löschen neu zuzuordnen. Wie kann ich etwas Ähnliches in X Windows machen?

Ich habe die Einschalttaste durch Bearbeiten von /etc/systemd/logind.conf deaktiviert und Setzen von HandlePowerKey = ignore Danach kann ich den Netzschalter drücken, ohne den Laptop herunterzufahren.

Ausführen von xev -event keyboard zeigt, dass der KeyPress für die Power-Taste normalerweise von einem anderen Prozess gefressen wird:

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

KeymapNotify event, serial 36, synthetic NO, window 0x0,
    keys:  1   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   
           0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   

KeymapNotify event, serial 37, synthetic NO, window 0x0,
    keys:  1   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   
           0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   

Indem ich jedoch nur xterm direkt über die Konsole ausführte, konnte ich den Schlüsselcode erfolgreich abrufen und den Schlüssel neu zuordnen.

xinit /usr/bin/xterm -- :1
xev -event keyboard | tee /tmp/junk.txt
tail -n ???? /tmp/junk.txt
MappingNotify event, serial 28, synthetic NO, window 0x0,
    request MappingKeyboard, first_keycode 8, count 248

KeyPress event, serial 28, synthetic NO, window 0x600001,
    root 0xa1, subw 0x0, time 720369, (146,89), root:(148,91),
    state 0x0, keycode 124 (keysym 0x1008ff2a, XF86PowerOff), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyRelease event, serial 28, synthetic NO, window 0x600001,
    root 0xa1, subw 0x0, time 720369, (146,89), root:(148,91),
    state 0x0, keycode 124 (keysym 0x1008ff2a, XF86PowerOff), same_screen YES,
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False

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

An dieser Stelle war es auch möglich, den Schlüssel mit xmodmap zuzuordnen. Ich habe es einem Backslash zugeordnet, was einfacher zu sehen ist als zu löschen:

 xmodmap -e "keycode 124 = backslash bar"

Ich könnte ein kaum funktionierendes Äquivalent zum Laufen bekommen, indem ich dies zu ~/.fluxbox/keys hinzufüge aber das ist sowohl hässlich als auch langsam genug, um unbrauchbar zu sein.

  # Remap the power off to a delete key...
  XF86PowerOff :Exec xdotool key Delete

Wie kann ich xmodmap oder setxkbmap verwenden, um den Netzschalter gleichzeitig mit einem normalen Fenstermanager zu verwenden?

Akzeptierte Antwort:

Ich verstehe den letzten Satz, die Frage, nicht genau, aber ich kann den Titel der Frage nachvollziehen:„Einschalttaste zum Löschen neu zuordnen“.

Versuchen Sie, „XF86PowerOff“ oder nur dasjenige, das Ihrer Tastatur entspricht, durch „Delete“ in /usr/share/X11/xkb/symbols/inet zu ersetzen.

Verwandte:Kernel-Panik jede Stunde oder so „UPSB:Thunderbolt power on failed“ seit ich auf High Sierra aktualisiert habe?

Sie müssen dies nach einem Systemupdate wiederholen, das diese Datei aktualisiert.


Linux
  1. Gpg:Vom Benutzer abgebrochen?

  2. Wie ordnet man die zu löschende Numlock-Taste neu zu?

  3. Wie konsolidiere ich mehrere Mok-Schlüssel oder lösche unnötige?

  4. So löschen Sie einen Dienst in Kubernetes

  5. So löschen Sie alle Zeilen einer Datei in Vim

Power(Shell) an die Menschen

So generieren Sie einen SSH-Schlüssel in Windows 10

So löschen Sie eine Partition unter Linux

So löschen Sie Zeilen in Vim / Vi

So löschen Sie ein Repository und einen GPG-Schlüssel in Ubuntu

Erstellen Sie einen Cloud-Server