Ich habe Tastaturkürzel hinzugefügt , um das globale Tastaturlayout festzulegen . Wie kann ich es jedoch für eine einzelne Anwendung festlegen? Der Grund, warum ich dies tun möchte, ist, dass ich QWERTY für Spiele gewohnt bin und lieber nicht 10 Minuten in jedem Spiel verbringen möchte, um ein benutzerdefiniertes Layout einzurichten. Und ich möchte lieber nicht das Layout wechseln, wenn ich zu anderen Anwendungen wechsle (was ich häufig mache), sowohl aus Bequemlichkeitsgründen als auch um zu vermeiden, dass die falsche Verknüpfung gedrückt wird.
11
setxkbmap
oder einer beliebigen Verknüpfung, die Sie dem Schalter zugewiesen haben, spielen Ihr Spiel und wechseln dann zurück, wenn Sie fertig sind?xmodmap
auf einen Fensterschalter.Antworten:
Verwenden Sie, um festzustellen, wann eine neue App (Ihr Spiel) gestartet wird
client.connect_signal("manage", function(c) ...)
. Verwenden Sie dann, umclient.name
zu sehen, ob es sich um Ihre App handelt ("kerbal-space-program" oder was auch immer). Wenn beide Tests erfolgreich sind, wenden Sie Ihr Tastaturlayout an.Testen Sie für zusätzliche Ordnung,
client.focus
um das Tastaturlayout im laufenden Betrieb zu aktivieren / deaktivieren.https://awesomewm.org/doc/api/classes/client.html#
quelle