Ctrl + Alt + T
открывает новый терминал окно. Как с помощью сочетания клавиш открыть существующее окно приложения, если оно уже открыто (и открыть новое, если нет)?
Основной способ запустить или поднять приложение, т. Е. Переключиться на него, если оно запущено, или запустить его, представляет собой однострочную команду терминала. Он использует wmctrl
. Установите его с помощью sudo apt install wmctrl
. Затем введите следующую команду для сочетания клавиш:
sh -c "wmctrl -x -a Gnome-terminal || gnome-terminal"
wmctrl
проверяет, существует ли окно с классом Gnome-terminal
. Если это не удается ( ||
), выполняется вторая команда, которая просто запускает новый экземпляр gnome-terminal. sh -c
необходим, чтобы обернуть все это в одну команду.
Вы можете найти класс открытого окна, запустив xprop | grep WM_CLASS
в терминале, затем щелкнув по окну.
Вы можете удалить привязку клавиш по умолчанию Ctrl + Alt + t и заменить ее своей собственной версией.
Опция на стероидах , которую я использую, - это скрипт jumpapp . На странице GitHub объясняется, как установить его в Ubuntu как пакет .deb, чтобы он был зарегистрирован в системе управления пакетами. Команда для сочетания клавиш становится такой же простой, как:
jumpapp gnome-terminal
Дополнительным преимуществом по сравнению с основным способом является то, что jumpapp
позволит вам циклически перемещаться по нескольким открытым окнам, когда вы несколько раз нажимаете клавишу быстрого доступа, и может приспосабливаться некоторые конкретные случаи. Прочтите об этом на прекрасной странице man
, man jumpapp
.
xdotool windowactivate --sync $ id .............. $ id from ids = $ (xdotool search --desktop 0 --class "$ name") ... $ name предназначен для U , затем установите для него сочетание клавиш из сценария или команды из нескольких команд
id = $ (xdotool search --desktop 0 --class "firefox"); echo "$ id"; xdotool windowactivate "$ id"
. осторожно, так как у firefox будет 2 идентификатора, если у вас также открыт диспетчер загрузок.