|
Three WP versions available:
For WordPerfect 9/10/11*/12/X3 - Download
DYNA_WP9.ZIP (v1.13; 10/19/06; 56,117 bytes)
For WordPerfect 8/9 - Download
DYNA_WP8.ZIP (v1.10a; 8/25/00; 55,742 bytes)
For WordPerfect 7 - Downoad
DYNA_WP7.ZIP (v1.09.07; 12/7/99; 23,892 bytes)
Basically the same as version 1.09 for WP8/9 (above) but uses
a wait message and status prompt instead of a progress indicator.
Sorry, but this probably is the last version for WP7.
Downloading,
Documentation, Modifications, and Support
*
- If you use WordPerfect 11, see information about using macros (from
any source, not just this website) in the first release of
WordPerfect 11 (i.e., build 11.0.0.233, as shown in WordPerfect's
Help > About ...)
|
Purpose
DynaHead is a macro that produces
"dynamic headers" or "floating headers" --
i.e., headers
that change page-to-page with
the section, topic, or heading on the same page.
DynaHead is useful for manuals,
reports, directories, company phone books, catalogs, parts lists,
glossaries, etc. -- wherever you need to identify pages with
a header topic that relates to a topic on the same page.
Advantages
The main advantage is that you
do not have to go to each page, decide on -- then select -- a
heading or other phrase, copy the selection to the clipboard,
create a new Header on that page, edit the Header, paste the
copied text into the Header, justify it, exit from the Header,
then go to the next page and repeat the process. DYNAHEAD does
all this for you.
Options
Several formatting options can
be selected from a menu to allow you to customize the "look"
or "style" of the headers, including placing them
- in Header A or Header B
- on alternating pages (left-justified
on even pages, right-justified on odd pages)
- in a "dictionary"
style (Word A - Word Z on each page)
- with outdented header margins
- formatted with various font
attributes and/or relative sizes
- with preceding text strings
(e.g., "Chapter 5 - ")
How it works
in general
The macro searches for section
headings or other body text that was previously marked ("tagged")
with Paragraph styles or Character
styles (see also the limitations below).
When it finds the chosen style on a page (you will have already
chosen the style's name from the macro's menu), it copies
the text to which the style was applied and pastes it into a
new header on the same page. It then proceeds page-by-page
to the end of the document, creating new "dynamic"
headers as it goes.
For example, you could set DYNAHEAD
to find all instances of a standard WordPerfect paragraph heading
style that exists in the document, such as the "Heading
2" style. (The standard style named "Heading 2"
must have been applied to text somewhere in the current document.
Many users find these standard Heading styles convenient since
they also cause their text to automatically appear in any Table
of Contents you might generate.) Or, you could have DYNAHEAD
find a user-defined (a/k/a custom)
style such as "MyStyle3" that was used in the document.
The text to which these styles were applied will appear
in the Header on that page, formatted in the manner dictated
by the options you chose on the macro's menu.
How it works
on each page
The first instance of text marked
by the chosen style that is found on a page is copied to the
header on that page. The last instance of marked text (which
could be the same as the first, or it could be different) is
stored and used on any subsequent page that doesn't have any
marked text, so that there is a "carry-over" effect
on intervening pages. In other words, all pages will always have
dynamic headers. [If dictionary-style headers are chosen, the
last marked text is used inside the same header, thus: "Word(s)
A Word(s) Z". Dictionary-style headers also alternate
their justification on odd/even pages.]
Notes
and known limitations
- Paragraph styles -- such as the five WordPerfect
default Heading styles -- end with a hard return, and are often
used for document headings or other sectional divisions. Character styles, on the other hand, can be applied
to words, phrases, or larger blocks of text, and do not require
a hard return. Dynahead works best when either type of style
is only applied to short blocks of text, such as a word
or a phrase; otherwise, you could produce headers that are too
large or "crowded." (See also the known limitation
about styles that span more than one page, below.)
- Document ("Open")
styles are not supported. Unlike Paragraph and Characters styles,
which are produced by a pair of codes, there is no ending
code in a Document style. Because of this characteristic the
macro cannot find the end of the block of Character-style-marked
text; therefore it cannot copy that text to the page headers.
Only Paragraph and Character styles are supported.
- If you later add or remove text
or graphics from your document, play DynaHead again to refresh
the headers. Dynamic headers of the type used here are not automatically
updated when you make changes to your document. (A message displays
after the macro completes its work to remind you to replay the
macro after revising a document.)
- If you plan on using a Table
of Contents (TOC) or an Index, you should create the TOC or Index
after playing DynaHead -- or at least regenerate the TOC/Index
after you have finished with DynaHead. DynaHead creates headers
on every page, and since headers (like footers) "encroach"
on the body text area, the creation of headers can push body
text downward into the document due to the decreased size of
the body text areas on each page. This can cause a pre-existing
TOC or Index's page numbering to be incorrect for some pages.
It is a good idea to regenerate a TOC and Index after playing
DynaHead.
- A style (i.e., the marked text
to which a style has been applied) that is split over two pages
may sometimes produce incorrect headers because the macro searches
for the beginning and ending of a given text style on a page-by-page
basis. Try to confine text that is marked with a style to a single
page. (You can "block protect" styles: See "BPSTYLES - Block protects paragraph
styles (e.g., "Heading 2") and following body text".
- Hidden text codes ([Hidden] and [Hidden Txt])
can be problematic (in WP8 they caused some search code to go
into a loop).
- Multi-page tables can slow down
the macro as it locates the top of each page. On occasion these
tables may cause the macro to produce improper header text on
the last page, or even cause the macro to fail.
- One solution that has ben reported
to work is to temporarily remove the table (i.e., copy it to
an empty document), play the DynaHead macro, then insert the
table back in the appropriate location. Use Reveal Codes to ensure
that you also copy the table's [Tbl Def]
and [Tbl Off] codes, which include the table's formatting.
- Pre-existing [Suppress]
codes on Page 1 can be problematic. For example, if the macro
has been previously played on the same doument with the "Suppress
header type (A or B) on page 1" option selected, and is
subsequently played with this option deselected, a header still
will not appear on Page 1. In this event, manually delete the
appropriate [Suppress] code in the Reveal Codes window. For more
on the suppress feature, see here.
- Note that the macro language
cannot tell what type of suppress code it finds in a search,
so coding around this problem is not possible since a user may
have used several such codes with differing purposes.
Tip
If you want to add your own custom
style names to the menu's drop list, here's a procedure (tested
in WP12) that should do the job, but it requires editing the
macro and using the macro's Dialog Editor -- something that probably
will appeal only to intermediate or advanced users.
Example: Suppose you have a custom paragraph style named
"Stepped
2." Open the macro for
editing and carefully follow these steps.
Step 1.
Click the Dialog Editor button
on the macro toolbar. The PerfectScript dialog window
appears.
Step 1a.
Double-click "menu1" to open the standard (non-metric) DynaHead
menu for editing. ("menu2" is for metric users.)
Two new dialogs open on screen:
the PerfectScript Dialog Editor toolbar, and the DynaHead menu
(in dialog editing mode).
Double-click anywhere on the
DynaHead menu's style name drop list to being up the Combo
Box Properties dialog.
Step 1b.
Click the Create/Edit list button
in the Combo Box Properties dialog; in the "List item:"
field, enter (without quotes) "Stepped 2" and click
OK. (Note that names are case-sensitive.) The new style name
will be added to the list.
Repeat Step 1b for any
other custom paragraph style names you want to add. (When you
are using Create/Edit List, you can select an item and use the
Move Up and Move Down buttons, as well as Set Initial to set
the initial menu selection the user will see.)
When you are finished adding
to the "List items:" field, click OK from the Combo
Box Properties dialog to dismiss the dialog.
Step 1c.
On the other "floating toolbar"
dialog (i.e., the PerfectScript Dialog Editor dialog),
click the Save button (or use File, Save from the Editor's menu).
Then use File, Close from the Editor's menu.
You should now be back in the
main macro document window, editing it.
Step 2.
Now you need to modify some of
the macro's commands.
At about line 137 in the macro
code, you'll see this line of code (it will be all on one
line):
Default: vStyleNameorEnum
:= vEntryStyle Break // Store user-defined style
Just above it, carefully
enter this line of code (type all on one line):
CaseOF "Stepped
2": vStyleNameorEnum := "Stepped 2" Break
(Note that style names are case-sensitive.)
Repeat Step 2 for any
other style names you added in Step 1b.
Step 3.
When finished, click the Save
& Compile button on the macro toolbar. This will save the
changes you made in Steps 1 and 2.
Play the macro on a document
that has the Stepped 2 style in it.
|