The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Уведомление всплывающее на десктопе и управление оконным менеджером
Утилита notify-send, входящая в состав пакета libnotify-bin, позволяет
отправить через D-BUS уведомление,
которое будет отражено в GNOME в виде всплывающего окошка.

Пример:
   notify-send -c info -t 1800000 "заголовок окна" "текст внутри окна"

где, "-t 1800000" - таймаут висения окна в милисекундах.
"-c info" - категория оповещения, список можно найти здесь:
   http://www.galago-project.org/specs/notification/0.9/x211.html

В тексте можно использовать тэги: <b>жирный шрифт</b>, <i>наклонный</i>, <u>с подчеркиванием</u>,
<a href="...">ссылки</a>, <img src="..." alt="...">картинки, размером до 200x100</img>.

Интересные возможности по управлению оконным менеджером из командной строки
предоставляет утилита wmctrl:
Получить список открытых окон:
   wmctrl -l

Получить список открытых окон с отображением PID-процесса и инфрмацией о размере окна:
   wmctrl -p -G -l

Сделать активным окно в названии которого есть слово licq:
   wmctrl -a licq

Свернуть окно в названии которого есть слово 'mozilla':
   wmctrl -r mozilla -b add,hidden

Закрыть окно по его имени:
   wmctrl -F -c 'Debian bug tracking system - Mozilla'

Изменить заголовок окна для окна выбранного курсором мыши:
   wmctrl -r :SELECT: -T "Selected Window"

Развернуть окно со словом video в заголовке на полный экран:
   wmctrl -r "video" -b toggle,fullscreen

Посмотреть какое окно является активным:
   xprop -root | grep "_NET_ACTIVE_WINDOW(WINDOW)"

Посмотреть подробную информацию об активном окне:
   xwininfo -id 0x4a00021
где, 0x4a00021 идентификатор окна.
 
20.09.2008
Ключи: window, x11, gnome, dbus, wm / Лицензия: CC-BY
Раздел:    Корень / Пользователю / X Window

Обсуждение [ RSS ]
  • 1.1, Аноним (-), 19:36, 20/09/2008 [ответить]  
  • +/
    О, раздолье для малварьщиков. :-)
     
     
  • 2.2, User294 (ok), 23:01, 20/09/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >О, раздолье для малварьщиков. :-)

    Если так рассуждать то все системные сервисы для малварщиков просто клад! Ведь они могут юзать их так же как и прочие программы.

     

  • 1.3, remi (?), 13:05, 21/09/2008 [ответить]  
  • +/
    Это как раз то, что я безуспешно искал!
    Спасибо!
     
  • 1.4, Аноним (4), 19:14, 24/09/2008 [ответить]  
  • +/
    в третих кедах можно использовать dcop knotify
    http://lukeplant.me.uk/articles.php?id=3

    в четвёртых кедах это делается через dbus

     
     
  • 2.5, User294 (??), 00:20, 25/09/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >в четвёртых кедах это делается через dbus

    А вот интересно, в третьих через d-bus можно?

     
     
  • 3.6, Аноним (4), 09:41, 25/09/2008 [^] [^^] [^^^] [ответить]  
  • +/
    разумеется нет
     

  • 1.7, charon (ok), 17:02, 06/11/2008 [ответить]  
  • +/
    >Утилита notify-send, входящая в состав пакета libnotify-bin, позволяет отправить через D-BUS уведомление,

    notify-send у меня работает только из командной строки. При запуске из крона не происходит ничего.
    libnotify-bin - такой пакет у меня не установлен.
    Я даже не знаю где начинать копать. Никаких манов, инфо или чего-нибудь в этом роде.

    wmctrl у меня нет

    Всё это на Федоре 9.

     
     
  • 2.8, remi (?), 18:33, 06/11/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >notify-send у меня работает только из командной строки. При запуске из крона
    >не происходит ничего.
    >libnotify-bin - такой пакет у меня не установлен.
    >Я даже не знаю где начинать копать. Никаких манов, инфо или чего-нибудь
    >в этом роде.
    >
    >wmctrl у меня нет
    >
    >Всё это на Федоре 9.

    Направление копания прежде всего зависит от задачи. :)

    Вместо пакета libnotify-bin в Федоре есть пакет libnotify. Утилита wmctrl входит в пакет wmctrl.
    Если для какой-то утилиты отсутствуют маны, то иногда помогает ключ --help к самой утилите.
    Иногда может помочь просмотр списка файлов, которые входят в состав пакета:

    rpm -ql package_name

    В этом списке можно увидеть кое-какие доки, которые обычно помещаются в /usr/share/doc.
    Либо сразу можно дать команду

    rpm -qd package_name

    и она покажет только доки и маны, которые входят в состав пакета.

    Для поиска пакетов удобнее всего использовать yum, имхо.

    Что касается notify-send из-под cron, то этой утилите требуется установленная переменная DISPLAY, которая отсутствует в окружении cron. Так что ее сначала надо тем или иным способом установить.
    Под Федорой мне также не удавалось отправлять с помощью этой утилиты уведомления от одного пользователя к другому. Из-под одного пользователя ему же удавалось, а из-под одного другому - нет. Поэтому приходилось дополнительно извращаться.
    Хотелось конечно проще, но по-другому почему-то не получалось. :(

     

  • 1.9, count0krsk (ok), 13:06, 30/12/2015 [ответить]  
  • +/
    wmctrl -r mozilla -b add,shaded - скрутит, а не свернет, исправьте.
    Правильно так:
    wmctrl -r mozilla -b add,hidden
     
     
  • 2.10, Илья (??), 01:40, 05/10/2016 [^] [^^] [^^^] [ответить]  
  • +/
    У меня так:
    wmctrl -r VLC -b add,shaded  сворачивает
    wmctrl -r VLC -b add,hidden  разворачивает
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру