I decided to learn Python two days ago. Partly because I wanted a quick solution to a problem (and writing C always takes me so long), but also because I’ve read a lot of positive comments about it.
What I wanted was to get rid of the old gnome-osd stuff and beautify the visual output of some shortcut-scripts I use (more about that later). I found out I needed a script that can display notifications (using Ubuntu’s notify-osd) and provide that functionality for other scripts with D-Bus.
“D-Bus?”, you might ask. Well, I also wanted to be able to update notifications or append new body-text to them. This turned out to only be possible for a single script, but my shortcut-scripts (like “toggle-touchpad”) run only once and then exit. So I needed inter-process-communication, hence D-Bus.
Python is indeed great, because there are bindings for python-dbus and pynotify. Just what I needed to start hacking.
Download: Notification Server, 0.0.1
Here’s an example (toggle-touchpad), of how to use “send-notification.py”:
#!/bin/bash TEST=`synclient -l | grep "TouchpadOff = 0"` if [ "$TEST" != "" ]; then synclient TouchpadOff=1 send-notification.py --name="toggle-touchpad" \ --icon="input-mouse" "Input" "Touchpad disabled" else synclient TouchpadOff=0 send-notification.py --name="toggle-touchpad" \ --icon="input-mouse" "Input" "Touchpad enabled" fi
Both Python-scripts come with “
--help“, by the way.