Надежные предупреждающие диалоги из оболочки

Я хотел бы, чтобы в ответ на различные системные события всплывало сообщение, в основном для того, чтобы иметь возможность устанавливать напоминания для себя из сеанса оболочки. Есть несколько способов сделать это; zenity кажется наиболее отточенным. Однако я обнаружил по крайней мере две проблемы с zenity:

  1. Сообщения появляются не во всех рабочих пространствах. Я попытался использовать опцию gtk --screen для управления этим, но они просто появляются в текущем рабочем пространстве независимо от этого. Поэтому, если я переключаю рабочие пространства при появлении сообщения, я его не увижу.

  2. Сообщения не отображаются над всеми остальными окнами. В частности, если я использую guake, под окном guake появится новое сообщение zenity, и я не смогу его увидеть.

Я попробовал несколько других приложений некоторое время назад. И в gmessage, и в xmessage обнаружена проблема 1 ; gmessage также выставлены проблемы 2 . Я обнаружил, что kalarm, который может быть написан из командной строки, работает приемлемо, но я стараюсь по возможности избегать запуска стека KDE и предпочел бы что-то более легкое с универсальностью zenity.

Кажется, что можно решить эти проблемы, установив WM_CLASS, но я немного над головой. Также возможно внести изменения в окно после его запуска с помощью скрипта, но опять же я не уверен, где искать ресурсы по этому вопросу.

update

Как предложено @geirha, я рассмотрел использование notify-send (через пакет libnotify-bin , который представляется клиентом для уведомления -osd ). Существуют многочисленные проблемы с этим фреймворком, для которого я подал несколько ошибок отчетов . Я надеюсь, что devilspie может предоставить обходные пути для некоторых или всех этих проблем, или что есть другая система уведомлений, которая работает более надежно.

6
задан 31 March 2011 в 06:24

1 ответ

Может быть, вы хотите notify-send?

В противном случае есть devilspie , который позволяет вам говорить что-то вроде «все окна с этим именем (или этого класса или с этой ролью) , должны быть видны на всех рабочих пространствах ".

0
ответ дан 31 March 2011 в 06:24

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

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