X11: déplacer une fenêtre existante via la ligne de commande?
-
06-07-2019 - |
Question
Avec un identifiant de fenêtre client X, existe-t-il un moyen de déplacer cette fenêtre ou de modifier sa géométrie à partir de la ligne de commande?
$ xlsclients -a
Window 0x3000001:
Machine: ohm
Name: Terminal
Icon Name: foo
Command: foo
Instance/Class: foo/bar
$ xmovewindow -id 0x3000001 --geometry +100+200 <-- this is what I would like to do
La solution
Je pense que xdotool fera le travail.
xdotool vous permet de simuler par programmation (ou manuellement) la saisie au clavier et l'activité de la souris, de déplacer et de redimensionner des fenêtres, etc. à l'aide de l'extension XTEST de X11 et d'autres fonctions de Xlib.
ex.
$ xdotool windowfocus 0x1a00ad2
concentrera la fenêtre avec l'id 0x1a00ad2. Il existe également une commande windowmove qui est probablement celle que vous recherchez.
wmctrl est légèrement plus avancé. Il est compatible avec les gestionnaires de fenêtres EWMH / NetWM X, comme vous pouvez le lire sur leur site Web . Je ne pense pas que vous en aurez besoin pour être compatible avec ceux-là cependant.