Я хотел бы иметь возможность перемещать (прикреплять) существующее окно ко всем рабочим столам с помощью команды с поддержкой сценариев, а не через меню окон.
wmctrl -r <WIN> -t <DESK>
переместит окно на другой рабочий стол, но я не нашел способа использовать это, чтобы окно отображалось на всех рабочих столах. wmctrl -l
отображается -1
как номер рабочего стола для окон, которые отображаются на всех рабочих столах, но переход -1
на -t
не работает.
Нерешенный отчет об ошибках fedora, кажется, решает эту проблему: очевидно, значение -1 используется внутренне wmctrl
, и по этой причине не может быть передано -t
. В отчете об ошибке также упоминается, что окно может быть прикреплено к некоторым оконным менеджерам, давая целевому окну свойство sticky . Тем не менее, я использую openbox, и этот подход, похоже, не работает для меня. На самом деле к этому сообщению об ошибке добавлен патч; Я не пробовал использовать это. Это с 2009 года. Я бы предпочел избегать исправлений wmctrl
или чего-либо еще.
Есть ли другой способ сценария этого поведения, который будет работать под Openbox?
Ответы:
Как сказал пользователь в комментариях,
wmctrl
его не трогали с октября 2005 года. Вполне возможно, что функция работала в то время, и с тех пор была повреждена из-за изменений пакетов вокруг нее.Вот список
wmctrl
измененийисточник
Начиная с wmctrl v1.07,
-t -2
у меня работает.источник
-b add,sticky
не менее, работает-t
ниsticky
Openbox не работают для меня.xdotool search --name xyz set_desktop_for_window 4294967295
источник
xdotool set_desktop_for_window -1
он интерпретируется как опция, даже если он следует за командой и является значением, возвращаемымxdotool get_desktop_for_window
.