Ubuntu / Gnome: открыть приложение в определенной рабочей области

Как сообщить приложение открыть в определенной рабочей области?


Больше информации:

Мне нравится иметь мою C ++ IDE в рабочей области 2, моей Java IDE в рабочей области 3, а также мой адрес электронной почты, браузер и разное в рабочей области четыре. Я также использую скрипт оболочки, который выполняется при входе в систему:

#!/bin/bash gnome-terminal & # WS 1 netbeans-6-9-1 & # WS2 qtcreator-2-0-1 & # WS 3 firefox & # WS 4 thunderbird & # WS 4 

Конечно, в настоящее время все это открывается в текущем рабочем пространстве … Есть ли способ указать, в каком рабочем пространстве должна начинаться каждая команда?

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

3 Solutions collect form web for “Ubuntu / Gnome: открыть приложение в определенной рабочей области”

Вы можете использовать devilspie для установки правил, для которых окна идут в рабочую область.

См. Документы для примера именно этого.

Но у MrStatic есть и хорошее предложение. Сначала попробуйте это, вам даже не понадобится ваш сценарий оболочки.

Если вам нужна эта команда, которую вы можете использовать в сценарии оболочки, посмотрите на wmctrl .

Я попробовал инструмент wmctrl и обнаружил, что самым легким решением для меня было перемещение окна со следующей командой:

 wmctrl -r <WindowName> -t <WorkspaceNumber> 

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

 wmctrl -s <WorkspaceNumber> 

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

Devilspie – хорошая идея, но это сопоставление шаблонов (т. Е. Если имя == 'google-chrome'). Итак, что произойдет, если я открою два браузера? Они оба перемещаются в одно рабочее пространство? У меня 6×3 = 18 рабочих пространств, каждый из которых имеет конкретный экземпляр хрома. Это помогло бы, если бы я мог переименовать эти программы (например, «google-chrome1», «google-chrome2» …), но я не могу найти способ сделать это. Поэтому мы должны использовать wmctrl.

Wmctrl немного лучше b / c в дополнение к использованию заголовков окон, вы также можете использовать идентификаторы окон или просто использовать текущее выделенное окно. Идентификаторы окон – это боль, чтобы получить b / c, которые они не сразу генерируют. Смотри ниже

 gedit 1.txt #get window ID by looking at wmctrl -l store in windowID wmctrl -i -r $windowID -e 0,3660,0,-1,-1 

Но затем управление не возвращается в командную строку до выхода из системы после выхода gedit. Все, что нам нужно сделать, чтобы обойти это, положить знак &

 gedit 1.txt & #get window ID by looking at wmctrl -l store in windowID wmctrl -i -r $windowID -e 0,3660,0,-1,-1 

Но теперь контроль – 99,999% времени, возвращен в командную строку ПЕРЕД оконным менеджером запускает окно, и нет способа найти идентификатор окна. Нужно настроить очень сложную технику цикла, чтобы проверить, созданы ли какие-либо новые окна, и угадать, является ли это окно, которое мы ищем.

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

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

  • Установка частоты процессора по умолчанию в Ubuntu?
  • Рекомендации по подходам к шифрованию диска в Ubuntu?
  • Как открыть меню с «Open Terminal Here» в Ubuntu 10.04, щелкнув левой кнопкой мыши на рабочем столе или внутри папки?
  • CHKDSK в Linux ...?
  • Поделитесь всем домашним каталогом между хостом и гостем с помощью Virtual Box
  • Каков наилучший формат диска для обмена данными между Mac, Linux и OS X?
  • Windows 10 linux bash shell ctrl + space не устанавливает отметку в Emacs
  • Я попытался установить Ubuntu 10.04, и я получил это сообщение - любые идеи о том, что делать?
  • Aptitude vs. apt-get: Какой из рекомендованных (так называемых «правильных») инструментов использовать?
  • Songbird не запускается из-за GStreamer в Ubuntu 9.10
  • Как автоматизировать работу dhclient в ubuntu?
  • Давайте будем гением компьютера.