# /etc/acpi/events/sonyhotkey
event=SPIC
action=/etc/acpi/hotkeys.sh %e
#!/bin/sh
# /etc/acpi/hotkeys.sh
increase_brightness() {
local cur_b=$(/bin/cat /sys/class/backlight/sony/brightness)
echo $((cur_b 1)) > /sys/class/backlight/sony/brightness || /bin/true
}
decrease_brightness() {
local cur_b=$(/bin/cat /sys/class/backlight/sony/brightness)
echo $((cur_b - 1)) > /sys/class/backlight/sony/brightness || /bin/true
}
increase_volume() {
/usr/bin/amixer -q -c 0 set PCM 2dB
echo `amixer -c 0 get PCM | awk -F'[' '/\[[0-9] %\]/{print int($2);exit}'` | /usr/bin/osd_cat -p bottom -A center -c red -d 1 -f "-*-courier-*-r-*-*-24-*-*-*-*-*"
}
decrease_volume() {
/usr/bin/amixer -q -c 0 set PCM 2dB-
}
toggle_mute() {
/usr/bin/amixer -q -c 0 set Master toggle
if [ "$(/usr/bin/amixer get Master | grep Left: | awk -F" " '{print $7}')" = "[off]" ]; then
echo "MUTE" | /usr/bin/osd_cat -p bottom -A center -c red -d 1 -f "-*-courier-*-r-*-*-24-*-*-*-*-*"
else
echo "UNMUTE" | /usr/bin/osd_cat -p bottom -A center -c red -d 1 -f "-*-courier-*-r-*-*-24-*-*-*-*-*"
fi
}
suspend2ram() {
hibernate-ram
}
case "$4" in
"00000011")
increase_brightness
;;
"00000010")
decrease_brightness
;;
"0000000f")
increase_volume
;;
"0000000e")
decrease_volume
;;
"0000000d")
toggle_mute
;;
"00000017")
suspend2ram
;;
"00000029")
# fn-key alone
;;
"0000003b")
# key release
;;
*)
echo "unmanaged key ($@)";
exit 1;
esac