Update 13.2.2011
Trochu toto téma shrnu, když už to používám v každém skriptu.
Notify-OSD se poprvé objevil v Ubuntu 9.04 Jaunty a nahrazuje notifikace grafického prostředí Gnome (koncepce počítá i s KDE, ale to je zatím mimo můj zájem). To jsou ty bubliny, které se tu a tam zobrazují vpravo nahoře a informují o různých událostech. Faktem je, že oproti původním Gnome notifikacím, je Notify-OSD graficky přitažlivější a modernější, ale oproti původnímu systému ztratil ten nový možnost jakéhokoliv přizpůsobení uživatelem. Je to zkrátka nedotažené a to zcela úmyslně, možnosti nastavení se zatím oficiálně neplánují...
Změnilo se jen pár věcí - jednak se prodloužila doba po kterou se notifikace zobrazuje, z původních ještě snesitelných pěti sekund, na nesnesitelných deset, a dále se změnilo pozicování notifikací, kdy se rezervuje místo pro notifikace typu "změna hlasitosti" apod. a ostatní notifikace se zobrazují níže, i když vyhrazenou pozici žádná notifikace nezabírá. Vypadá to divně, dá se na to zvyknout, ale pokud vyměníte HD monitor za netbook s vertikálním rozlišením 600 bodů, uvědomíte si, že to vypadá opravdu blbě. Jediné, co se dalo na Notify-OSD změnit, bylo přesunout bubliny z pravého horního rohu, do pravého středu (v Lucidu je to zas trochu jinak..). Naštěstí tu ale máme alternativu v podobě upraveného Notify-OSD, který vytvořil Roman Sukochev alias leolik. Jeho verze je konfigurovatelná pomocí textového souboru a není to složité, našel se ovšem další dobrodinec Amandeep Grewal, který napsal i grafický konfigurátor, jehož obsluhu zvládne i opoce.
Trochu toto téma shrnu, když už to používám v každém skriptu.
Notify-OSD se poprvé objevil v Ubuntu 9.04 Jaunty a nahrazuje notifikace grafického prostředí Gnome (koncepce počítá i s KDE, ale to je zatím mimo můj zájem). To jsou ty bubliny, které se tu a tam zobrazují vpravo nahoře a informují o různých událostech. Faktem je, že oproti původním Gnome notifikacím, je Notify-OSD graficky přitažlivější a modernější, ale oproti původnímu systému ztratil ten nový možnost jakéhokoliv přizpůsobení uživatelem. Je to zkrátka nedotažené a to zcela úmyslně, možnosti nastavení se zatím oficiálně neplánují...
Změnilo se jen pár věcí - jednak se prodloužila doba po kterou se notifikace zobrazuje, z původních ještě snesitelných pěti sekund, na nesnesitelných deset, a dále se změnilo pozicování notifikací, kdy se rezervuje místo pro notifikace typu "změna hlasitosti" apod. a ostatní notifikace se zobrazují níže, i když vyhrazenou pozici žádná notifikace nezabírá. Vypadá to divně, dá se na to zvyknout, ale pokud vyměníte HD monitor za netbook s vertikálním rozlišením 600 bodů, uvědomíte si, že to vypadá opravdu blbě. Jediné, co se dalo na Notify-OSD změnit, bylo přesunout bubliny z pravého horního rohu, do pravého středu (v Lucidu je to zas trochu jinak..). Naštěstí tu ale máme alternativu v podobě upraveného Notify-OSD, který vytvořil Roman Sukochev alias leolik. Jeho verze je konfigurovatelná pomocí textového souboru a není to složité, našel se ovšem další dobrodinec Amandeep Grewal, který napsal i grafický konfigurátor, jehož obsluhu zvládne i opoce.
Notifikace upravené panem Sukochevem nabízí libovolnou změnu umístění notifikací, odsazení od pravého horního rohu obrazovky a rozestupy, a dále nabízí celkem vyčerpávající možnosti změny vzhledu, doby zobrazení a zrušení zmíněné vyhrazené zóny, kdy se všechny notifikace zobrazují od shora a případně se řadí pod sebe.
Instalace
$ sudo add-apt-repository ppa:leolik/leolik
$ sudo apt-get update && sudo apt-get upgrade
$ sudo apt-get update && sudo apt-get upgrade
Nastavení se provádí v souboru ~/.notify-osd, ale, jak jsem zmínil, můžete si editaci usnadnit instalací grafického nástroje:
$ sudo add-apt-repository ppa:amandeepgrewal/notifyosdconfig
$ sudo apt-get update && sudo apt-get install notifyosdconfig
$ sudo apt-get update && sudo apt-get install notifyosdconfig
Pozor, pro Ubuntu 10.10 Maverick ještě nejsou k dispozici balíky, pokud tedy po update repozitáře dostanete chybu, dají se použít balíky pro Lucida:
$ sudo sed -i 's/maverick/lucid/g' /etc/apt/sources.list.d/amandeepgrewal-notifyosdconfig-maverick.list
$ sudo apt-get update && sudo apt-get install notifyosdconfig
$ sudo apt-get update && sudo apt-get install notifyosdconfig
Nebo rovnou stáhnout a nainstalovat instalační balíky:
32 bit
https://launchpad.net/~amandeepgrewal/+archive/notifyosdconfig/+files/notifyosdconfig_0.1-6~lucid1_i386.deb
64 bit
https://launchpad.net/~amandeepgrewal/+archive/notifyosdconfig/+files/notifyosdconfig_0.1-6~lucid1_amd64.deb
Po instalaci najdete položku NotifyOSD Cconfiguration v menu Aplikace > Příslušenství.
Nastavení pozice notifikací
Nastavení pozice se neděje přes zmíněný konfigurační soubor, ale zápisem hodnoty do GConf (databáze nastavení Gnome aplikací). Nastavení se provádí příkazem z terminálu:
$ gconftool-2 -s /apps/notify-osd/gravity --type=int [číslo]
kde [číslo] udává pozici:
1 - pravý horní roh (standardní umśtění)
2 - vpravo uprostřed
3 - pravý dolní roh
4 - levý dolní roh
5 - vlevo uprostřed
6 - levý horní roh
Pokud budete chtít notifikace přesunout do levého dolního rohu, napíšete do terminálu následující příkaz:
$ gconftool-2 -s /apps/notify-osd/gravity --type=int 4
Využívání notifikací z příkazové řádky
Notifikace můžete samozřejmě používat i ve svých vlasních skriptech a programech, já dnes popíšu to nejzákladnější použití z Bashe. Pro vyvolání notifikace budete potřebovat program notify-send z balíku libnotify-bin z repozitáře Universe.
$ sudo apt-get install libnotify-bin
notify-send funguje s původními notifikacemi Gnome i s Notify-OSD, kde má ale o pár možností méně. Jeho základní syntaxe je následující:
$ notify-send -i /cesta/k/ikoně "Hlavička sdělení" "Tělo sdělení" -t 1000
Výška bubliny nesmí přesáhnout deset řádků. Užitečným přepínačem je -t, jehož parametrem je čas v milisekundách a můžete jím změnit trvání notifikace. Tento přepínač s neupraveným Notify-OSD nefunguje a jelikož notifikace ve svých skriptech používám hodně, velmi mě potěšilo, že leolikova verze již na něj slyší. Ostatní přepínače jsou podle mého zjištění s Notify-OSD neužitečné.
Pokud nestačíte nějakou tu notifikaci přečíst, nebo se chcete podívat, jestli vám něco neuniklo, můžete si jednoduše vypsat log, který se nachází v souboru ~/.cache/notify-osd.log a maže se s každým restartem systému.
$ cat ~/.cache/notify-osd.log | less
Odkazy:
https://wiki.ubuntu.com/NotifyOSD
https://launchpad.net/~leolik/+archive/leolik
https://launchpad.net/notifyconf
http://www.webupd8.org/2010/05/new-notifyosdconfiguration-version-gui.html
http://www.webupd8.org/2010/05/gui-to-configure-notifyosd-in-ubuntu.html
http://maketecheasier.com/easily-customize-notifyosd-ubuntu-lucid/2010/05/26
Díky moc za článek, o tomhle bych se jinak jen těžko dozvěděl. :)
OdpovědětVymazatAhoj, chtel bych dat do bubliny vystup z programu ale nevim jak na to. treba fotku z webkamery, nebo teplotu disku., jak na to?diky
OdpovědětVymazatAhoj, možná jsi správně nepochopil, k čemu jsou notifikace určené. Notifikace jsou krátká sdělení, která se objeví na chvíli a pak zase zmizí. Fotku tam můžeš dostat pouze jako ikonu, textové informace jsou na tobě - použití z příkazové řádky je v článku popsáno. Možná ale hledáš něco jiného..
OdpovědětVymazatikona a fotka to chapu ale chtel bych vystup z teploty disku, lze to nejak?
OdpovědětVymazatTeplotu disku disku zjistíš třeba programem hddtemp:
OdpovědětVymazathttp://wiki.ubuntu.cz/Monitorov%C3%A1n%C3%AD%20hardwaru#hddtemp
jo to vim čim zjistim teplotu disku, potrebuju z txt souboru cist data a ty zobrazit v bublině. Lze to?
OdpovědětVymazatJistě, že to jde, jen je potřeba podívat se na základy skriptování v bashi ;)
OdpovědětVymazatPokud bys chtěl například zobrazit celý obsah textového souboru můžeš to udělat takto:
notify-send "Obsah souboru:" "`cat soubor.txt`"
Výška bubliny ale nesmí přesáhnout deset řádků.
Díky moc. Notify OSD mě štvalo tím hrozně dlouhým zobrazováním bubliny. Nyní upraveno na 2 sec. :)
OdpovědětVymazat