#!/usr/bin/osascript | |
# Name of the device as visible in Safari->Develop menu | |
set deviceName to "iPhone Simulator" | |
# Number of seconds to wait for the simulator window to show up | |
set maxWait to 30 | |
# --------------------------------------- | |
# You shouldn't modify anything below here | |
set hasClicked to false | |
set x to 0 | |
tell application "Safari" | |
activate | |
repeat until hasClicked or x > (maxWait * 10) | |
try | |
tell application "System Events" | |
click menu item "index.html" of menu deviceName of menu item deviceName of menu "Develop" of menu bar item $item "Develop" of menu bar 1 of application process "Safari" | |
end tell | |
set hasClicked to true | |
on error foo | |
delay 0.1 | |
set x to x + 1 | |
end try | |
end repeat | |
if hasClicked = false then | |
display dialog "Unable to connect to iOS simulator - make sure that it's working" buttons {"OK"} default button 1 | |
else | |
try | |
tell application "System Events" | |
click button 1 of window "Top Sites" of application process "Safari" | |
end tell | |
end try | |
return | |
end if | |
end tell | |
This comment has been minimized.
This comment has been minimized.
getting this error: ./safari-webinspector.applescript:632:633: script error: Expected expression, property or key form, etc. but found unknown token. (-2741) |
This comment has been minimized.
This comment has been minimized.
@mftaher Same error here. To fix it I removed the
|
This comment has been minimized.
This comment has been minimized.
Thanks for this! |
This comment has been minimized.
This comment has been minimized.
Can't get this to work in Xcode 6.1.1 |
This comment has been minimized.
This comment has been minimized.
OK this is awesome - thanks for sharing! I had to make the following changes to modernize it for Yosemite:
You must also quit the Simulator between sessions (otherwise the script triggers prematurely and ends). For cordova (assuming you keep it in the scripts folder and have chmod +x scripts/open-webinspector.applescript):
|
This comment has been minimized.
This comment has been minimized.
This is awesome, been looking for something like this for a while. So just to summarize all the edits for Yosemite, here's the updated script. Thanks to @Thinkscape, @jfrumar and @raztus
|
This comment has been minimized.
This comment has been minimized.
Thanks everyone! I made a fork of this to both compile and run the debugger, and also made instructions on how to assign it to a shortcut key with Automator. |
This comment has been minimized.
This comment has been minimized.
Made a fork of @uniphonic's fork above, for iTerm - https://gist.github.com/benallfree/948994ad6b143b5566f2 |
This comment has been minimized.
This comment has been minimized.
Here is my version of opening Safari Web Inspector - https://gist.github.com/14ea36ce3bc9cc5632b78252fe35ec76 |
This comment has been minimized.
This comment has been minimized.
It must works for debugging of real iPad webview without emulator? I see |
This comment has been minimized.
This comment has been minimized.
I made an Alfred workflow for this. - https://github.com/alphacat2018/AlfredOpenSafariInspector |
This comment has been minimized.
This comment has been minimized.
If you can't get @alphacat2018's suggestion to work, try using this other Workflow with Alfred: |
This comment has been minimized.
I've also noticed that it's not currently possible to invoke the script as
.cordova/hooks/after_run
, because the way phonegap cli invokes hook scripts. The sub-process does not have access to the GUI so it's not able to find or work on safari window.The easiest workaround is to run:
This will wait for safari to connect to iOS (i.e. simulator) and display webinspector window as soon as possible.