Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Possible Duplicate:
Reset Mac OS X Windows Position after de-attaching external monitor

I use my laptop at work, where I have a second monitor, and at home, where I don't. When I plug in the external display, I'd like the Mac to automatically run a shell script or AppleScript that will reposition a bunch of windows to their "standard" external-monitor locations. Is there any Apple Event or similar thing that can launch my scripts when I plug in a monitor? Alternatively, are there any utilities that specifically do this? I looked at Breeze, but it saves window state on an app-by-app basis, and doesn't detect monitors being plugged or unplugged.

share|improve this question

marked as duplicate by random Aug 3 '10 at 2:38

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

Weird... I did ask the same question, but got a much better answer. All the answers to that thread were of the "Here's something you can manually run" variety, not the nicely-automated Marco Polo. Please do merge the answer! – Jay Levitt Aug 8 '10 at 15:10
up vote 4 down vote accepted

There is a piece of software called MarcoPolo that lets you execute various actions (including scripts) when the physical state of a box changes (you can switch on stuff like external power, external monitor, ambient light, time of day, attached drives, visible wifi networks, ip address, etc)

share|improve this answer
See which is currently maintained. – aceofspades Oct 30 '12 at 2:49
Yup, I had forgotten that this answer was here. I've moved to control plane a while ago. It works really well. – skarface Nov 8 '12 at 4:22

Not the answer you're looking for? Browse other questions tagged or ask your own question.