Настольная проблема xdotool

Я очень плохо знаком с этим, таким образом, я надеюсь не нарушить. Я пытаюсь создать значки Desktop.desktop для своего HTPC (Домашний кинотеатр ПК). Каждый значок, когда-то нажатый, должен открыть URL и максимизировать экран. Мой код ниже делает это, но xdotool не максимизирует. Однако, когда я выполняю свой xdotool на терминале, работах! Я предполагаю, что для кода нужна своего рода задержка между открытием URL и увеличением?

[Desktop Entry]
Name=YouTube
Type=Link
URL=https://www.youtube.com/
Comment Terminal=false
Icon=/home/babak/Myicons/YouTube.png
Exec=xdotool search "google chrome" windowactivate --sync key F11

Заранее спасибо.

-1
задан 19 October 2019 в 15:26

1 ответ

A. файл на рабочем столе или откроет URL или выполнит команду, но не обоих одновременно. Чтобы иметь его открывают URL и делают что-то с созданными окнами, комбинируют оба действия в exec = строка.

Существует два способа, которыми можно объединить два действия с Exec = строка.

  1. Передайте несколько команд своей оболочке с помощью конструкции такой как sh -c "command 1; command 2". This is a way to pass two commands through a single command: anДолжностное лицо =' строка обрабатывает только единственную команду.
  2. Создайте сценарий удара, содержащий необходимые команды, и призовите тот удар, пишут сценарий Вашего Exec= строка.

Таким образом удалите строку URL=, и изменение Exec= строка к

sh -c 'google-chrome https://www.youtube.com/ && xdotool search "google chrome" windowactivate --sync key F11'

Можно заменить sh bash. Вместо && Вы могли также использовать ;, но первый удостоверится xdotool команда только выполняется, если первая команда выполняется успешно.

Если существует проблема синхронизации, то попытайтесь вставить паузу, например.

...&& sleep 0.3 && xdotool

ожидал бы в течение 0,3 секунд перед выполнением xdotool. xdotool также имеет сборку - в команде сна, таким образом, && xdotool sleep 0.3 search должен также добиться цели.

0
ответ дан 22 December 2019 в 00:17

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

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