Using WinTools
as a
Keyboard
and
Tablet Macro
Utility

Beverly Howard, Austin, Tx, 2008
Content may be "linked" with permission but not reposted
This Page Formatted for Viewing with PocketPC
Feedback Appreciated

It's kind of hard to describe to anyone, technical or otherwise, the extent to which Gary Chanson's WinTools have increased my computer productivity since I discovered and started using his tools to "stuff" the keyboard with strings of keystrokes which came up regularly several or more times each day.


NEW!!  (12/2013) QMenu Has Been Updated! Download version 1.4 here!

A couple of notes... QMenu has it's own SEND command, which makes creating and editing the menus simpler!  In addition, ^C (copy) works.

In version 1.4 Gary added the variable $CLIPBOARD which passes the contents of the clipboard buffer and works with both the SEND command (removing the need for ^V) plus it allows passing the contents of the clipboard to a command to RUN an executable with an argument such as;

Reg&Jump = regjump.exe $CLIPBOARD

(Note...RegJump is another useful tool that opens REGEDIT and goes directly to the registry key that is passed in the argument following the executable... in the above example, copy any valid registry key, hit the hotkey to trigger QMenu, then type "J" and the windows registry opens at the copied key location within the registry.)

At the bottom of this tutorial, I have included two different sample menu files... one using only QMenu and the other including the same QWin commands.



While WinTools is a suite of many and diverse Windows utilities, there is one WinTool which offers the potential to assist anyone who spends a lot of time using a keyboard or to save time entering text on a Tablet PC  It's named QMenu.exe.  This is a popup menu program as shown below, which, based on the menu selection, issues windows commands to run any program including, a SEND command in order to automatically type frequently needed text ...such as a full address....



...so, pressing a hotkey to bring up my own menu and selecting the "Addr" option, QMenu issues my SEND command to type the string associated with the menu entry "Addr" into the current document.




Using a full keyboard, the quickest way to execute menu options is using a hotkey assigned to launch QMenu plus QMenu's own hotkeys... the underlined characters in the menu selections.  If each of the underlined characters are used only once in a menu, simply typing it will execute the associated menu selection.

These menu's also work well using a tablet computer and pen stylus... assign one of the tablet's programmable buttons to launch QMenu showing your menu, then one or two taps of the stylus can succeed in typing a line or more of text.

In addition to simply typing text, SEND can issue most keyboard commands.  Since I spend a lot of times responding on computer forums, a huge time saver is a keyboard macro to "quote" any text which I have in the clipboard buffer such as;



>> This is a sample forum question copied from a message <<

The above SEND command is a little more complex than the address example which simply typed out the address...

The "Quote" keyboard macro goes to the beginning of the current line, creates a blank line, types the beginning quote marks plus a <space> pastes the text currently in the clipboard into the document, types another <space> plus the end quote marks, then creates a blank line below the quote creating a "quote paste" such as the one shown above.

At this point it's probably appropriate to show the SEND command which created the above quote paste;

&Quote = send "<HOME>~C<UP>>> ^V <<~C"
(or, using qwin commands)
&Quote = qwin "" send "<HOME>~C<UP>>> <LMenu>EP <<~C"

To break that down a bit;

Using
SEND

Using
QWIN "" SEND
<HOME> Press the <HOME> key
~C Press the <ENTER> key
<UP> Press the <UP> key
>> Type ">> "
^V Issue the <paste> command <LMenu>EP
<< Type " <<"
~C Type <ENTER>


Time to remember that all of that was accomplished with only two keystrokes... the first was the hotkey to launch this custom QMenu, and the second was "Q"

...note that the "Q" in Quote is underlined when QMenu appears thereby indicating that it's the hotkey for this macro.


Two more examples below the first Quote selection are two other "Quote" selections I use frequently, the first preceeded by an underlined <period> and the second preceeded by an underlined <comma> 

Pressing the hotkey and <period> creates two blank lines plus the beginning and ending quote marks, then moves the insert cursor between the quote marks so that typing can begin immediately;

>>  <<

Next, the <comma> selection "Breaks" quotes... for example, there are two or more items I want to quote in a response.. I copy a block containing all of the quote texts, then paste it as a single quote...

...then I put my cursor where I want the break the quote, press <hotkey><comma> and get;

>>
This is a sample forum question <<


>>
copied from a message  <<


Onward to QMenu Files


Getting too complicated?  Perfect time to look at how the actual menus are built... they are simply "plain text" files.

A complete QMenu file containing only the above three  commands would look like;

&Quote  = send "<HOME>~C<UP>>> ^V <<~C"
&.Quote = send "<HOME>~C<UP>>>  <<<END>~C<UP><RIGHT><RIGHT><RIGHT>"
&,Quote = send " <<~C~C~C>> "


Everthing left of the "=" is what will appear in the onscreen menu. 

The "&" preceeds the character which will become the menu hot key.

Everything on the right side of the "=" are the windows commands which QMenu will issue when that menu selection is made...

...and, these commands are not limited to QMenu's SEND command... the menu file can issue any valid command line and run any program from the command line.

Submenus

OK, you have a lot of stuff that you type regularly and it won't all fit on one menu!
QMenu Supports SubMenus.

For example, I answer a lot of ActiveSync Questions, so, I have a submenu of items relating directly to ActiveSync such as;


In these cases, selection takes one additional keystroke... in the above example;

<hotkey>AP

...types out a long and complex URL of a tip related to ActiveSync problems involving the Outlook PST file.   (fwiw, my primary menu file now contains
over 125 macros)

An abbreviated example (so the lines won't wrap) of the QMenu entries for the above submenu is;

SUBMENU &ASync
    &Notes = send "http://... "
    &GetConn = send "http://... "
    &USB = send "http://... "
ENDMENU

I doesn't really matter what kind of document is currently being edited... the above works in almost every place I have tried it, from email messages, to Word documents and even including web forum message boxes.

To help get started, download either

sample QMenu menu file
(or)
sample QMenu menu file using QWin commands


Shortcuts and Hotkeys

After downloading and installing WinTools, the QMenu command line is very simple;

<path>\QMENU.EXE MYMACROS.MEN

Create a desktop shortcut with the above (assuming your menu file is named "MYMACROS.MEN") then open the shortcut properties and assign it a "hotkey" such as <Ctrl-Alt-Q>

To test it, open notepad or start an email message and press
<Ctrl-Alt-Q> and select from your menu options... the text associated with the selection should then appear in your document.

While the Shortcut-Hotkey approach works, if you have a keyboard with programmable keys or a tablet with programmable buttons, using one (or more) of those to launch QMenu makes life much easier.


As mentioned above, a related program is QWin.exe.  This utility also has the ability to "stuff" the keyboard buffer with anything which can be typed on the keyboard so the typing occurs in the current program, for example, typing out your full name.  An example of a shortcut commands might be;

C:\Apps\WinTools\QWin.exe "" send "My Name~C"

So, rather than using QMenu, create a single QWin shortcut assigned to a hotkey or a programmable key for something that I type very frequently so I can launch it using a single keystroke rather than making a QMenu selection.

To Return to Bev and Rebecca's Home Page, Click Here.