Hallo Ubuntu-Gemeinde,
Ich kann die Helligkeit meines mit DisplayPort verbundenen DELL U2713HM über den Befehl steuern:
ddccontrol -p -r 0x10 -w 53
wobei in diesem Beispiel die Zahl 53 die Helligkeitsstufe darstellt (Bereich 0 bis 100). Aber ich weiß nicht, wie ich den Befehl mit meinen Helligkeitstasten auf meiner Tastatur verknüpfen soll.
Ich habe bereits gesucht, aber nur Antworten zu integrierten Laptop-Bildschirmen gefunden. In /sys/class/backlight
ist der Ordner acpi_video0
mit einigen Unterordnern und Dateien. Die Datei actual_brightness enthält eine Zahl von 0 bis 20, die sich ändert, wenn ich die Helligkeitstasten drücke.
Wie bekomme ich meinen externen Monitor als Gerät in /sys/class/backlight aufgelistet?
PS:Ich verwende eine neue Ubuntu 12.10-Installation mit integrierter Grafik Intel HD4000.
Akzeptierte Antwort:
Ich glaube nicht, dass Ihre gewünschte Lösung darin besteht, Ihren externen Monitor in /sys/class/backlight
zu bekommen wird funktionieren, aber die gute Nachricht ist, dass Sie die schöne Helligkeitsanimation haben können!
Versuchen Sie es
notify-send " " -i notification-display-brightness-low -h int:value:50 -h string:x-canonical-private-synchronous:brightness &
Jetzt können wir ein Skript erstellen, das den Helligkeitswechsler von Ubuntu simuliert:
#!/bin/bash
#get current brightness
presbright=$(ddccontrol -p | grep -A1 0x10 | tr -d 'nt' | sed 's/.*value=([^a-zA-Z]*),.*/1/')
#stepsize for the brightness change
stepsize=10
case "$1" in
up)
newbright=$(( ${presbright}+${stepsize} ))
newbright=$(echo $newbright | awk '{if($1 < 100){if($1 > 0) print $1; else print 0;} else print 100;}')
notify-send " " -i notification-display-brightness-low -h int:value:$newbright -h string:x-canonical-private-synchronous:brightness &
ddccontrol -p -r 0x10 -w $newbright
;;
down)
newbright=$(( ${presbright}-${stepsize} ))
newbright=$(echo $newbright | awk '{if($1 < 100){if($1 > 0) print $1; else print 0;} else print 100;}')
notify-send " " -i notification-display-brightness-low -h int:value:$newbright -h string:x-canonical-private-synchronous:brightness &
ddccontrol -p -r 0x10 -w $newbright
;;
status)
echo $presbright
;;
*)
echo "Accepted arguments are: up, down, status."
;;
esac
exit 0
Wie Sie sehen können, klemmt es die Werte zwischen 0 und 100. Jetzt können Sie den up
binden und down
ruft das Skript mit einigen Tastenkombinationen Ihrer Wahl mit Systemeinstellungen> Tastatur> Tastenkombinationen auf , wie fotomonster vorgeschlagen hat.
Hinweise:
Ich weiß nicht, wie lange ddccontrol -p
dauert, wenn es zu lang ist, können Sie auch einen sync
hinzufügen Option zum Skript, das den Helligkeitswert des Monitors in einer Datei speichert. Dann anstatt die aktuelle Helligkeit von ddccontrol
zu bekommen Sie können es einfach aus Ihrer Datei abrufen, was viel schneller sein sollte. Natürlich müssten Sie den up
aktualisieren und down
ruft auf, die neue Helligkeit in die Datei zu schreiben…
Skript inspiriert von diesem Post auf Archlinux.