Perdón por el título prolijo, pero mi problema es el siguiente:
Esto solía ser pan comido con Snow Leopard y versiones anteriores: conecta la pantalla externa, cierra la tapa, conecta un dispositivo USB o presiona una tecla en un teclado conectado para activar la máquina, y una vez que se activa y usa la pantalla externa vuelve a abrir la tapa y la pantalla interna permanece apagada.
Desafortunadamente, Lion detecta cuando mi MacBook Pro está abierta y cree que es útil al activar la pantalla. ¿Hay alguna manera de deshabilitar eso? ¿Hay alguna manera de engañar a Lion para que piense que mi tapa está cerrada?
Tomé la sugerencia de olivier de organizar mis monitores para eliminar un borde común:
Elegí la parte inferior derecha porque mantengo mi base en el lado izquierdo de la pantalla y uso la parte superior derecha como una esquina activa para dormir la pantalla. También moví la barra de menú a mi monitor de escritorio y la pantalla de la MacBook está completamente atenuada.
Había otra opción que escuché: usar un imán para hacer que tu MacBook pensara que la tapa estaba cerrada. Esto funciona: coloqué un fragmento de un imán de refrigerador cerca de la parte inferior izquierda de mi teclado y, efectivamente, mi MacBook pensó que había cerrado la pantalla. Desafortunadamente, Mac OS X también deshabilita la entrada del teclado y el panel táctil cuando cree que la pantalla está cerrada, por lo que esta opción no funcionó para mí.
Mac OS X Hints ha descubierto un comando que permitirá esto :
Para volver al comportamiento anterior a Lion, ingrese el siguiente comando en la Terminal:
sudo nvram boot-args="iog=0x0"
Para deshacer este tipo de cambio, escriba el siguiente comando o elimine la PRAM (presione Cmd+Opt+p+r en el encendido):
sudo nvram -d boot-args
nvram: Error setting variable - 'boot-args': (iokit/common) not permitted
Error setting variable
: en las versiones más nuevas de OSX, debe configurar el comando en el modo de recuperación. Reiniciar, Cmd+R, Modo de recuperación, desde el menú de la pantalla, abra un nuevo terminal, ejecute el comando.Otra solución, aunque gueto, es colocar un imán de ferrita muy débil (como los imanes de nevera) cerca del sensor de efecto Hall de la computadora portátil.
Esto tiene la ventaja de simular el modo macshell manteniendo la tapa abierta para mejorar el rendimiento de refrigeración.
No utilice imanes de neodimio potentes. Esto podría dañar el sensor de efecto Hall.
Para diferenciar: los imanes de ferrita son débiles y están hechos de un compuesto negro, los imanes de neodimio son muy fuertes y generalmente están enchapados en níquel, con un aspecto plateado brillante
Me encontré con el mismo problema hace un tiempo, y esto es lo que hice:
Primero, reflejé las pantallas, como ya se sugirió. Poco después de hacer esto, me di cuenta de que me distraía mucho tener la pantalla del macbook apagada en el rabillo del ojo. Esto requería que matara el brillo en la pantalla del macbook. Pero siendo el tipo perezoso que soy, odiaba tener que ajustar manualmente el brillo cada vez que desconectaba o conectaba un monitor externo. Así que me preguntaba si había una manera de automatizar el proceso. Encontré esta aplicación gratuita llamada Control Plane que me permite configurar "contextos" en función de si ciertos dispositivos (monitores, discos duros, etc.) están conectados, si ciertas redes wi-fi están dentro del alcance, etc. y en función de estos contextos, ejecute ciertos scripts de shell. Así que todo lo que tenía que hacer era escribir un applescript (llamadokillBrightness.scpt
) para matar el brillo en la pantalla del macbook y un script de shell para llamar killBrightness.scpt
; y llame a este script de shell en el contexto requerido.
killBrightness.scpt
tell application "System Preferences" to set current pane to pane "Displays"
tell application "System Events"
tell process "System Preferences"
repeat with theWindow in windows
if title of theWindow as string is "Color LCD" then
tell tab group 1 of theWindow
tell slider 1 of group 2
set value to 0
end tell
end tell
end if
end repeat
end tell
end tell
tell application "System Preferences" to quit
El guión de la cáscara
#!/bin/sh
osascript /path/to/killBrightness.scpt
Dado que conecto muchos monitores diferentes a mi macbook, noté que cuando se conecta uno con una relación de aspecto diferente, mis ventanas cuelgan del borde de la pantalla. La solución a esto sería cambiar el tamaño de las ventanas, pero eso es muy ineficiente cuando usas un montón de aplicaciones y ventanas como yo; además, siendo tan perezoso como soy, no me gustó esa solución. Entonces, con la ayuda de la buena gente de Stack Overflow, pude crear este AppleScript (llamado resizer.scpt
) para cambiar automáticamente el tamaño de todas las ventanas de (casi) todas las aplicaciones (la advertencia es que algunas aplicaciones no usan el correcto Ganchos del marco de la interfaz de usuario, por lo que es bastante difícil cambiar su tamaño):
resizer.scpt
:
property blacklist : {"Finder", "Preview", "Console", "AppleScript Editor", "Spotify", "TaskCoach", "Skype", "VirtualBox"}
property buttonApps : {"LyX", "Eclipse"}
property buttonMaps : {{name:"LyX", Button:1, pname:"lyx"}, {name:"Eclipse", Button:2, pname:"eclipse"}, {name:"Spotify", Button:3, pname:"Spotify"}, {name:"TaskCoach", Button:3, pname:"TaskCoach"}}
tell application "Finder" to set theBounds to bounds of window of desktop
tell application "System Events"
set bids to bundle identifier of processes where background only is false
end tell
repeat with bid in bids
tell application id bid
if name is not in blacklist then
set appName to name as string
if name is "Terminal" then
set newBounds to {0, 0, (item 3 of theBounds) - 10, item 4 of theBounds}
repeat with theWindow in windows
if visible of theWindow is true then
set bounds of theWindow to newBounds
end if
end repeat
else if name is not in buttonApps then
try
repeat with theWindow in windows
if visible of theWindow is true then
set bounds of theWindow to theBounds
end if
end repeat
end try
else if name is in buttonApps then
-- get the buttonNumber
repeat with buttonApp in buttonMaps
if (name of buttonApp as string) is appName then
set theButton to Button of buttonApp
end if
end repeat
tell application "System Events"
repeat with theProcess in (processes where bundle identifier is bid)
try
tell theProcess to tell window 1 to click button theButton
end try
end repeat
end tell
end if
end if
end tell
end repeat
Ahora, todo lo que tenía que hacer era escribir un script de shell similar para llamar resizer.scpt
y poner eso en ControlPlane y estaba listo para volver a ser perezoso.
Espero que esto ayude
PD: Olvidé mencionar antes que todo esto se hizo en mi MacBook Pro de 15 pulgadas, con Lion
Actualización 2019
Desde OS X El Capitán, la Protección de integridad del sistema (SIP) no permite cambiar las opciones de nvram. Además boot-args="iog=0x0"
ya no funciona.
Para resolver este problema encontré esta solución:
csrutil disable
sudo nvram boot-args="niog=1"
csrutil enable
y reinicieDeshacer (múltiples opciones):
sudo nvram -d boot-args
.Sé que esto es un poco complicado, pero mi solución para este problema es mantener presionado el control de brillo en mi macbook hasta que la pantalla se oscurezca.
Al igual que usted, prefiero trabajar solo en la pantalla más grande y seguir escribiendo con el teclado de mi computadora portátil (con la pantalla de la computadora portátil abierta solo parcialmente y abierta lo suficiente como para poder usar el teclado de la computadora portátil).
De todos modos, esta solución funciona para mí.
Re: "... y es frustrante cuando mi puntero desaparece a la otra pantalla... "
Lo soluciono simplemente haciendo clic en la opción "pantallas de espejo" en Preferencias del sistema> Pantallas> Disposición
Espero que esto ayude.
No estoy seguro de si esto funciona en Lion, pero si tiene la tapa cerrada y conecta un dispositivo USB, encenderá su monitor y luego podrá abrir la tapa y su monitor externo estará encendido y su tapa estará apagada.
Esta es una combinación de algunas de las otras publicaciones/comentarios aquí en un solo lugar. Estoy usando una MacBook Pro con El Capitán.
Ventajas de este método sobre los comandos de terminal:
Pasos:
Deshacer pasos (preservando el arreglo para más adelante):
Deshacer pasos (para volver a cambiarlo al valor predeterminado si se vuelve a enchufar):
Tengo una MacBook vieja de 2009 que obtuve gratis porque la pantalla LED está dañada y no puedo ver nada en ella. Como no estoy dispuesto a gastar más de lo que vale para reemplazar la pantalla LCD, encontré una solución para usar una pantalla externa con resolución nativa.
Las pantallas de espejo se habilitan con CMD+ F1para subir el externo. Luego vaya a configuración - mostrar y apague las pantallas de espejo. Con suerte, el botón "Reunir Windows" hará que la configuración de la pantalla se muestre ahora en el exterior como lo hizo para mí.
Ahora arrastre el menú blanco en la configuración de la pantalla al externo y se convertirá en la pantalla principal. Cierre la MacBook y reinicie con un teclado y un mouse externos conectados.
Soy un nuevo usuario de MacBook Pro 2021 y estaba buscando una solución para esto proveniente de un fondo de Windows.
Para mí lo que funcionó fue:
Una vez hecho lo anterior, cerrar la tapa del MacBook no se duerme. Pero en el momento en que se apague la alimentación de la MacBook, detendrá la pantalla externa y se irá a dormir.
Así logro esto.
Una vez que haya conectado el monitor externo, durante algún tiempo verá esta configuración de monitor extendida. Pero si no desea usar la pantalla de la computadora portátil, simplemente cierre la tapa de la macbook pro y continúe trabajando en la pantalla más grande. Esto funciona. El portátil no entra en modo de suspensión. Esto es con el lanzamiento de Lion.
la forma más sencilla es mantener tu Mac enchufada y boom
Cajunluke
kyle cronin
bmike
Kartik Chauhan