App per attivare la regolazione automatica della luminosità?

0

Esiste un'app per la barra dei menu che mi consente di abilitare / disabilitare: impostazione "luminosità automatica"?

Ho cercato e tutto ciò che ho trovato è un'app che modifica i livelli di luminosità effettivi, ma è inutile in quanto esiste come scorciatoia sulla tastiera.

    
posta Paschalis 19.03.2018 - 11:03
fonte

1 risposta

1

Se volevo avere una barra dei menu app che potrebbe attivare la casella di controllo per Regolare automaticamente la luminosità nella scheda Display di Display in Preferenze di sistema , ecco come faccio io ...

Usando il codice modificato da questa risposta per il wrapper e aggiungendo nel codice aggiuntivo per ottenere la funzionalità e l'obiettivo desiderati, ecco l'esempio AppleScript codice :

-- # Acknowledgment: Some of the code used herein is modified code from the following answer:
-- # https://apple.stackexchange.com/questions/293307/applescript-run-from-menu-bar/293392#293392

use AppleScript version "2.4"
use scripting additions
use framework "Foundation"
use framework "AppKit"

property aStatusItem : missing value

on run
    init() of me
end run

on init()
    set aList to {"Toggle - Automatically Adjust Brightness", "", "Quit"}
    set aStatusItem to current application's NSStatusBar's systemStatusBar()'s statusItemWithLength:(current application's NSVariableStatusItemLength)
    aStatusItem's setTitle:"☀️"
    aStatusItem's setHighlightMode:true
    aStatusItem's setMenu:(createMenu(aList) of me)
end init

on createMenu(aList)
    set aMenu to current application's NSMenu's alloc()'s init()
    repeat with i in aList
        set j to contents of i
        if j is not equal to "" then
            set aMenuItem to (current application's NSMenuItem's alloc()'s initWithTitle:j action:"actionHandler:" keyEquivalent:"")
        else
            set aMenuItem to (current application's NSMenuItem's separatorItem())
        end if
        (aMenuItem's setTarget:me)
        (aMenu's addItem:aMenuItem)
    end repeat
    return aMenu
end createMenu

on actionHandler:sender
    set aTitle to title of sender as string
    if aTitle is not equal to "Quit" then
        my clickAutomaticallyAdjustBrightness()
    else
        current application's NSStatusBar's systemStatusBar()'s removeStatusItem:aStatusItem
        tell current application to quit
    end if
end actionHandler:

on clickAutomaticallyAdjustBrightness()
    if running of application "System Preferences" then
        quit application "System Preferences"
        delay 1
    end if
    tell application "System Preferences"
        reveal anchor "displaysDisplayTab" of pane id "com.apple.preference.displays"
        delay 1
        tell application "System Events"
            tell group 1 of tab group 1 of window 1 of application process "System Preferences"
                click checkbox "Automatically adjust brightness"
                set isChecked to (value of checkbox "Automatically adjust brightness") as boolean
            end tell
        end tell
        quit
    end tell
    if isChecked then
        display dialog "      Automatically adjust brightness is checked." buttons {"OK"} default button 1 ¬
            with title "Toggle - Automatically Adjust Brightness" giving up after 5
    else
        display dialog "   Automatically adjust brightness is not checked." buttons {"OK"} default button 1 ¬
            with title "Toggle - Automatically Adjust Brightness" giving up after 5
    end if
end clickAutomaticallyAdjustBrightness
  • Tieni presente che il valore del delay comando (i) potrebbe dover essere regolato per il tuo sistema, o altri delay comandi potrebbe o non potrebbe essere necessario. Regola i valori di e o aggiungi / rimuovi i comandi delay come appropriato.

Copia e incolla il esempio AppleScript codice mostrato sopra in un nuovo documento in Script Editor , salvandolo come una domanda, ad es Attiva / disattiva - Regola automaticamente la luminosità e controlla la [√] casella di controllo Rimani aperto dopo l'esecuzione salvandola.

Quindi, nel Terminale , esegui il seguente comando per nascondere la Tegola del Dock sul Dock per es. Commuta - Regola automaticamente luminosità applicazione:

defaults write '/Applications/Toggle - Automatically Adjust Brightness.app/Contents/Info.plist' LSUIElement -bool yes

Ora aggiungi l'es. Attiva / disattiva l'applicazione Regola automaticamente la luminosità su

Preferenze di sistema > Sicurezza e amp; Privacy > Privacy > Accessibilità

Mentre controlli la sua casella di controllo .

Ora, ad es. Attiva / disattiva l'applicazione Regola automaticamente la luminosità è pronta per essere eseguita e tutto ciò che verrà visualizzato è un'icona gialla del sole sulla barra dei menu e nessun riquadro del dock nel Dock .

Ad es. Attiva / disattiva l'applicazione Regola automaticamente la luminosità attiva / disattiva la verifica della casella di controllo per Regola automaticamente la luminosità nella scheda Display di Display in Preferenze di Sistema e successivamente visualizza una finestra di dialogo.

I comandi display dialog potrebbero essere sostituiti con display notification comandi se preferisci quello.

Si noti inoltre che questo metodo non funziona con tutte le versioni di OS X / macOS, tuttavia dovrebbe funzionare con almeno 10.11 e successivi.

Nota: il esempio codice AppleScript è proprio questo e non impiega alcuna gestione degli errori e intende solo mostrare uno dei molti modi per svolgere un compito. L'onere è sempre sull'utente di aggiungere / utilizzare la gestione degli errori appropriata come necessario / voluto.

    
risposta data 20.03.2018 - 04:56
fonte

Leggi altre domande sui tag