Cambia l'intervallo di regolazione della luminosità


13

Quindi, ogni volta che premo i tasti di attenuazione / luminosità sulla tastiera, viene visualizzata una bolla di notifica con la luminosità dello schermo. Tutto bene, ma vorrei essere in grado di cambiare la luminosità con ogni pressione del tasto.

Ad esempio, in questo momento bastano solo 5 pressioni per passare dall'impostazione completamente scura a quella più luminosa. Tuttavia, dall'impostazione "Luminosità / Blocco" so che lo schermo è in grado di intervalli molto più piccoli di questo.

C'è un modo per cambiare la luminosità che salta ogni volta che si premono i tasti?


Qualsiasi risposta specifica per Ubuntu sarebbe apprezzata :)
Koen,

1
La consueta scala di luminosità predefinita è di 10 passaggi. Se stai vedendo 5, è molto probabile che qualcosa li stia raddoppiando. Ad esempio, forse Linux sta gestendo gli eventi stessi, senza rendersi conto che stanno passando anche al tuo firmware, che quindi applica un secondo incremento sullo stesso tasto premuto. La fonte di questo è che è successo a me! Ho dovuto aggiungere acpi_backlight=vendoralla mia linea di avvio di GRUB, e questo ha risolto tutto.
underscore_d

Risposte:


21

Dato che non hai specificato quale ambiente desktop usi, ti fornirò anche alcuni dettagli specifici di KDE.

Ho appena aggiornato KDE a 4.9.2 e ho riscontrato lo stesso inconveniente. Ho deciso di scavare nel codice, ed ecco le mie conclusioni:

  1. La luminosità è in realtà controllata dal kernel stesso. Secondo il codice sorgente di PowerDevil di KDE, esistono due modi di base per fornire ai kernel un'interfaccia di controllo:
    • chiamata di sistema sysctl () (probabilmente su sistemi * BSD, suppongo)
    • interfaccia sysfs (probabilmente Linux)
  2. l' interfaccia sysfs si trova in /sys/class/backlight/*your_backlight_type*/. Ecco come appare per me:
    $ ls -1 / sys / class / backlight / intel_backlight /
    actual_brightness
    bl_power
    luminosità
    dispositivo
    max_brightness
    energia
    sottosistema
    genere
    uevent
    Due file sono rilevanti per noi ora: brightnesse max_brightness. Ed ecco come possono essere utilizzati:
    $ cd / sys / class / backlight / intel_backlight
    $ cat max_brightness 
    976
    $ luminosità del gatto 
    176
    $ echo 77 | sudo tee luminosità
    77
    
    Il primo comando consente di determinare la luminosità massima che è possibile impostare (il minimo è sempre zero). Il secondo ti consente di sapere su quale valore è impostata la luminosità effettiva. E con il terzo puoi impostarlo su qualsiasi valore desideri nell'intervallo di [0; max_brightness].
  3. KRunner di KDE ha ancora la libertà di impostare qualsiasi livello di luminosità. Premi Alt-F2 e digita:

    luminosità dello schermo 17

  4. Il codice di gestione della tastiera Brightness Upe dei Brightness Downtasti di KDE ha un valore di incremento del 10% codificato. Quindi, a meno che tu non voglia fare confusione con la costruzione di KDE dai sorgenti, non c'è niente che tu possa farne.

  5. Il plasmoide BatteryMonitor di KDE ha un proprio controllo della luminosità, il cui incremento è anche hardcoded al 10%, ma ora siamo abbastanza fortunati, dal momento che è scritto in QML: $ sudo nano /usr/share/kde4/apps/plasma/plasmoids/battery/contents/ui/PopupDialog.qml( aggiornamento: in KDE 4.11 è stato spostato BrightnessItem.qml), vai a sezione che sembra

    Components.Slider {
            id: luminosità
            valore minimo: 0
            valore massimo: 100
            stepSize: 10
            onValueChanged: luminositàChanged (valore)
        }
    e cambia la dimensione del passo in base a ciò che desideri. Dopo aver effettuato nuovamente l'accesso vedrai il cambiamento.


Non avrei mai saputo di poterlo fare ... Grazie per averlo condiviso.
Vishnu Kumar,

1
@vines: tu sei il mio eye saver !!!
Mille

Come sapere quale è "your_backlight_type"? (passaggio 2) Ho due opzioni, non so con quale iniziare a giocherellare.
Koen,

E: come / Come funzionerebbe su Ubuntu? (passaggio 4 e / o 5; ovvero impostazione effettiva dell'intervallo di luminosità)
Koen

2
PS: Almeno ora, Battery Monitor / Energy Saving di KDE, sebbene passi quando si fa clic, supporta una luminosità quasi arbitraria quando si trascina il dispositivo di scorrimento.
underscore_d

8

Questo è quello che ho fatto e funziona molto meglio per me. Il mio schermo ha molti incrementi di luminosità, poiché è retroilluminato a LED e qualcuno ha pensato di sfruttarlo.

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

Sto usando KDE, ma questo vale anche per Gnome. Per KDE:

  • Apri le Impostazioni di sistema
  • Scorciatoie e gesti aperti
  • Seleziona Collegamenti personalizzati nella barra di sinistra, se non è già selezionato
  • Fai clic con il tasto destro su una parte vuota dell'elenco delle azioni e seleziona Nuovo-> Collegamento globale
  • Crea uno chiamato "Luminosità su" e uno chiamato "Luminosità giù"
  • Per il trigger , utilizzare i tasti di aumento / riduzione della luminosità. Questi saranno in conflitto con le impostazioni predefinite, ma puoi semplicemente riassegnarle a questa azione.
  • Per l' azione , immettere (ad esempio) "xbacklight -inc 3" o "xbacklight -dec 3" (meno virgolette)
    • Numeri più grandi aumentano / diminuiscono maggiormente la retroilluminazione e numeri più piccoli di meno.

Puoi anche impostare una percentuale specifica:

xbacklight -set 100

A volte, un incremento o una variazione percentuale potrebbero non avere alcun effetto. Questo perché l'hardware consente solo impostazioni specifiche e viene utilizzata l'impostazione più vicina alla percentuale selezionata.

Per inciso, ho felicemente scoperto che anche se si tratta di un programma di livello più basso che sta apportando la modifica, KDE riconosce comunque che la luminosità dello schermo è cambiata e visualizza la percentuale di luminosità in modo appropriato. :-)


Anche questa è un'ottima risposta. Posso confermare che funziona su Debian 8.2 con KDE e che, in effetti, KDE è abbastanza intelligente da notare questo e mostrare l'OSD. Ora per creare alcune scorciatoie!
underscore_d

0

Controllo a grana fine con interruttori di luminosità hardware

Innanzitutto, installa xbacklight

$ sudo apt install xbacklight

In secondo luogo, controlla se hai il controllo sulla retroilluminazione.

$ xbacklight -1
$ xbacklight +5

Se questi comandi generano un No outputs have backlight propertyerrore, seguire questi passaggi prima di procedere.

Una volta xbacklight -1e xbacklight +1lavorare dalla riga di comando, procedere con l'assegnazione di questi comandi rispettivamente ai tasti XF86MonBrightnessDowne XF86MonBrightnessUp. Questo viene fatto premendo quei tasti quando richiesto dall'applicazione Impostazioni → Tastiera → Collegamenti alle applicazioni.

Infine, riavvia affinché queste modifiche abbiano effetto.

Impostazioni della tastiera

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.