I'm a complete noob when it comes to AppleScript and have a problem with one mac laptop when disconnecting external monitors. After disconnecting an external monitor, open documents, like word and excel files, are moved off the screen and can't be dragged back into view.
OS X El Capitan version 10.11.6 (15G1510)
I found an AppleScript that should gather all open windows and bring them into view on the monitor, but I get an error every time.
Syntax Error: Expected end of line but found unknown token.
Here is the script:
#!/usr/bin/osascript
tell application "Finder"
-- get desktop dimensions dw = desktop width; dh = desktop height
set db to bounds of window of desktop
set {dw, dh} to {item 3 of db, item 4 of db}
end tell
tell application "System Events"
repeat with proc in application processes
tell proc
repeat with win in windows
-- get window dimensions (w = width; h = height)
set {w, h} to size of win
-- get window postion (l = left of window; t = top of window)
set {l, t} to position of win
-- nh = new window height; nw = new window width
set {nh, nw} to {h, w}
-- window width is bigger than desktop size,
-- so set new window width to match the desktop
if (w > dw) then ¬
set nw to dw
-- window height is bigger than the desktop size (minus menu bar),
-- so set new window height to be desktop height - 22 pixels
if (h > dh - 22) then ¬
set nh to dh - 22
-- r = right coordinate of window; b = bottom coordinate of window
set {r, b} to {l + nw, t + nh}
-- nl = new left coordinate; nt = new top coordinate
set {nl, nt} to {l, t}
-- left coordinate is off screen, so set new left coordinate
-- to be 0 (at the left edge of the desktop)
if (l < 0) then ¬
set nl to 0
-- top coordinate is above bottom of menu bar (22 pixels tall),
-- so set new top coordinate to be 22
if (t < 22) then ¬
set nt to 22
-- right coordinate extends beyond desktop width,
-- so set new left coordinate to be desktop width - window width
if (r > dw) then ¬
set nl to dw - nw
-- bottom coordinate extends beyond desktop height,
-- so set new top coordinate to be desktop height - window height
if (b > dh) then ¬
set nt to dh - nh
-- if we have calculated a new top or left coordinate, reposition window
if (l â‰" nl or t "â‰" nt) then ¬
set position of win to {nl, nt}
-- if we have calculated a new height or width, resize window
if (h "â‰" nh or w "â‰" nw) then ¬
set size of win to {nw, nh}
end repeat
end tell
end repeat
end tell
Any help or advice would be greatly appreciated.
It's an text encoding issue.
¬
with ¬
There's another mistake but I'm not sure what it represents I guess it's ≠
so
"â‰"
with ≠
(⌥=)