Esta es una solución en dos partes:
- un applescript para hacer clic en el monitor de detección
- un bash script para ejecutar el script
He "guardado" el applescript en $HOME/source/detectmonitor.scpt (ver Ejecutar AppleScript desde bash script ) cómo solucionar el problema de que no se puede empezar con un archivo de texto ...
Luego guardé el bashscript en $HOME/dm
He creado un enlace simbólico ln -s $HOME/Desktop/detectMonitors $HOME/bin/dm
y configuré las preferencias de mi Terminal de acuerdo con https://stackoverflow.com/a/8822669/1497139
ahora puedo hacer doble clic en "detectMonitors" en mi escritorio para solucionar el problema.
Applescript para hacer clic en "detectar monitor" en las preferencias del sistema de monitorización
véase https://stackoverflow.com/questions/12640643/applescript-to-run-detect-displays
-- Script to click the "Detect Displays" button
-- 2015-12-22 WF
-- see https://stackoverflow.com/questions/12640643/applescript-to-run-detect-displays
-- adopt to your language settings by setting the right button name below
-- currently this is german "Monitore erkennen"
-- to create and run this script you need a compiled scpt file to begin with see
-- https://apple.stackexchange.com/questions/103621/run-applescript-from-bash-script
-- then you also need to set the security settings
tell application "System Preferences"
activate
reveal pane "com.apple.preference.displays"
end tell
delay 0.5
tell application "System Events"
tell process "System Preferences"
try --don't even consider not using a try block!
key down option
delay 0.5
--click button "Detect Displays" of window 1
click button "Monitore erkennen" of window 1
delay 0.5
key up option
tell application "System Preferences"
quit
end tell
on error errMsg --logging out is the only other way to clear these
key up option
display dialog "ERROR: " & errMsg
end try
end tell
end tell
Bash-script para ejecutar el applescript
#!/bin/bash
# WF 2015-12-22
# run detect monitors
cd $HOME/source/applescript
osascript detectmonitor.scpt
# set Terminal settings
# according to https://stackoverflow.com/a/8822669/1497139
# to get this to close your terminal window
exit 0