Home | Tips | Library | Other Authors | Other WP Sites | Writer's Links | Contact | Site Map | Donate

Barry MacDonnell's
Toolbox for WordPerfect

Macros, tips, and templates for Corel® WordPerfect® for Windows®
© Copyright 1996-2017 by Barry MacDonnell. All Rights Reserved.

Page updated Feb 19, 2017

WordPerfect Tips
Main tips page | Browse tips

Three easy ways to play macros, load programs, type keystrokes, or use built-in WordPerfect features

Part 2 - Customize your keyboard

See also Part 1:
Customize your toolbars -
How to create a toolbar button to play a macro, load a program or file, or use a built-in WordPerfect feature
See also Part 3:
Customize your menu -
How to add, edit, rearrange, or remove menu items

Assigning ("linking") a macro, feature, function, program, or string of keystrokes to a key or key combination (i.e., to a "shortcut" or "hot key")

[Tip: If you are familiar with the following things,
you can skip down to "How to do it."]

☼  You can customize your keyboard so that pressing the <Alt>, <Ctrl>, or <Shift> key (or any combination of these) plus a number or a letter or a function key (e.g., <Ctrl+1>; <Alt+Shift+m>; <Alt+Ctrl+F5>), will -

•  play a WordPerfect macro, or 
•  use a WordPerfect feature or function, or
•  start an external program, or
•  send a string of keystrokes to WordPerfect or your current document.

☼  These key combinations are often called "shortcut keys" or "hot keys."

Their assignments -- what the key does when pressed -- are stored in a keyboard definition in the program's default template (or other template, if desired).

For a printout of the list of the items that are currently assigned to these shortcut keys, see Footnote 3.

☼  When you click the Tools, Settings, Customize, Keyboards (tab) (see image)...

You can select (i.e., make active), create, edit, copy, or rename/reset/delete a keyboard definition. (More on this later.)

☼  You can have several keyboard definitions on your system.

In fact, WordPerfect ships with several standard definitions (<WPWin Keyboard>, <WPDOS6.1 Keyboard>, <MSWord 2000>, etc.).

The <WPWin Keyboard> is generally the default (unless the user chooses to use Microsoft Word mode or WordPerfect Classic mode using the Workspace Manager, included in WordPerfect 12 and later versions: see Corel's article here and a further discussion here). 

☼  You can select a different keyboard definition any time.

You don't need to restart the program (but note that only one can be active at a time).  As mentioned, these keyboard definitions are selectable on the Tools, Settings, Customize, Keyboard (tab). Or -- even easier -- you can click on an icon on the bottom of the WordPerfect window to bring up the list of keyboards, as explained in Footnote 1.  

☼  You can also create custom keyboard definitions or edit standard definitions.

This lets you more easily and quickly meet your everyday needs or use them for special purposes, as explained below.

☼  Keyboard definitions are stored in your default template file.

They can be migrated (copied) into another WordPerfect installation, either the same program version or a newer program version. For more information see "Updating, upgrading, or reinstalling WordPerfect" here.

☼  There are many things you can assign to shortcut keys.

For example, there are many WordPerfect features (e.g., inserting the current file's path and name) or WordPerfect functions (e.g., setting line spacing) that you may find useful candidates to assign to a key or key combination. While many of these things are pre-assigned to menus, toolbars or keys, many of them are not. (See Step 3 below for information on locating the list of these features and functions.)

You can also assign macros to shortcut keys -- a quicker way to play them instead of first scrolling through a list of macros with <Alt+F10> keys or with Tools, Macro, Play. (See more about assigning macros in Footnote 2.)

☼  You can also assign these things to toolbars or a menu.

In fact, you may find that some WordPerfect features or functions are more useful when they are assigned to a toolbar since their button icons might make them easier to locate or make them less prone to accidental use when you are typing. If so, see Part 1 of this series. You can, however, assign them to a new or existing menu as explained in Part 3 of this series.

☼  Do WordPerfect's function key (F1-F12) shortcuts not work on your computer?

See Tips below.

☼ 
Navigation keys.

For a list of some navigation and text selection keys that are used in WordPerftect's Windows and DOS keyboard definitions you can read (left-click) or download (right-click) "WP_shortcut_keys.pdf" a small Adobe PDF file.

Normally, you will not want to assign other things to these default keys unless you really need to use them for a special purpose; if you do, it is always a good idea to do so with a copy of the keyboard definition, as explained below.

How to do it


Step 1.


•  Click on Tools, Settings, Customize to open the Customized Settings dialog:

Customized settings dialog


•  Click on the "Keyboards" tab in the Customize Settings window, then select either the default keyboard definition for your version of WordPerfect (e.g., <WPWin Keyboard>) or another keyboard definition (e.g., <WPDOS 6.1 Keyboard>).

•  Then do one of the following things.

Either click Create to create a new keyboard (based on the definition you just selected);

or click Copy to make a copy of the keyboard (choosing the desired keyboard in "Select keyboards to copy") and save it under a different name;

or click Edit to edit the existing keyboard.

    Note

    ¤  You might feel more comfortable with this process by customizing a new keyboard definition or a copy of the current or default keyboard definition -- the first two alternatives above -- and leave your existing default or customized keyboards alone. In fact, this is recommended unless you are certain that you want to modify the existing default or custom keyboard. It makes it much easier to restore things if you do not like the changes you have made.

    ¤  If you choose to Create a new keyboard definition or Copy an existing one, be sure to select it after you've modified it. You can do this by returning to the Customize Settings window with Tools, Settings, Customize. The keyboard definition you choose will remain in effect until you change it.


    Tip

    ☼  If you right-click on the status bar -- the very bottom edge of the WordPerfect window (a.k.a "Application Bar") -- you can then click Settings and check (tick) the box, "Keyboards."

    This will put a small icon on the status bar to let you quickly access the keyboard definition of your choice. [This works in WP8 and later versions, and may work in earlier versions.] For more, see Footnote 1.

    Step 2.

    The Keyboard Shortcuts dialog box will now be open. This is where you can make (or remove) an assignment:

    Keyboard shortcuts dialog

    •  Choose (i.e., click on) the key or key combination you want to change (reassign) in the left-hand "Choose a shortcut key" drop list.

    You may have to scroll down a bit: Letter- and number-key combinations follow function key combinations in the list; other non-alphanumeric keys are at the end of the list. You can also assign things to single character keys (but: see next Tips below).

    •  Choose an available letter or number combination -- e.g., Y+Alt or 3+Ctrl. [In this example, the assigned macro (or feature or keystrokes) will play when you press <Alt+Y> or <Ctrl+3>.]

    Tips

    ☼  Make a note so you'll remember which keys are being reassigned. (WordPerfect 11+ users can click the Print Report... button to print a list of current shortcut key assignments.)

    ☼  The checkbox at the bottom, "Allow assignment of character keys," will bring up a list of ordinary character keys (A, B, C, a, b, c), punctuation marks, and extended characters. Normally, you will have little use for this list (except perhaps to assign a "quick save" macro to the period [full stop] key; see here for this trick), but certain infrequently used keys could be used to play a macro, such as the ` key (next to the 1 key). These might be best used to play a "two keypress" macro so that you still have use of the key for normal text entry. See the Advanced User section below.

    ☼  You might also want to enable the "Shortcut key appears on menu" checkbox so that you'll see it in on WordPerfect's menu.
    Step 3.

    Step 3a.

    - If the shortcut key is available (i.e., the right-hand column immediately adjacent to the shortcut key is vacant), go to Step 3b.

    - If the shortcut key already has an assignment, first click on the Remove Assignment button to clear that assignment, then go to Step 3b.

    Step 3b.

    - Decide on the type of new assignment you will make from the right-hand side of the dialog box, the area that shows four tabs: Features, Keystrokes, Programs, or Macros.

    Step 3c.

    - Then -

    •  For WordPerfect macros, click on the Macros tab, then click "Assign Macro to Key..." and select the desired macro from those listed in your macros folder. [For help creating your own macros see here.] 

    If or when you get a message, "Save macro with full path?" you most likely will want to answer "No". WordPerfect will then use the path to the default and supplementalmacros folders specified in Tools, Settings, Files, Merge/Macro. (This is also helpful if you relocate your macros to another folder or to a different computer where the path to macros might be different than what was assigned originally.)

    If you answer "Yes" you can specify a path to any other folder; however, if you do so the paths specified in Tools, Settings, Files, Merge/Macro will not be used for that macro. And you will need to remember the new path in case you want to reassign the macro!

    Then click OK. This will assign it to the shortcut key combination.

    Notes

    Be aware that copying/moving assigned macros later to a different computer or a newer version of WordPerfect can sometimes "break" the assigned path to the macros (e.g., "Yes" was answered above) and prompts the question, Why won't my macros play anymore? 

    If so, choose the broken shortcut assignment and click Remove Assignment; then re-assign the macro to the shortcut and answer "Save macro with full path?" appropriately.

    For some information and tips on this, and the general topic of transferring macros to another system or WordPerfect version, see here.

    •  For WordPerfect features, under the Features tab, scroll down in the desired Feature category drop list to choose the appropriate cateogory, such as File, Edit, View, Insert, Format, etc. Then -

    •   In the lower "Assign a feature to the shortcut key" list, choose the feature you want to assign to the keystroke or combination, and click on Assign Feature to Key. [You might find some features you didn't know about by scrolling through the list and trying them out in a test document.]

    Note: Some features might be labeled slightly differently from the name you are used to. For example, Redline is listed as Attribute Redline. So, be sure to scroll through the feature list if you can't seem to find a feature. Clicking on a feature to select it (usually) shows an icon and a brief description in the dialog area below the feature list.

    •  When done, click the "Assign Feature to Key" button.

    •  For external programs, click the Programs tab, then the Assign Program to Key button. Locate and choose the exectuable program to play. Then click the "Assign Program to Key" button.

    •  For keystrokes, under the Keystrokes tab, I strongly recommend that you consider using alternative methods of inserting boilerplate or keystrokes, especially if you are using Windows Vista/7/8/10 and WordPerfect X3 and later versions. (See the Notes and caveats section below.) That said, the following information, while somewhat dated, might still be useful for some users.

    Click the Keystrokes tab, and in the "Type the text to be inserted..." pane, enter the keystrokes, characters, or symbols you need (but be sure to see the Notes and caveats section below):

    •  For keys such as <Alt>, use {Alt}. Other examples: {Ctrl}, {Shift}, {Space}, and {Tab}.

    •  For combinations such as <Alt+F>, use {Alt+F}.

    •  For text strings such as "the," enter them directly, or if this does not work, use {t}{h}{e}.

    •  For accented characters (diacritical marks), use the numeric keypad and enter the proper code found in the Windows Character Map (under Start, Programs, Accessories, System Tools, Character Map).

    For example, to enter an é in the Keystroke tab's field put the cursor in that field and type <Alt+0233> on the numeric keypad. (The leading zero is required.)

    Charles Rossiter (Corel C_Tech) writes: "For example, I use Alt+e for e-acute, Ctrl+Shift+E for E-grave, Alt+a for a-umlaut, Alt+Shift+O for O-umlaut, Alt+Shift+C for C-cedilla, etc. There is no conflict with other Alt-key shortcuts (e.g., Alt+a for T_a_ble): Alt+a gives a-umlaut [i.e., press and hold the Alt key, then press a]; Alt,a gives T_a_ble (i.e., press and release the Alt key, then press a)."

    Caution: If you use Windows XP/Vista/7 with WordPerfect X3 or later version, see the Notes and caveats section below about limitations of what you can use in the field under the Keystrokes tab.

    •  For symbols, press <Ctrl+W>, select the symbol, then click Insert and Close on the Symbols dialog.

    •  When done, click the "Assign Keystrokes to Key" button.

    Notes and caveats relating to the Keystrokes tab

    ¤  There may be a limit to the number of characters (including the left and right braces) that you can enter into this dialog window. There are other ways to insert large blocks of boilerplate text, such as QuickWords.

    ¤  WordPerfect X3 and later versions, using Windows XP/Vista/7/8 means that what you can enter under the Keystrokes tab is limited:
     
    In Windows XP you can use only text strings and/or WordPerfect symbols in the Keystrokes pane. You cannot use script commands (i.e., {Alt}, {Space}, etc.).

    In Windows Vista/7/8 — and with up to WordPerfect X3 the Keystrokes tab is even more limited: You have to disable the User Access Control (UAC) in Windows Vista/7/8 to make such text/symbol keystrokes work. Even in later WordPerfect versions (e.g., WPX7) script commands still will not work, and in any case disabling the UAC is something that is not generally recommended.

    A small bit of good news: Text strings (including space characters) and WordPerfect symbols (<Ctrl+W>) still work in the Keystrokes tab in a fully patched WordPerfect X4 or later version.

    But see the Alternatives section (next).

    Alternatives to the Keystrokes tab

    Rather than using the Keystrokes tab in conjunction with shortcut keys, consider using other methods of inserting text -- especially if using WPX3 and later versions. 

    For example:

    ☼  You can use QuickCorrect abbreviations to replace an abbreviation with the accented character as you type the abbreviation.

    ☼  You can use the WordPerfect symbol feature (Insert, Symbol) to insert diacritical marks by first pressing Ctrl+W, then typing the base letter (e.g., the letter e), then typing the accent mark (e.g., '). (Other "accent" marks you can use on the keyboard: `, ", ^, /, ~, etc.)

    ¤  See this post on WordPerfect Universe, where you can download a PDF file containing a table "... listing all the possible two-character combinations used with Ctrl+W as shortcuts for diacritical letters and various symbols. The combinations have been checked with WordPerfect X4, and there is a possibility that other combinations are available in later versions...."

    ☼ You can use other methods to insert blocks of boilerplate text including using simple "two-key" macros to insert accented characters.

      Step 4.

      •  Close all dialogs with Close or OK.

      Page Top

      Tips on using shortcut keys / hot keys

      For macros, features, programs, and keystrokes:

      ☼  You can use "reserved" keys such as <Alt+T> (which normally accesses the Tools menu). But if you do, the macro (or feature or program or keystrokes) will play instead of the Tools menu opening. However, you can still get at the reserved keys: If you press Alt, release it, and then press T (i.e., press the keys in sequence, not simultaneously), the Tools menu will open.

      ☼  If you can't see underlines under the <Alt>-key letter or number on a menu or dialog, they might have been hidden in Windows. See here.

      ☼  Function keys shortcuts / hotkeys (e.g., <Ctrl+F2> or <Alt+F3>) don't seem to work in WordPerfect?

      Old issue: Some older keyboards (e.g., on Microsoft laptops) used a "F-Lock" key next to the F12 key. It's a toggle key: Press it to lock the F-key functions; press it again to switch to its unlocked state. Also, for Windows 7 systems see this WordPerfect Universe thread.

      Current issues: Some computers -- particularly recent models with smaller keyboards -- use function keys for dual purposes (e.g., F2/screen brightness or F10/volume adjustment) but the F-key priority is reversed (e.g., screen brightness/F2), putting F-keys in "second place".

      Hence to use the F-key for its original purpose you need to depress and hold the Fn (or FN) key, which is usually located at the bottom of the computer's keyboard layout, while simultaneously pressing the F-key.

      Problem in WordPerfect: This can make using a WordPerfect shortcut key combination (i.e., those with a F-key as part of the shortcut) awkward at best, or impossible at worst, and is (usually) the reason for complaints such as "My function keys don't work!"

      Possible solution for newer systems when the F-key priority is reversed: Since all keyboard functions are designated in the computer's hardware setup (called the BIOS, or UEFI in newer systems) you should be able to reverse the new priority of the F-key assignments in the BIOS/UEFI with a simple setting (which you can change back the same way at any time), or with a small utility program some computers include with the system that does the same thing. Search your computer's user guide or support site (e.g., their user Forums), or search the Internet for something like "change function keys F1-F12 to old settings," "reverse function keys," "change function keys," "invert function keys," etc. Be sure to look for your specific computer brand and perhaps the model, too. [If all else fails contact your computer manufacturer for help.]

      For macros only:

      ☼  If customizing your keyboard is not an option, you may want to use an old WordPerfect trick to play a macro:

      Give the macro a name such as ctrlx.wcm or ctrlsftx.wcm, where "x" is a keyboard letter from A to Z or a number from 0-9. WordPerfect recognizes macro filenames that use "Ctrl" and "CtrlSft" (notice there's no "hi" in "Sft") in the filename as special.

      So, for example, if you press <Ctrl+J> or <Ctrl+Shft+J> the macro named CtrlJ.wcm or CtrlSftJ.wcm will play. This assumes, of course, that the macro exists in the default macros folder, which is specified in Tools, Settings, Files, Merge/Macro.

      Notes

      If the <Ctrl+(key)> combination you want to use as a macro filename has already been assigned in the Keyboard Shortcuts dialog, then that keyboard assignment will take precedence over any macro on disk with the same filename as the key combination.

      For example, in WP10 and later versions, <Ctrl+1> normally inserts single spacing, and <Ctrl+2> inserts double spacing -- neither of which might be obvious when you press these keys. In this case, a macro on disk named Ctrl1.wcm will not play automatically when you press <Ctrl+1>, since these keys have already been assigned. However ...

      You can verify if the combination is in use by opening the Keyboard Shortcuts dialog (see above steps); you may be able to change the current control-key assignment or remove it altogether to allow the named macro to play.
      ☼  See also "Two-key" macros, which can help organize related macros or tasks under a common keystroke combination.

      Page Top

      Examples

      Example #1 - Starting an Outline

      Suppose you want to bring up the Outline feature quickly, using the keyboard instead of clicking on Insert, Outline/Bullets, OK. In the old DOS keyboard, for example, "Outline Body Text" was assigned to <Ctrl+T>, but you can assign this feature to any unassigned keystroke combination. Here's how.

        • Click on Tools, Settings, Customize, then the Keyboards tab. Select the keyboard you want to edit (e.g., <WPWin 9>), then click on Edit to bring up the Keyboard Shortcuts dialog. [As mentioned above under step 1, some users may feel more comfortable with customizing a new keyboard or a copy of the current keyboard definition, and leave their default keyboard alone.]

        • In the left pane, scroll down to an available key combo that you want to use (e.g., O+Alt) and select it with your mouse.

        • On the right side of the dialog, use Feature Categories to select the Insert category, then in the lower pane select Outline Body Text.

        • Click on Assign Feature to Key, and also (optionally) enable the "Shortcut key appears on menu" checkbox so that you'll see in in WP's Insert menu.

        • Click on OK, then Close (twice).

      Now, when you press <Alt+O> the outline should start. Press <Alt+O> again when you want it to stop.

      If you want to use a key combo to start an outline item with a new number (e.g., "1") you could assign "Outline Number Set..." to, say <Alt+Shift+O).

      Example #2 - Deleting words the way Microsoft Word deletes them

      Microsoft Word allows you to press <Ctrl+Backspace> to delete the previous word, even if there's a space after the word. In WordPerfect, this key combination works only if there is no space.

      Update 2016:

      The Backspace key assignments were reinstated in all keyboard definitions with WordPerfect Office X7 and X8 (at least in English language versions). These combinations are now available for assignment (curiously, except for Alt+Ctrl+Bksp).

      The <Bksp+Ctrl> shortcut is, by default, assigned to "Delete Word" (deletes current word if selected; if not selected, deletes the following word). However, you may wish to use one of the methods below to give you more options, such as deleting words the way Microsoft Word does.

      [Historical notes: (Update 08/18/2009): Corel recently made an internal change to the Microsoft Word 2000 and 2002 keyboard definitions (see Step 1 above) to enable the same functionality of Ctrl+Backspace that you have if you use MS Word. You can choose one of those keyboards (Tools, Settings, Customize, Keyboards) or you can use one of the workarounds below with a WordPerfect keyboard. [The specific date of this change is not known to this author, but it might have been done with the release of WordPerfect 12, or perhaps earlier. You can simply try the MS Word keyboards to see if this functionality is present.]]

      Method 1 (for any WP version)

      Delete either the previous word
      or delete the next word:

      Here is a way to delete the previous word or delete the next word in WordPerfect [using a <WordPerfect> keyboard] -- even if there are spaces adjacent to the word -- with a shortcut key combination:
        • Click on Tools, Settings, Customize. Select the keyboard to edit under the Keyboards tab, then click the Edit button. The Keyboard Shortcuts dialog appears.

        • In the left pane, choose a shortcut key for the "delete the previous word" feature, such as <Left+Ctrl+Alt>, which will activate the feature when you hold down the <Ctrl> and <Alt> keys, then press the <Left Arrow> key.

        • Under the Features tab on the right side of the dialog, in the Feature categories list, select the Edit category. Scroll down in the "Assign..." list to Delete Word Begin and select it. Then click on Assign Feature to Key.

        • Repeat the process for the "delete the next word" feature, using <Right+Ctrl+Alt> and Delete Word. (Not Delete Word End, since that just deletes remaining letters in the current word.)

        • Click OK when you are finished, then Close.

      When you press one of these key conbinations (e.g., <Ctrl+Alt+LeftArrow>) repeatedly, you can delete consecutive words at the cursor location (assuming there are no format or other codes present).

      [Thanks to Wolfgang Deiminger for posting this tip in the public Corel newsgroup.]

      Method 2 (for any WP version; but since WPX7 you can now assign macros to the Backspace key)

      Delete to the beginning of the current word the cursor is on,
      or delete the previous word:

      A guru on WordPerfect Universe (Noal Mellott), posted a solution that uses a macro assigned to the <Shift+Delete> keys [or any available keyboard combination] to perform the same "Delete Word Begin" function above (note that it is a slightly different command in the macro language):

      [For WPX7 and earlier:] ...Since users cannot assign anything to Shift+Backspace, I made a macro and assigned it to Shift+Delete. As we know that key combination cuts what is selected to the clipboard (a standard Windows key assignment), but does nothing if nothing is selected. So I made the macro below, and assigned it to Shift+Delete. If a selection has been made, it is cut to the clipboard. If nothing is selected, it deletes to the start of the word or, if the cursor is at the start of the word, it deletes the previous word....

      // Macro begins:
      If(?BlockActive>0) EditCut()
      Else SelectMode(Off!) DeleteToBeginningOfWord () EndIf
      Return()
      // Macro ends

      Updated [2016]: as of WP18, users can assign macros to the Backspace key combinations [see above]. Here is what I suggest for Ctrl+Shift+Backspace:

      // Macro begins:
      If(?BlockActive>0)
      SelectWordPrevious() SelectDelete()
      Else DeleteToBeginningOfWord()
      EndIf
      // Macro ends

      Tip

      To copy the macro code above into your WordPerfect program, see here. Then assign it to your desired (and available) shortcut key combination using the method described above.

      Page Top


      Advanced users

      "Two tap" (a/k/a "double strike" or "double press") macros are macros that are played by two consecutive presses of the same, single alphanumeric key, and can be constructed using the format in the examples below. They can be useful to quickly play a favorite macro or one that must be played multiple times to process some text.

      You should note, however, that most alphanumeric keys are not very good candidates to use to play a macro this way, since there are many letters and numbers that might appear twice in a particular word or number. You could use upper case (by pressing the <Shift> key), but some might find this awkward. The best cadidates probably are the ` and = keys on the top row of your keyboard, and the backslash (backstroke) key (\). These keys are normally not found twice in sequence in most user text.

      Related concept: Insted of using the same alphanumeric key twice in succession you can use one shortcut key combination to start a special macro, then imediately press another key to perform some action -- e.g., <Ctrl+K+Q> or <Alt+D+2>. See "two-key" macros here.

      Example 1 - Change multiple spaces to a Tab

      Suppose you want to use the ` key (to the left of the 1 key on most keyboards) to play a macro that (1) deletes all multiple spaces at the cursor location and (2) replaces them with a tab. This is sometimes needed when you copy material from another source and the paragraph indentations are made up of spaces, not tabs.

      Suppose also that you want to be able to use this key to type a ` character whenever it might be needed. In other words, you do not want to lose the functionality of the ` key.

      Copy the code below and save it in your macros folder, then assign the macro to the ` key -- just to the left of the "1" key on the top row of your keyboard -- using the procedure described in the "How to..." sections above. [When you get to the Keyboard Shortcuts list in Step 2 above, you must enable (i.e., tick) the "Allow assignment of character keys" checkbox to change the list to the alphanumeric key list. Scroll down in that list. The ` key item is located just above the left brace ( { ) in the list.]

      Note again that the macro uses -- is assigned to -- the ` key on your keyboard. Thereafter, pressing the ` key once will type a ` character, as usual. Pressing it twice consecutively will cause the first ` characer to be "seen" by the macro on the left of the cursor, whereupon it will delete it and play the "working" part of the macro (i.e., convert the spaces to a tab) instead of simply typing another ` character.

      // Macro begins here -
      If (?LeftChar="`")  // if a ` character is on the left -
         DeleteCharPrevious  // - delete the character

          // The "working" part of the macro begins here -
          vCount:=0 // - initialize a counter
          // While the left character is a space, move to the left -
          While (?LeftChar=" ")
               PosCharPrevious
          Endwhile
          // Start selecting text -
          SelectMode (On!)
          // While the right character is a space, move right -
          While (?RightChar=" ")
               PosCharNext
               vCount:=vCount+1 // - increment counter
          Endwhile
          // If there's more than one space, delete all of them - 
          If (vCount>1)
               SelectDelete
               Tab  // - then insert a Left Tab
          Else
               SelectMode (Off!) // - turn select mode off
          Endif
          // The "working" part of the macro ends here

      Else
               Type ("`") // - type a ` character
      Endif
      Quit
      // Macro ends here

      Tips

      ☼  You can directly download this macro as 2Key-S2T.zip. It also contains optional code to search for all multiple spaces and replace them with tabs; you can use this code as a standalone macro.

      ☼  You can create "triple-strike" or even "quadruple-strike" macros by having the macro assigned to the alphanumeric key check the number of instances of that character that appear to the left of the last instance. If (for a triple-strike macro) the character appears two times, then the third press of the key would cause the two characters to be deleted and the macro to execute other commands. This approach increases the number of ordinary alphanumeric keys that might make good candidates to use to play such a macro. See "Make a key do 'double duty'..." for examples.

      Example 2 - Center the current cursor location vertically on screen

      Suppose you wish to quickly center the cursor's current location vertically on the screen so that you can see the context at that location.

      First, to demonstrate the technique, here's a simple macro to do the job (and that could also be assigned to any single key combination as described above in the "How to..." sections).

      If (?Substructure or ?GraphicSelected) Quit Endif
      QuickmarkSet
      Display (On!)
      QuickmarkFind
      Display (Off!)
      BookmarkDelete ("QuickMark")
      Quit

      However, if instead of assigning the macro to a single key or key combination, you want to use this type of macro by pressing a particular alphanumeric key twice in succession (i.e., make it a "double-key" macro), then the modified version below can do it.

      As in Example 1 above, the modified macro below uses the ` key in such a way that it is also available to type the ` character whenever it might be needed.

      Copy the code below and save it in your macros folder, then assign the macro to the ` key -- just to the left of the "1" key on the top row of your keyboard -- using the procedure described in the "How to..." sections above. [When you get to the Keyboard Shortcuts list in Step 2 above, you must enable (i.e., tick) the "Allow assignment of character keys" checkbox to change the list to the alphanumeric key list. Scroll down in that list. The ` key item is located just above the left brace ( { ) in the list.]

      Note again that this macro uses -- is assigned to -- the ` key on your keyboard. Thereafter, pressing the ` key once will type a ` character, as usual. Pressing it twice consecutively will cause the typed character to be deleted and the screen to refresh itself, and place the cursor location (as far as it is possible to do so) in the center of the screen, vertically.

      If (?Substructure or ?GraphicSelected) Quit Endif
      If (?LeftChar="`") // If there's a ` character on the left
        DeleteCharPrevious // - delete the ` character
        QuickmarkSet
        Display (On!)
        QuickmarkFind
        Display (Off!)
        BookmarkDelete ("QuickMark")
      Else
        Type ("`") // - type a ` character
      Endif
      Quit

      Page Top


      Footnote 1

      Quickly switching between keyboard definitions:

      You can enable a keyboard icon  on the status bar (WordPerfect calls it the Application Bar) at the bottom of the WordPerfect window. [If you don't see the Application Bar: Go to the main menu and enable the View, Application Bar menu option.]

      Right-click the Application Bar, 
      choose Settings, then 
      check the Keyboard option, then 
      click OK. 

      Thereafter you can click that icon and choose a different keyboard from the Customize Settings dialog list, then click Select.

      Tips

      ☼  There are some instructions on the Application Bar Settings dialog about moving an item on the bar, etc.

      ☼  You can also switch keyboards by using a small recorded macro (Tools, Macro, Record) assigned to a key or toolbar. (Assigning such macros to a toolbar has the advantage of always being available no matter which keyboard you use. If you assign such macros in a particular keyboard definition, you may want to assign similar macros to the "target" definition's keys so as to be able to switch back to the original (or other) definition.)

      ☼  Custom keyboards can also be made to appear automatically when you load a new document based on a custom template, by means of -

      [A] a template macro that uses KeyboardSelect() when the template is used to load a new document. You will need to create the keyboard and then create a small template macro in the custom template that is triggered by the Post New trigger. (N.B.: Template macros and other aspects of automating templates can be found in the author's Automating WordPerfect Templates.);

      or -

      [B] associating the keyboard with any of eleven (11) predefined features (or options), such as when you are in a footnote, header, outline, table, or the main document, etc. See "Automatically associate a personalized keyboard or menu with a template."


      Footnote 2

      To directly play a specific macro using a desired combination of keys -- in contrast to playing a macro by choosing one from a list with the standard <Alt+F10> keys or with Tools, Macro, Play -- you should first ensure the macro exists on your system. (This might seem obvious, but sometimes macros are moved or removed by others.)

      If it does not exist you will need to create the macro first -- either by recording it (with <Ctrl+F10 or Tools, Macro, Record), downloading it from a site such as this one, copying the code from somewhere, or by writing the code for it, or by a combination of these methods -- and then save it in either your Default or Supplemental macros folder (which are specified in Tools, Settings, Files, Merge/Macro)

      These folders are where WordPerfect will look for the macro when you play them in the usual way with <Alt+F10> or with Tools, Macro, Play.

      Exception: Macros can be placed in a folder other than the ones specified in the Tools, Settings, Files, Merge/Macro tab -- but this should be done only if they are played with a toolbar button, keyboard shortcut, or menu item that contains the full Windows path to them (specified in Step 3c above).

      However, this makes them more difficult to maintain since you will need to remember to edit the buttons, shortcuts, or menus (with Tools, Settings, Customize) to change their paths if you upgrade or install WordPerfect on another system. [This situation is often responsible for users asking, Why won't my macros play anymore?]



      Footnote 3

      Need to see a list of currently assigned shortcut keys? In WordPerfect 11 and later:

      [Repeated from Step 1 and Step 2 above:]

      •  Click on Tools, Settings, Customize to open the Customized Settings dialog.

      •  Click on the "Keyboards" tab in the Customize Settings window, then select the keyboard definition you are using.

      •  Click Edit to edit the keyboard definition.

      •  The Keyboard Shortcuts dialog box will now be open. This is where you can make (or remove) an assignment.

      •  Click the Print Report button to print a list of current shortcut key assignments.

      •  Done.


      Page Top