5 votos

Ajustes de brillo de pantalla específicos del usuario

Un compañero de trabajo y yo compartimos un iMac (con pantallas externas). Yo lo uso durante el día y lo tengo relativamente brillante para compensar la luz que entra por la ventana y demás. Él lo usa por la noche y lo quiere más tenue. Usamos diferentes cuentas de usuario de OS X, pero cada vez que me conecto después de él, el brillo vuelve a ser tenue.

¿Hay alguna manera de hacer que el brillo sea un ajuste a nivel de usuario, en lugar de a nivel de sistema, como parece que se hace ahora?

2voto

Douglas Puntos 10417

La forma de conseguirlo es

  • Programa de control de la luminosidad (puede instalarse a través de Homebrew o compilarse desde el código fuente)
  • Un bash script por usuario que establece el brillo
  • script Añadido a ~/Library/LaunchAgents y cargado con launchd

O

Hay un método de AppleScript que se puede utilizar en lugar de utilizar la referencia del programa de brillo anterior. No soy fan de este método porque no he encontrado que AppleScript sea tan fiable como bash (las cosas se rompen cuando Apple hace actualizaciones). Desplázate hasta el final para ver los detalles.

Instalar la luminosidad

Si tiene Homebrew, emita el comando brew install brightness . Si se compila desde el código fuente, descárguelo desde el enlace proporcionado y compílelo.

cd /brightness   ---- (or whereever you downloaded the source)
make
sudo make install

Pruébalo emitiendo algunos comandos de brighness:

brightness 1    <------- set to 100%
brightness .5   <------- set to 50%

Escribe un bash script para que se ejecute al iniciar la sesión

#!/bin/bash

/<path-to-brightness>/brightness .75
sleep 20           # I put this here because I find lauchd needs some "time"
exit 0

Haga esto para cada usuario y coloque el script en un lugar de fácil acceso. Por ejemplo, cree un directorio "script" en el directorio principal de cada usuario:

/Users/<username>/Scripts/set_brightness.sh

Esto es sólo un ejemplo, puedes colocar el script donde quieras, pero recuerda, necesitas uno que sea ejecutable por cada usuario. Hablando de "ejecutable" asegúrate de establecer los permisos del script para ejecutar - chmod +x set_brightness.sh

Asegúrese de probar ejecutando el script directamente desde la línea de comandos llamándolo:

$ ./set_brightness.sh

El brillo de tu pantalla debería cambiar a la configuración del script(asegúrate de cambiar la configuración manualmente primero para asegurarte de que no lo estás cambiando a lo que ya es).

Crear un archivo .plist y cargarlo en launchd

Su .plist se ejecutará cada vez que inicie sesión, por lo que debe estar ubicado en el directorio ~/Library/LaunchAgents. En cuanto al nombre del archivo, mi preferencia es usar algo como lo siguiente:

com.user.setbrightness.plist

El .plist debería tener un aspecto similar al siguiente:

 <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
     <key>Label</key>
     <string>com.user.brightness</string>
     <key>KeepAlive</key>
     <key>RunAtLoad</key>
     <true/>
     <key>Program</key>
     <string>/Users/<username>/<location of script>/set_brightness.sh
     </dict>
    </plist>

Cargar el .plist a launchd

launchctl load com.user.brightness.plist

Haz esto para cada usuario para que cada vez que el usuario se conecte se ejecute el bash script ajustando el brillo automáticamente.


Método alternativo (para monitores de 5K) 1

También puedes hacerlo a través de AppleScript y omitir el programa de brillo por completo (lo he probado en un iMac que no es 5K y que ejecuta la versión 10.11.6 y funciona).

Código AppleScript:

tell application "System Preferences"
    activate
    reveal anchor "displaysDisplayTab" of pane id "com.apple.preference.displays"
    tell application "System Events"
        delay 1
        set value of slider 1 of group 1 of tab group 1 of window 1 of process "System Preferences" to 0.5

    end tell
    quit
end tell

Guarde este AppleScript de la misma manera que se ha descrito anteriormente.

Haga este cambio en su .plist (sustituyendo Program por ProgramArguments):

<key>ProgramArguments</key>
<array>
    <string>osascript</string>
    <string>path-to-script/set_brightness.scpt</string
</array>

1 Adaptado de este post: ¿Es posible que un Applescript atenúe/suba el brillo de la pantalla al 0%/100% en OSX 10.9 Mavericks cuando se conecta a una pantalla externa?

2voto

Aneal Puntos 11

La aplicación permite ajustar fácilmente el brillo en función del usuario EasyOnTheEyes que es gratuito y tiene 5 estrellas en la Mac App Store.

Esto es lo que tienes que hacer:

  1. Descargar la aplicación .
  2. Inícialo en tu cuenta (la cuenta que debería tener mayor brillo) y elige Off en la barra de menús. De esta manera, no se atenuará cuando estés conectado a tu cuenta.
  3. Inicie sesión en la cuenta de su compañero de trabajo, asegúrese de que EasyOnTheEyes está instalado y se ejecuta en la barra de menús de su cuenta (puede que tenga que instalarlo de nuevo para él dependiendo de su configuración).
  4. En Preferencias del Sistema, seleccione Users and Groups y luego el Login Items sección. Tendrás que añadir EasyOnTheEyes como elemento de inicio de sesión para su cuenta, de modo que pueda atenuarse automáticamente cuando se conecte.
  5. Asegúrate de que su cuenta está resaltada en el panel izquierdo (es decir, estás haciendo los cambios para su cuenta, no para la tuya). A continuación, pulse el botón + debajo de la vista de la tabla de elementos de inicio de sesión, busque EasyOnTheEyes en la carpeta de aplicaciones y haga doble clic en él para añadirlo a la lista de elementos de inicio de sesión.
  6. Ahora, EasyOnTheEyes debería aparecer en el These items will open automatically when you log in lista. Nota: Probablemente querrá hacer la Hide marcada, para que tu compañero de trabajo no se distraiga con el icono de la aplicación rebotando cada vez que se conecta, pero depende de él.
  7. En la barra de menús, elija preset 1 y arrastra el control deslizante hasta donde tu compañero quiera el brillo.

Eso es todo. Tu compañero de trabajo tendrá una pantalla atenuada automáticamente cada vez que se conecte a su cuenta, pero tú no.

0voto

tubedogg Puntos 6827

Si utilizas la función de calibración (Preferencias del Sistema > Pantalla > Pestaña Color > Calibrar) puedes ajustar el brillo a través de esa función. Los perfiles de calibración son por usuario, así que puedes seleccionar el nuevo y el compañero puede seguir usando el perfil que esté usando ahora. Debería restaurar la configuración de su perfil cada vez que inicie sesión en su cuenta de usuario.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X