NOTE: This Help chapter is not complete and will be regularly updated. We apologize for the inconvenience. Paid users can email alomware.com@gmail.com for support.
The Automation tab (Figure 1) is used to created actions that do things on your PC automatically for you. Some examples are typing text, moving windows, resizing windows, downloading files from the internet, modifying the clipboard text (such as changing it to title case), modifying other text in similar ways, showing alerts, and tweaking your PC (such as hiding and showing your desktop icons). Actions are created with short scripts of text that are easy to understand, and have full help descriptions in AlomWare Toolbox for them.
You can right-click the tab itself to set it as your favorite tab (always shown when Toolbox's window opens), or to access related Settings for it.
Figure 1 |
|
The Action Wizard button. Click this to easily and quickly create a preset action from prompts, with no manual action editing needed. You can also re-add the default actions back into the app using this button.
Creates a new blank action, or permanently deletes the selected actions in the Action list (item S).
Renames the selected action in the Action list (item S). You can also press the
[F2] key when an action is selected.
Adds a trigger to the selected action (item S), or deletes an existing trigger from it. Triggers can be hotkeys, clipboard text that contains something, or typed text.
Runs the selected action (item S) and shows a green "play" icon to reflect this and also lists it in the "Running actions" list (item U). You can also press the
[F5] key to run it. Note that each action can only be run once, and not again until they end.
The Action group selector. Actions can be sorted into groups, with
(All) showing actions from all groups. There is also a built-in group called
(Misc) which shows actions that aren't grouped. To create, rename, or delete a custom group: right-click this item and select your choice from the pop-up menu. To move selected actions into another group, right-click any of the selected actions and select "Move to" from the pop-up menu.
Switches to the built-in
(All) group to show all actions from all groups. If you're not seeing actions that you're expecting, make sure that the Action filter (item P) is not set and therefore hiding them.
Adds a new step to the selected action by opening the "Step Chooser" window (Figure 2), or deletes the selected steps (item T) from the selected action. If you delete needed steps accidentally, immediately press
[Ctrl]+[Z] to undo the deletion.
Moves the single selected step up or down in the action, as steps are run in top-down order. If you need to move a bunch of steps: select them and press
[Ctrl]+[X] to cut them, and then click the area in the list to locate them and press
[Ctrl]+[V] to paste them there.
Goes to and selects the step number that you specify. Used when an action gives an error about a step and tells you the step number to fix. If there is only one step in an action, it gets auto-selected and if applicable, a prompt for its value will also auto-open for it.
Disables or enables the selected steps. Handy for when testing an action and you don't need all its steps to run. Disabled steps have a leading sem-colon in front of them (
;) and will be gray in color. Tip: You can run just the selected parts of an action by right-clicking the relevant steps and choosing "Run selected step(s)" from the pop-up menu.
Cuts, copies, and pastes the selected steps in an action. The cut or copied steps can be pasted into other steps, or pasted into any app that takes text, such as Notepad or sharing the action in an email. Tip: Holding down the
[R] key when clicking the "Copy" button will format the copied steps in "code" style for posting on
Reddit.
Searches and replaces text in the action's selected steps. To search/replace in all steps, you can either select them all with
[Ctrl]+[A] first, or deselect them all so that no specific steps are selected.
Undoes the last change in the action, such as when you edited a step, added one, or deleted some. There is an undo buffer of 999 undoes, but please note that
switching to another action will clear the buffer.
The action group and action name for the selected step. This is just for quick reference in case the selected action is not visible in the Action list (item S).
Click the list header to filter actions by their name or their steps and values. Hold down the
[Ctrl] key when clicking the header to remove the filter and show all actions.
Sets the trigger that runs the selected action. Triggers can be hotkeys, clipboard text that contains something, or typed text. You can also run an action by double-clicking it in the list, or selecting it and pressing the
[Enter] key.
Click the header to search all steps for the text you specify. Press the
[F3] key after each match to find the next match (if any).
The Action list. Double-click an action to run it, or select it and press
[Enter] to run. A green "play" triangle appears next to an action that is running, and the Automation tab (at the top of the window) shows a green number to indicate the number of actions currently running. Also for your reference, a list of running actions appears below this list (item U). To permanently delete any actions, click them (with the
[Ctrl] key held down for multiple selections) and press the
[Delete] key. You can right-click the list to perform functions on some or all of your actions, such as locking them to prevent accidental deletion/editing, or to set their trigger, or move them into other action groups.
The way you name an action has an effect on how it's run. These are as follows:
- If the name ends with a dash (-) then it is disabled and can't be run.
- If the name ends with a plus (+) then it is added to the default Dock and system tray menu of the app.
- If the name contains a caret (^) somewhere in it (but not the last position) then it is auto-run when the app starts. Tip: If you hold down the [Ctrl] key when AlomWare Toolbox is starting, then actions set to auto-run will be prevented from doing so.
The Step list, which shows the steps that the selected action will do. Clicking the buttons above this list (items H to N) will affect any step selections. Right-click any steps in this list for a small pop-up menu of options for the selections.
The "Running actions" list, which shows which actions are running and the date/time they were run. You can select any of these and press the
[Delete] key to stop them, but this isn't really recommended as they won't be able to clean up properly. You can think of this list as being like the Windows "Task Manager", with stopping them as being like killing a task/process. Tip: You can click and drag the slider line above this list to resize it.
The help box for the selected step (item T). If you hold down the
[Ctrl] key when clicking on a line that starts with "See also", then the Step Chooser window (Figure 2) will open to that step. Tip: You can click and drag the slider line above this box to resize it.
The status bar will show the selected step's value (item T) for your convenience here, as some values may be too long to see in the Step list.
Creating a new action
To create a new action without using the Action Wizard, click the green plus "New action" button (item B in Figure 1). You will be prompted for a name for the action, so enter one and click [OK]. Next, click the green plus "Add step" button (item I in Figure 1). This causes the "Step Chooser" window to appear (Figure 2). Double-click a step in the list (item C) to add it to the action's Step list (item T in Figure 1). Note that it will inserted at the current selected step in the Step list. Some steps will open a prompt for more information, so answer the prompt and click the prompt's [OK] button to save it. When you've finished adding steps, close the Step Chooser window by clicking the Close button ("X") at the top-right of it. If you add a step accidentally, immediately press [Ctrl]+[Z] to undo the addition (which works even while the Step Chooser window is open).
Figure 2 |
|
The search box for filtering all steps that contain the entered text. This is updated in real-time as you type. You can also click the down-arrow to select a group of steps.
This button clears the search box to show all steps again (or you can just clear item A manually).
The step list itself. Double-click the selected step to add it to the action's Step list (item T in Figure 1).
The sizing grip. Click and drag this to see more steps or to see more of a step's description.
The selected step's description and how to use it. Always read it carefully to fully understand it.
Action concepts
The concept for actions is as follows: you create a blank action (short script) in the Automation tab, and then add steps to the action that instruct it what to do, in top-down order. Each step can be one or two parts: the one-parters just do one thing, and two-parters also do one thing but with an additional piece of data you provide with it, called the value. An example one-part step is Clipboard: Clear all content, which clears everything from the clipboard. An example two-part step is Clipboard: Assign text (part one) with a value of hello (part two), which puts the text hello in the clipboard when the step is run. Some steps can use built-in variables for the value, which means you specify a specific reserved word for the value which gets replaced when the step is run. Variables always end with a dollar sign ($) for easy identification, and as their name implies, their value varies and may not always be the same. An example variable is time$, which holds the current time of your PC. This means a two-part step made up of Clipboard: Assign text with a value of time$ will put the current actual time in the clipboard when the step is run, as opposed to literally the text "time$".
Click the arrow to expand/collapse a list of available variables and learn which values they hold.
General variables:
admin$ = 1 if the logged-in user is an admin (0 if not).
alert$ = The typed text or choice from the 'Alert' steps.
battery$ = Battery power percentage (-1 if no battery).
blank$ = Always empty (used for readability only).
clip$ = The plain text in the clipboard.
comment$ = The last comment used for a step.
counter$ = The current counter value.
data$ = The current data from the 'Data' steps.
datalen$ = The length of the data$ variable.
desk$ = The desktop folder location for the user.
deskb$ = The desktop's taskbar height.
deskh$ = The desktop's height.
deskw$ = The desktop's width.
doc$ = The documents folder for the user.
dos$ = The output of the DOS command.
file$ = The file (with path) from the 'File' steps.
filee$ = The extension from the file$ variable.
filef$ = The folder from the file$ variable.
filen$ = The name from the file$ variable.
folder$ = The folder from the 'Folder' steps.
history$ = 1 if Toolbox's history is enabled (0 if not).
image$ = The name of the assigned image.
infowin$ = 1 if an info window is open (0 if not).
left$ = The left part of the string$ variable.
mousex$ = The X position of the mouse.
mousey$ = The Y position of the mouse.
name$ = The next filename in folder processing.
online$ = 1 if connected to the internet (0 if not).
power$ = 1 if AC power is connected (0 if not).
repeat$ = The current loop number of a repeated block.
right$ = The right part of the string$ variable.
space$ = A single space (used for readability only).
string$ = The string from the 'String' steps.
stringlen$ = The length of the string$ variable.
stringwc$ = The word count of the string$ variable.
switch$ = The current switched string.
temp$ = The system temp folder for the user.
text1$ = The first typed text from 'Alert: Ask for two texts'.
text2$ = The second typed text from 'Alert: Ask for two texts'.
toggle$ = The toggle state of this action (0 or 1).
toolbox$ = 1 if Toolbox's window is visible (0 if not).
up$ = The PC uptime in 'D:HH:MM:SS' format.
user$ = The name of the logged-in user.
web$ = The URL from the 'Web' steps.
win$ = The window title from the 'Window' steps.
winexe$ = The window's executable from the 'Window' steps.
winexefull$ = As above but with the full path to the executable.
winid$ = The window's unique ID from the 'Window' steps.
winh$ = The window height from the 'Window' steps.
wint$ = The window's transparency from the 'Window' steps.
winw$ = The window width from the 'Window' steps.
winx$ = The window X position from the 'Window' steps.
winy$ = The window Y position from the 'Window' steps.
work$ = A temporary work file unique to this action.
Date and time variables:
date$ = The date in the format in Settings.
time$ = The time in the format in Settings.
yyyy$ = The year as 4 digits.
yy$ = The year as 2 digits.
mm$ = The month as 2 digits.
ml$ = The month as a long name.
ms$ = The month as a short name.
dd$ = The day as 2 digits.
dl$ = The weekday as a long name.
ds$ = The weekday as a short name.
hh$ = The hour as 2 digits in 24-hour format.
hh12$ = The hour as 1 or 2 digits in 12-hour format.
ii$ = The minute as 2 digits.
ss$ = The second as 2 digits.
ap$ = AM or PM per the hour.
Example 1: Manipulating windows
Most actions have an "assigned" step, which are supported by other steps. For example, there's a step called
Window: Assign active, which tells the action that all other "Window" steps in that action will be applied to the current active window. So you might follow up that step with another two-parter step called
Window: Always on top with a value of
1 (meaning "yes"), and then assign a hotkey trigger to that action. As you might guess, pressing that hotkey will make the active window stay on top of all others. By contrast, a value of
0 (meaning "no") would stop the active window from being on top. The
Window: Always on top step also supports a value called
toggle, which swaps the current on-top state (Figure 3).
Figure 3 |
(Start)
0001 Window: Assign active ""
0002 Window: Always on top "toggle"
(End)
Click the image to access the action's text for copying. |
Example 2: Manipulating the clipboard text
As mentioned above in Example 1, "assigned" steps are supported by various other steps. Another such "assign" step is
String: Assign, where you specify some text to use for the value. (In computer terms, "string" just means a line or block of text because it's like a string of characters). The "String" steps let you manipulate whatever text is in the
string$ variable. So, to manipulate the clipboard text such as to convert it to title case, it's a three-step action as follows: first assign the clipboard text to a string (using the
clip$ variable), do the conversion to the string, and then put the converted string back into the clipboard. Figure 4 demonstrates this.
Figure 4 |
(Start)
0001 String: Assign "clip$"
0002 String: Case title ""
0003 Clipboard: Assign text "string$"
(End)
Click the image to access the action's text for copying. |
Example 3: Setting the desktop wallpaper using a file
In this example, we're using the
File: Assign from folder randomly step, where you specify a folder for its value. When this step is run, a random file from that folder is then assigned for use by all other "File" steps, and the filename is stored in the
file$ variable for reference. For example, you could specify a folder full of JPEG images so that one is assigned at random, and then use the
Computer: Wallpaper is step with a value of
file$ to change the desktop wallpaper to that JPEG image (Figure 5).
Figure 5 |
(Start)
0001 File: Assign from folder randomly "D:\Folder of JPEG images\"
0002 Computer: Wallpaper is "file$"
(End)
Click the image to access the action's text for copying. |
Deciding if an action should run
Steps of an action are normally run in top-down order, one after the other. However, sometimes an action should not be permitted to run unless certain conditions are met, such as actions that require running from a hotkey. As such, any of the following steps can go at the start of action so it can gracefully abort if the conditions aren't met:
- Action: Abort if not administrator - This step stops the action running if AlomWare Toolbox was not run with administrator rights.
- Action: Abort if no clipboard text - For actions that modify the clipboard text, this step stops the action running if no text is in the clipboard.
- Action: Abort if not from hotkey - This step stops the action running if it wasn't run from a hotkey (as opposed to a clip match or typing trigger).
- Action: Allow failure messages - This step specifies whether any failure messages for the action are shown or hidden, starting from this step onwards. For example, if you set it to 0 to hide failures, you will no longer see error messages like "This action has been aborted and won't continue" or "No window exists with the value" and so on. Instead, the action will just blindly continue with the next step, so make sure the rest of the action takes any failures into account!
Figure 6 shows an example action that locks your mouse position horizontally while you're holding down a hotkey, such as when drawing straight horizontal lines in a paint program.
Figure 6 |
(Start)
0001 Action: Abort if not from hotkey ""
0002 Mouse: Lock to horizontal position ""
0003 Wait: For action hotkey to be released ""
(End)
Click the image to access the action's text for copying. |
Changing an action's running order
As mentioned above, steps of an action are normally run in top-down order in the action, and when no more steps exist after the last one is run, the action ends. However, there are ways to move the order of steps in an action, such as to repeat parts of it or go directly to other steps. These are as follows:
- Action: Comment - This step puts a comment in that position in the step list. Comments can be any text you like, and they can also be used to indicate where the action should run its next step.
- Action: Go to comment - This step makes the action continue running from the step immediately after the specified commented step.
- Action: Go to start - This step makes the action continue running from its first step again, but without losing any data that the action has set so far, such as its variables.
- Action: Run again fresh - This step makes the action run from scratch again, and loses any data that the action has set so far, such as its variables. It's like the action was run for the first time.
Figure 7 shows an example action that shows information about the active window. It repeatedly restarts the action (the Action: Go to start step) while the info window is open (the infowin$ value is 1). Note that step 4 is indented to show that it's affected by the step directly above it.
Figure 7 |
(Start)
0001 Window: Assign active ""
0002 Alert: Show an info window "Window : win$~Program: winexe$~Width : winw$~Height : winh$"
0003 Action: Do next step if "infowin$=1"
0004 Action: Go to start ""
(End)
Click the image to access the action's text for copying. |
Conditionally running steps in an action
Sometimes an action will need to skip certain steps or only continue if a condition is met; see Fig.1 for an example with the clipboard text. The conditional steps are as follows:
- Action: Continue if - Continues the action only if the specified item or variable meets the specified value.
- Action: Do next step if - Performs the next step in the action only if the specified variable or item meets the specified value; otherwise the next step is skipped and the action continues with the step after it.
- Action: Do this block if - Performs the next block of steps in the action (up to a later Action: End of block step) only if the specified variable or item meets the specified value; otherwise the block is skipped and the action continues with the steps after it.
Figure 8 shows an example action that runs Notepad but only if no other Notepads are currently open. The variable string$ is set to the app name of notepad.exe in step 1, and step 2 checks if string$ is equal to 0 (which means "notepad.exe" isn't running). If it's 0, the action then continues on step 3, which runs Notepad. Step 3 is indented to show that it's affected by the step directly above it.
Figure 8 |
(Start)
0001 String: Assign "notepad.exe"
0002 Action: Do next step if "string$=0"
0003 Computer: App launch "string$"
(End)
Click the image to access the action's text for copying. |
Repeating steps in an action
Sometimes an action might need to repeat steps indefinitely or for a set number of loops. The repeating steps are as follows:
- Action: Repeat next step - Performs the next step in the action the specified number of times.
- Action: Repeat this block - Performs the next block of steps in the action (up to a later Action: End of block step) the specified number of times.
- Action: Routine - Marks the start of a block of steps that can be run from another step, up to a later Action: End of routine step.
- Action: End of routine - Marks the end of a block of steps in a routine that were started with the Action: Routine step.
- Action: Do routine - Jumps to another part of the action (identified with the Action: Routine step) and runs the steps there up to a later Action: End of routine step. The action then returns back to this step after the routine ends.
Figure 9 shows an example action that repeats a block 99 times to display the famous "99 Bottles of Beer" song in AlomWare Toolbox's Log tab (Figure 10). In this action, counter$ is a variable can be assigned any starting number that you like (99 in this case), which can then be increased or decreased with the Counter: Increase by or Counter: Decrease by steps. The {=counter$-1} text in the action is a real-time calculation which subtracts 1 from the current counter$ value, because any text inside {= and } is deemed to be a calculation. The Log: Add text steps shows a block of text in the Log tab, which in this case is the song text.
Figure 9 |
(Start)
0001 Log: Clear and show ""
0002 Counter: Assign "99"
0003 Action: Repeat this block "counter$"
0004 Log: Add text "counter$ bottle(s) of beer on the wall, counter$ bottle(s) of beer."
0005 Log: Add text "Take one down and pass it around, {=counter$-1} bottle(s) of beer on the wall."
0006 Counter: Decrease by "1"
0007 Action: End of block ""
0008 Log: Add text "No more bottles of beer on the wall, no more bottles of beer."
0009 Log: Add text "Go to the store and buy some more, 99 bottles of beer on the wall."
(End)
Click the image to access the action's text for copying. |
Figure 10 |
|
More of this Help chapter will come in the future.