User Tools

Site Tools


action:While

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
action:While [2017/03/01 16:34]
JMichaelTX Reorganize and rewrite most sections
action:While [2021/10/14 00:33] (current)
peternlewis
Line 1: Line 1:
 ====== While Conditions Are Met Action ====== ====== While Conditions Are Met Action ======
  
-This action executes ​a group of [[:​Actions|Actions]] while the [[:​Conditions|Conditions]] in the _While_ criteria are met.+This _Action_ repeats ​a group of [[:​Actions|Actions]] while the [[:​Conditions|Conditions]] in the _While_ criteria are met.  As soon as the _While_ Criteria is _not_ met, the _Action_ will exit the loop. 
 + 
 +It is one of several Actions that _loop_ through a set of other Actions until some criteria is met.
  
 **The _While_ Criteria can be any of these:** **The _While_ Criteria can be any of these:**
Line 14: Line 16:
 {{:​action:​while-conditions-action-km-7.3.png?​nolink|}} {{:​action:​while-conditions-action-km-7.3.png?​nolink|}}
  
----+===== How To Setup =====
  
-===== How To Use ===== 
   - Select one _While Criteria_ from the _While_ popup list.\\ (default is _all of the following is true_).   - Select one _While Criteria_ from the _While_ popup list.\\ (default is _all of the following is true_).
   - Add one or more new conditions by clicking the green + button next to the //New Condition// to see a popup menu of [[:​Conditions|Conditions]].   - Add one or more new conditions by clicking the green + button next to the //New Condition// to see a popup menu of [[:​Conditions|Conditions]].
Line 22: Line 23:
   - Insert one or more [[:​Actions|Actions]] into the //No Action// area.   - Insert one or more [[:​Actions|Actions]] into the //No Action// area.
  
----+===== Exiting the While Loop ===== 
 + 
 +  * The _Actions_ in the _While_ loop (set of actions) will start *if* all criteria and conditions are met when the _Action_ is executed in the Macro processing. 
 +  * As soon as the _While_ Criteria is _not_ met, the _Action_ will exit the loop, and the next _Action_ (if any) in the Macro will be processed. 
 +  * You can explicitly exit the loop by using the [[action:​Break_From_Loop|Break From Loop]] _Action_. 
 +  * For example, in the example _Action_ shown below, the _While_ loop will exit\\ **IF EITHER**\\ 
 + 1. Finder is NOT frontmost\\ 
 +**OR**\\ 
 +2. The Keys ⌘⇧ are pressed\\ 
 +**THEN the loop will exit.** 
 + 
 +You can break out of the loop, retry this iteration, or skip to the next iteration with the [[actions:​Redirect_Control_Flow|actions:​Redirect Control Flow]] actions.
  
 ===== Example ===== ===== Example =====
  
 {{:​action:​while.png?​500|}} {{:​action:​while.png?​500|}}
- 
---- 
  
 ===== Conditions ===== ===== Conditions =====
  
 +See the [[:​Conditions|Conditions]] section for further details.
  
-[[:​Conditions|Conditions]] are grouped by category. See the [[:​Conditions|Conditions]] section for further details. +~~NOCACHE~~ 
-  ​*Application +<​nspages ​condition ​-textPages="">​
-  *Button +
-  *Calculation +
-  *Clipboard +
-  *Environment Variable +
-  *[[condition:​Found_Image|Found Image]] +
-  *Key +
-  *Location +
-  *Macro/​Macro Group +
-  *Menu +
-  *Modifiers +
-  *Mounted Volume +
-  *Path +
-  *Pixel +
-  *Script +
-  *Text +
-  *Typed String +
-  *USB Device +
-  *Variable +
-  *Any Window +
-  *Front Window +
-  *Wireless Network+
  
 After selecting a condition category you can make further choices. For example, if you choose the //​Application Condition// you can choose a specific application to be running, or at the front, and so on. After selecting a condition category you can make further choices. For example, if you choose the //​Application Condition// you can choose a specific application to be running, or at the front, and so on.
  
 Add further conditions by clicking the green + button again. Add further conditions by clicking the green + button again.
 +
 +You can break out of the loop, retry this iteration, or skip to the next iteration with the [[actions:​Redirect_Control_Flow|actions:​Redirect Control Flow]] actions.
 +
 +===== See Also =====
 +
 +=== Actions ===
 +
 +* [[action:If Then Else|If Then Else]] action
 +* [[action:​Pause_Until|Pause Until]] action
 +* [[action:​For_Each|For Each]] action
 +* [[action:​Repeat|Repeat]] action
 +* [[action:​Until|Until]] action
 +* [[action:​Assert|Assert]] action
 +* [[actions:​Redirect_Control_Flow|Redirect Control Flow]] actions
 +* [[:​Actions|See all Actions]]
 +
 +===  Conditions ===
 +
 +* [[:​Conditions|See all Conditions]]
 +==== Forum ====
 +
 +- [[https://​forum.keyboardmaestro.com/​t/​issue-pause-until-action-fails-with-no-windows/​3022/​7|ISSUE:​ PAUSE UNTIL Action Fails with No Windows]]
 +
 +- [[https://​forum.keyboardmaestro.com/​search?​q=Until|Keyboard Maestro Forum topics about Until action]]
 +
action/While.1488404061.txt.gz · Last modified: 2017/03/01 16:34 by JMichaelTX