Note: If you are reading this topic because you want to learn how to check text in another window (such as WordPad), you might find it easier to read this overview first, and then come back here if you have problems or need more information.
The hotkey spell checking function enables you to invoke MicroSpell while you are working in another application. If the window which holds the text that you'd like to check is one for which MicroSpell has a predefined copy script, the speller will automatically copy the text, spell check it, and return it to the source window after you've corrected it. The hotkey spell check function simply plays back (to the other application) the keystrokes you would type to select the text and copy it to the Clipboard ("copy" script). Then, after checking the text, it plays back the keystrokes that you would type to select text and replace it with the Clipboard contents ("paste" script).
Some of the predefined scripts supplied with MicroSpell require that you select the text you want to check; others, such as the script for the edit control, select everything for you. Try a hotkey spell check without a selection first; if the speller says it has "given up waiting for the text to appear," try it with a selection. You can redefine any or all of the scripts to require, or not require, an initial selection.
If you use the hotkey spell checking function often, consider using the tray icon feature if you don't already use it. Alternatively, you can place a shortcut directly on the Windows "Start" menu.
The first thing you need to decide is whether you should define new scripts for a particular window. See Modes and Text Formats for the reasons we did not define scripts for Microsoft Word. Also, decide whether you can define scripts for the new window. Because scripts are based entirely on keystrokes, you must be able to select, copy, and paste text without using the mouse. Refer to the Hotkey Mini-FAQ (Q3 and Q6) for additional discussion. To define new scripts, do this:
When you follow the "How To" instructions, you'll be defining two separate scripts, one after the other: the first to copy text from its original window to the Clipboard, and the second to paste text from the Clipboard to the original window. You'll see a dialog confirming that you've successfully created a copy script and prompting you to create a paste script. Note that MicroSpell takes responsibility for moving text from the clipboard to the speller and for returning corrected text to the Clipboard—you should not give commands to move text between the Clipboard and the speller. In defining both scripts, the same basic pattern applies:
Example: to record scripts for WordPad, we issued the MicroSpell Spell | Change Hotkey Spell Check Settings/Define Scripts
command, then switched to WordPad and typed the following:
<F12> <Ctrl>+A <Ctrl>+C <F12>
(i.e., select and copy text from WordPad to Clipboard)
We clicked OK on the MicroSpell dialog, clicked on WordPad, and typed:
<F12> <Ctrl>+A <Ctrl>+V <F12>
(i.e., select and replace WordPad text using text from Clipboard)
If you make a mistake while recording either script, press the Cancel button. This will erase both scripts and you'll have to start over from the beginning. If you record scripts for a window which already has scripts defined, the new ones will replace the old. You are not required to define both scripts: if you define the first script and press Close instead of defining the second script, MicroSpell will copy text from the source window but will not return corrected text there. If instead, you want MicroSpell to bring the source window to the foreground without returning corrected text, you'll have to define the second script and it must not be empty—add a "do-nothing" keystroke such as "Shift."
When moving text to the Clipboard, you have the option of cutting or copying the text. Copying the text is probably safer because a copy of the text remains in the original window until you replace it with the corrected version (see the Hotkey Mini-FAQ, Q4 for more information). However, if you decide to define scripts that copy, spell check, and replace a region of text preselected by the user (instead of grabbing all of the text), you might have to use "cut" instead of "copy." This is because in many cases, copying the selected text removes the selection. When this happens, there is no way for the speller to replace just the original selected text so you'll be left with two versions of the text after the speller returns the corrected text unless you remove the original by cutting.
Q1. Why are all of the hotkey-related menu commands disabled?
A1. Most likely another instance of MicroSpell is running and hotkey text copy is enabled there. MicroSpell allows you to run multiple instances, but only one of them at a time can install the system hook that is required for hotkey spell checking to work. You'll have to disable hotkey spell checking in the instance in which it is enabled before you can enable it elsewhere; however, there's seldom any reason to prefer one instance over another for hotkey spell checking.
Q2. Can I redefine the hotkey to be anything I want?
A2. MicroSpell will allow you to set the hotkey to be just about anything you want. However, we recommend that you not use keys modified with "Alt-" if you have a convenient alternative. If you ignore this recommendation, your text window will sometimes receive "key down" messages for the "Alt" key without the corresponding "key up" message (or vice versa). This might not cause any problems, but we cannot state unequivocally that it won't. (Using an "Alt-" modifier, we've occasionally had text fail to copy while working with Notepad.)
You can use the same function key for the speller's hotkey as one that you use infrequently in another application. When you press this key in the other application the speller will intercept it, but will give you the option of passing the key through to the other application the next time you type it, assuming you have not defined a copy script for that window. So you'll have to type the function key twice and respond to the speller's prompt, but at least you can use it in another context without disabling it in MicroSpell.
Q3. Does the hotkey spell checking function work for any window?
A3. No. It works for many windows, but not all. The most obvious example is a window which has no keyboard support for cutting-and-pasting. Here's a less obvious possibility. When you define a copy script, the speller uses the window's "class name" to create the name of the file in which the script is stored. Later, when you ask for a hotkey transfer from a window of the same class, the speller knows which script file to use. The problem occurs because many windows can have the same class name. Fortunately, this usually means they are related and the same script will work for all. However, it is conceivable that you will encounter two different windows that have the same class name but which require incompatible scripts. In this case, you'll have to choose which one you want the script to work with.
Another way things can fail is if the same window has a different class name whenever you run a new instance of the program that creates it. In this case, the useful lifetime of your script would be the life of the text window or the program that created it. Finally, keep in mind that although you can create scripts for some windows, it might not be a good idea to do so if this leads to the loss of formatting information (see Modes and Text Formats).
Q4. Can I lose my text using hotkey spell checking?
A4. This is unlikely, especially if you save a copy to disk before a hotkey spell check. In most instances, there are always multiple copies of your text available: in the original window, on the Clipboard, in the speller's buffer. As a further safeguard, MicroSpell automatically saves a copy of your text to disk as soon as it obtains it from the Clipboard. This copy is stored in a file named Last-Hotkey-Copy.TXT. If you ever have problems, you can retrieve the last text you copied from this file. This file should be on the speller's list of recently used files at the bottom of the File menu. If you need to open it some other way, you'll find it in the "\DATA\" directory which is a subdirectory of MicroSpell's installation directory (by default C:\Program Files\MicroSpell\DATA). Also, remember that most edit windows have an undo command: you should probably try this first if you ever have any problems. Otherwise, try pasting from the Clipboard. If neither of these work, and the text is not in MicroSpell's main edit window, look in the Last-Hotkey-Copy.TXT file.
Q5. Why doesn't anything happen when I press the hotkey?
A5. Assuming that MicroSpell is running and hotkey spell checking is enabled, then the most likely reason is that the speller is busy with another task. If you ask for a hotkey transfer during a spell check or while the Inbox or one of several other dialogs is open, you'll receive a warning message.
Another possibility is that there were no misspellings and you have disabled both the "No Misspellings" self-closing dialog and the confirmation sound. Check the Options|General Preferences|Miscellaneous dialog and enable one or both of these indicators, if necessary.
Another possibility is that MicroSpell is no longer receiving keystrokes. This could be caused, for example, by another program that "takes over" the keyboard and does not forward the data. Try exiting and restarting MicroSpell or disabling and re-enabling hotkey spell checking from the Spell menu on the main window.
Q6. I can't figure out which keys to press to copy (paste) text. Any suggestions?
Usually, the first thing you want to do is select all of the text. The standard way is "Ctrl+A" so try that first. If that fails, try "Ctrl+Home" to move to the beginning of the text, followed by "Shift+Ctrl+End" to move to the end while selecting text. If neither of these work, perhaps there is a context menu that has a Select All command (check by right-clicking). Since you can't right-click in a script, you need to find a keyboard shortcut to launch the menu. The standard way is "Shift+F10", but we had to use "Shift+Ctrl+F10" in edit boxes on web pages displayed by Netscape. Once you can launch the context menu, you can usually press the letter key that serves as the shortcut for the desired command, or even use the up/down arrow keys to select a command. If you need to use one of the menus at the top of the main window of most programs, you can usually display the desired one by pressing "Alt" and holding it while you press the underlined letter in the name of the menu you want to display. Alternatively, you can try pressing and releasing "Alt", then using the left/right arrow keys plus "Enter" to show the desired menu.
For copying selected text, the usual shortcut is "Ctrl+C". For cutting selected text, the usual shortcut is "Ctrl+X". And for pasting text from the Clipboard, the usual shortcut is "Ctrl+V". For each of these actions, there is also likely to be a menu available with the requisite command. See the previous paragraph for ideas on how to display it.