| Make a key do "double duty" by assigning a macro to it, and
make the macro play only if the key is struck multiple times (e.g., 2x,
Here are macros that can
- create a special graphic line with a few
taps of the equals (=) key
- automatically enter a hard return and
simultaneous save the document
- delete multiple spaces at the cursor
location and replace them with a tab
- automatically expand QuickCorrect
abbreviations to create possessives
To copy the macro code below into
WordPerfect, select the text from beginning to end and copy (Ctrl+C) it
to the Windows clipboard.
Open a blank document in WordPerfect and
click on Tools, Macro, Macro Toolbar.
Position your cursor after any
codes in Reveal Codes, and click on Edit, Paste Special, Unformatted
Text to paste the macro code into the WP document without any
extraneous formatting or other unwanted codes.
Check the pasted text for long lines
that may have wrapped into two or more lines with a hard return [HRt]
or line break [Ln Brk] between them; remove the hard return(s) or line
break(s) to "glue" the lines back together.
Save the pasted material with the Save
& Compile button on the Macro Toolbar. This will save the macro to
your default macros folder as shown in Tools, Settings, Files,
A user on a Corel newsgroup asked:
"In [Microsoft] Word, there's a
feature that lets you type, say, === and then hit enter, and it
automatically becomes a double line across the page. Doing that with
### creates a triple line, with the line in the center thicker that the
ones on the outside. Is there a similar feature in WordPerfect ...?"
Yes, if you use four hyphens
("----") or equal signs ("====") at the beginning of a line. There is a
setting in WP and it must be toggled on: Tools, Quick Correct,
However .... If you want a different
graphic line than the single- and double-line defaults that WP
provides, this can be done with a macro assigned to the particular key
(say, the "=" key). For example, the following macro will insert a
full-width triple line (the center line being thicker) if you assign it
to the "=" key, and then type four consecutive equal signs (on a blank
line) in your document. Please read the notes following the macro
- // Beginning of macro
// If the character to the left is an equal sign (i.e., ASCII 61) -
Note: The next 3 Graphics... lines were recorded (Insert, Shape, Custom
delete them and re-record them to use a different line style -
(Style: "Triple 1")
// End of macro code
| When the macro is assigned to the normal "=" key, pressing
that key the first time makes the "Else" condition true, and the macro
inserts a normal equal sign. Pressing that key again makes the "If"
condition true, and (if there are four equal signs to the left) the
macro counts and deletes all equal signs up to the cursor, and inserts
a graphical line in their place.
Assign this macro to
on Tools, Settings, Customize, Keyboards tab. Select the keyboard you
want to modify. (Or click Copy to make a copy of it first: In the Copy
Keyboard window, select the keyboard to copy, click Copy, and "Rename
the object" with a new name, then click OK. Left-click the new
keyboard's name and click Select to use it.) Next, in the Customize
Settings window, click Edit to edit the keyboard definition. Check the
box at the bottom, "Allow assignment of character keys". In the left
window, scroll down to the "=" key and select it, then click Remove
Assignment if there is any current assignment (say, some other macro or
feature). In the right-hand window, click the Macros tab and then
Assign Macro to Key. Select the macro from the file directory, and
click OK, then Close until you are back in your document.
can have the "#" key (or any other unassigned key) perform this
function by changing "61" to "35" in the two relevant lines above. Then
assign the macro to the "#" key. (Note: I used an old ASCII chart to
get these numbers. There are lots of places to get this chart; for
example - http://www.ascii.cl/ and http://www.asciitable.com/)
You could assign a macro to a key that
does something other than insert a graphical line. For example, you
could use the backslash key ("\") -- just above the <Enter> key
-- to enter a hard return and save the file at the same time. Here's a
macro to do it (also included in MultiSav.zip).
After adding it to your macros folder, assign it to the bakslash key in
the same way as explained in the paragraphs above.
// - - - Macro code
begins here - - -
// Assign this macro to the "\" key. Then pressing backslash twice
cause the macro to delete the backslashes, then enter a hard return and
save the file.
// To make the macro work with 3 consecutive backslashes, change the
If(vCount=2) to If(vCount=3).
// If the character to
the left is a backslash (i.e., ASCII 92) -
// Go backwards and
count number of backslashes
// Return to original
// - - - Macro code ends here - - -
| Click here for a macro that uses the `
key (next to the "1" key) to play a macro when the ` keys is pressed
twice in succession. This "double-strike" macro example deletes
multiple spaces at the cursor location and then inserts a Tab.
Automatically expand QuickCorrect
abbreviations to create possessives by "double-tapping" the single
quote mark key ('). For example, if you have a QuickCorrect entry "pf"
that expands to "plaintiff" when you press the spacebar, you can make
it expand to "plaintiff's" with this technique. Here's how.
When the macro below is assigned to the
normal single quote key (see more, below), pressing the single quote
key the first time makes the macro's "Else" condition true (i.e.,
there's no single quote on the left), and the macro simply inserts a
single, straight (non-typographical) quote mark at the cursor location.
Pressing the single quote key once more
makes the "If" condition true (i.e., there now is a single quote on the
left of the cursor). The macro then immediately types a space, then
deletes the space. A space character enables QuickCorrect entries to
expand. You can then type an "s" to created the possessive of the
previous (now expanded) word.
If QuickCorrect is turned OFF (Tools,
QuickCorrect, Replace words as you type), the macro will pop up a
The typographical version of the
single quote (the symbol (4,28), which has the numerical value of 1052)
used below is the same one normally used in QuickCorrect's SmartQuotes
tab. If you use a different SmartQuote for the single quote mark, you
need to change the command below to match it. (Most users will not need
to do this.)
// Macro code begins
// Check if the item
to the left is a single quote text character,
// or if it is a WP symbol (a typographical quote mark
If(CToN(?LeftChar)=39 or CToN(?LeftChar)=1052)
If(?QuickCorrect=False) // Display a message -
DeleteCharPrevious // Delete
the quote mark
// The Messagebox()
command should be all on one line:
"QuickCorrect is currently OFF."
"Turn it ON to expand QuickCorrect
entries with" +NToC(0F90Ah)+
'Expand words as you type.'"
Type(" ") // <= Space character
Type("'") // <= Straight, single quote
between double quotes
// Macro code ends
Assign this macro to
Click Tools, Settings, Customize,
Keyboards tab. Select the keyboard you want to modify. (Or click Copy
to make a copy of it first: In the Copy Keyboard window, select the
keyboard to copy, click Copy, and “Rename the object” with a new name,
then click OK. Left-click the new keyboard’s name and click Select to
use it.) Next, in the Customize Settings window, click Edit to edit the
keyboard definition. Check the box "Allow assignment of character keys".
In the left window, scroll down to
the single quote (it's just after the ampersand, "&") and select
it, then click Remove Assignment if there already is an assignment. In
the right-hand window, click the Macros tab and then Assign Macro to
Key. Select the macro from the file directory, and click OK, then Close
until you are back in your document.
You might also want to assign the
single quote keystroke to, for example, the '+Alt keys. In the event
you need a single quote and the macro is not available (such as when
editing a macro), this "backup" assignment might come in handy.