AppleScript Programming/Advanced Code List/Repeat

From Wikibooks, open books for an open world
Jump to: navigation, search

With command repeat you can create repetative behavior, that often will shorten the code a lot, if done correctly.

Its basic format is this:

repeat 10 times
        say "Hello."
end repeat

And it can be used to do a specific task for every item you drop into a script that has been turned into a program.

on open (ListItem)
        repeat with thisItem in ListItem
                -- bunch of kick*** code
        end repeat
end open

One example of actual script that utilizes repeat-function can be found here.

While, here is one example of code that will wait until a page in Safari is fully loaded:

tell application "Safari" to activate -- Brings Safari frontmost application.
        tell application "Safari"
                if source of document in window frontmost contains "</html>" then
                        tell application "Script Editor" to activate
                        exit repeat -- This will quit the loop.
                        delay 1 -- Will wait for 1 second.
                end if
        end tell
end repeat

And a useful source can be found from here:

The entire series of AppleScript columns at Mac Observer are here