wmctrl -r ":ACTIVE:" -e "0,$(xdotool getactivewindow getwindowgeometry|egrep -o '[0-9]+,[^ ]+'),970,600"
cible un actif la fenêtre (c'est-à-dire le terminal utilisé pour la commande) est redimensionnée à 970 (largeur ) et 600 (hauteur )
Utilisez la commande wmctrl :
Pour lister les fenêtres :
$ wmctrl -l
0x00c00003 -1 rgamble-desktop Bottom Expanded Edge Panel
0x00c00031 -1 rgamble-desktop Top Expanded Edge Panel
0x00e00022 -1 rgamble-desktop Desktop
0x0260007c 0 rgamble-desktop Google - Mozilla Firefox
Pour redimensionner une fenêtre en fonction de son titre :
wmctrl -r Firefox -e 0,0,0,640,480
Les arguments de l'option de redimensionnement sont gravity,X,Y,width,height
cela placera donc la fenêtre dans le coin supérieur gauche de l'écran et la redimensionnera à 640X480.
En utilisant wmctrl, il existe également des états prédéfinis :
Si une fenêtre est actuellement dans l'état maximized
, il ne répondra pas à un redimensionnement en pixels utilisant le -e
paramètre^. C'est là que le -b
paramètre est utile.
L'option -b attend une liste de paramètres séparés par des virgules :"(remove|add|toggle),PROP1,PROP2]"
Exemple :
wmctrl -r Firefox -b toggle,maximized_horz
États disponibles :
wmctrl -r Firefox -b toggle,maximized_vert
----- ---------------
remove modal
add sticky
toggle maximized_vert
maximized_horz
shaded
skip_taskbar
skip_pager
hidden
fullscreen
above
below
A propos de la question précise, le paramètre -e permet le redimensionnement par valeurs comme suit :
Gravité, position X, position Y, largeur fenêtre, hauteur fenêtre
// gravity,x,y,w,h
wmctrl -r "Resizing" -e 0,0,0,640,480