Erstellen Sie eine benutzerdefinierte Tastenkombination zum Einrasten des Fensters

Erstellen Sie eine benutzerdefinierte Tastenkombination zum Einrasten des Fensters

Es gibt eine Tastenkombination, um das Fenster entweder auf der Hälfte des Bildschirms Ctrl + Super + Leftoder auszurichten Ctrl + Super + Right. Meine erste Frage ist, wie diese Tastenkombination im System definiert ist. Alle Standardtastenkombinationen sind in definiert, gsettingsaber diese ist dort nicht vorhanden.

Kommen wir nun zur Hauptfrage. Die obige Verknüpfung springt auf die Hälfte des Bildschirms. Ich möchte, dass die Verknüpfung auf 75 % springt. Wie kann ich das machen? Und wenn ich eine neue Verknüpfung definieren möchte, die auf 75 % springt, wie gehe ich dann vor?

Antwort1

Ich konnte es mit wmctrlund zum Laufen bringen xdotool. Beide sind Fenstermanipulationstools.

#!/bin/bash
WIN=$(xdotool getactivewindow)
eval $(xdotool getwindowgeometry --shell $WIN)
WIDTH=$(calc "int($WIDTH*0.75)")
wmctrl -r :ACTIVE: -b remove,maximized_horz,sticky
wmctrl -r :ACTIVE: -e "0,0,24,$WIDTH,-1"

Das obige Skript passt das Fenster auf 75 % seiner Größe nach links an. Speichern Sie das obige Skript in einer Datei und weisen Sie der Datei eine Verknüpfung zu.

Auf ähnliche Weise verschiebt das folgende Skript das Fenster um 25 % der Breite nach rechts.

#!/bin/bash
WIN=$(xdotool getactivewindow)
eval $(xdotool getwindowgeometry --shell $WIN)
X=$(calc "int($WIDTH-$WIDTH*0.25)")
WIDTH=$(calc "int($WIDTH*0.25)")
wmctrl -i -r $WINDOW -b remove,maximized_horz
wmctrl -i -r $WINDOW -e "0,$X,-1,$WIDTH,-1"

Überprüfen Sie wmctrldie xdotoolManpages und Tutorials, um herauszufinden, wie sie funktionieren. Installieren Sie Abhängigkeiten mit

sudo apt-get install apcalc wmctrl xdotool

Hinweis: Die Größenanpassung erfolgt relativ zur aktuellen Fensterposition und -größe. Um sie relativ zur Bildschirmgröße zu machen, maximieren Sie das Fenster und führen Sie dann das Skript aus.

verwandte Informationen