On Thu, 3 Oct 2019, Evgeny Zubok wrote:
yuri.nefedov@gmail.com writes:On Thu, 12 Sep 2019, fed05x wrote:Сейчас пользуюсь таким скриптом повешеннаным на хоткей: #/bin/sh for i in $(xdotool search --maxdepth 2 --class "Firefox"); do # --onlyvisible xdotool windowsize $i 800 600 windowmove $i 100 50 done для его его работы нужен xdotool. Довольно удобно. у меня в нём не только фф, но и кучка других программ, и все по нажатию клавиши выстраиваются как надо.Можно и в скрипт запуска запуска firefox такое встроить. Без хоткеев. #!/bin/sh # open firefox in position (0,0) # LANG=en_US.UTF-8 /usr/bin/firefox-esr $@ > /dev/null 2>&1 & # wait for the window while [ $(wmctrl -l | grep --count "Mozilla Firefox") -lt 1 ]; do sleep .5s done # move to 'g,x,y,w,h' (see man wmctrl) wmctrl -r "Mozilla Firefox" -e 0,0,0,-1,-1 Ю.Все эти действия лучше делать при помощи devilspie или devilspie 2. Этот инструмент перехватывает события открытия окна и делает действие по созданному пользователем правилу. Вот, например, тут возились с окном flashplayer: https://www.linux.org.ru/forum/desktop/14812598?cid=14815762
Не знал об этих программах. Бегло посмотрел, но так и не понял каким собственно способом перехватывается это событие. То что написано во всякого рода wiki [1,2] внушает опасение. Следуя этой логике старт любого окна приводит к запуску этой программы, которая уже исследует соответствует ли этот запуск тому, что в ее конфигурации и если да то что-то делает. Сравните с логикой этого скрипта - я запускаю окно и немного жду пока отрисуется именно это окно. Мне кажется это намного прямее. Кроме того есть смутные подозрения, что работать эта программа будет не со всеми менеджерами окон. И документация совсем не дает понять с какими работает. wmctrl же работает с EWMH/NetWM compatible X Window Manager [3] [1] https://wiki.gnome.org/Projects/DevilsPie [2] https://help.ubuntu.com/community/Devilspie [3] https://en.wikipedia.org/wiki/Extended_Window_Manager_Hints