How can I successively trigger an AppleScript very quickly? Background
For fine volume adjustment I use the following AppleScript:
try
    do shell script &quot;killall afplay&quot;
end try
set currentVolume to output volume of (get volume settings)
set volume output volume (currentVolume + 2)
    -- play volume changing sound at new volume
do shell script &quot;afplay /System/Library/LoginPlugins/BezelServices.loginPlugin/Contents/Resources/volume.aiff&quot;

This will increase the volume by 2% and play the new volume once like usual.
Problem
Using this script has disadvantages:

When I trigger the script quickly multiple times in a row, it does not respond as quickly as the 'normal' volume change would.
For every execution the volume sound is played at full length.

It appears that my problem is due to a limitation of the how the scripts are triggered. E.g. When I use FastScript, it will not execute the script again before it has been finished. The same goes for Quicksilver.
However, when I assign the &quot;lower volume script&quot; to Quicksilver and the &quot;louder volume script&quot; to FastScripts I can trigger both scripts very fast after each other - so: the script is fine. I believe that my problem is due to how the scripts are triggered.
Question
How can I successively trigger a script very fast?
Adding &gt; /dev/null 2&gt;&amp;1 &amp; to the end of the do shell script command should work. This redirects the stdout and stderr of the do shell script command to /dev/null and runs the shell script in the background, meaning that AppleScript no longer needs to wait for the command to return stdout or stderr before the AppleScript script can finish. That means that it finishes and can be run again much more quickly.

You also shouldn't need the try handler at the beginning. The following modified script should work:

set currentVolume to output volume of (get volume settings)
set volume output volume (currentVolume + 2)
-- play volume changing sound at new volume
do shell script "afplay /System/Library/LoginPlugins/BezelServices.loginPlugin/Contents/Resources/volume.aiff &gt; /dev/null 2&gt;&amp;1 &amp;" 


I got this tip from MacScripter (an excellent resource for AppleScripting) in a post about running multiple instances of a shell script.