I've been mulling over a way of doing
something similar, and though I haven't
tried it yet I think something like this
might work:
If you want to be able to 'cancel' the turn
off portion of the macro before the time
delay elapses (which is what I believe you
are describing) I think you can do it by
structuring your "turn on/delay/turn off"
macro into two macros-- the first macro
would turn on the light, set a flag, start
the 5 minute delay, and as the last step,
instead of turning off the light after the
delay, it would include a 'pseudo device'
command. This would allow a 2nd macro
(defined as a trigger set to the pseudo
device address) to be called by the first
macro (after the delay has elapsed)to
examine the flag, and if still on, turn off
the light.
This would allow you to clear the flag
should you decide to cancel the turn off
once the delay has begun counting down.
Clearing the flag could be done by
a 'cancel' macro with a unique trigger, or
might also be done with the original
trigger with some conditional logic at the
front end (although this may be chancy if
the trigger gets repeated inadvertently).