c't 2/2018
S. 148
Praxis
Fenster manipulieren unter Linux
Aufmacherbild

Von Geisterhand

Devilspie2 manipuliert automatisch Fenster unter Linux

Wie bringt man unter Linux das Browserfenster dazu, stets in der Größe von 1280 × 720 Pixeln rechts oben auf dem Monitor zu erscheinen? Und wie zwingt man die Remote-Desktop-Software, grundsätzlich minimiert zu starten? Mit der Hilfe des Teufels.

Auf große Bildschirme passen Dutzende Fenster nebeneinander. Nach jedem Neustart muss man allerdings die Fenster wieder an ihre gewohnten Positionen zurückschieben. Einige Anwendungen vergessen zudem ihre alten Fenstergrößen, was dann zu wiederholtem Zupfen am Rahmen führt. Mitunter möchte man auch Firefox in eine ganz bestimmte Größe zwingen. Das ist etwa bei Screencasts oder beim Entwickeln von responsiven Web-Seiten nützlich. In all diesen Fällen leistet das Kommandozeilenwerkzeug Devilspie2 wertvolle Hilfe. Es verschiebt Fenster automatisch an die richtige Position, zwingt sie in eine feste Größe und sorgt sogar auf Wunsch dafür, dass wichtige Anwendungen immer im Vordergrund sichtbar bleiben, unabhängig vom verwendeten Desktop.

Aus dem Hinterhalt

Devilspie2 wartet im Hintergrund. Sobald ein neues Fenster erscheint, führt es eine oder mehrere vorgegebene Aktionen aus. So können Sie Devilspie2 etwa anweisen, alle Fenster mit dem Titel „Firefox“ in eine Größe von 1280 × 720 Pixeln zu pressen. Die auszuführenden Aktionen müssen Sie in der Skriptsprache Lua notieren. Das klingt komplizierter, als es tatsächlich ist: Zum einen lässt sich Lua schnell erlernen und zum anderen genügen bereits die im Folgenden vorgestellten Grundlagen, um die Fenster auf dem Bildschirm nach Ihrer Pfeife tanzen zu lassen.