Ich starte eine brandneue Ubuntu 17.10-Installation auf einem Thinkpad T470s.
Wenn ich eine der Medientasten (Wiedergabe / Pause, Überspringen usw.) auf einer meiner Tastaturen oder Bluetooth-Headsets drücke, wird dieses Symbol angezeigt:
Auf dem Monitor blinkt, aber keiner meiner Mediaplayer reagiert.
Die Schlüssel werden erkannt in showkey
:
~$ sudo showkey -k
press any key (program terminates 10s after last keypress)...
keycode 163 press
keycode 163 release
keycode 165 press
keycode 165 release
keycode 164 press
keycode 164 release
Aber sie erscheinen nicht in xev
.
keyboard
shortcut-keys
17.10
media-buttons
Nils Borrmann
quelle
quelle
gnome-control-center keyboard shortcuts
.Antworten:
Diese ganze Ausgabe sieht aus wie ein "Es ist kein Bug, es ist ein FEATURE" -Geschenk von Gnome.
Kurz gesagt: Wenn Sie eine Medientaste drücken, wird ein Schlüsselcode generiert, der in einen Befehl übersetzt wird. Angenommen, Sie drücken eine Play / Pause-Taste. Es generiert einen Schlüsselcode 162 und einen Befehl XF86AudioPlay.
Nun erwartet fast jede Medienanwendung, die auf dieses Ereignis wartet (sei es VLC, Totem, Kodi, Spotify usw.), einen reinen XF86AudioPlay-Befehl. Und was macht der Gnom? Es fängt diesen Befehl ab und übersetzt ihn in seinen eigenen Befehl "play". Aus diesem Grund zeigen weder xev noch xbindkeys dieses Ereignis richtig an - sie erhalten niemals einen Befehl, den sie verstehen können.
Wenn Sie eine Medientaste drücken, empfängt Gnome den Befehl und prüft, ob eine App erkannt wurde, die diesen Befehl empfangen kann. Wenn es gibt (sagen wir Totem, Rhytmbox, vielleicht VLC), sendet es "Play", das funktionieren sollte. Wenn keine App erkannt wird, die diesen Befehl empfangen kann, zeigt Gnome das Zeichen an, das an den ersten Beitrag angehängt ist, und sendet keinen Befehl an eine andere Stelle.
Die Lösung ist einfach: Gnome kann wichtige Medienereignisse nicht abfangen. Installieren Sie dconf-editor, gehen Sie zu org.gnome.settings-daemon.plugins.media-keys und ändern Sie alle Schaltflächen, die funktionieren sollen, von XF86SomeExample (z. B.
XF86AudioPlay
) in none (''). Auf diese Weise sollte jede App den Tastaturbefehl direkt erhalten.quelle
playerctl
undxbindkeys
und jetzt kann meine Tastatur alle meine Player steuern, nicht nur Rhythmbox.Wenn die Tastaturmedientasten auf Ihrem Ubuntu-Desktop nicht funktionieren, können Sie mithilfe der D-Bus-Unterstützung die richtigen Befehle an Spotify senden. Überprüfen Sie die folgenden Befehle von der Konsole aus:
Spielpause
Nächster
Bisherige
Aktivieren Sie die Media-Tastenkombination
Um diese an die Tastatur zu binden, gehen Sie zu Einstellungen> Tastatur> Verknüpfungen> Benutzerdefinierte Verknüpfungen und dann mit "Hinzufügen" +. Verwenden Sie einen der obigen Befehle und drücken Sie dann die Taste, die Sie mit dem neuen Befehl verknüpfen möchten.
Quelle
https://fabianlee.org/2016/05/25/ubuntu-enabling-media-keys-for-spotify/
quelle
spotify
zuvlc
,rhythmbox
usw. in dem Befehl.Ich stellte fest, dass ich mit Ubuntu 18.04 LTS ab dem 01.02.2019 nur noch Folgendes tun musste:
Die fraglichen Medientasten sollten jetzt sofort funktionieren.
Kein Wert zu verwenden, wie von darkdude empfohlen, hat bei mir nicht funktioniert.
quelle
Die Kombination der letzten beiden Antworten funktioniert bei mir. Ich habe mit Ubuntu 18.04 die Tastatur getestet
aber wenn ich zu Aktivitäten -> Tastatur gehe und versuche, irgendetwas mit Wiedergabe / Weiter / Zurück zu tun, funktioniert es überhaupt nicht. Als ich die standardmäßige Tastenzuordnung deaktiviert habe (rufe den Dialog für die Tastenzuordnung auf, drücke die Rücktaste und klicke auf Speichern) und erstelle eine brandneue, die funktioniert, war die Antwort von @foamboarder sehr hilfreich
Jetzt sieht es so aus, als ob dieser Screenshot aus dem Shortcut-Setup funktioniert, auch nachdem der Computer aus dem Ruhemodus geweckt wurde
quelle
dbus-send --print-reply --dest=org.mpris.MediaPlayer2.rhythmbox /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.PlayPause
und ...Previous
und ...Next
Die obige Antwort von @ Václav zu verwenden, funktionierte für mich auf Ubuntu 18.04, wo er sagte
Ich verwende Rhythmbox. Hier sind die Befehle, die ich für jeden benutzerdefinierten Shorcut für Rhythmbox eingegeben habe:
Für Vorherige:
Fürs nächste:
Für Play / Stop:
Hoffe das hilft jemandem eines Tages
quelle
playerctl
und es kann die meisten von mir verwendeten Mediaplayer automatisch finden und steuern.rhythmbox-client --play-pause
,rhythmbox-client --next
,rhythmbox-client --previous
Die Tastencodes scheinen nicht entsprechend zugeordnet zu sein. Sie können Schlüssel wie in der Ubuntu-Dokumentation beschrieben manuell zuordnen: https://help.ubuntu.com/stable/ubuntu-help/keyboard-shortcuts-set.html
quelle