Я пытаюсь написать сценарий bash для управления расположением открытых окон на определенном видовом экране и столкнуться с проблемой, которая в основном я не могу найти способ переместить окна в правильном порядке - «правильный порядок» - тот, который мы можем получить с помощью alt-tab.
Итак, как правило, я запускаю свой скрипт, и окна находятся в правильных местах на экране, но терминал, с которого он работает, заканчивается под ним какое-то другое окно, это потому, что список окон, возвращаемых wmctrl, похоже, не в порядке alt-tab.
Возможно, wmctrl не имеет этой информации, и в этом случае я надеюсь, что кто-то может предложить альтернативный интерфейс или подход.
И хотя у меня есть ваше внимание, возможно, кто-то может также объяснить странность, которую я обнаружил, которая заключается в том, что исходные данные окна, возвращаемые «wmctrl -lG», похоже, находятся в 1 / 2 пикселя +/- смещение x и y или «что-то» (в то время как ширина + высота в пикселях)?
Так, например:
$ wmctrl -i -r 0x08e01de3 -e 0,100,100,-1,-1
перемещает указанный окно на то, что выглядит как 100 100 на экране, но затем считывает информацию о окне назад:
$ wmctrl -lG|grep 0x08e01de3
0x08e01de3 0 196 246 1267 639 U10
196? 246?
Это непротиворечиво и настолько легко, что можно кодировать, но мне кажется странным, и меня беспокоит, что я что-то недопонимаю.
Спасибо за любую помощь и извинения, вы нарушили какие-либо правила с этой публикацией. Это мой первый «запрос», и я постараюсь улучшить его в следующий раз.