Сочетание клавиш для окна переключения (активировать / свернуть)

235
mkczyk

На основе этого ответа я могу активировать или свернуть окно : как вызвать окно keepassX с помощью сочетания клавиш?

xdotool search --onlyvisible --name "My window name" windowactivate xdotool search --onlyvisible --name "My window name" windowminimize 

Я назначаю эти команды двум сочетаниям клавиш, например, Ctrl + Shift + K и Ctrl + Shift + M.

Но я хочу иметь только одно сочетание клавиш для окна переключения, это означает:

if minimalized: activate  else: minimalize 

Я не вижу никакой опции "переключения" в xdotool: http://manpages.ubuntu.com/manpages/trusty/man1/xdotool.1.html

ОС: Ubuntu, пользовательский интерфейс: Unity

1

1 ответ на вопрос

0
micke

Я часто использую xdotoolс xpropи xev. Они оба дают вам много информации о окнах.
Вы можете написать простой скрипт, который получает информацию об окне с помощью xpropили xevи реализует блок if-else, который вы написали. Это, пожалуй, самое универсальное решение, подходящее не только для задачи, которую вы описываете, но и для всего, что касается управления окнами.

Еще один замечательный инструмент для работы с вашим оконным менеджером wmctrl. Он считает, что делает то, что вы хотите без сценариев:
wmctrl -r "My window name (or id)" -b toggle,hidden

Страница man довольно краткая, я нашел эту документацию пользователя wmctrl более понятной .

Имейте в виду, что многое зависит от используемого вами оконного менеджера. Эти инструменты совместимы с EWMH, но могут сильно отличаться в зависимости от того, как окна отображаются, скрываются, прикрепляются, перемещаются на другие рабочие столы и т. Д.