Существует ли команда, чтобы сказать compiz, что мы хотим ввести передний и фокус набора к определенному окну? Как мы должны определить окно в той команде?
Причиной позади этого вопроса является следующий пример использования:
Предположим, что у нас есть Wiki для хранения примечаний чего-либо интересного, которое мы узнаем. Было бы очень удобно иметь сочетание клавиш, чтобы принести окно браузера с нашей страницей Wiki впереди и начать вводить сразу затем с другим переключателем сочетания клавиш к приложению, мы работали прежде
Я знаю, что ALT + переключатели ВКЛАДКИ между последними двумя используемыми окнами, но не может поддерживать более сложные комбинации приложений. Например, Browser+Eclipse + Wiki
Если существует команда как описанная та, легко добавить ярлык на него от интерфейса KDE или GNOME
То, что вы ищете, это wmctrl . Например, добавьте сочетание клавиш для вызова команды типа
wmctrl -Fa 'Wiki - Google Chrome'
, чтобы поднять и активировать окно с таким заголовком.
Существуют различные способы выбора окна по заголовку, идентификатору и т.д. См. man wmctrl. Список окон можно получить запустив
$ wmctrl -l
Я не пробовал его с compiz, но wmctrl должен работать для любого EWMH-совместимого оконного менеджера.
Вы захотите отправить клиентское сообщение _NET_ACTIVE_WINDOW
в корневое окно. Это предупредит любой совместимый оконный менеджер (включая Compiz) о том, что вы запрашиваете сделать активным конкретное окно.
Смотрите спецификацию EWMH, в частности раздел на _NET_ACTIVE_WINDOW
.
Обратите внимание, что в зависимости от конфигурации оконного менеджера, он может отказать в удовлетворении вашего запроса, или дать пользователю возможность проигнорировать его.
.Я нашел эту веб-страницу , на которой есть пример исходной программы, которую Вы можете скомпилировать и которая выведет окно X на передний план.
Клавишей является функция X11 XRaiseWindow
.
Я представляю, что было бы довольно легко написать небольшую программу и либо написать оберточный сценарий, либо просто сделать саму программу надежной, а затем установить Compiz, чтобы прикрепить это к глобальной клавиатурной комбинации клавиш.
.