In my job I do a great deal of repetitive keyboard work, so I have always used macro-enabled keyboards to good advantage, to the point where my demands outstrip the capabilities of the keyboards.
My Gateway AnyKey keyboard was retired because (a) it wore out and started sending bogus keycodes and thus causing some pretty interesting problems, and (b) it was limited to a maximum of 1024 stored keystrokes before running of of memory.
My MCK 142 Pro was sort of OK, but was limited to just 24 dedicated macro keys, each of which could only accept 128 keystrokes. I ran out of both keys and in some cases keystrokes (had to split the macro across two keys). Also, the speed of execution was unacceptably slow. Some of my macros were taking more than 15 seconds to run.
I started looking at software solutions. In general, they were unacceptable due to complexity of programming and slow speed of operation, particularly the ones that recorded mouse activity as well as keystrokes.
Finally, I found a program called
Keyboard Express. This program is good. It is written the way I would have done it if I had designed it myself.
The UI is uncluttered and intuitive, and amazingly powerful. I can write macros that pause in the middle waiting for a window with a specific title to open. I can speed up and slow down the execution speed of the macro as the situation requires, insert pauses and delays, etc. Best of all, I can choose from more than 700 different hot-key combinations, ranging from a simple keystroke (like "Q" or even "q") to things like "ctrl-alt-shift-F11" which, believe it or not, I have actually defined to print order confirmations following a weekend.
Each macro can store about 5,000 keystrokes, giving me a capacity of 3.5 million stored keystrokes, more than 3,000 times as many as my old AnyKey could hold. Execution speed ranges from faster than my software can accept to as long between keystrokes as I want to program.
Macro syntax is logical and understandable, and for the most part is drag and drop, that is if I want to program in an alt-tab sequence I click on an "alt" icon and then click on a "tab" icon and the program inserts them. Below is my ctrl-alt-shift-F11 macro (actually one of the simpler ones!) to show what the syntax looks like.
For $24.95, this is a great program!
Weekend Order Confirmation macro:
<DOHOOK><WAITWIN2:0:15:Order Module >
<TAB>1<ENTER><ENTER><ALT>ub<WAITWIN2:0:10:Reports >
<TAB><TAB><DOWN ARROW><DELAY:01.00><ENTER><SPKEY:0025>
<ALT><DOWN ARROW><LEFT ARROW><LEFT ARROW><ENTER><TAB>
<ALT><DOWN ARROW><SPKEY:0000><REPEAT:0008><LEFT ARROW>
<ENDREP><SPKEY:0100><ENTER><ENTER><F5>
<WAITWIN2:0:30:Order Confirmation ><DELAY:10.00><ALT>p<ENTER>
<DELAY:01.00><ALT><TAB><WAITWIN2:0:10:Reports ><ALT><F4>
<WAITWIN2:0:15:Order Module ><ALT><F4>
(I put some extra carriage returns in the above to avoid having to scroll left/right on the bbs, so as shown this macro is "broken", and the non-ascii characters that should print to terminate the window title in the Waitwin sequences show here as spaces. The SPKEY commands are how many milliseconds to insert between keystrokes)
tanstaafl.