[Thanks to Graham Ginsberg for the original
idea and suggestions during development.]
BlockProtectParaStyles.wcm - A macro that automatically adds block protection
(same as Format, Keep Text Together, Block Protect) to all user-specified
or default paragraph styles (e.g., Heading 1 - Heading 5) found in
a document, to keep the style and the next two lines of body
text together on the same page.
The resulting Block Protect codes will be
placed like this in Reveal Codes (highlighted here in yellow):
Naturally, as in the example above, you must
have some paragraph styles in the current document for the macro
to block-protect! Normally, to apply paragraph styles to text
you simply place your cursor anywhere on a heading, section,
or title line and choose a paragraph style from the Style List
on the Text Property Bar (or click Format, Styles, choose a style,
then click Insert). Most users probably will use the default
Heading 1 through Heading 5 styles, but you can use any available
paragraph style, such as custom
paragraph styles you have previously created and which are
available in your document.
The macro can be played any time and multiple
times in any document. If you insert
new section labels, heading lines, etc., just play the macro
again. Do the same if you delete blocks of text to ensure that
all styles are properly processed.
See also Conditional End of
Importnt notes and comments
- The macro processes only specified paragraph
styles that have been used in the document, such as (by default)
WordPerfect's own Heading styles shown in the Select Style list
on the Text Property Bar. The
default paragraph style used by the macro is Heading (i.e., Heading
1, Heading 2 ... etc.).
- So ... if you have simply keyboarded a "heading"
(e.g., typed a phrase, hit the <Enter> key twice, then
continued with the body of the paragraph) ... BPStyles won't
do a thing for you. You might try Conditional
End of Page (see below). But if you use WordPerfect's Heading styles
(or any custom paragraph style) for the paragraph or section
heading, you may find it helpful.
- Character Styles or Open (Document) Styles
are not processed, just Paragraph Styles. (The type of style
is shown in the dialog that displays when you click Format, Styles,
and choose a style from the list in the Styles dialog.) A paragraph
style has a built-in hard return at the end that delimits the
text inside the applied style. See
here for more on Styles.
- Up to five paragraph style name(s) can be
specified in the macro's code in the redlined User Modification
Area, of which Heading is one. You can specify four other custom
paragraph styles if they are present in the document or the default
template. Please read
the comments at the top of the macro's code if you need to add
custom styles. (Open the macro
as you would any other WP document, make the changes according
to the instructions at the top, then Save & Compile the macro
with the button on the Macro toolbar.)
- If all you use are WP's built-in Heading
styles to create paragraph or section headings, you do not need
to modify the macro.
- If there is only one text line following
the heading line, only that line will be included with the heading
line. No blank lines following that text line will be included.
- If there are two adjacent paragraph styles
-- for example, a heading followed immediately by a sub-heading,
with no text between them -- both styles will be locked together
with Block Protect so that they will remain together on the same
page. If this is undesirable, simply open Reveal Codes and delete
that particular Block Protect code.
- Starting with version 1.08, Widow/Orphan protection (Format, Keep Text Together, Widow/Orphan) is used
by default at the top of the document. Widow/Orphan protection
prevents the first and last lines of a paragraph from separating
across pages. You can remove this option in the macro's User
- Srarting with version 1.09, you have the
optional ability to have just the last two lines of a paragraph
style (such as a legal citation) and the following paragraph
block protected, See the included document or the macro's User
Modification Area for more information.
What about using Conditional
End of Page (CEOP) -- accessed via Format, Keep text Together?
Conditional End of Page has been reported to work inconsistently, especially
with counting blank lines following a paragraph heading style,
since the number of such "textless" lines could
vary in a document.
What if you put the CEOP inside the
paragraph style? As Noal Mellot, a WP Universe guru, stated:
"CEOP will, in a paragraph style, keep together any text
encapsulated in the style itself ... ; but it will not keep this
text together in any consistent way with text outside the style."
Also, setting the CEOP's value properly (to
keep headings and following text together) requires you to take
into account not only the expected number of blank lines
following the heading, but also any double-spacing or other-size-spacing
(if used), sub-heading lines (and any hard returns that separate
them), etc. For example, if you select "CEOP: 2", this
will "keep together" two lines of single-spaced text,
but only one line of double-spaced text.
Moreover, if you have multi-line paragraph-style
headings followed by one or more blank lines, the heading and
following body text might not be "kept together" by
the current CEOP setting, since the CEOP will count the number
of lines in the larger heading and fall short of the needed value
at that location.
It seems to this author that BPStyles is a
better solution when paragraph styles are applied (rather than
using plain text) for headings, sections, or titles.