Добавьте пользовательский ярлык для открытия и фокусировки приложения Ubuntu 18.04

Я пытаюсь добавить горячие клавиши для быстрого открытия некоторых приложений (например, KeePassXC), и я сделал то, что хотел

Настройки клавиатуры -> Сочетания клавиш -> / usr / bin / keepassxc; wmctrl -a keepassxc

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

3
задан 7 May 2018 в 21:00

2 ответа

Можно использовать некоторые расширения оболочки GNOME для удаления "Программы, Готовое" уведомление и также помещает недавно запущенное окно в фокус, например

  1. 'Окно является готовым' съемником уведомления
  2. NoAnnoyance (Удаляет 'Windows, готовое' уведомление и также помещает окно в фокус),
  3. Сфокусируйте мое окно (то же как выше)
2
ответ дан 1 December 2019 в 16:17

Это не может сделать ничего для решения вопроса уведомления в вопросе. Однако описанный шаблон "команда" ([cmd] ; wmctrl -a [cls]) может запустить несколько экземпляров программы, которой избегает следующий сценарий. Для использования сохраните где-нибудь в пути, такой как ~/bin/find_app.sh, и дайте его, выполняют разрешение (chmod +x ~/bin/find_app.sh).

#! /usr/bin/env bash

if [ $# -lt 1 ]; then
   echo "usage: `basename $0` [class-name] [command] [args]"
   echo
   echo "Find and activate window with [class-name]."
   echo "Execute [command] if window cannot be found."
   echo
   echo "If [command] is not given, it is assumed to be [class-name]"
   exit 1
fi

if [ $# -lt 2 ]; then
   # find_app="wmctrl -xa $class"
   class="$1"
   find_app="xdotool search --onlyvisible --class $class windowactivate"
   command="$1"
else
   class="$1"
   find_app="xdotool search --onlyvisible --class $class windowactivate"
   shift
   command="$@"
fi

if (! eval "${find_app}") ; then
   eval "xdotool exec ${command}"
fi
1
ответ дан 1 December 2019 в 16:17

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

Похожие вопросы: