Терминатор: одно окно, фокус на запуске

Я настраиваю Terminator для своего рабочего стола. Я использую Ctrl + Alt + T ярлык для его запуска. Поскольку я хочу запустить только один экземпляр, я использую run-one terminator как команда запуска.

Теперь, если экземпляр Terminator запущен, новый экземпляр не запускается, но существующий экземпляр не фокусируется.

Любые идеи относительно того, как я мог получить окно Терминатора, чтобы сфокусироваться?

3 ответа

Решение

Попробуйте установить wmctrl: sudo apt-get install wmctrl
теперь команда wmctrl -a STRING фокусируется на окне, содержащем STRING в заголовке
поэтому ваша последняя команда будет:

run-one terminator; wmctrl -a Terminator

Вот метод, который работает без run-one при условии, wmctrl доступен:

wmctrl -xa terminator.Terminator || terminator

Предполагается, что используется имя класса окна по умолчанию. Вы можете проявить творческий подход, если хотите, и использовать имя собственного класса при запуске terminator, Это позволит вам сохранить ярлык терминатора отдельно от обычного экземпляра терминатора:

wmctrl -xa MyCustomTerminator.Terminator || terminator -c MyCustomTerminator

Это просто основано на ответе Дениса без необходимости run-one,

Вот взлом, который я решил использовать run-one и xdotool

В /home/(user)/my_scripts/single_terminator_instance.sh

#!/usr/bin/bash

# run a single instance of terminator
/usr/bin/run-one /usr/bin/terminator

# search for the terminator window and focus!!!
/usr/bin/xdotool search --onlyvisible --class terminator windowactivate

затем

  1. Изменить команду ярлыка Terminator в Main Menu указать на приведенный выше сценарий
  2. В сочетаниях клавиш, Ctrl + Alt + T активирует скрипт

В поисках через i'net я тоже случайно наткнулся на это

Так как я новичок в bash-скриптах, я приветствую любые доработки!

Другие вопросы по тегам