Как запустить новое приложение в новом рабочем пространстве на Xubuntu 16.04

У меня была такая же проблема: установка растровой графики в «принудительное включение для всех слоев», кажется, наконец-то работает:

2
задан 15 March 2018 в 00:59

2 ответа

Я не реализовал это конкретное приложение, но похоже, что xdotool сделает то, что вы хотите.

Попробуйте запустить приложение с помощью сценария-оболочки:

desktops=$(xdotool get_num_desktops) desktops="$desktops"+1 xdotool set_num_desktops "$desktops" xdotool set_desktop "$desktops" run-my-application

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

Каждая команда xdotool возвращает статус которые вы должны проверить. Если шаг не выполняется, вы не хотите идти слепо.

Возможно, вы захотите установить максимальное количество рабочих столов, которые может создать ваш сценарий.

xdotool может видеть, окно уже существует и на каком рабочем столе оно в данный момент включено. Он также может перемещать окно на другой рабочий стол.

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

Поскольку ваш сценарий может запускаться с рабочего стола (а не только с терминала), вы также можете записать некоторые сообщения в файл, сообщающий вам, что сценарий сделал для его отладки проще.

Часть, где это становится немного сложной, - это когда приложение имеет более одного окна. Затем вам приходится иметь дело со стеком экземпляров и как-то найти нужный или работать над всеми из них. Например, мой Thunderbird запрашивает мастер-пароль при запуске, поэтому он открывает два окна.

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

Хотя xdotool наилучшим образом подходит для этой конкретной проблемы, вы также можете взглянуть в AutoKey, который может помочь вам автоматизировать все виды действий на рабочем столе / графическом интерфейсе, выдавая нажатия клавиш и события мыши, которые выглядят так же, как вы делали их вручную, чтобы они работали на большинстве приложений и функций рабочего стола.

0
ответ дан 17 July 2018 в 18:48

Я не реализовал это конкретное приложение, но похоже, что xdotool сделает то, что вы хотите.

Попробуйте запустить приложение с помощью сценария-оболочки:

desktops=$(xdotool get_num_desktops) desktops="$desktops"+1 xdotool set_num_desktops "$desktops" xdotool set_desktop "$desktops" run-my-application

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

Каждая команда xdotool возвращает статус которые вы должны проверить. Если шаг не выполняется, вы не хотите идти слепо.

Возможно, вы захотите установить максимальное количество рабочих столов, которые может создать ваш сценарий.

xdotool может видеть, окно уже существует и на каком рабочем столе оно в данный момент включено. Он также может перемещать окно на другой рабочий стол.

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

Поскольку ваш сценарий может запускаться с рабочего стола (а не только с терминала), вы также можете записать некоторые сообщения в файл, сообщающий вам, что сценарий сделал для его отладки проще.

Часть, где это становится немного сложной, - это когда приложение имеет более одного окна. Затем вам приходится иметь дело со стеком экземпляров и как-то найти нужный или работать над всеми из них. Например, мой Thunderbird запрашивает мастер-пароль при запуске, поэтому он открывает два окна.

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

Хотя xdotool наилучшим образом подходит для этой конкретной проблемы, вы также можете взглянуть в AutoKey, который может помочь вам автоматизировать все виды действий на рабочем столе / графическом интерфейсе, выдавая нажатия клавиш и события мыши, которые выглядят так же, как вы делали их вручную, чтобы они работали на большинстве приложений и функций рабочего стола.

0
ответ дан 23 July 2018 в 19:38

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

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