Ändern Sie das Intervall für die Helligkeitseinstellung

13

Wenn ich also auf der Tastatur meine Tasten zum Abblenden / Aufhellen drücke, wird eine Benachrichtigungsblase mit der Bildschirmhelligkeit eingeblendet. Alles in Ordnung, aber ich würde gerne ändern können, wie stark sich die Helligkeit bei jedem Tastendruck ändert.

Im Moment sind beispielsweise nur 5 Druckvorgänge erforderlich, um von der vollständig dunklen zur hellsten Einstellung zu gelangen. Ich weiß jedoch aus der Einstellung "Helligkeit / Sperre", dass der Bildschirm in der Lage ist, viel kleinere Intervalle als diese einzustellen.

Gibt es eine Möglichkeit zu ändern, wie stark die Helligkeit bei jedem Tastendruck springt?

TreefrogInc
quelle
Jede Ubuntu-spezifische Antwort wäre willkommen :)
Koen
1
Die übliche Helligkeitsskala beträgt 10 Stufen. Wenn Sie 5 sehen, ist es sehr wahrscheinlich, dass etwas sie verdoppelt. Vielleicht verarbeitet Linux die Ereignisse selbst, ohne zu bemerken, dass sie auch an Ihre Firmware weitergeleitet werden, die dann mit demselben Tastendruck ein zweites Inkrement anwendet. Quelle dafür ist, dass es mir passiert ist! Ich musste acpi_backlight=vendormeine GRUB-Boot-Zeile erweitern, und das hat alles geklärt.
Underscore_d

Antworten:

21

Da Sie nicht angegeben haben, welche Desktop-Umgebung Sie verwenden, werde ich auch einige KDE-spezifische Details angeben.

Ich habe gerade KDE auf 4.9.2 aktualisiert und bin auf die gleichen Unannehmlichkeiten gestoßen. Ich habe mich entschlossen, mich mit dem Code zu befassen, und hier sind meine Schlussfolgerungen:

  1. Die Helligkeit wird vom Kernel selbst gesteuert. Gemäß dem PowerDevil-Quellcode von KDE gibt es zwei grundlegende Möglichkeiten für Kernel, eine Steuerungsschnittstelle bereitzustellen:
    • Systemaufruf sysctl () (wahrscheinlich auf * BSD-Systemen, nehme ich an)
    • Sysfs- Schnittstelle (wahrscheinlich Linux)
  2. Die sysfs- Schnittstelle befindet sich unter /sys/class/backlight/*your_backlight_type*/. So sieht es für mich aus:
    $ ls -1 / sys / class / backlight / intel_backlight /
    tatsächliche Helligkeit
    bl_power
    Helligkeit
    Gerät
    max_brightness
    Leistung
    Teilsystem
    Art
    Ereignis
    Für uns sind jetzt zwei Dateien relevant: brightnessund max_brightness. Und so können sie eingesetzt werden:
    $ cd / sys / class / backlight / intel_backlight
    $ cat max_brightness 
    976
    $ cat Helligkeit 
    176
    $ echo 77 | Sudo Tee Helligkeit
    77
    
    Mit dem ersten Befehl können Sie die maximale Helligkeit bestimmen, die Sie einstellen können (das Minimum ist immer Null). Zweitens erfahren Sie, auf welchen Wert die tatsächliche Helligkeit eingestellt ist. Und mit dem dritten können Sie einen beliebigen Wert im Bereich von einstellen [0; max_brightness].
  3. Der KRunner von KDE hat weiterhin die Freiheit, jede Helligkeitsstufe einzustellen. Drücken Sie Alt-F2 und geben Sie Folgendes ein:

    Bildschirmhelligkeit 17

  4. Der KDE- Code für Tastatur Brightness Upund Brightness DownTastenhandhabung hat einen fest codierten Inkrementierungswert von 10%. Daher können Sie damit nichts anfangen, es sei denn, Sie möchten mit dem Erstellen von KDE aus Quellen herumspielen.

  5. Das BatteryMonitor-Plasmoid von KDE verfügt über eine eigene Helligkeitsregelung, deren Inkrement ebenfalls mit 10% fest codiert ist. Jetzt haben wir das Glück, dass es in QML geschrieben ist: $ sudo nano /usr/share/kde4/apps/plasma/plasmoids/battery/contents/ui/PopupDialog.qml( upd: in KDE 4.11 wurde es verschoben BrightnessItem.qml), navigieren Sie zu Abschnitt, der aussieht wie

    Components.Slider {
            ID: BrightnessSlider
            minimumValue: 0
            Maximalwert: 100
            stepSize: 10
            onValueChanged: BrightnessChanged (Wert)
        }
    und ändern Sie die Schrittweite nach Ihren Wünschen. Nach dem erneuten Anmelden sehen Sie die Änderung.

Reben
quelle
Ich hätte nie gedacht, dass wir das können ... Danke, dass du es geteilt hast.
Vishnu Kumar
1
@vines: du bist mein augenretter !!! Eine Million Dankeschön
vikkyhacks
Wie kann man wissen, welcher Typ "your_backlight_type" ist? (Schritt 2) Ich habe zwei Möglichkeiten, weiß nicht, mit welcher ich anfangen soll.
Koen
Und: Funktioniert / Wie würde das unter Ubuntu funktionieren? (Schritt 4 und / oder 5; dh tatsächlich das Helligkeitsintervall einstellen)
Koen
2
PS: Zumindest jetzt unterstützt KDEs Batteriemonitor / Energiesparmodus, obwohl er beim Klicken schrittweise einstellt, nahezu beliebige Helligkeit beim Ziehen des Schiebereglers.
Underscore_d
8

Das habe ich getan und es funktioniert viel besser für mich. Mein Bildschirm hat viele Helligkeitsstufen, da er von hinten beleuchtet ist und jemand dachte, er könnte das ausnutzen.

sudo apt-get install xbacklight
# ..and test it..
xbacklight -dec 20
xbacklight -inc 20
# If this works for you, you can proceed

Ich verwende KDE, aber das gilt auch für Gnome. Für KDE:

  • Öffnen Sie die Systemeinstellungen
  • Öffnen Sie Verknüpfungen und Gesten
  • Wählen Sie in der linken Leiste Benutzerdefinierte Verknüpfungen aus, falls diese noch nicht ausgewählt sind
  • Klicken Sie mit der rechten Maustaste auf einen leeren Teil der Aktionsliste und wählen Sie Neu-> Globale Verknüpfung
  • Erstellen Sie eine mit dem Namen "Brightness up" und eine mit dem Namen "Brightness down"
  • Verwenden Sie für den Auslöser die Tasten zum Erhöhen / Verringern der Helligkeit. Diese stehen im Konflikt mit den Standardeinstellungen, aber Sie können sie einfach dieser Aktion zuweisen.
  • Geben Sie für die Aktion (zum Beispiel) "xbacklight -inc 3" oder "xbacklight -dec 3" ein (minus Anführungszeichen).
    • Größere Zahlen erhöhen / verringern die Hintergrundbeleuchtung mehr und kleinere Zahlen weniger.

Sie können auch einen bestimmten Prozentsatz festlegen:

xbacklight -set 100

Manchmal hat eine inkrementelle oder prozentuale Änderung keine Auswirkung. Dies liegt daran, dass die Hardware nur bestimmte Einstellungen zulässt und die Einstellung verwendet wird, die dem ausgewählten Prozentsatz am nächsten kommt.

Übrigens habe ich glücklicherweise herausgefunden, dass KDE, obwohl dies ein Programm auf niedriger Ebene ist, das die Änderung vornimmt, immer noch erkennt, dass sich die Bildschirmhelligkeit geändert hat, und den Helligkeitsprozentsatz entsprechend anzeigt. :-)

Mr. B
quelle
Dies ist auch eine hervorragende Antwort. Ich kann bestätigen, dass es unter Debian 8.2 mit KDE funktioniert - und dass KDE in der Tat klug genug ist, dies zu bemerken und das OSD anzuzeigen. Jetzt machen wir ein paar Abkürzungen!
Underscore_d
0

Feinsteuerung mit Hardware-Helligkeitsschaltern

Zuerst installieren xbacklight

$ sudo apt install xbacklight

Zweitens überprüfen Sie, ob Sie die Hintergrundbeleuchtung steuern können.

$ xbacklight -1
$ xbacklight +5

Sollten diese Befehle zu einem No outputs have backlight propertyFehler führen, befolgen Sie diese Schritte, bevor Sie fortfahren.

Wenn Sie die Befehle einmal eingegeben haben xbacklight -1und xbacklight +1von der Befehlszeile aus arbeiten, weisen Sie sie den Tasten XF86MonBrightnessDownund zu XF86MonBrightnessUp. Dazu müssen Sie diese Tasten drücken, wenn Sie von der Anwendung Einstellungen → Tastatur → Anwendungsverknüpfungen dazu aufgefordert werden.

Starten Sie abschließend neu, damit diese Änderungen wirksam werden.

Tastatureinstellungen

Serge Stroobandt
quelle