I have the following code :

on run {input, parameters}
    if application "KeyboardViewer" is running then
        quit application "KeyboardViewer"
        activate application "KeyboardViewer"

    end if
    return input
end run
  • I want to press ALT + TAB automatically after I activate application so that I can start typing right away ..
  • Reason to do this is because the keyboard becomes the foreground running application and the webpage or typing area the background.
  • In my answer, since you wanted to switch applications, I assumed you meant CMD+TAB as opposed to ALT+TAB. My answer reflects this assumption however, if this is incorrect please tell me and I'll update my answer.
    – sjbx
    Commented Nov 6, 2012 at 10:08
  • Have you tried using launch instead of activate like in my answer to the previous question?
    – Lri
    Commented Nov 6, 2012 at 10:38

1 Answer 1


You can use the keystroke scripting command available through the System Events application.

Add the following block to your script below (and at the same indent level as) the activate:

tell application "System Events"
    keystroke tab using {command down}
end tell

This will simulate cmd+tab and have the effect of switching applications.

To simulate the "ALT" modifier key, use option in place of command in the above.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .