[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[groff] 01/04: Version 2.1
From: |
Peter Schaffter |
Subject: |
[groff] 01/04: Version 2.1 |
Date: |
Thu, 05 Feb 2015 20:21:08 +0000 |
PTPi pushed a commit to branch master
in repository groff.
commit 2dec18f066f1f93d6b92e6a1a64146c76f2e2f1e
Author: Peter Schaffter <address@hidden>
Date: Thu Feb 5 15:15:30 2015 -0500
Version 2.1
---
contrib/mom/om.tmac-u | 5831 +++++++++++++++++++++++++------------------------
1 files changed, 2984 insertions(+), 2847 deletions(-)
diff --git a/contrib/mom/om.tmac-u b/contrib/mom/om.tmac-u
index dd6d527..8cec0d5 100644
--- a/contrib/mom/om.tmac-u
+++ b/contrib/mom/om.tmac-u
@@ -3,7 +3,7 @@
.ig
Mom -- a typesetting/document-processing macro set for groff.
-Copyright (C) 2002-2014 Free Software Foundation, Inc.
+Copyright (C) 2002-2015 Free Software Foundation, Inc.
Written by Peter Schaffter <address@hidden>
PDF integration contributed by Deri James <address@hidden>
@@ -22,8 +22,8 @@ for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
-Version 2.1-c_2
----------------
+Version 2.1
+-----------
Antoine de St-Exup�ry asserted that elegance in engineering is
achieved not when there is nothing left to add, but when there is
nothing left to take away.
@@ -41,7 +41,7 @@ Thanks to everyone who has contributed suggestions and
patches,
and to those whose GPL'd work has been plundered. Special thanks
to Werner Lemberg (margin notes), Tadziu Hoffman (underlining),
Deri James (pdf integration), Robin Haberkorn (tbl integration, eqn
-extentions, and float management).
+extensions, and float management).
..
.\" %beginstrip%
\#
@@ -215,6 +215,9 @@ end
.if n .color 0
.nr TOC.RELOCATE 0 \" TOC.RELOCATE is off by default
.ds PDFHREF.TEXTCOL.DEFAULT 0.0 0.3 0.9
+.nr PDFHREF.VIEW.LEADING.C 3i
+.nr PDFHREF.VIEW.LEADING.T 1i
+.nr PDFHREF.VIEW.LEADING.H \n[PDFHREF.VIEW.LEADING]
\#
\# ====================================================================
\#
@@ -333,7 +336,6 @@ end
\#
.MAC T_MARGIN END
. nr #T_MARGIN (\\$1)
-. nr #TOP 1
. if !\\n[#DOCS] .sp |\\n[#T_MARGIN]u-1v
. wh 0i DO_T_MARGIN
.END
@@ -405,10 +407,8 @@ end
\#
.MAC DO_T_MARGIN END
. ev T_MARGIN
-. nr #TOP 1
. sp |\\n[#T_MARGIN]u-1v
. ev
-. sp -\\n[#T_MARGIN_LEAD_ADJ]u
.END
\#
\# DO_B_MARGIN
@@ -422,11 +422,11 @@ end
\#
.MAC DO_B_MARGIN END
. nr #T_MARGIN_LEAD_ADJ \\n[#LEAD]-12000
-. if !\\n[#DOCS] .vpt 0
. ev B_MARGIN
-' sp |\\n[.p]u
-. if !\\n[#DOCS] .vpt
. if !n .nop \X'ps: exec 0 setlinejoin'\X'ps: exec 0 setlinecap'
+. ie \\n[#DOCS] \
+. if !\\n[#NEWPAGE] .bp
+. el .bp
. ev
.END
\#
@@ -441,28 +441,24 @@ end
\# breaks to a new page.
\#
.MAC NEWPAGE END
+. nr #NEWPAGE 1
. if \\n[.vpt]=0 .vpt
. ie \\n[#NO_BREAK] \{\
' br
. rr #NO_BREAK
. \}
. el .br
-. nr #NEWPAGE 1
. nr @TOP 1
. ie \\n[#B_MARGIN_SET]=1 \{\
-. ie !\\n[#DOCS]=1 \{\
-. ev NP
-. DO_B_MARGIN
-. ev
-. \}
+. ie !\\n[#DOCS]=1 .DO_B_MARGIN
. el \{\
. if \\n[#COLUMNS]=1 .nr #COL_NUM \\n[#NUM_COLS]
. ie !\\n[#FN_DEPTH] \{\
. ch FN_OVERFLOW_TRAP
. DO_FOOTER
-. wh -(\\n[#FN_OVERFLOW_TRAP_POS]u) FN_OVERFLOW_TRAP
+. wh -\\n[#FN_OVERFLOW_TRAP_POS]u FN_OVERFLOW_TRAP
. \}
-. el .DO_B_MARGIN
+. el .FOOTER
. \}
. \}
. el 'bp
@@ -534,6 +530,8 @@ end
\# to $FAMILY.
\#
.MAC FAMILY END
+. if '\\n[.ev]'COVER_TEXT' .ds $SAVED_DOC_FAM \\n[.fam]
+. if \\n[#COLLATE] .rm $SAVED_DOC_FAM
. ds $FAMILY \\$1
. if \\n[#PRINT_STYLE]=1 \{\
. fam \\*[$TYPEWRITER_FAM]
@@ -590,14 +588,14 @@ end
. tm1 "[mom]: Font style "\\*[$FONT]" at line \\n[.c] has not
been registered.
. ie \\n[#ABORT_FT_ERRORS]=0 \
. tm1 " Continuing to process using fallback font.
-. el .ab Aborting '\\n[.F]' at \\$0, line \\n[.c].
+. el .ab [mom]: Aborting '\\n[.F]' at \\$0, line \\n[.c].
. \}
. if \\n[.f]=0 \{\
. tm1 "[mom]: Either font style "\\*[$FONT]" at line \\n[.c]
does not exist in family "\\n[.fam]",
. tm1 " or family "\\n[.fam]" has not been installed.
. ie \\n[#ABORT_FT_ERRORS]=0 \
. tm1 " Continuing to process using fallback font.
-. el .ab Aborting '\\n[.F]' at \\$0, line \\n[.c].
+. el .ab [mom]: Aborting '\\n[.F]' at \\$0, line \\n[.c].
. \}
. \}
. \}
@@ -660,7 +658,6 @@ end
\#
.MAC LS END
. br
-. nr #OLD_LEAD \\n[.v]
. if \\n[#PRINT_STYLE]=1 .return
. if \\n[#IGNORE] .return
. if \\n[#AUTO_LEAD] \{\
@@ -670,12 +667,6 @@ end
. \}
. vs \\$1
. if \\n[.t]<\\n[.v] 'bp
-. if \\n[#TOP] \{\
-. nr #TOP_BASELINE_ADJ \\n[.v]-\\n[#OLD_LEAD]
-. sp -\\n[#TOP_BASELINE_ADJ]u
-. rr #TOP
-. rr #TOP_BASELINE_ADJ
-. \}
.END
\#
\# AUTOLEAD
@@ -696,7 +687,6 @@ end
. if \\n[#PRINT_STYLE]=1 .return
. if \\n[#IGNORE] .return
. nr #AUTO_LEAD 1 \" autolead on or off
-. nr #OLD_LEAD \\n[.v]
. nr #AUTOLEAD_VALUE (p;\\$1) \" arg x 1000
. ie '\\$2'FACTOR' \{\
. if !\\n[#DOCS] .nr #DOC_AUTOLEAD_FACTOR \\n[#AUTOLEAD_VALUE] \" save
for DOC_PT_SIZE
@@ -704,12 +694,6 @@ end
. \}
. el .nr #AUTOLEADING \\n[#AUTOLEAD_VALUE]
. vs \\n[.ps]u+\\n[#AUTOLEADING]u
-. if \\n[#TOP] \{\
-. nr #TOP_BASELINE_ADJ \\n[.v]-\\n[#OLD_LEAD]
-. sp -\\n[#TOP_BASELINE_ADJ]u
-. rr #TOP
-. rr #TOP_BASELINE_ADJ
-. \}
.END
\#
\# STRINGS FOR INLINE CONTROL OF GENERAL TYPE STYLE
@@ -771,14 +755,9 @@ end
\#
.nr #LOOP 0 1
.while \n+[#LOOP]<37 \{\
-. ds BU\n[#LOOP] \h'-(\En[#PT_SIZE]u/\n[#KERN_UNIT]u*\n[#LOOP]u)'
-.\}
-\#
-.nr #LOOP 0 1
-.while \n+[#LOOP]<37 \{\
+. ds BU\n[#LOOP] \h'-(\En[#PT_SIZE]u/\n[#KERN_UNIT]u*\n[#LOOP]u)'
. ds FU\n[#LOOP] \h'(\En[#PT_SIZE]u/\n[#KERN_UNIT]u*\n[#LOOP]u)'
.\}
-.rr #LOOP
\#
\# Horizontal movements
\# --------------------
@@ -1066,14 +1045,13 @@ end
\#
.MAC ALD END
. br
-. if \\n[nl]=0 .nr #TOP 1
. if '\\$0'ALD' \{\
-. nr #ALD (\\$1)
+. nr #ALD (u;\\$1)
. sp \\n[#ALD]u
. \}
. if '\\$0'ADD_SPACE' \{\
. vpt 0
-. nr #ALD (\\$1)
+. nr #ALD (u;\\$1)
. rs
. nop \&
. sp |\\n[#T_MARGIN]u-1v+\\n[#ALD]u
@@ -1097,7 +1075,7 @@ end
\#
.MAC RLD END
. br
-. nr #RLD (\\$1)
+. nr #RLD (u;\\$1)
. sp -\\n[#RLD]u
.END
\#
@@ -1451,6 +1429,8 @@ end
\# mode is enabled.
\#
.MAC QUAD END
+. if \\n[#COVERTEXT_PP] \
+. ds $RESTORE_DOC_QUAD \\*[$QUAD_VALUE]
. ds $QUAD_VALUE \\$1
. if \\n[#TAB_ACTIVE]=0 \{\
. nr #QUAD 1
@@ -1500,12 +1480,12 @@ end
\# LEFT, RIGHT, AND CENTER
\# -----------------------
\# The purpose of these macros is to allow the user to enter lines
-\# of text that will be quadded LRC having to stick .BR or .br
-\# between lines. For the sake of consistency, all three appear to
-\# behave similarly (from the point of view of the user), although
-\# the underlying primitives don't. For this reason, LEFT, RIGHT,
-\# and CENTER must be followed by .QUAD [L R C J] or .JUSTIFY to
-\# restore text to fill mode.
+\# of text that will be quadded LRC without having to stick .BR
+\# or .br between lines. For the sake of consistency, all three
+\# appear to behave similarly (from the point of view of the user),
+\# although the underlying primitives don't. For this reason, LEFT,
+\# RIGHT, and CENTER must be followed by .QUAD [L R C J] or .JUSTIFY
+\# to restore text to fill mode.
\#
\# LEFT
\# ----
@@ -1895,6 +1875,28 @@ end
\#
\# +++MISCELLANEOUS USEFUL MACROS AND STRINGS+++
\#
+.nr _w 500
+.nr _d 1250
+\#
+\# These string are used for creating aliases within loops that set
+\# style for doc-cover, cover, and docheader items. They're defined
+\# here because underscoring needs them.
+\#
+.ds TITLE_TYPE_1 ATTRIBUTE
+.ds TITLE_TYPE_2 AUTHOR
+.ds TITLE_TYPE_3 CHAPTER
+.ds TITLE_TYPE_4 CHAPTER_TITLE
+.ds TITLE_TYPE_12 COPYRIGHT
+.ds TITLE_TYPE_5 COVERTITLE
+.ds TITLE_TYPE_14 COVER_TITLE
+.ds TITLE_TYPE_6 DOCTITLE
+.ds TITLE_TYPE_7 DOCTYPE
+.ds TITLE_TYPE_8 DOC_COVERTITLE
+.ds TITLE_TYPE_13 DOC_COVER_TITLE
+.ds TITLE_TYPE_11 MISC
+.ds TITLE_TYPE_9 SUBTITLE
+.ds TITLE_TYPE_10 TITLE
+\#
\# UNDERLINE
\# ---------
\# *Arguments:
@@ -1905,9 +1907,6 @@ end
\# Defaults for rule weight and distance from baseline are below.
\# UNDERLINE_SPECS lets user change them
\#
-.nr _w 500
-.nr _d 1250
-\#
.MAC UNDERLINE_SPECS END
. ie \B'\\$1' .nr _w (u;\\$1)
. el \{\
@@ -1943,7 +1942,7 @@ end
. \}
. el \{\
. nr #UNDERLINE_ON 0
-. SS \\*[$SAVED_SS_VAR]
+. if !'\\*[$SAVED_SS_VAR]'' .SS \\*[$SAVED_SS_VAR]
. ie !n .nop \X'ps: exec decornone'\c
. el .ul 0
. \}
@@ -2038,69 +2037,29 @@ end
. nr #SAVED_UNDERSCORE_WEIGHT \\n[#UNDERSCORE_WEIGHT]
. nr #SAVED_UNDERSCORE_WEIGHT_ADJ \\n[#UNDERSCORE_WEIGHT_ADJ]
. ds $SAVED_UNDERSCORE_GAP \\*[$UNDERSCORE_GAP]
-. if \\n[#FROM_BIB_STRING]=1 \{\
-. nr #UNDERSCORE_WEIGHT \\n[#BIB_STRING_UNDERLINE_WEIGHT]
-. nr #UNDERSCORE_WEIGHT_ADJ \\n[#BIB_STRING_UNDERLINE_WEIGHT_ADJ]
-. ds $UNDERSCORE_GAP \\*[$BIB_STRING_UNDERLINE_GAP]
-. \}
-. if \\n[#FROM_COVER]=1 \{\
-. nr #UNDERSCORE_WEIGHT \\n[#COVER_UNDERLINE_WEIGHT]
-. nr #UNDERSCORE_WEIGHT_ADJ \\n[#COVER_UNDERLINE_WEIGHT_ADJ]
-. ds $UNDERSCORE_GAP \\*[$COVER_UNDERLINE_GAP]
-. \}
-. if \\n[#FROM_DOC_COVER]=1 \{\
-. nr #UNDERSCORE_WEIGHT \\n[#DOC_COVER_UNDERLINE_WEIGHT]
-. nr #UNDERSCORE_WEIGHT_ADJ \\n[#DOC_COVER_UNDERLINE_WEIGHT_ADJ]
-. ds $UNDERSCORE_GAP \\*[$DOC_COVER_UNDERLINE_GAP]
-. \}
-. if \\n[#FROM_DOCTYPE]=1 \{\
-. nr #UNDERSCORE_WEIGHT \\n[#DOCTYPE_UNDERLINE_WEIGHT]
-. nr #UNDERSCORE_WEIGHT_ADJ \\n[#DOCTYPE_UNDERLINE_WEIGHT_ADJ]
-. ds $UNDERSCORE_GAP \\*[$DOCTYPE_UNDERLINE_GAP]
-. \}
-. if \\n[#FROM_EN_STRING]=1 \{\
-. nr #UNDERSCORE_WEIGHT \\n[#EN_STRING_UNDERLINE_WEIGHT]
-. nr #UNDERSCORE_WEIGHT_ADJ \\n[#EN_STRING_UNDERLINE_WEIGHT_ADJ]
-. ds $UNDERSCORE_GAP \\*[$EN_STRING_UNDERLINE_GAP]
-. \}
-. if \\n[#FROM_EN_TITLE]=1 \{\
-. nr #UNDERSCORE_WEIGHT \\n[#EN_TITLE_UNDERLINE_WEIGHT]
-. nr #UNDERSCORE_WEIGHT_ADJ \\n[#EN_TITLE_UNDERLINE_WEIGHT_ADJ]
-. ds $UNDERSCORE_GAP \\*[$EN_TITLE_UNDERLINE_GAP]
-. \}
-. if \\n[#FROM_TOC_HEADER]=1 \{\
-. nr #UNDERSCORE_WEIGHT \\n[#TOC_HEADER_UNDERLINE_WEIGHT]
-. nr #UNDERSCORE_WEIGHT_ADJ \\n[#TOC_HEADER_UNDERLINE_WEIGHT_ADJ]
-. ds $UNDERSCORE_GAP \\*[$TOC_HEADER_UNDERLINE_GAP]
-. \}
-. ie \\n[#NUM_ARGS]=1 \{\
-. nr #TEXT_WIDTH \w'\\$1'
-\\$1\
-\D't \\n[#UNDERSCORE_WEIGHT]'\
-\h'-\\n[#TEXT_WIDTH]u-\\n[#UNDERSCORE_WEIGHT]u'\
-\v'+(\\*[$UNDERSCORE_GAP])+\\n[#UNDERSCORE_WEIGHT_ADJ]u'\
-\D'l \\n[#TEXT_WIDTH]u 0'\
-\D't \\n[#RULE_WEIGHT]'\
-\h'-\\n[#RULE_WEIGHT]u'\
-\v'-(\\*[$UNDERSCORE_GAP])-\\n[#UNDERSCORE_WEIGHT_ADJ]u'
+. if \\n[#NUM_ARGS]=2 \{\
+. ds $UNDERSCORE_GAP \\$1
+. shift
. \}
-. el \{\
-. nr #TEXT_WIDTH \w'\\$2'
-\\$2\
-\h'-\\n[#TEXT_WIDTH]u-\\n[#UNDERSCORE_WEIGHT]u'\
-\v'+(\\$1)+\\n[#UNDERSCORE_WEIGHT_ADJ]u'\
-\D't \\n[#UNDERSCORE_WEIGHT]'\
-\D'l \\n[#TEXT_WIDTH]u 0'\
-\D't \\n[#RULE_WEIGHT]'\
-\h'-\\n[#RULE_WEIGHT]u'\
-\v'-(\\$1)-\\n[#UNDERSCORE_WEIGHT_ADJ]u'
+. if !'\\*[$TITLE_TYPE]'' \{\
+. nr #UNDERSCORE_WEIGHT \\n[#\\*[$TITLE_TYPE]_UNDERLINE_WEIGHT]
+. nr #UNDERSCORE_WEIGHT_ADJ \\n[#\\*[$TITLE_TYPE]_UNDERLINE_WEIGHT_ADJ]
+. ds $UNDERSCORE_GAP \\*[$\\*[$TITLE_TYPE]_UNDERLINE_GAP]
. \}
+. nr #TEXT_WIDTH \w'\\$1'
+\Z'\\$1'\
+\Z'\D't \\n[#UNDERSCORE_WEIGHT]''\
+\v'\\*[$UNDERSCORE_GAP]+\\n[#UNDERSCORE_WEIGHT_ADJ]u'\
+\D'l \\n[#TEXT_WIDTH]u 0'\
+\Z'\D't \\n[#RULE_WEIGHT]''\
+\v'-(\\*[$UNDERSCORE_GAP]+\\n[#UNDERSCORE_WEIGHT_ADJ]u)'
. nr #UNDERSCORE_WEIGHT \\n[#SAVED_UNDERSCORE_WEIGHT]
. nr #UNDERSCORE_WEIGHT_ADJ \\n[#SAVED_UNDERSCORE_WEIGHT_ADJ]
. ds $UNDERSCORE_GAP \\*[$SAVED_UNDERSCORE_GAP]
. rr #SAVED_UNDERSCORE_WEIGHT
. rr #SAVED_UNDERSCORE_WEIGHT_ADJ
. rm $SAVED_UNDERSCORE_GAP
+. rm $TITLE_TYPE
.END
\#
\# DOUBLE UNDERSCORE
@@ -2120,71 +2079,28 @@ end
. ds $SAVED_RULE_GAP \\*[$RULE_GAP]
. if \\n[#NUM_ARGS]=2 \{\
. ds $UNDERSCORE_GAP \\$1
+. shift
. \}
. if \\n[#NUM_ARGS]=3 \{\
. ds $UNDERSCORE_GAP \\$1
. ds $RULE_GAP \\$2
+. shift 2
. \}
-. if \\n[#FROM_BIB_STRING] \{\
-. nr #UNDERSCORE_WEIGHT \\n[#BIB_STRING_UNDERLINE_WEIGHT]
-. nr #UNDERSCORE_WEIGHT_ADJ \\n[#BIB_STRING_UNDERLINE_WEIGHT_ADJ]
-. ds $UNDERSCORE_GAP \\*[$BIB_STRING_UNDERLINE_GAP]
-. ds $RULE_GAP \\*[$BIB_STRING_RULE_GAP]
-. \}
-. if \\n[#FROM_EN_STRING] \{\
-. nr #UNDERSCORE_WEIGHT \\n[#EN_STRING_UNDERLINE_WEIGHT]
-. nr #UNDERSCORE_WEIGHT_ADJ \\n[#EN_STRING_UNDERLINE_WEIGHT_ADJ]
-. ds $UNDERSCORE_GAP \\*[$EN_STRING_UNDERLINE_GAP]
-. ds $RULE_GAP \\*[$EN_STRING_RULE_GAP]
-. \}
-. if \\n[#FROM_TOC_HEADER]=1 \{\
-. nr #UNDERSCORE_WEIGHT \\n[#TOC_HEADER_UNDERLINE_WEIGHT]
-. nr #UNDERSCORE_WEIGHT_ADJ \\n[#TOC_HEADER_UNDERLINE_WEIGHT_ADJ]
-. ds $UNDERSCORE_GAP \\*[$TOC_HEADER_UNDERLINE_GAP]
-. ds $RULE_GAP \\*[$TOC_HEADER_RULE_GAP]
-. \}
-. if \\n[#NUM_ARGS]=1 \{\
-. nr #TEXT_WIDTH \w'\\$1'
-\\$1\
-\D't \\n[#UNDERSCORE_WEIGHT]'\
-\v'+\\*[$UNDERSCORE_GAP]+\\n[#UNDERSCORE_WEIGHT_ADJ]u'\
-\h'-\\n[#TEXT_WIDTH]u-\\n[#UNDERSCORE_WEIGHT]u'\
-\D'l \\n[#TEXT_WIDTH]u 0'\
-\v'+\\*[$RULE_GAP]+\\n[#UNDERSCORE_WEIGHT]u'\
-\h'-\\n[#TEXT_WIDTH]u'\
-\D'l \\n[#TEXT_WIDTH]u 0'\
-\D't \\n[#RULE_WEIGHT]'\
-\h'-\\n[#RULE_WEIGHT]u'\
-\v'-(\\*[$UNDERSCORE_GAP]+\\*[$RULE_GAP])-(\\n[#UNDERSCORE_WEIGHT]u*2u)'
-. \}
-. if \\n[#NUM_ARGS]=2 \{\
-. nr #TEXT_WIDTH \w'\\$2'
-\\$2\
-\D't \\n[#UNDERSCORE_WEIGHT]'\
-\v'+\\*[$UNDERSCORE_GAP]+\\n[#UNDERSCORE_WEIGHT_ADJ]u'\
-\h'-\\n[#TEXT_WIDTH]u-\\n[#UNDERSCORE_WEIGHT]u'\
-\D'l \\n[#TEXT_WIDTH]u 0'\
-\v'+(\\*[$RULE_GAP])+\\n[#UNDERSCORE_WEIGHT]u'\
-\h'-\\n[#TEXT_WIDTH]u'\
-\D'l \\n[#TEXT_WIDTH]u 0'\
-\D't \\n[#RULE_WEIGHT]'\
-\h'-\\n[#RULE_WEIGHT]u'\
-\v'-(\\*[$UNDERSCORE_GAP]+\\*[$RULE_GAP])+(\\n[#UNDERSCORE_WEIGHT]u*2u)'
-. \}
-. if \\n[#NUM_ARGS]=3 \{\
-. nr #TEXT_WIDTH \w'\\$3'
-\\$3\
-\D't \\n[#UNDERSCORE_WEIGHT]'\
-\v'+\\*[$UNDERSCORE_GAP]+\\n[#UNDERSCORE_WEIGHT_ADJ]u'\
-\h'-\\n[#TEXT_WIDTH]u-\\n[#UNDERSCORE_WEIGHT]u'\
+. if !'\\*[$TITLE_TYPE]'' \{\
+. nr #UNDERSCORE_WEIGHT \\n[#\\*[$TITLE_TYPE]_UNDERLINE_WEIGHT]
+. nr #UNDERSCORE_WEIGHT_ADJ \\n[#\\*[$TITLE_TYPE]_UNDERLINE_WEIGHT_ADJ]
+. ds $UNDERSCORE_GAP \\*[$\\*[$TITLE_TYPE]_UNDERLINE_GAP]
+. ds $RULE_GAP \\*[$\\*[$TITLE_TYPE]_RULE_GAP]
+. \}
+. nr #TEXT_WIDTH \w'\\$1'
+\Z'\\$1'\
+\Z'\D't \\n[#UNDERSCORE_WEIGHT]''\
+\v'\\*[$UNDERSCORE_GAP]+\\n[#UNDERSCORE_WEIGHT_ADJ]u'\
+\Z'\D'l \\n[#TEXT_WIDTH]u 0''\
+\v'\\*[$RULE_GAP]+\\n[#UNDERSCORE_WEIGHT]u'\
\D'l \\n[#TEXT_WIDTH]u 0'\
-\v'+\\*[$RULE_GAP]+\\n[#UNDERSCORE_WEIGHT]u'\
-\h'-\\n[#TEXT_WIDTH]u'\
-\D'l \\n[#TEXT_WIDTH]u 0'\
-\D't \\n[#RULE_WEIGHT]'\
-\h'-\\n[#RULE_WEIGHT]u'\
+\Z'\D't \\n[#RULE_WEIGHT]''\
\v'-(\\*[$UNDERSCORE_GAP]+\\*[$RULE_GAP])-(\\n[#UNDERSCORE_WEIGHT]u*2u)'
-. \}
. nr #UNDERSCORE_WEIGHT \\n[#SAVED_UNDERSCORE_WEIGHT]
. nr #UNDERSCORE_WEIGHT_ADJ \\n[#SAVED_UNDERSCORE_WEIGHT_ADJ]
. ds $UNDERSCORE_GAP \\*[$SAVED_UNDERSCORE_GAP]
@@ -2192,23 +2108,31 @@ end
. rr #SAVED_UNDERSCORE_WEIGHT_ADJ
. rm $SAVED_UNDERSCORE_GAP
. rm $SAVED_RULE_GAP
+. rm $TITLE_TYPE
.END
\#
-\# Default underscoring rule gaps
+\# Default underscoring underline and rule gaps
\#
-.ds $BIB_STRING_UNDERLINE_GAP 2p
.ds $BIB_STRING_RULE_GAP 2p
-.ds $COVER_UNDERLINE_GAP 2p
-.ds $DOC_COVER_UNDERLINE_GAP 2p
-.ds $DOCTYPE_UNDERLINE_GAP 2p
-.ds $EN_STRING_UNDERLINE_GAP 2p
+.ds $BIB_STRING_UNDERLINE_GAP 2p
.ds $EN_STRING_RULE_GAP 2p
+.ds $EN_STRING_UNDERLINE_GAP 2p
.ds $EN_TITLE_UNDERLINE_GAP 2p
.ds $RULE_GAP 2p
-.ds $TOC_HEADER_UNDERLINE_GAP 2p
.ds $TOC_HEADER_RULE_GAP 2p
+.ds $TOC_HEADER_UNDERLINE_GAP 2p
.ds $UNDERSCORE_GAP 2p
\#
+.nr #LOOP 0 1
+.while \n+[#LOOP]<=14 \{\
+. ds $\*[TITLE_TYPE_\n[#LOOP]]_RULE_GAP 2p
+. ds $COVER_\*[TITLE_TYPE_\n[#LOOP]]_RULE_GAP 2p
+. ds $DOC_COVER_\*[TITLE_TYPE_\n[#LOOP]]_RULE_GAP 2p
+. ds $\*[TITLE_TYPE_\n[#LOOP]]_UNDERLINE_GAP 2p
+. ds $COVER_\*[TITLE_TYPE_\n[#LOOP]]_UNDERLINE_GAP 2p
+. ds $DOC_COVER_\*[TITLE_TYPE_\n[#LOOP]]_UNDERLINE_GAP 2p
+.\}
+\#
\# SUPERSCRIPT
\# -----------
\# *Function:
@@ -3162,7 +3086,7 @@ end
. substring $ARG -1
. if !\B'\\*[$ARG]' \{\
. tm1 "[mom]: The argument to \\$0 must not have a unit of measure
appended.
-. ab Aborting '\\n[.F]' at \\$0, line \\n[.c].
+. ab [mom]: Aborting '\\n[.F]' at \\$0, line \\n[.c].
. \}
. length #STR_LENGTH \\$1
. ds $ARG \\$1
@@ -3173,13 +3097,14 @@ end
. nr #WEIGHT \\*[$ARG]*100
. if (\\n[#WEIGHT]>=1000) \{\
. while (\\n[#WEIGHT]>=1000) \{\
-. nr #WEIGHT \\n[#WEIGHT]/10
+. nr #WEIGHT \\n[#WEIGHT]/10
. \}
. \}
. \}
. el \{\
. ds $ARG \\$1
-. substring $ARG 1 1
+. length #ARG_LENGTH \\*[$ARG]
+. if \\n[#ARG_LENGTH]>1 .substring $ARG 1 1
. ie '\\*[$ARG]'.' \{\
. ds $LHS \\$1
. substring $LHS 0 0
@@ -3219,29 +3144,32 @@ end
. \}
. \}
. nr #WEIGHT_ADJ \\n[#WEIGHT]/2
-. if '\\$0'BIBLIOGRAPHY_STRING_UNDERLINE_WEIGHT' \{\
-. nr #BIB_STRING_UNDERLINE_WEIGHT \\n[#WEIGHT]
-. nr #BIB_STRING_UNDERLINE_WEIGHT_ADJ \\n[#WEIGHT_ADJ]
-. \}
-. if '\\$0'COVER_UNDERLINE_WEIGHT' \{\
-. nr #COVER_UNDERLINE_WEIGHT \\n[#WEIGHT]
-. nr #COVER_UNDERLINE_WEIGHT_ADJ \\n[#WEIGHT_ADJ]
-. \}
-. if '\\$0'DOC_COVER_UNDERLINE_WEIGHT' \{\
-. nr #DOC_COVER_UNDERLINE_WEIGHT \\n[#WEIGHT]
-. nr #DOC_COVER_UNDERLINE_WEIGHT_ADJ \\n[#WEIGHT_ADJ]
-. \}
-. if '\\$0'DOCTYPE_UNDERLINE_WEIGHT' \{\
-. nr #DOCTYPE_UNDERLINE_WEIGHT \\n[#WEIGHT]
-. nr #DOCTYPE_UNDERLINE_WEIGHT_ADJ \\n[#WEIGHT_ADJ]
+. if '\\$0'BIBLIOGRAPHY_STRING_UNDERLINE_WEIGHT' \
+. ds $TITLE_TYPE BIB_STRING_
+. if '\\$0'ENDNOTE_TITLE_UNDERLINE_WEIGHT' \
+. ds $TITLE_TYPE EN_TITLE_
+. if '\\$0'EN_HEADER_UNDERLINE_WEIGHT' \
+. ds $TITLE_TYPE EN_STRING_
+. if !'\\*[$TITLE_TYPE]'BIB_STRING' \
+. if !'\\*[$TITLE_TYPE]'EN_TITLE' \
+. if !'\\*[$TITLE_TYPE]'EN_STRING' \
+. ds _TYPE \\$0
+. length type-len _TYPE
+. if \\n[type-len]>17 \{\
+. substring _TYPE 0 -17
+. ds $TITLE_TYPE \\*[_TYPE]
+. \}
+. if !'\\*[$TITLE_TYPE]'' \{\
+. nr #\\*[$TITLE_TYPE]UNDERLINE_WEIGHT \\n[#WEIGHT]
+. nr #\\*[$TITLE_TYPE]UNDERLINE_WEIGHT_ADJ \\n[#WEIGHT_ADJ]
. \}
-. if '\\$0'ENDNOTE_STRING_UNDERLINE_WEIGHT' \{\
-. nr #EN_STRING_UNDERLINE_WEIGHT \\n[#WEIGHT]
-. nr #EN_STRING_UNDERLINE_WEIGHT_ADJ \\n[#WEIGHT_ADJ]
+. if '\\$0'RULE_WEIGHT' \{\
+. nr #RULE_WEIGHT \\n[#WEIGHT]
+. nr #RULE_WEIGHT_ADJ \\n[#WEIGHT_ADJ]
. \}
-. if '\\$0'ENDNOTE_TITLE_UNDERLINE_WEIGHT' \{\
-. nr #EN_TITLE_UNDERLINE_WEIGHT \\n[#WEIGHT]
-. nr #EN_TITLE_UNDERLINE_WEIGHT_ADJ \\n[#WEIGHT_ADJ]
+. if '\\$0'UNDERSCORE_WEIGHT' \{\
+. nr #UNDERSCORE_WEIGHT \\n[#WEIGHT]
+. nr #UNDERSCORE_WEIGHT_ADJ \\n[#WEIGHT_ADJ]
. \}
. if '\\$0'FOOTER_RULE_WEIGHT' \{\
. nr #FOOTER_RULE_WEIGHT \\n[#WEIGHT]
@@ -3255,40 +3183,26 @@ end
. nr #HEADER_RULE_WEIGHT \\n[#WEIGHT]
. nr #HEADER_RULE_WEIGHT_ADJ \\n[#WEIGHT_ADJ]
. \}
-. if '\\$0'RULE_WEIGHT' \{\
-. nr #RULE_WEIGHT \\n[#WEIGHT]
-. nr #RULE_WEIGHT_ADJ \\n[#WEIGHT_ADJ]
-. \}
-. if '\\$0'TOC_HEADER_UNDERLINE_WEIGHT' \{\
-. nr #TOC_HEADER_UNDERLINE_WEIGHT \\n[#WEIGHT]
-. nr #TOC_HEADER_UNDERLINE_WEIGHT_ADJ \\n[#WEIGHT_ADJ]
-. \}
-. if '\\$0'UNDERSCORE_WEIGHT' \{\
-. nr #UNDERSCORE_WEIGHT \\n[#WEIGHT]
-. nr #UNDERSCORE_WEIGHT_ADJ \\n[#WEIGHT_ADJ]
-. \}
. di
.END
\#
-\# Aliases
+\# Aliases for RULE_WEIGHT
\#
-.ALIAS BIBLIOGRAPHY_STRING_UNDERLINE_WEIGHT RULE_WEIGHT
-.ALIAS COVER_UNDERLINE_WEIGHT RULE_WEIGHT
-.ALIAS DOC_COVER_UNDERLINE_WEIGHT RULE_WEIGHT
-.ALIAS DOCTYPE_UNDERLINE_WEIGHT RULE_WEIGHT
-.ALIAS ENDNOTE_STRING_UNDERLINE_WEIGHT RULE_WEIGHT
-.ALIAS ENDNOTE_TITLE_UNDERLINE_WEIGHT RULE_WEIGHT
-.ALIAS FOOTER_RULE_WEIGHT RULE_WEIGHT
-.ALIAS FOOTNOTE_RULE_WEIGHT RULE_WEIGHT
-.ALIAS HEADER_RULE_WEIGHT RULE_WEIGHT
-.ALIAS TOC_HEADER_UNDERLINE_WEIGHT RULE_WEIGHT
-.ALIAS UNDERSCORE_WEIGHT RULE_WEIGHT
+.ALIAS BIB_STRING_UNDERLINE_WEIGHT RULE_WEIGHT
+.ALIAS DOCTYPE_UNDERLINE_WEIGHT RULE_WEIGHT
+.ALIAS EN_STRING_UNDERLINE_WEIGHT RULE_WEIGHT
+.ALIAS EN_TITLE_UNDERLINE_WEIGHT RULE_WEIGHT
+.ALIAS FN_RULE_WEIGHT RULE_WEIGHT
+.ALIAS FOOTER_RULE_WEIGHT RULE_WEIGHT
+.ALIAS FOOTNOTE_RULE_WEIGHT RULE_WEIGHT
+.ALIAS HEADER_RULE_WEIGHT RULE_WEIGHT
+.ALIAS RULE_WEIGHT RULE_WEIGHT
+.ALIAS TOC_HEADER_UNDERLINE_WEIGHT RULE_WEIGHT
+.ALIAS UNDERSCORE_WEIGHT RULE_WEIGHT
\#
\# Default rule weights
-\# ~~~~~~~~~~~~~~~~~~~~
+\#
.nr #BIB_STRING_UNDERLINE_WEIGHT 500
-.nr #COVER_UNDERLINE_WEIGHT 500
-.nr #DOC_COVER_UNDERLINE_WEIGHT 500
.nr #DOCTYPE_UNDERLINE_WEIGHT 500
.nr #EN_STRING_UNDERLINE_WEIGHT 500
.nr #EN_TITLE_UNDERLINE_WEIGHT 500
@@ -3300,18 +3214,34 @@ end
.nr #UNDERSCORE_WEIGHT 500
\#
.nr #BIB_STRING_UNDERLINE_WEIGHT_ADJ \n[#BIB_STRING_UNDERLINE_WEIGHT]/2
-.nr #COVER_UNDERLINE_WEIGHT_ADJ \n[#DOCTYPE_UNDERLINE_WEIGHT]/2
-.nr #DOC_COVER_UNDERLINE_WEIGHT_ADJ \n[#DOCTYPE_RULE_WEIGHT]/2
-.nr #DOCTYPE_UNDERLINE_WEIGHT_ADJ \n[#DOCTYPE_RULE_WEIGHT]/2
+.nr #DOCTYPE_UNDERLINE_WEIGHT_ADJ \n[#DOCTYPE_UNDERLINE_WEIGHT]/2
.nr #EN_STRING_UNDERLINE_WEIGHT_ADJ \n[#EN_STRING_UNDERLINE_WEIGHT]/2
-.nr #EN_TITLE_UNDERLINE_WEIGHT_ADJ \n[#EN_STRING_UNDERLINE_WEIGHT]/2
-.nr #FOOTER_RULE_WEIGHT_ADJ \n[#FOOTER_RULE_WEIGHT]/2
+.nr #EN_TITLE_UNDERLINE_WEIGHT_ADJ \n[#EN_TITLE_UNDERLINE_WEIGHT]/2
.nr #FN_RULE_WEIGHT_ADJ \n[#FN_RULE_WEIGHT]/2
+.nr #FOOTER_RULE_WEIGHT_ADJ \n[#FOOTER_RULE_WEIGHT]/2
.nr #HEADER_RULE_WEIGHT_ADJ \n[#HEADER_RULE_WEIGHT]/2
.nr #RULE_WEIGHT_ADJ \n[#RULE_WEIGHT]/2
.nr #TOC_HEADER_UNDERLINE_WEIGHT_ADJ \n[#TOC_HEADER_UNDERLINE_WEIGHT]/2
.nr #UNDERSCORE_WEIGHT_ADJ \n[#UNDERSCORE_WEIGHT]/2
\#
+\# Read in remaining aliases and default rule weights
+\#
+.nr #LOOP 0 1
+.while \n+[#LOOP]<=14 \{\
+. ALIAS \*[TITLE_TYPE_\n[#LOOP]]_UNDERLINE_WEIGHT RULE_WEIGHT
+. ALIAS COVER_\*[TITLE_TYPE_\n[#LOOP]]_UNDERLINE_WEIGHT RULE_WEIGHT
+. ALIAS DOC_COVER_\*[TITLE_TYPE_\n[#LOOP]]_UNDERLINE_WEIGHT RULE_WEIGHT
+. nr #\*[TITLE_TYPE_\n[#LOOP]]_UNDERLINE_WEIGHT 500
+. nr #COVER_\*[TITLE_TYPE_\n[#LOOP]]_UNDERLINE_WEIGHT 500
+. nr #DOC_COVER_\*[TITLE_TYPE_\n[#LOOP]]_UNDERLINE_WEIGHT 500
+. nr #\*[TITLE_TYPE_\n[#LOOP]]_UNDERLINE_WEIGHT_ADJ \
+ \n[#\*[TITLE_TYPE_\n[#LOOP]]_UNDERLINE_WEIGHT]/2
+. nr #COVER_\*[TITLE_TYPE_\n[#LOOP]]_UNDERLINE_WEIGHT_ADJ \
+ \n[#COVER_\*[TITLE_TYPE_\n[#LOOP]]_UNDERLINE_WEIGHT]/2
+. nr #DOC_COVER_\*[TITLE_TYPE_\n[#LOOP]]_UNDERLINE_WEIGHT_ADJ \
+ \n[#DOC_COVER_\*[TITLE_TYPE_\n[#LOOP]]_UNDERLINE_WEIGHT]/2
+.\}
+\#
\# Set default rule weight
\#
.di NULL
@@ -3375,7 +3305,7 @@ end
. ie '\\$1'0' .ss \\n[.ss] (\\n[.ss]-\\n[.ss])
. el \{\
. ie '\\$1'DEFAULT' .ss \\n[.ss]
-. el .ss \\n[.ss] (0\\*[$SS_VAR])
+. el .ss \\n[.ss] (0+\\*[$SS_VAR])
. \}
.END
\#
@@ -3750,6 +3680,126 @@ end
. nop \\$*
.END
\#
+\# Numbered strings for while loop in SMALLCAPS.
+\#
+.ds $c1 a
+.ds $c2 b
+.ds $c3 c
+.ds $c4 d
+.ds $c5 e
+.ds $c6 f
+.ds $c7 g
+.ds $c8 h
+.ds $c9 i
+.ds $c10 j
+.ds $c11 k
+.ds $c12 l
+.ds $c13 m
+.ds $c14 n
+.ds $c15 o
+.ds $c16 p
+.ds $c17 q
+.ds $c18 r
+.ds $c19 s
+.ds $c20 t
+.ds $c21 u
+.ds $c22 v
+.ds $c23 w
+.ds $c24 x
+.ds $c25 y
+.ds $c26 z
+.ds $c27 \[`a]
+.ds $c28 \[^a]
+.ds $c29 \['a]
+.ds $c30 \[:a]
+.ds $c31 \[oa]
+.ds $c32 \[~a]
+.ds $c33 \[ae]
+.ds $c34 \[`e]
+.ds $c35 \[^e]
+.ds $c36 \['e]
+.ds $c37 \[:e]
+.ds $c38 \[`i]
+.ds $c39 \[^i]
+.ds $c40 \['i]
+.ds $c41 \[:i]
+.ds $c42 \[`o]
+.ds $c43 \[^o]
+.ds $c44 \['o]
+.ds $c45 \[:o]
+.ds $c46 \[~o]
+.ds $c47 \[/o]
+.ds $c48 \[`u]
+.ds $c49 \[^u]
+.ds $c50 \['u]
+.ds $c51 \[:u]
+.ds $c52 \[,c]
+.ds $c53 \[Sd]
+.ds $c54 \[~n]
+.ds $c55 \[Sd]
+.ds $c56 \[Tp]
+.ds $c57 \['y]
+.ds $c58 \[:y]
+\#
+.ds $C1 A
+.ds $C2 B
+.ds $C3 C
+.ds $C4 D
+.ds $C5 E
+.ds $C6 F
+.ds $C7 G
+.ds $C8 H
+.ds $C9 I
+.ds $C10 J
+.ds $C11 K
+.ds $C12 L
+.ds $C13 M
+.ds $C14 N
+.ds $C15 O
+.ds $C16 P
+.ds $C17 Q
+.ds $C18 R
+.ds $C19 S
+.ds $C20 T
+.ds $C21 U
+.ds $C22 V
+.ds $C23 W
+.ds $C24 X
+.ds $C25 Y
+.ds $C26 Z
+.ds $C27 \[`A]
+.ds $C28 \[^A]
+.ds $C29 \['A]
+.ds $C30 \[:A]
+.ds $C31 \[oA]
+.ds $C32 \[~A]
+.ds $C33 \[AE]
+.ds $C34 \[`E]
+.ds $C35 \[^E]
+.ds $C36 \['E]
+.ds $C37 \[:E]
+.ds $C38 \[`I]
+.ds $C39 \[^I]
+.ds $C40 \['I]
+.ds $C41 \[:I]
+.ds $C42 \[`O]
+.ds $C43 \[^O]
+.ds $C44 \['O]
+.ds $C45 \[:O]
+.ds $C46 \[~O]
+.ds $C47 \[/O]
+.ds $C48 \[`U]
+.ds $C49 \[^U]
+.ds $C50 \['U]
+.ds $C51 \[:U]
+.ds $C52 \[,C]
+.ds $C53 \[-D]
+.ds $C54 \[~N]
+.ds $C55 \[-D]
+.ds $C56 \[TP]
+.ds $C57 \['Y]
+.ds $C58 \[:Y]
+\#
\# CAPS
\# ----
\# *Arguments:
@@ -3762,152 +3812,124 @@ end
\#
.MAC CAPS END
. ie '\\$1'' \{\
-. tr aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ
-. tr \[`a]\[`A]
-. tr \[^a]\[^A]
-. tr \['a]\['A]
-. tr \[:a]\[:A]
-. tr \[oa]\[oA]
-. tr \[~a]\[~A]
-. tr \[ae]\[AE]
-. tr \[`e]\[`E]
-. tr \[^e]\[^E]
-. tr \['e]\['E]
-. tr \[:e]\[:E]
-. tr \[`i]\[`I]
-. tr \[^i]\[^I]
-. tr \['i]\['I]
-. tr \[:i]\[:I]
-. tr \[`o]\[`O]
-. tr \[^o]\[^O]
-. tr \['o]\['O]
-. tr \[:o]\[:O]
-. tr \[~o]\[~O]
-. tr \[/o]\[/O]
-. tr \[`u]\[`U]
-. tr \[^u]\[^U]
-. tr \['u]\['U]
-. tr \[:u]\[:U]
-. tr \[,c]\[,C]
-. tr \[-d]\[-D]
-. tr \[~n]\[~N]
-. tr \[Sd]\[-D]
-. tr \[Tp]\[TP]
-. tr \['y]\['Y]
-. tr \[:y]\[:Y]
+. LC_TO_CAPS
. nr #CAPS_ON 1
. \}
. el \{\
-. tr aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz
-. tr \[`a]\[`a]
-. tr \[^a]\[^a]
-. tr \['a]\['a]
-. tr \[:a]\[:a]
-. tr \[oa]\[oa]
-. tr \[~a]\[~a]
-. tr \[ae]\[ae]
-. tr \[`e]\[`e]
-. tr \[^e]\[^e]
-. tr \['e]\['e]
-. tr \[:e]\[:e]
-. tr \[`i]\[`i]
-. tr \[^i]\[^i]
-. tr \['i]\['i]
-. tr \[:i]\[:i]
-. tr \[`o]\[`o]
-. tr \[^o]\[^o]
-. tr \['o]\['o]
-. tr \[:o]\[:o]
-. tr \[~o]\[~o]
-. tr \[/o]\[/o]
-. tr \[`u]\[`u]
-. tr \[^u]\[^u]
-. tr \['u]\['u]
-. tr \[:u]\[:u]
-. tr \[,c]\[,c]
-. tr \[Sd]\[Sd]
-. tr \[~n]\[~n]
-. tr \[Tp]\[Tp]
-. tr \['y]\['y]
-. tr \[:y]\[:y]
+. CAPS_TO_LC
. rr #CAPS_ON
. \}
.END
\#
.MAC UC END
\c
-. tr aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ
-. tr \[`a]\[`A]
-. tr \[^a]\[^A]
-. tr \['a]\['A]
-. tr \[:a]\[:A]
-. tr \[oa]\[oA]
-. tr \[~a]\[~A]
-. tr \[ae]\[AE]
-. tr \[`e]\[`E]
-. tr \[^e]\[^E]
-. tr \['e]\['E]
-. tr \[:e]\[:E]
-. tr \[`i]\[`I]
-. tr \[^i]\[^I]
-. tr \['i]\['I]
-. tr \[:i]\[:I]
-. tr \[`o]\[`O]
-. tr \[^o]\[^O]
-. tr \['o]\['O]
-. tr \[:o]\[:O]
-. tr \[~o]\[~O]
-. tr \[/o]\[/O]
-. tr \[`u]\[`U]
-. tr \[^u]\[^U]
-. tr \['u]\['U]
-. tr \[:u]\[:U]
-. tr \[,c]\[,C]
-. tr \[Sd]\[-D]
-. tr \[~n]\[~N]
-. tr \[Tp]\[TP]
-. tr \['y]\['Y]
-. tr \[:y]\[:Y]
+. LC_TO_CAPS
. nr #CAPS_ON 1
.END
\#
.MAC LC END
\c
-. tr aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz
-. tr \[`a]\[`a]
-. tr \[^a]\[^a]
-. tr \['a]\['a]
-. tr \[:a]\[:a]
-. tr \[oa]\[oa]
-. tr \[~a]\[~a]
-. tr \[ae]\[ae]
-. tr \[`e]\[`e]
-. tr \[^e]\[^e]
-. tr \['e]\['e]
-. tr \[:e]\[:e]
-. tr \[`i]\[`i]
-. tr \[^i]\[^i]
-. tr \['i]\['i]
-. tr \[:i]\[:i]
-. tr \[`o]\[`o]
-. tr \[^o]\[^o]
-. tr \['o]\['o]
-. tr \[:o]\[:o]
-. tr \[~o]\[~o]
-. tr \[/o]\[/o]
-. tr \[`u]\[`u]
-. tr \[^u]\[^u]
-. tr \['u]\['u]
-. tr \[:u]\[:u]
-. tr \[,c]\[,c]
-. tr \[Sd]\[Sd]
-. tr \[~n]\[~n]
-. tr \[Tp]\[Tp]
-. tr \['y]\['y]
-. tr \[:y]\[:y]
+. CAPS_TO_LC
. rr #CAPS_ON
.END
\#
+\# Perform lowercase conversion to caps or revert to lowercase
+\#
+.MAC CONVERT_CASE END
+. if '\\$0'LC_TO_CAPS' \{\
+. nr #LOOP 0 1
+. while \\n+[#LOOP]<=58 \{\
+. tr \\*[$c\\n[#LOOP]]\\*[$C\\n[#LOOP]]
+. \}
+. \}
+. if '\\$0'CAPS_TO_LC' \{\
+. nr #LOOP 0 1
+. while \\n+[#LOOP]<=58 \{\
+. tr \\*[$c\\n[#LOOP]]\\*[$c\\n[#LOOP]]
+. \}
+. \}
+.END
+.
+.ALIAS LC_TO_CAPS CONVERT_CASE
+.ALIAS CAPS_TO_LC CONVERT_CASE
+.
+\#
+\# SMALLCAPS
+\# ---------
+\# *Arguments:
+\# <none> | <anything>
+\# *Function:
+\# Converts text to smallcaps, or, if OFF, reverts to normal caps/lc.
+\# *Notes:
+\# SMALLCAPS has no inline escape eqiv. to \*[UC].
+\#
+.MAC SMALLCAPS END
+. if \\n[.int] .nop \& \c
+. nr sc*size \\n[.ps]*\\n[sc*factor]/1000
+. if \\n[sc*wt-adj] .nr sc*wt-adj-factor \\n[sc*size]*\\n[sc*wt-adj]/1000
+. if \\n[sc*extend] .nr sc*extend-factor \\n[sc*size]*\\n[sc*extend]/1000
+. ie '\\$1'' \{\
+. nr #SMALLCAPS_ON 1
+. nr #LOOP 0 1
+. while \\n+[#LOOP]<=58 \{\
+. char \\*[$c\\n[#LOOP]] \
+\Z'\s[\\n[sc*size]u+\\n[sc*extend-factor]u]\H'-\\n[sc*extend-factor]u'\
+\\*[$C\\n[#LOOP]]'\
+\h'\\n[sc*wt-adj-factor]u'\\*[$C\\n[#LOOP]]\s[0]
+. \}
+. \}
+. el \{\
+. nr #LOOP 0 1
+. while \\n+[#LOOP]<=58 \{\
+. rchar \\*[$c\\n[#LOOP]]
+. \}
+. rr sc*wt-adj-factor
+. rr sc*extend-factor
+. rr #SMALLCAPS_ON
+. \}
+.END
+\#
+\# SMALLCAPS_SIZE
+\# --------------
+\# *Arguments:
+\# <size> [ <weight adjustment>
+\# *Function:
+\# Sets registers 'sc*factor', 'sc*wt-adj', and sc*extend.
+\# *Notes:
+\# Weight adjustment pseudo-emboldens small caps to visually match the
+\# weight of the larger real caps.
+\#
+\# Both sc*factor (size) and sc*wt-adj (weight adjustment) args are
+\# expressed as percentages of type size.
+\#
+.MAC SMALLCAPS_STYLE END
+. nr #LOOP 0 1
+. while \\n+[#LOOP]<=\\n[#NUM_ARGS] \{\
+. if '\\$1'SIZE' \{\
+. shift
+. nr sc*factor (z;\\$1)/100
+. shift
+. \}
+. if '\\$1'WEIGHT_ADJ' \{\
+. shift
+. nr sc*wt-adj (z;\\$1)/100
+. shift
+. \}
+. if '\\$1'EXTEND' \{\
+. shift
+. nr sc*extend (z;\\$1)/100
+. shift
+. \}
+. \}
+. if \\n[sc*wt-adj]=0 .rr sc*wt-adj
+. if \\n[sc*extend]=0 .rr sc*extend
+.END
+.
+.SMALLCAPS_STYLE \
+SIZE 74 \
+WEIGHT_ADJ .3 \
+EXTEND 5
+\#
\# SIZESPECS
\# ---------
\# Argument:
@@ -3938,32 +3960,32 @@ y\R'#DESCENDER \\n[.cdp]'
\#
\# +++TYPESETTING ALIASES+++
\#
-.ALIAS ADD_SPACE ALD
-.ALIAS CENTRE CENTER
-.ALIAS COLOUR COLOR
-.ALIAS COMMENT SILENT
-.ALIAS CONDENSE CONDENSE_OR_EXTEND
-.ALIAS EXTEND CONDENSE_OR_EXTEND
-.ALIAS FAM FAMILY
-.ALIAS FONT FT
-.ALIAS HYPHENATE HY
-.ALIAS HYPHENATION HY
-.ALIAS HYSET HY_SET
-.ALIAS IBQ IBX
-.ALIAS ILQ ILX
-.ALIAS IQ IX
-.ALIAS IRQ IRX
-.ALIAS LIG LIGATURES
-.ALIAS NEWCOLOUR NEWCOLOR
-.ALIAS PADMARKER PAD_MARKER
-.ALIAS SP ALD
-.ALIAS SPACE ALD
-.ALIAS TABSET TAB_SET
-.ALIAS TB TAB
-.ALIAS UNDERSCORE_2 UNDERSCORE2
-.ALIAS XCOLOUR XCOLOR
-.ALIAS PDF_LINK_COLOUR PDF_LINK_COLOR
-.ALIAS AUTO_TOC_RELOCATE AUTO_RELOCATE_TOC
+.ALIAS ADD_SPACE ALD
+.ALIAS CENTRE CENTER
+.ALIAS COLOUR COLOR
+.ALIAS COMMENT SILENT
+.ALIAS CONDENSE CONDENSE_OR_EXTEND
+.ALIAS EXTEND CONDENSE_OR_EXTEND
+.ALIAS FAM FAMILY
+.ALIAS FONT FT
+.ALIAS HYPHENATE HY
+.ALIAS HYPHENATION HY
+.ALIAS HYSET HY_SET
+.ALIAS IBQ IBX
+.ALIAS ILQ ILX
+.ALIAS IQ IX
+.ALIAS IRQ IRX
+.ALIAS LIG LIGATURES
+.ALIAS NEWCOLOUR NEWCOLOR
+.ALIAS PADMARKER PAD_MARKER
+.ALIAS SP ALD
+.ALIAS SPACE ALD
+.ALIAS TABSET TAB_SET
+.ALIAS TB TAB
+.ALIAS UNDERSCORE_2 UNDERSCORE2
+.ALIAS XCOLOUR XCOLOR
+.ALIAS PDF_LINK_COLOUR PDF_LINK_COLOR
+.ALIAS AUTO_TOC_RELOCATE AUTO_RELOCATE_TOC
\#
\# ====================================================================
\#
@@ -3971,7 +3993,7 @@ y\R'#DESCENDER \\n[.cdp]'
\# ===============================================
\#
\# DOC_MACRO_ERROR
-\# ----------
+\# ---------------
\# *Arguments:
\# None.
\# *Function:
@@ -3987,7 +4009,7 @@ y\R'#DESCENDER \\n[.cdp]'
. if '\\$1'DOC_QUAD' .ds $REPLACEMENT QUAD
. tm1 "[mom]: \\$1 at line \\n[.c] of '\\n[.F]' should not be used before
START.
. tm1 " Use \\*[$REPLACEMENT] instead.
-. ab Aborting.
+. ab [mom]: Aborting.
.END
\#
\# +++PAGE DIMENSIONS+++
@@ -4094,7 +4116,7 @@ y\R'#DESCENDER \\n[.cdp]'
. nr #SINGLE_SPACE 1
. vs 12
. ie \\n[#DOC_TYPE]=4 .nr #FOOTER_ADJ \\n[.v]
-. el .nr #FOOTER_ADJ \\n[.v]*2
+. el .nr #FOOTER_ADJ \\n[.v]
. nr #ORIGINAL_DOC_LEAD \\n[.v]
. \}
. el \{\
@@ -4186,7 +4208,7 @@ y\R'#DESCENDER \\n[.cdp]'
. \}
.END
\#
-\# PRINTSTYLE TYPEWRITE control.
+\# Set limited parameters to TYPEWRITE.
\#
.MAC TYPEWRITER_FAMILY END
. ds $TYPEWRITER_FAM \\$1
@@ -4550,24 +4572,36 @@ y\R'#DESCENDER \\n[.cdp]'
\#
\# ====================================================================
\#
-\# +++COLLECT DOC INFO -- STRINGS AND REGISTERS FOR REFERENCE MACROS+++
+\# +++COLLECT DOC INFO (reference macros, metadata)+++
\#
\# *Arguments:
\# various string/register arguments
\# *Function:
-\# Collect information about documents.
+\# Set strings and registers for covers, docheaders, page headers.
\#
.MAC DOCTITLE END
. rr #DOCTITLE_NUM
. nr #DOCTITLE_NUM 0 1
. while \\n[#NUM_ARGS]>\\n[#DOCTITLE_NUM] \{\
-. ds $DOC_TITLE_\\n+[#DOCTITLE_NUM] \\$\\n[#DOCTITLE_NUM]
+. ds $DOCTITLE_\\n+[#DOCTITLE_NUM] \\$\\n[#DOCTITLE_NUM]
. \}
-. ds $DOC_TITLE \\$*
-. PDF_TITLE \\*[$DOC_TITLE]
+. ds $DOCTITLE \\$*
+. PDF_TITLE \\*[$DOCTITLE]
.END
\#
.MAC TITLE END \"Document title
+. if '\\$1'DOC_COVER' \{\
+. shift
+. DOC_COVERTITLE \\$@
+. nr #FROM_DOC_COVERTITLE 1
+. return
+. \}
+. if '\\$1'COVER' \{\
+. shift
+. COVERTITLE \\$@
+. nr #FROM_COVERTITLE 1
+. return
+. \}
. ie \\n[#NUM_ARGS]=0 \{\
. if \\n[#TITLE_NUM] \{\
. nr #ITEM 0 1
@@ -4588,39 +4622,35 @@ y\R'#DESCENDER \\n[.cdp]'
\#
.MAC SUBTITLE END \"Document sub-title
. ie \\n[#NUM_ARGS]=0 \{\
-. if \\n[#SUBTITLE_NUM] \{\
+. if \\n[#DOC_COVER_SUBTITLE_NUM] \
+. ds COVER_ DOC_COVER_
+. if \\n[#COVER_SUBTITLE_NUM] \
+. ds COVER_ COVER_
+. if \\n[#\\*[COVER_]SUBTITLE_NUM] \{\
. nr #ITEM 0 1
-. while \\n[#SUBTITLE_NUM]>\\n[#ITEM] \{\
-. rm $SUBTITLE_\\n+[#ITEM]
+. while \\n[#\\*[COVER_]SUBTITLE_NUM]>\\n[#ITEM] \{\
+. rm $\\*[COVER_]SUBTITLE_\\n+[#ITEM]
. \}
-. rr #SUBTITLE_NUM
+. rr #\\*[COVER_]SUBTITLE_NUM
. rm $SUBTITLE
. \}
. \}
. el \{\
. if '\\$1'DOC_COVER' \{\
+. ds COVER_ DOC_COVER_
. shift
-. nr #SUBTITLE_DOC_COVER_NUM 0 1
-. while \\n[#NUM_ARGS]>\\n[#SUBTITLE_DOC_COVER_NUM] \{\
-. ds $SUBTITLE_DOC_COVER_\\n+[#SUBTITLE_DOC_COVER_NUM] \
-\\$\\n[#SUBTITLE_DOC_COVER_NUM]
-. \}
-. return
. \}
. if '\\$1'COVER' \{\
+. ds COVER_ COVER_
. shift
-. nr #SUBTITLE_COVER_NUM 0 1
-. while \\n[#NUM_ARGS]>\\n[#SUBTITLE_COVER_NUM] \{\
-. ds $SUBTITLE_COVER_\\n+[#SUBTITLE_COVER_NUM] \
-\\$\\n[#SUBTITLE_COVER_NUM]
-. \}
-. return
. \}
-. nr #SUBTITLE_NUM 0 1
-. while \\n[#NUM_ARGS]>\\n[#SUBTITLE_NUM] \{\
-. ds $SUBTITLE_\\n+[#SUBTITLE_NUM] \\$\\n[#SUBTITLE_NUM]
+. nr #\\*[COVER_]SUBTITLE_NUM 0 1
+. while \\n[#NUM_ARGS]>\\n[#\\*[COVER_]SUBTITLE_NUM] \{\
+. ds $\\*[COVER_]SUBTITLE_\\n+[#\\*[COVER_]SUBTITLE_NUM] \
+\\$\\n[#\\*[COVER_]SUBTITLE_NUM]
. \}
-. ds $SUBTITLE \\$*
+. rm COVER_
+. ds $SUBTITLE \\$*
. \}
.END
\#
@@ -4667,111 +4697,71 @@ y\R'#DESCENDER \\n[.cdp]'
.END
\#
.MAC AUTHOR END \"Author. Enclose all args fully in double quotes.
-. nr #NEW_AUTHOR 1
+. rr #NO_PRINT_AUTHOR
. if '\\$1'DOC_COVER' \{\
+. ds COVER_ DOC_COVER_
. shift
-. nr #AUTHOR_DOCCOVER_NUM 0 1
-. while \\n[#NUM_ARGS]>\\n[#AUTHOR_DOCCOVER_NUM] \{\
-. ds $AUTHOR_DOCCOVER_\\n+[#AUTHOR_DOCCOVER_NUM] \
-\\$\\n[#AUTHOR_DOCCOVER_NUM]
-. \}
-. return
. \}
. if '\\$1'COVER' \{\
+. ds COVER_ COVER_
. shift
-. nr #AUTHOR_COVER_NUM 0 1
-. while \\n[#NUM_ARGS]>\\n[#AUTHOR_COVER_NUM] \{\
-. ds $AUTHOR_COVER_\\n+[#AUTHOR_COVER_NUM]
\\$\\n[#AUTHOR_COVER_NUM]
-. \}
-. return
. \}
-. nr #AUTHOR_NUM 0 1
-. rm $AUTHORS
-. while \\n[#NUM_ARGS]>\\n[#AUTHOR_NUM] \{\
-. ds $AUTHOR_\\n+[#AUTHOR_NUM] \\$\\n[#AUTHOR_NUM]
-. as $AUTHORS \\*[$AUTHOR_\\n[#AUTHOR_NUM]], \"
+. nr #\\*[COVER_]AUTHOR_NUM 0 1
+. while \\n[#NUM_ARGS]>\\n[#\\*[COVER_]AUTHOR_NUM] \{\
+. ds $\\*[COVER_]AUTHOR_\\n+[#\\*[COVER_]AUTHOR_NUM] \
+\\$\\n[#\\*[COVER_]AUTHOR_NUM]
+. if !'\\*[$\\*[COVER_]AUTHOR_\\n[#\\*[COVER_]AUTHOR_NUM]]'' \
+. as $AUTHORS \
+"\\*[$\\*[COVER_]AUTHOR_\\n[#\\*[COVER_]AUTHOR_NUM]], \"
. \}
. ds $AUTHOR \\*[$AUTHOR_1]
-. substring $AUTHORS 0 -2
+. substring $AUTHORS 0 -3
. ds PDF_AUTHORS \\*[$AUTHORS]
. pdfmomclean PDF_AUTHORS
. nop \!x X ps:exec [/Author (\\*[PDF_AUTHORS]) /DOCINFO pdfmark
.END
-\#
+.
.ALIAS EDITOR AUTHOR
\#
.MAC COPYRIGHT END \"For use on cover pages only
-. ie \\n[#NUM_ARGS]=1 \{\
-. ds $COPYRIGHT \[co]\\$1
-. rm $COPYRIGHT_DOCCOVER
-. rm $COPYRIGHT_COVER
-. \}
-. el \{\
-. if '\\$1'DOC_COVER' .ds $COPYRIGHT_DOCCOVER \[co]\\$2
-. if '\\$1'COVER' .ds $COPYRIGHT_COVER \[co]\\$2
-. \}
+. ie \\n[#NUM_ARGS]=1 \
+. ds $COVER_COPYRIGHT \[co]\\$1
+. el \
+. if '\\$1'DOC_COVER' .ds $DOC_COVER_COPYRIGHT \[co]\\$2
.END
\#
-.MAC MISC END \"For use on cover pages only; enclose all args in double quotes
+.MAC MISC END \"Doc cover and cover pages only; enclose all args in double
quotes
+. rm COVER_
. ie \\n[#NUM_ARGS]=0 \{\
-. if \\n[#MISC_NUM] \{\
-. nr #ITEM 0 1
-. while \\n[#MISC_NUM]>\\n[#ITEM] \{\
-. rm $MISC_\\n+[#ITEM]
-. \}
-. rr #MISC_NUM
-. rr #NUM_MISCS
-. \}
-. if \\n[#MISC_DOC_COVER_NUM] \{\
-. nr #ITEM 0 1
-. while \\n[#MISC_DOC_COVER_NUM]>\\n[#ITEM] \{\
-. rm $MISC_DOC_COVER_\\n+[#ITEM]
-. \}
-. rr #MISC_DOC_COVER_NUM
-. rr #NUM_MISCS
-. \}
-. if \\n[#MISC_COVER_NUM] \{\
-. nr #ITEM 0 1
-. while \\n[#MISC_COVER_NUM]>\\n[#ITEM] \{\
-. rm $MISC_COVER_\\n+[#ITEM]
+. if \\n[#DOC_COVER_MISC_LINES] \
+. ds COVER_ DOC_COVER_
+. if \\n[#COVER_MISC_LINES] \
+. ds COVER_ COVER_
+. if \\n[#\\*[COVER_]MISC_LINES] \{\
+. nr #LINE 0 1
+. while \\n[#\\*[COVER_]MISC_LINES]>\\n[#LINE] \{\
+. rm $\\*[COVER_]MISC_\\n+[#LINE]
. \}
-. rr #MISC_COVER_NUM
-. rr #NUM_MISCS
+. rr #\\*[COVER_]MISC_LINES
. \}
. \}
. el \{\
-. if !'\\$1'DOC_COVER' \{\
-. if !'\\$1'COVER' .nr #NEITHER 1
-. \}
-. if !'\\$1'COVER' \{\
-. if !'\\$1'DOC_COVER' .nr #NEITHER 1
-. \}
. if '\\$1'DOC_COVER' \{\
+. ds COVER_ DOC_COVER_
. shift
-. nr #MISC_DOC_COVER_NUM 0 1
-. while \\n[#NUM_ARGS]>\\n[#MISC_DOC_COVER_NUM] \{\
-. ds $MISC_DOC_COVER_\\n+[#MISC_DOC_COVER_NUM] \
-\\$[\\n[#MISC_DOC_COVER_NUM]]
-. \}
-. nr #NUM_MISCS_DOCCOVER \\n[#NUM_ARGS]
. \}
. if '\\$1'COVER' \{\
+. ds COVER_ COVER_
. shift
-. nr #MISC_COVER_NUM 0 1
-. while \\n[#NUM_ARGS]>\\n[#MISC_COVER_NUM] \{\
-. ds $MISC_COVER_\\n+[#MISC_COVER_NUM] \\$[\\n[#MISC_COVER_NUM]]
-. \}
-. nr #NUM_MISCS_COVER \\n[#NUM_ARGS]
. \}
-. if \\n[#NEITHER]=1 \{\
-. nr #MISC_NUM 0 1
-. while \\n[#NUM_ARGS]>\\n[#MISC_NUM] \{\
-. ds $MISC_\\n+[#MISC_NUM] \\$[\\n[#MISC_NUM]]
-. \}
-. nr #NUM_MISCS \\n[#NUM_ARGS]
-. rr #NEITHER
+. nr #\\*[COVER_]MISC_LINE 0 1
+. while \\n[#NUM_ARGS]>\\n[#\\*[COVER_]MISC_LINE] \{\
+. ds $\\*[COVER_]MISC_\\n+[#\\*[COVER_]MISC_LINE] \
+\\$[\\n[#\\*[COVER_]MISC_LINE]]
. \}
-. \}
+. nr #\\*[COVER_]MISC_LINES \\n[#NUM_ARGS]
+. rm COVER_
+. \}
.END
\#
.MAC PAGENUMBER END \"Page # that appears on page one.
@@ -4798,6 +4788,7 @@ y\R'#DESCENDER \\n[.cdp]'
. if '\\$1'DEFAULT' .nr #DOC_TYPE 1
. if '\\$1'CHAPTER' .nr #DOC_TYPE 2
. if '\\$1'NAMED' \{\
+. rr #NO_PRINT_DOCTYPE
. ds $DOC_TYPE \\$2
. nr #DOC_TYPE 3
. \}
@@ -4907,7 +4898,7 @@ y\R'#DESCENDER \\n[.cdp]'
. ch FOOTER
. br
. tm1 "[mom]: Insufficient room for \\$0 and signature line.
-. ab Aborting '\\n[.F]'.
+. ab [mom]: Aborting '\\n[.F]'.
. \}
. el .br
. nr #CLOSING 1
@@ -4950,538 +4941,560 @@ y\R'#DESCENDER \\n[.cdp]'
\#
\# ====================================================================
\#
-\# +++DEFAULTS+++
+\# +++DEFAULTS FOR DOCUMENT PROCESSING+++
\#
\# TYPE-STYLE CONTROL MACROS
\# -------------------------
-\# The control macros for family, font, size, quad and color are here
-\# grouped together. Each (e.g. _FAMILY or _FONT) tests for a calling
-\# alias before performing the action(s) appropriate to the calling
-\# macro. Defaults for all these guys are set in DEFAULTS, and listed
-\# in the "Control Macros" section of the documentation pertinent to
-\# the macro whose style is to be changed.
+\# The control macros for family, font, size, color and quad are
+\# here grouped together. Each (eg _FAMILY) uses the calling alias
+\# to determine the document element to which the style parameter
+\# applies. Defaults for all these guys are set in DEFAULTS, and
+\# listed in the "Control Macros" section of the documentation
+\# pertinent to the element whose style is to be changed.
\#
.MAC _FAMILY END
-. if '\\$0'AUTHOR_FAMILY' \
-. ds $AUTHOR_FAM \\$1
-. if '\\$0'BIBLIOGRAPHY_FAMILY' \
-. ds $BIB_FAM \\$1
-. if '\\$0'BIBLIOGRAPHY_STRING_FAMILY' \
-. ds $BIB_STRING_FAM \\$1
-. if '\\$0'BLOCKQUOTE_FAMILY' \
-. ds $BQUOTE_FAM \\$1
-. if '\\$0'CITATION_FAMILY' \
-. ds $BQUOTE_FAM \\$1
-. if '\\$0'CITE_FAMILY' \
-. ds $BQUOTE_FAM \\$1
-. if '\\$0'CHAPTER_TITLE_FAMILY' \
-. ds $CHAPTER_TITLE_FAM \\$1
-. if '\\$0'COVER_AUTHOR_FAMILY' \
-. ds $COVER_AUTHOR_FAM \\$1
-. if '\\$0'COVER_CHAPTER_TITLE_FAMILY' \
-. ds $COVER_CHAPTER_TITLE_FAM \\$1
-. if '\\$0'COVER_COPYRIGHT_FAMILY' \
-. ds $COVER_COPYRIGHT_FAM \\$1
-. if '\\$0'COVER_DOCTYPE_FAMILY' \
-. ds $COVER_DOCTYPE_FAM \\$1
-. if '\\$0'COVER_FAMILY' \
-. ds $COVER_FAM \\$1
-. if '\\$0'COVER_MISC_FAMILY' \
-. ds $COVER_MISC_FAM \\$1
-. if '\\$0'COVER_SUBTITLE_FAMILY' \
-. ds $COVER_SUBTITLE_FAM \\$1
-. if '\\$0'COVER_TITLE_FAMILY' \
-. ds $COVER_TITLE_FAM \\$1
-. if '\\$0'DOC_COVER_AUTHOR_FAMILY' \
-. ds $DOC_COVER_AUTHOR_FAM \\$1
-. if '\\$0'DOC_COVER_CHAPTER_TITLE_FAMILY' \
-. ds $DOC_COVER_CHAPTER_TITLE_FAM \\$1
-. if '\\$0'DOC_COVER_COPYRIGHT_FAMILY' \
-. ds $DOC_COVER_COPYRIGHT_FAM \\$1
-. if '\\$0'DOC_COVER_DOCTYPE_FAMILY' \
-. ds $DOC_COVER_DOCTYPE_FAM \\$1
-. if '\\$0'DOC_COVER_FAMILY' \
-. ds $DOC_COVER_FAM \\$1
-. if '\\$0'DOC_COVER_MISC_FAMILY' \
-. ds $DOC_COVER_MISC_FAM \\$1
-. if '\\$0'DOC_COVER_SUBTITLE_FAMILY' \
-. ds $DOC_COVER_SUBTITLE_FAM \\$1
-. if '\\$0'DOC_COVER_TITLE_FAMILY' \
-. ds $DOC_COVER_TITLE_FAM \\$1
-. if '\\$0'DOCHEADER_FAMILY' \
-. ds $DOCHEADER_FAM \\$1
-. if '\\$0'DOCTYPE_FAMILY' \
-. ds $DOCTYPE_FAM \\$1
-. if '\\$0'ENDNOTE_FAMILY' \
-. ds $EN_FAM \\$1
-. if '\\$0'ENDNOTE_NUMBER_FAMILY' \
-. ds $EN_NUMBER_FAM \\$1
-. if '\\$0'ENDNOTE_LINENUMBER_FAMILY' \
-. ds $EN_LN_FAM \\$1
-. if '\\$0'ENDNOTES_HEADER_FAMILY' \
-. ds $EN_STRING_FAM \\$1
-. if '\\$0'ENDNOTE_STRING_FAMILY' \
-. ds $EN_STRING_FAM \\$1
-. if '\\$0'ENDNOTE_TITLE_FAMILY' \
-. ds $EN_TITLE_FAM \\$1
-. if '\\$0'EPIGRAPH_FAMILY' \
-. ds $EPI_FAM \\$1
-. if '\\$0'FOOTNOTE_FAMILY' \
-. ds $FN_FAM \\$1
-. if '\\$0'HDRFTR_CENTER_FAMILY' \
-. ds $HDRFTR_CENTER_FAM \\$1
-. if '\\$0'HDRFTR_FAMILY' \{\
-. ds $HDRFTR_FAM \\$1
-. ds $HDRFTR_LEFT_FAM \\$1
-. ds $HDRFTR_CENTER_FAM \\$1
-. ds $HDRFTR_RIGHT_FAM \\$1
-. \}
-. if '\\$0'HDRFTR_LEFT_FAMILY' \
-. ds $HDRFTR_LEFT_FAM \\$1
-. if '\\$0'HDRFTR_RIGHT_FAMILY' \
-. ds $HDRFTR_RIGHT_FAM \\$1
-. if '\\$0'LINENUMBER_FAMILY' \
-. ds $LN_FAM \\$1
-. if '\\$0'PAGENUM_FAMILY' \
-. ds $PAGE_NUM_FAM \\$1
-. if '\\$0'QUOTE_FAMILY' \
-. ds $QUOTE_FAM \\$1
-. if '\\$0'SUBTITLE_FAMILY' \
-. ds $SUBTITLE_FAM \\$1
-. if '\\$0'TITLE_FAMILY' \
-. ds $TITLE_FAM \\$1
-. if '\\$0'TOC_FAMILY' \
-. ds $TOC_FAM \\$1
-. if '\\$0'TOC_FAM' \
-. ds $TOC_FAM \\$1
-. if '\\$0'TOC_HEADER_FAMILY' \
-. ds $TOC_HEADER_FAM \\$1
-. if '\\$0'TOC_PN_FAMILY' \
-. ds $TOC_PN_FAM \\$1
+. ds PARAM FAM
+. ds ELEMENT \\$0
+. if '\\$0'COPYRIGHT_FAMILY' \
+. ds ELEMENT COVER_COPYRIGHT_FAMILY
+. ds FROM_ALIAS \\$0
+. substring ELEMENT 0 -4 \" Strip 'ILY' from FAMILY
+. ASSIGN_ELEMENT \\$1
.END
\#
.MAC _FONT END
-. if '\\$0'AUTHOR_FONT' \
-. ds $AUTHOR_FT \\$1
-. if '\\$0'BIBLIOGRAPHY_FONT' \
-. ds $BIB_FT \\$1
-. if '\\$0'BIBLIOGRAPHY_STRING_FONT' \
-. ds $BIB_STRING_FT \\$1
-. if '\\$0'BLOCKQUOTE_FONT' \
-. ds $BQUOTE_FT \\$1
-. if '\\$0'CITATION_FONT' \
-. ds $BQUOTE_FT \\$1
-. if '\\$0'CITE_FONT' \
-. ds $BQUOTE_FT \\$1
-. if '\\$0'CHAPTER_TITLE_FONT' \
-. ds $CHAPTER_TITLE_FT \\$1
-. if '\\$0'COVER_AUTHOR_FONT' \
-. ds $COVER_AUTHOR_FT \\$1
-. if '\\$0'COVER_CHAPTER_TITLE_FONT' \
-. ds $COVER_CHAPTER_TITLE_FT \\$1
-. if '\\$0'COVER_COPYRIGHT_FONT' \
-. ds $COVER_COPYRIGHT_FT \\$1
-. if '\\$0'COVER_DOCTYPE_FONT' \
-. ds $COVER_DOCTYPE_FT \\$1
-. if '\\$0'COVER_MISC_FONT' \
-. ds $COVER_MISC_FT \\$1
-. if '\\$0'COVER_SUBTITLE_FONT' \
-. ds $COVER_SUBTITLE_FT \\$1
-. if '\\$0'COVER_TITLE_FONT' \
-. ds $COVER_TITLE_FT \\$1
-. if '\\$0'DOC_COVER_AUTHOR_FONT' \
-. ds $DOC_COVER_AUTHOR_FT \\$1
-. if '\\$0'DOC_COVER_CHAPTER_TITLE_FONT' \
-. ds $DOC_COVER_CHAPTER_TITLE_FT \\$1
-. if '\\$0'DOC_COVER_COPYRIGHT_FONT' \
-. ds $DOC_COVER_COPYRIGHT_FT \\$1
-. if '\\$0'DOC_COVER_DOCTYPE_FONT' \
-. ds $DOC_COVER_DOCTYPE_FT \\$1
-. if '\\$0'DOC_COVER_MISC_FONT' \
-. ds $DOC_COVER_MISC_FT \\$1
-. if '\\$0'DOC_COVER_SUBTITLE_FONT' \
-. ds $DOC_COVER_SUBTITLE_FT \\$1
-. if '\\$0'DOC_COVER_TITLE_FONT' \
-. ds $DOC_COVER_TITLE_FT \\$1
-. if '\\$0'DOCTYPE_FONT' \
-. ds $DOCTYPE_FT \\$1
-. if '\\$0'ENDNOTE_FONT' \
-. ds $EN_FT \\$1
-. if '\\$0'ENDNOTE_NUMBER_FONT' \
-. ds $EN_NUMBER_FT \\$1
-. if '\\$0'ENDNOTE_LINENUMBER_FONT' \
-. ds $EN_LN_FT \\$1
-. if '\\$0'ENDNOTES_HEADER_FONT' \
-. ds $EN_STRING_FT \\$1
-. if '\\$0'ENDNOTE_STRING_FONT' \
-. ds $EN_STRING_FT \\$1
-. if '\\$0'ENDNOTE_TITLE_FONT' \
-. ds $EN_TITLE_FT \\$1
-. if '\\$0'EPIGRAPH_FONT' \
-. ds $EPI_FT \\$1
-. if '\\$0'FOOTNOTE_FONT' \
-. ds $FN_FT \\$1
-. if '\\$0'HDRFTR_CENTER_FONT' \
-. ds $HDRFTR_CENTER_FT \\$1
-. if '\\$0'HDRFTR_LEFT_FONT' \
-. ds $HDRFTR_LEFT_FT \\$1
-. if '\\$0'HDRFTR_RIGHT_FONT' \
-. ds $HDRFTR_RIGHT_FT \\$1
-. if '\\$0'LINENUMBER_FONT' \
-. ds $LN_FT \\$1
-. if '\\$0'PAGENUM_FONT' \
-. ds $PAGE_NUM_FT \\$1
-. if '\\$0'QUOTE_FONT' \
-. ds $QUOTE_FT \\$1
-. if '\\$0'SUBTITLE_FONT' \
-. ds $SUBTITLE_FT \\$1
-. if '\\$0'TITLE_FONT' \
-. ds $TITLE_FT \\$1
-. if '\\$0'TOC_HEADER_FONT' \
-. ds $TOC_HEADER_FT \\$1
-. if '\\$0'TOC_PN_FONT' \
-. ds $TOC_PN_FT \\$1
+. ds PARAM FT
+. ds ELEMENT \\$0
+. ds FROM_ALIAS \\$0
+. if '\\$0'COPYRIGHT_FONT' \
+. ds ELEMENT COVER_COPYRIGHT_FONT
+. substring ELEMENT 0 -5
+. ds ELEMENT \\*[ELEMENT]FT \" ELEMENT is now \\$0_FT
+. ASSIGN_ELEMENT \\$1
.END
\#
.MAC _SIZE END
-. if '\\$0'AUTHOR_SIZE' \
-. ds $AUTHOR_SIZE_CHANGE \\$1
-. if '\\$0'BIBLIOGRAPHY_STRING_SIZE' \
-. ds $BIB_STRING_SIZE_CHANGE \\$1
-. if '\\$0'BLOCKQUOTE_SIZE' \
-. ds $BQUOTE_SIZE_CHANGE \\$1
-. if '\\$0'CITATION_SIZE' \
-. ds $BQUOTE_SIZE_CHANGE \\$1
-. if '\\$0'CITE_SIZE' \
-. ds $BQUOTE_SIZE_CHANGE \\$1
-. if '\\$0'CHAPTER_TITLE_SIZE' \
-. ds $CHAPTER_TITLE_SIZE_CHANGE \\$1
-. if '\\$0'COVER_AUTHOR_SIZE' \
-. ds $COVER_AUTHOR_SIZE_CHANGE \\$1
-. if '\\$0'COVER_CHAPTER_TITLE_SIZE' \
-. ds $COVER_CHAPTER_TITLE_SIZE_CHANGE \\$1
-. if '\\$0'COVER_COPYRIGHT_SIZE' \
-. ds $COVER_COPYRIGHT_SIZE_CHANGE \\$1
-. if '\\$0'COVER_DOCTYPE_SIZE' \
-. ds $COVER_DOCTYPE_SIZE_CHANGE \\$1
-. if '\\$0'COVER_MISC_SIZE' \
-. ds $COVER_MISC_SIZE_CHANGE \\$1
-. if '\\$0'COVER_SUBTITLE_SIZE' \
-. ds $COVER_SUBTITLE_SIZE_CHANGE \\$1
-. if '\\$0'COVER_TITLE_SIZE' \
-. ds $COVER_TITLE_SIZE_CHANGE \\$1
-. if '\\$0'DOC_COVER_AUTHOR_SIZE' \
-. ds $DOC_COVER_AUTHOR_SIZE_CHANGE \\$1
-. if '\\$0'DOC_COVER_CHAPTER_TITLE_SIZE' \
-. ds $DOC_COVER_CHAPTER_TITLE_SIZE_CHANGE \\$1
-. if '\\$0'DOC_COVER_COPYRIGHT_SIZE' \
-. ds $DOC_COVER_COPYRIGHT_SIZE_CHANGE \\$1
-. if '\\$0'DOC_COVER_DOCTYPE_SIZE' \
-. ds $DOC_COVER_DOCTYPE_SIZE_CHANGE \\$1
-. if '\\$0'DOC_COVER_MISC_SIZE' \
-. ds $DOC_COVER_MISC_SIZE_CHANGE \\$1
-. if '\\$0'DOC_COVER_SUBTITLE_SIZE' \
-. ds $DOC_COVER_SUBTITLE_SIZE_CHANGE \\$1
-. if '\\$0'DOC_COVER_TITLE_SIZE' \
-. ds $DOC_COVER_TITLE_SIZE_CHANGE \\$1
-. if '\\$0'DOCTYPE_SIZE' \
-. ds $DOCTYPE_SIZE_CHANGE \\$1
-. if '\\$0'ENDNOTE_NUMBER_SIZE' \
-. ds $EN_NUMBER_SIZE_CHANGE \\$1
-. if '\\$0'ENDNOTE_LINENUMBER_SIZE' \
-. ds $EN_LN_SIZE_CHANGE \\$1
-. if '\\$0'ENDNOTES_HEADER_SIZE' \
-. ds $EN_STRING_SIZE_CHANGE \\$1
-. if '\\$0'ENDNOTE_STRING_SIZE' \
-. ds $EN_STRING_SIZE_CHANGE \\$1
-. if '\\$0'ENDNOTE_TITLE_SIZE' \
-. ds $EN_TITLE_SIZE_CHANGE \\$1
-. if '\\$0'EPIGRAPH_SIZE' \
-. ds $EPI_SIZE_CHANGE \\$1
-. if '\\$0'FOOTNOTE_SIZE' \
-. ds $FN_SIZE_CHANGE \\$1
-. if '\\$0'HDRFTR_CENTER_SIZE' \
-. ds $HDRFTR_CENTER_SIZE_CHANGE \\$1
-. if '\\$0'HDRFTR_LEFT_SIZE' \
-. ds $HDRFTR_LEFT_SIZE_CHANGE \\$1
-. if '\\$0'HDRFTR_RIGHT_SIZE' \
-. ds $HDRFTR_RIGHT_SIZE_CHANGE \\$1
-. if '\\$0'HDRFTR_SIZE' \
-. ds $HDRFTR_SIZE_CHANGE \\$1
-. if '\\$0'LINENUMBER_SIZE' \
-. ds $LN_SIZE_CHANGE \\$1
-. if '\\$0'PAGENUM_SIZE' \
-. ds $PAGE_NUM_SIZE_CHANGE \\$1
-. if '\\$0'QUOTE_SIZE' \
-. ds $QUOTE_SIZE_CHANGE \\$1
-. if '\\$0'SUBTITLE_SIZE' \
-. ds $SUBTITLE_SIZE_CHANGE \\$1
-. if '\\$0'TITLE_SIZE' \
-. ds $TITLE_SIZE_CHANGE \\$1
-. if '\\$0'TOC_HEADER_SIZE' \
-. ds $TOC_HEADER_SIZE_CHANGE \\$1
-. if '\\$0'TOC_PN_SIZE' \
-. ds $TOC_PN_SIZE_CHANGE \\$1
+. ds PARAM SIZE_CHANGE
+. ds ELEMENT \\$0_CHANGE
+. if '\\$0'CODE_SIZE' \{\
+. ds PARAM SIZE_ADJ
+. ds ELEMENT \\$0_ADJ
+. \}
+. if '\\$0'COPYRIGHT_SIZE' \
+. ds ELEMENT COVER_COPYRIGHT_SIZE_CHANGE
+. ds FROM_ALIAS \\$0
+. ASSIGN_ELEMENT \\$1
.END
\#
.MAC _COLOR END
. if \\n[#PRINT_STYLE]=1 .return
-. if '\\$0'ATTRIBUTE_COLOR' \{\
-. nr #ATTRIBUTE_COLOR 1
-. ds $ATTRIBUTE_COLOR \\$1
-. \}
-. if '\\$0'AUTHOR_COLOR' \{\
-. nr #AUTHOR_COLOR 1
-. ds $AUTHOR_COLOR \\$1
-. \}
-. if '\\$0'BLOCKQUOTE_COLOR' \{\
-. nr #BQUOTE_COLOR 1
-. ds $BQUOTE_COLOR \\$1
-. \}
-. if '\\$0'CITATION_COLOR' \{\
-. nr #BQUOTE_COLOR 1
-. ds $BQUOTE_COLOR \\$1
-. \}
-. if '\\$0'CITE_COLOR' \{\
-. nr #BQUOTE_COLOR 1
-. ds $BQUOTE_COLOR \\$1
-. \}
-. if '\\$0'CHAPTER_TITLE_COLOR' \{\
-. nr #CHAPTER_TITLE_COLOR 1
-. ds $CHAPTER_TITLE_COLOR \\$1
-. \}
-. if '\\$0'CODE_COLOR' \{\
-. nr #CODE_COLOR 1
-. ds $CODE_COLOR \\$1
-. \}
-. if '\\$0'COVER_ATTRIBUTE_COLOR' \{\
-. nr #COVER_ATTRIBUTE_COLOR 1
-. ds $COVER_ATTRIBUTE_COLOR \\$1
-. \}
-. if '\\$0'COVER_AUTHOR_COLOR' \{\
-. nr #COVER_AUTHOR_COLOR 1
-. ds $COVER_AUTHOR_COLOR \\$1
-. \}
-. if '\\$0'COVER_CHAPTER_TITLE_COLOR' \{\
-. nr #COVER_CHAPTER_TITLE_COLOR 1
-. ds $COVER_CHAPTER_TITLE_COLOR \\$1
-. \}
-. if '\\$0'COVER_COLOR' \{\
-. nr #COVER_COLOR 1
-. ds $COVER_COLOR \\$1
-. \}
-. if '\\$0'COVER_COPYRIGHT_COLOR' \{\
-. nr #COVER_COPYRIGHT_COLOR 1
-. ds $COVER_COPYRIGHT_COLOR \\$1
-. \}
-. if '\\$0'COVER_MISC_COLOR' \{\
-. nr #COVER_MISC_COLOR 1
-. ds $COVER_MISC_COLOR \\$1
-. \}
-. if '\\$0'COVER_TITLE_COLOR' \{\
-. nr #COVER_TITLE_COLOR 1
-. ds $COVER_TITLE_COLOR \\$1
-. \}
-. if '\\$0'COVER_SUBTITLE_COLOR' \{\
-. nr #COVER_SUBTITLE_COLOR 1
-. ds $COVER_SUBTITLE_COLOR \\$1
-. \}
-. if '\\$0'COVER_DOCTYPE_COLOR' \{\
-. nr #COVER_DOCTYPE_COLOR 1
-. ds $COVER_DOCTYPE_COLOR \\$1
-. \}
-. if '\\$0'DOC_COVER_ATTRIBUTE_COLOR' \{\
-. nr #DOC_COVER_ATTRIBUTE_COLOR 1
-. ds $DOC_COVER_ATTRIBUTE_COLOR \\$1
-. \}
-. if '\\$0'DOC_COVER_AUTHOR_COLOR' \{\
-. nr #DOC_COVER_AUTHOR_COLOR 1
-. ds $DOC_COVER_AUTHOR_COLOR \\$1
-. \}
-. if '\\$0'DOC_COVER_CHAPTER_TITLE_COLOR' \{\
-. nr #DOC_COVER_CHAPTER_TITLE_COLOR 1
-. ds $DOC_COVER_CHAPTER_TITLE_COLOR \\$1
-. \}
-. if '\\$0'DOC_COVER_COLOR' \{\
-. nr #DOC_COVER_COLOR 1
-. ds $DOC_COVER_COLOR \\$1
-. \}
-. if '\\$0'DOC_COVER_COPYRIGHT_COLOR' \{\
-. nr #DOC_COVER_COPYRIGHT_COLOR 1
-. ds $DOC_COVER_COPYRIGHT_COLOR \\$1
-. \}
-. if '\\$0'DOC_COVER_MISC_COLOR' \{\
-. nr #DOC_COVER_MISC_COLOR 1
-. ds $DOC_COVER_MISC_COLOR \\$1
-. \}
-. if '\\$0'DOC_COVER_TITLE_COLOR' \{\
-. nr #DOC_COVER_TITLE_COLOR 1
-. ds $DOC_COVER_TITLE_COLOR \\$1
-. \}
-. if '\\$0'DOC_COVER_SUBTITLE_COLOR' \{\
-. nr #DOC_COVER_SUBTITLE_COLOR 1
-. ds $DOC_COVER_SUBTITLE_COLOR \\$1
-. \}
-. if '\\$0'DOC_COVER_DOCTYPE_COLOR' \{\
-. nr #DOC_COVER_DOCTYPE_COLOR 1
-. ds $DOC_COVER_DOCTYPE_COLOR \\$1
-. \}
-. if '\\$0'DOCHEADER_COLOR' \{\
-. nr #DOCHEADER_COLOR 1
-. ds $DOCHEADER_COLOR \\$1
-. \}
-. if '\\$0'DOCTYPE_COLOR' \{\
-. nr #DOCTYPE_COLOR 1
-. ds $DOCTYPE_COLOR \\$1
-. \}
-. if '\\$0'ENDNOTES_HEADER_COLOR' \{\
-. nr #ENDNOTE_STRING_COLOR 1
-. ds $ENDNOTE_STRING_COLOR \\$1
-. \}
-. if '\\$0'ENDNOTE_STRING_COLOR' \{\
-. nr #ENDNOTE_STRING_COLOR 1
-. ds $ENDNOTE_STRING_COLOR \\$1
-. \}
-. if '\\$0'EPIGRAPH_COLOR' \{\
-. nr #EPI_COLOR 1
-. ds $EPI_COLOR \\$1
-. \}
-. if '\\$0'FINIS_COLOR' \{\
-. nr #FINIS_COLOR 1
-. ds $FINIS_COLOR \\$1
-. \}
-. if '\\$0'FOOTNOTE_COLOR' \{\
-. nr #FOOTNOTE_COLOR 1
-. ds $FOOTNOTE_COLOR \\$1
-. \}
-. if '\\$0'HDRFTR_CENTER_COLOR' \{\
-. nr #HDRFTR_CENTER_COLOR 1
-. ds $HDRFTR_CENTER_COLOR \\$1
-. \}
-. if '\\$0'HDRFTR_COLOR' \{\
-. nr #HDRFTR_COLOR 1
-. ds $HDRFTR_COLOR \\$1
-. \}
-. if '\\$0'HDRFTR_LEFT_COLOR' \{\
-. nr #HDRFTR_LEFT_COLOR 1
-. ds $HDRFTR_LEFT_COLOR \\$1
-. \}
-. if '\\$0'HDRFTR_RIGHT_COLOR' \{\
-. nr #HDRFTR_RIGHT_COLOR 1
-. ds $HDRFTR_RIGHT_COLOR \\$1
-. \}
-. if '\\$0'HDRFTR_RULE_COLOR' \{\
-. nr #HDRFTR_RULE_COLOR 1
-. ds $HDRFTR_RULE_COLOR \\$1
-. \}
-. if '\\$0'LINEBREAK_COLOR' \{\
-. nr #LINEBREAK_COLOR 1
-. ds $LINEBREAK_COLOR \\$1
-. \}
-. if '\\$0'LINENUMBER_COLOR' \{\
-. nr #LINENUMBER_COLOR 1
-. ds $LN_COLOR \\$1
-. \}
-. if '\\$0'PAGENUM_COLOR' \{\
-. nr #PAGE_NUM_COLOR 1
-. ds $PAGENUM_COLOR \\$1
-. \}
-. if '\\$0'QUOTE_COLOR' \{\
-. nr #QUOTE_COLOR 1
-. ds $QUOTE_COLOR \\$1
-. \}
-. if '\\$0'SECTION_COLOR' \{\
-. nr #LINEBREAK_COLOR 1
-. ds $LINEBREAK_COLOR \\$1
+. ds PARAM COLOR
+. ds ELEMENT \\$0
+. if '\\$0'COPYRIGHT_COLOR' \
+. ds ELEMENT COVER_COPYRIGHT_COLOR
+. ds FROM_ALIAS \\$0
+. ASSIGN_ELEMENT \\$1
+.END
+\#
+.MAC _CAPS END
+. ds CAPS_TYPE \\$0
+. substring CAPS_TYPE 0 7
+. ds CALLED_AS \\$0
+. substring CALLED_AS -7
+. ie '\\*[CALLED_AS]'NO_CAPS' \{\
+. ie '\\*[CAPS_TYPE]'BIBLIOGR' \{\
+. if '\\$0'BIBLIOGRAPHY_HEADER_NO_CAPS' .rr #BIB_STRING_CAPS
+. if '\\$0'BIBLIOGRAPHY_STRING_NO_CAPS' .rr #BIB_STRING_CAPS
+. \}
+. el \{\
+. ie '\\*[CAPS_TYPE]'ENDNOTES' \{\
+. if '\\$0'ENDNOTES_HEADER_NO_CAPS' .rr #EN_STRING_CAPS
+. if '\\$0'ENDNOTES_STRING_NO_CAPS' .rr #EN_STRING_CAPS
+. \}
+. el \{\
+. ie '\\$0'TOC_HEADER_NO_CAPS' .rr #TOC_STRING_CAPS
+. el \{\
+. ds REGISTER_TYPE \\$0
+. substring REGISTER_TYPE 0 -8
+. as REGISTER_TYPE CAPS
+. rr #\\*[REGISTER_TYPE]
+. \}
+. \}
+. \}
. \}
-. if '\\$0'SUBTITLE_COLOR' \{\
-. nr #SUBTITLE_COLOR 1
-. ds $SUBTITLE_COLOR \\$1
+. el \{\
+. ie '\\*[CAPS_TYPE]'BIBLIOGR' \{\
+. if '\\$0'BIBLIOGRAPHY_HEADER_CAPS' .nr #BIB_STRING_CAPS 1
+. if '\\$0'BIBLIOGRAPHY_STRING_CAPS' .nr #BIB_STRING_CAPS 1
+. \}
+. el .nr #\\$0 1
. \}
-. if '\\$0'TITLE_COLOR' \{\
-. nr #TITLE_COLOR 1
-. ds $TITLE_COLOR \\$1
+.END
+.
+.ALIAS _NO_CAPS _CAPS
+\#
+.MAC _SMALLCAPS END
+. ds SMALLCAPS_TYPE \\$0
+. substring SMALLCAPS_TYPE 0 7
+. ds CALLED_AS \\$0
+. substring CALLED_AS -12
+. ie '\\*[CALLED_AS]'NO_SMALLCAPS' \{\
+. ie '\\*[SMALLCAPS_TYPE]'BIBLIOGR' \{\
+. if '\\$0'BIBLIOGRAPHY_HEADER_NO_SMALLCAPS' .rr #BIB_STRING_SMALLCAPS
+. if '\\$0'BIBLIOGRAPHY_STRING_NO_SMALLCAPS' .rr #BIB_STRING_SMALLCAPS
+. \}
+. el \{\
+. ie '\\*[SMALLCAPS_TYPE]'ENDNOTES' \{\
+. if '\\$0'ENDNOTES_HEADER_NO_SMALLCAPS' .rr #EN_STRING_SMALLCAPS
+. if '\\$0'ENDNOTES_STRING_NO_SMALLCAPS' .rr #EN_STRING_SMALLCAPS
+. \}
+. el \{\
+. ie '\\$0'TOC_HEADER_NO_SMALLCAPS' .rr #TOC_STRING_SMALLCAPS
+. el \{\
+. ds REGISTER_TYPE \\$0
+. substring REGISTER_TYPE 0 -13
+. as REGISTER_TYPE SMALLCAPS
+. rr #\\*[REGISTER_TYPE]
+. \}
+. \}
+. \}
. \}
-. if '\\$0'TOC_HEADER_COLOR' \{\
-. nr #TOC_HEADER_COLOR 1
-. ds $TOC_HEADER_COLOR \\$1
+. el \{\
+. ie '\\*[SMALLCAPS_TYPE]'BIBLIOGR' \{\
+. if '\\$0'BIBLIOGRAPHY_HEADER_SMALLCAPS' .nr #BIB_STRING_SMALLCAPS 1
+. if '\\$0'BIBLIOGRAPHY_STRING_SMALLCAPS' .nr #BIB_STRING_SMALLCAPS 1
+. \}
+. el .nr #\\$0 1
. \}
.END
+.
+.ALIAS _NO_SMALLCAPS _SMALLCAPS
\#
.MAC _QUAD END
. if '\\$0'BIBLIOGRAPHY_QUAD' \{\
-. ds $BIB_QUAD \\$1
-. if '\\*[$BIB_QUAD]'R' \
-.ab \\$0 at line \\n[.c] must be set to either L or J. Aborting \\n'[.F]'.
-. if '\\*[$BIB_QUAD]'C' \
-.ab \\$0 at line \\n[.c] must be set to either L or J. Aborting \\n'[.F]'.
-. \}
-. if '\\$0'BIBLIOGRAPHY_STRING_QUAD' \
-. ds $BIB_STRING_QUAD \\$1
-. if '\\$0'BLOCKQUOTE_QUAD' \
-. ds $BQUOTE_QUAD \\$1
-. if '\\$0'CITATION_QUAD' \
-. ds $BQUOTE_QUAD \\$1
-. if '\\$0'CITE_QUAD' \
-. ds $BQUOTE_QUAD \\$1
-. if '\\$0'COVER_COPYRIGHT_QUAD' \
-. ds $COVER_COPYRIGHT_QUAD \\$1
-. if '\\$0'COVER_MISC_QUAD' \
-. ds $COVER_MISC_QUAD \\$1
-. if '\\$0'COVER_QUAD' \
-. ds $COVER_QUAD \\$1
-. if '\\$0'DOC_COVER_COPYRIGHT_QUAD' \
-. ds $DOC_COVER_COPYRIGHT_QUAD \\$1
-. if '\\$0'DOC_COVER_MISC_QUAD' \
-. ds $DOC_COVER_MISC_QUAD \\$1
-. if '\\$0'DOC_COVER_QUAD' \
-. ds $DOC_COVER_QUAD \\$1
-. if '\\$0'DOCHEADER_QUAD' \
-. ds $DOCHEADER_QUAD \\$1
-. if '\\$0'DOC_QUAD' \{\
-. if !\\n[DOCS] .DOC_MACRO_ERROR \\$0
-. ds $DOC_QUAD \\$1
-. QUAD \\*[$DOC_QUAD]
+. if '\\$1'R' .QUAD-ERROR \\$0
+. if '\\$1'C' .QUAD-ERROR \\$0
. \}
. if '\\$0'ENDNOTE_QUAD' \{\
-. ds $EN_QUAD \\$1
-. if '\\*[$EN_QUAD]'R' \
-.ab \\$0 at line \\n[.c] must be set to either L or J. Aborting \\n'[.F]'.
-. if '\\*[$EN_QUAD]'C' \
-.ab \\$0 at line \\n[.c] must be set to either L or J. Aborting \\n'[.F]'.
-. \}
-. if '\\$0'ENDNOTES_HEADER_QUAD' \
-. ds $EN_STRING_QUAD \\$1
-. if '\\$0'ENDNOTE_STRING_QUAD' \
-. ds $EN_STRING_QUAD \\$1
-. if '\\$0'ENDNOTE_TITLE_QUAD' \
-. ds $EN_TITLE_QUAD \\$1
-. if '\\$0'EPIGRAPH_QUAD' \
-. ds $EPI_QUAD \\$1
-. if '\\$0'FOOTNOTE_QUAD' \
-. ds $FN_QUAD \\$1
-. if '\\$0'TOC_HEADER_QUAD' \
-. ds $TOC_HEADER_QUAD \\$1
+. if '\\$1'R' .QUAD-ERROR \\$0
+. if '\\$1'C' .QUAD-ERROR \\$0
+. \}
+. if '\\$0'DOC_QUAD' \{\
+. if !\\n[#DOCS] .DOC_MACRO_ERROR \\$0
+. \}
+. ds PARAM QUAD
+. ds ELEMENT \\$0
+. if '\\$0'COPYRIGHT_QUAD' \
+. ds ELEMENT COVER_COPYRIGHT_QUAD
+. ds FROM_ALIAS \\$0
+. ASSIGN_ELEMENT \\$1
.END
\#
-\# DEFAULTS
-\# --------
-\# *Arguments:
-\# <none>
-\# *Function:
-\# Sets up defaults if no values are entered prior to START.
-\# *Notes:
-\# The defaults for $CHAPTER_STRING, $DRAFT_STRING, and
-\# $REVISION_STRING are in the COPYSTYLE macro.
+\# Special handling for QUOTE quadding
\#
-.MAC DEFAULTS END
-. if !d $PAPER .PAPER LETTER
-. if !\\n[#DOC_TYPE] .DOCTYPE DEFAULT
-. ie \\n[#PAGENUM_STYLE_SET] .PAGENUM_STYLE \\*[$PAGENUM_STYLE]
-. el \
-. if !\\n[#COPY_STYLE]=1 .PAGENUM_STYLE DIGIT
-. if !\\n[#COPY_STYLE] .COPYSTYLE FINAL
-. if \\n[#DRAFT_WITH_PAGENUM] .COPYSTYLE \\*[$COPY_STYLE]
+.MAC QUOTE_QUAD END
+. ds $Q_QUAD \\$0
+. substring $Q_QUAD 6
+.END
+.
+.ALIAS QUOTE_LEFT QUOTE_QUAD
+.ALIAS QUOTE_CENTER QUOTE_QUAD
+.ALIAS QUOTE_RIGHT QUOTE_QUAD
+\#
+.MAC QUAD-ERROR END
+. tm1 "[mom]: \\$1 at line \\n[.c] of '\\n[.F]' must be set to either L or
J.
+. ab [mom]: Aborting.
+.END
+\#
+.MAC ASSIGN_ELEMENT END
+.\" HDRFTR_<POSITION>_<PARAMETER> need special handling.
+. ds hdrftr \\*[FROM_ALIAS]
+. substring hdrftr 0 5
+. if '\\*[hdrftr]'HDRFTR' \{\
+. ds hdrftr-pos-element \\*[ELEMENT]
+.\" See if ELEMENT is of the form HDRFTR_<pos>_<param>
+. substring hdrftr-pos-element 0 7
+. substring hdrftr-pos-element -1
+. if '\\*[hdrftr-pos-element]'L' .nr hdrftr-pos-element 1
+. if '\\*[hdrftr-pos-element]'C' .nr hdrftr-pos-element 1
+. if '\\*[hdrftr-pos-element]'R' .nr hdrftr-pos-element 1
+. \}
+. if !\\n[hdrftr-pos-element] \{\
+. ds c1-c5 \\*[ELEMENT]
+. substring c1-c5 0 4 \" Grab first five letters of the alias
+. \}
+. rr hdrftr-pos-element
+.\" If none of the following, convert the substring of the
+.\" calling alias, ie \*[ELEMENT], into the parameter string, eg
+.\" $TITLE_FAM, assign arg, and set register.
+. if !'\\*[c1-c5]'BIBLI' \
+. if !'\\*[c1-c5]'BLOCK' \
+. if !'\\*[c1-c5]'CITAT' \
+. if !'\\*[c1-c5]'ENDNO' \
+. if !'\\*[c1-c5]'EPIGR' \
+. if !'\\*[c1-c5]'FOOTN' \
+. if !'\\*[c1-c5]'HDRFT' \
+. if !'\\*[c1-c5]'LINEN' \
+. if !'\\*[c1-c5]'PAGEN' \{\
+. ie '\\*[ELEMENT]'CODE_SIZE_ADJ' .nr #\\*[ELEMENT] \\$1
+. el \{\
+. ds $\\*[ELEMENT] \\$1
+. nr #\\*[ELEMENT] 1
+. \}
+. \}
+. if '\\*[$\\*[ELEMENT]]'' \{\
+. if '\\*[c1-c5]'BIBLI' .ASSIGN_PARAM BIB \\$1
+. if '\\*[c1-c5]'BLOCK' .ASSIGN_PARAM BQUOTE_ \\$1
+. if '\\*[c1-c5]'CITAT' .ASSIGN_PARAM BQUOTE_ \\$1
+. if '\\*[c1-c5]'ENDNO' .ASSIGN_PARAM EN \\$1
+. if '\\*[c1-c5]'EPIGR' .ASSIGN_PARAM EPI_ \\$1
+. if '\\*[c1-c5]'FOOTN' .ASSIGN_PARAM FN_ \\$1
+. if '\\*[c1-c5]'HDRFT' .ASSIGN_PARAM HDRFTR_ \\$1
+. if '\\*[c1-c5]'LINEN' .ASSIGN_PARAM LN_ \\$1
+. if '\\*[c1-c5]'PAGEN' .ASSIGN_PARAM PAGE_NUM_ \\$1
+. \}
+.END
+\#
+.MAC ASSIGN_PARAM END
+. if '\\*[PARAM]'FAM' .nr substr-index -7
+. if '\\*[PARAM]'FT' .nr substr-index -5
+. if '\\*[PARAM]'SIZE_CHANGE' .nr substr-index -5
+. if '\\*[PARAM]'COLOR' .nr substr-index -6
+. if '\\*[PARAM]'QUAD' .nr substr-index -5
+. if '\\$1'BIB' \{\
+. ds ELEMENT \\*[FROM_ALIAS]
+. substring ELEMENT 12 \\n[substr-index]
+. if '\\*[ELEMENT]'_HEADER_' \
+. ds ELEMENT _STRING_
+. \}
+. if '\\$1'BQUOTE_' .rm ELEMENT
+. if '\\$1'EN' \{\
+. ds ELEMENT \\*[FROM_ALIAS]
+. substring ELEMENT 7 \\n[substr-index]
+. if '\\*[ELEMENT]'S_HEADER_' \
+. ds ELEMENT _STRING_
+. if '\\*[ELEMENT]'_LINENUMBER_' \
+. ds ELEMENT _LN_
+. \}
+. if '\\$1'EPI_' .rm ELEMENT
+. if '\\$1'FN_' .rm ELEMENT
+. if '\\$1'HDRFTR_' \{\
+. ie '\\*[ELEMENT]'HDRFTR_FAM' \{\
+. nr #HDRFTR 1
+. ds $HDRFTR_FAM \\$2
+. ds $HDRFTR_LEFT_FAM \\$2
+. ds $HDRFTR_CENTER_FAM \\$2
+. ds $HDRFTR_RIGHT_FAM \\$2
+. \}
+. el \{\
+. substring ELEMENT 7 \\n[substr-index]
+. if '\\*[ELEMENT]'_LEFT' \
+. ds ELEMENT _STRING_
+. \}
+. \}
+. if '\\$1'LN_' .rm ELEMENT
+. if '\\$1'PAGE_NUM_' .rm ELEMENT
+. if !r #HDRFTR \{\
+. ds $\\$1\\*[ELEMENT]\\*[PARAM] \\$2
+. nr #\\$1\\*[ELEMENT]\\*[PARAM] 1
+. \}
+. rr #HDRFTR
+. rm hdrftr-pos-element
+. rr substr-index
+. rm FROM_ALIAS
+. rm ELEMENT
+.END
+\#
+.MAC TITLE_LEAD END
+. ds $TYPE \\$0
+. substring $TYPE 0 2
+. if '\\*[$TYPE]'DOC' .nr DOC_ 1
+. ds $TYPE \\$0
+. ie '\\*[$TYPE]'MISC_LEAD' .ds $TYPE COVER_MISC
+. el .substring $TYPE -6 0
+. ds $\\*[$TYPE]_LEAD \\$1
+. nr #\\*[$TYPE]_LEAD 1
+. rm $TYPE
+.END
+\#
+\# The _STYLE macro, called by various aliases, allows grouping
+\# style parameters for most document elements in a single macro
+\# using 'KEYWORD value' pairs.
+\#
+.MAC _STYLE END
+. ds $STYLE_TYPE \\$0
+. substring $STYLE_TYPE 0 -7
+. if '\\*[$STYLE_TYPE]'ENDNOTES_HEADER' \
+. ds $BIB-EN-TOC EN_STRING
+. if '\\*[$STYLE_TYPE]'ENDNOTE_STRING' \
+. ds $BIB-EN-TOC EN_STRING
+. if '\\*[$STYLE_TYPE]'BIBLIOGRAPHY_HEADER' \
+. ds $BIB-EN-TOC BIB_STRING
+. if '\\*[$STYLE_TYPE]'TOC_HEADER' \
+. ds $BIB-EN-TOC TOC_STRING
+. nr #LOOP 0 1
+. nr #STYLE_PARAMS \\n[#NUM_ARGS]
+. while \\n+[#LOOP]<=\\n[#STYLE_PARAMS] \{\
+. if '\\$1'FAMILY' \{\
+. shift
+. \\*[$STYLE_TYPE]_FAMILY \\$1
+. shift
+. \}
+. if '\\$1'FONT' \{\
+. shift
+. \\*[$STYLE_TYPE]_FONT \\$1
+. shift
+. \}
+. if '\\$1'SIZE' \{\
+. shift
+. \\*[$STYLE_TYPE]_SIZE \\$1
+. shift
+. \}
+. if '\\$1'COLOR' \{\
+. shift
+. \\*[$STYLE_TYPE]_COLOR \\$1
+. shift
+. \}
+. if '\\$1'CAPS' \{\
+. if \\n[#\\*[$STYLE_TYPE]_SMALLCAPS] \{\
+. tm1 \
+"[mom]: '\\*[$STYLE_TYPE]_STYLE' contains CAPS and SMALLCAPS. \
+CAPS takes precedence.
+. rr #\\*[$STYLE_TYPE]_SMALLCAPS
+. \}
+. \\*[$STYLE_TYPE]_CAPS
+. shift
+. \}
+. if '\\$1'NO_CAPS' \{\
+. rr #\\*[$STYLE_TYPE]_CAPS
+. if !'\\*[$BIB-EN-TOC]'' \
+. rr #\\*[$BIB-EN-TOC]_CAPS
+. shift
+. \}
+. if '\\$1'SMALLCAPS' \{\
+. if \\n[#\\*[$STYLE_TYPE]_CAPS] \{\
+. tm1 \
+"[mom]: '\\*[$STYLE_TYPE]_STYLE' contains CAPS and SMALLCAPS. \
+SMALLCAPS takes precedence.
+. rr #\\*[$STYLE_TYPE]_CAPS
+. \}
+. \\*[$STYLE_TYPE]_SMALLCAPS
+. shift
+. \}
+. if '\\$1'NO_SMALLCAPS' \{\
+. rr #\\*[$STYLE_TYPE]_SMALLCAPS
+. if !'\\*[$BIB-EN-TOC]'' \
+. rr #\\*[$BIB-EN-TOC]_SMALLCAPS
+. shift
+. \}
+. if '\\$1'LEAD' \{\
+. shift
+. \\*[$STYLE_TYPE]_LEAD \\$1
+. shift
+. \}
+. if '\\$1'AUTOLEAD' \{\
+. shift
+. \\*[$STYLE_TYPE]_AUTOLEAD \\$1
+. shift
+. \}
+. if '\\$1'SPACE' \{\
+. shift
+. \\*[$STYLE_TYPE]_SPACE \\$1
+. shift
+. \}
+. if '\\$1'QUAD' \{\
+. shift
+. ie '\\*[$STYLE_TYPE]'QUOTE' \{\
+. if '\\$1'L' .QUOTE_LEFT
+. if '\\$1'LEFT' .QUOTE_LEFT
+. if '\\$1'C' .QUOTE_CENTER
+. if '\\$1'CENTER' .QUOTE_CENTER
+. if '\\$1'CENTRE' .QUOTE_CENTER
+. if '\\$1'R' .QUOTE_RIGHT
+. if '\\$1'RIGHT' .QUOTE_RIGHT
+. \}
+. el .\\*[$STYLE_TYPE]_QUAD \\$1
+. shift
+. \}
+. if '\\$1'INDENT' \{\
+. shift
+. \\*[$STYLE_TYPE]_INDENT \\$1
+. shift
+. \}
+.\" UNDERLINE and UNDERSCORE are identical but we can't use : or &
+.\" in string comparisons.
+. if '\\$1'UNDERLINE' \{\
+. shift
+. if '\\$1'DOUBLE' \{\
+. as ul-args \\$1 \"
+. shift
+. \}
+. nr #COUNT 0 1
+. while \\n+[#COUNT]<=3 \{\
+. if \B'\\$1' \{\
+. as ul-args \\$1 \"
+. shift
+. \}
+. \}
+. \\*[$STYLE_TYPE]_UNDERSCORE \\*[ul-args]
+. \}
+. if '\\$1'UNDERSCORE' \{\
+. shift
+. if '\\$1'DOUBLE' \{\
+. as ul-args \\$1 \"
+. shift
+. \}
+. nr #COUNT 0 1
+. while \\n+[#COUNT]<=3 \{\
+. if \B'\\$1' \{\
+. as ul-args \\$1 \"
+. shift
+. \}
+. \}
+. \\*[$STYLE_TYPE]_UNDERSCORE \\*[ul-args]
+. \}
+. if '\\$1'NO_UNDERSCORE' \{\
+. rr #\\*[$STYLE_TYPE]_UNDERLINE
+. if !'\\*[$BIB-EN-TOC]'' \
+. rr #\\*[$BIB-EN-TOC]_UNDERLINE
+. shift
+. \}
+. if '\\$1'NO_UNDERLINE' \{\
+. rr #\\*[$STYLE_TYPE]_UNDERLINE
+. if !'\\*[$BIB-EN-TOC]'' \
+. rr #\\*[$BIB-EN-TOC]_UNDERLINE
+. shift
+. \}
+. \}
+. br
+. rm $STYLE_TYPE
+. rm $BIB-EN-TOC
+. rm ul-args
+.END
+.
+.ds STYLE_TYPE_1 ATTRIBUTE
+.ds STYLE_TYPE_2 AUTHOR
+.ds STYLE_TYPE_3 BIBLIOGRAPHY_HEADER
+.ds STYLE_TYPE_4 BIBLIOGRAPHY_STRING
+.ds STYLE_TYPE_5 BLOCKQUOTE
+.ds STYLE_TYPE_6 CHAPTER
+.ds STYLE_TYPE_7 CHAPTER_TITLE
+.ds STYLE_TYPE_8 CODE
+.ds STYLE_TYPE_9 COPYRIGHT
+.ds STYLE_TYPE_10 COVER
+.ds STYLE_TYPE_11 COVERTITLE
+.ds STYLE_TYPE_12 DOC_COVERTITLE
+.ds STYLE_TYPE_13 DOCHEADER
+.ds STYLE_TYPE_14 DOCTITLE
+.ds STYLE_TYPE_15 DOCTYPE
+.ds STYLE_TYPE_16 ENDNOTE_TITLE
+.ds STYLE_TYPE_17 ENDNOTES_HEADER
+.ds STYLE_TYPE_18 ENDNOTE_STRING
+.ds STYLE_TYPE_19 EPIGRAPH
+.ds STYLE_TYPE_20 FINIS
+.ds STYLE_TYPE_21 LEAD
+.ds STYLE_TYPE_22 LINENUMBER
+.ds STYLE_TYPE_23 MISC
+.ds STYLE_TYPE_24 QUOTE
+.ds STYLE_TYPE_25 SUBTITLE
+.ds STYLE_TYPE_26 TITLE
+.ds STYLE_TYPE_27 TOC_HEADER
+.
+.nr #LOOP 0 1
+.while \n+[#LOOP]<=27 \{\
+. ALIAS \*[STYLE_TYPE_\n[#LOOP]]_STYLE _STYLE
+. ALIAS COVER_\*[STYLE_TYPE_\n[#LOOP]]_STYLE _STYLE
+. ALIAS DOC_COVER_\*[STYLE_TYPE_\n[#LOOP]]_STYLE _STYLE
+.\}
+\#
+\# UNDERLINE CONTROL
+\# -----------------
+\# *Arguments:
+\# [ DOUBLE ] [ <underline weight> [<underline gap>] ] | <none> | <anything>
+\# *Function:
+\# Toggles underlining of the element indicated by the calling alias
+\# on or off. Uses #<element>_UNDERLINE_WEIGHT to set the weight,
+\# and defines string $<element>_UNDERLINE_GAP.
+\#
+.MAC _UNDERLINE END
+. ds $GET_TITLE_TYPE \\$0
+. substring $GET_TITLE_TYPE -2
+. ie '\\*[$GET_TITLE_TYPE]'NE' \{\
+.\" Called as _UNDERLINE
+. ds $GET_TITLE_TYPE \\$0
+. substring $GET_TITLE_TYPE 0 -10
+. ds $TITLE_TYPE \\*[$GET_TITLE_TYPE]
+. \}
+. el \{\
+.\" Called as _UNDERSCORE
+. ds $GET_TITLE_TYPE \\$0
+. substring $GET_TITLE_TYPE 0 -11
+. ds $TITLE_TYPE \\*[$GET_TITLE_TYPE]
+. \}
+. ds $GET_TITLE_TYPE \\$0
+. substring $GET_TITLE_TYPE 0 2
+. if '\\*[$GET_TITLE_TYPE]'BIB' .ds $TITLE_TYPE BIB_STRING_
+. if '\\*[$GET_TITLE_TYPE]'SUB' .ds $TITLE_TYPE SUBTITLE_
+. ds $GET_TITLE_TYPE \\$0
+. substring $GET_TITLE_TYPE 0 7
+. if '\\*[$GET_TITLE_TYPE]'ENDNOTES' .ds $TITLE_TYPE EN_STRING_
+. ds $GET_TITLE_TYPE \\$0
+. substring $GET_TITLE_TYPE 0 10
+. if '\\*[$GET_TITLE_TYPE]'ENDNOTE_STR' .ds $TITLE_TYPE EN_STRING_
+. if '\\*[$GET_TITLE_TYPE]'ENDNOTE_TIT' .ds $TITLE_TYPE EN_TITLE_
+. ie '\\$1'' .nr #\\*[$TITLE_TYPE]UNDERLINE 1
+. el \{\
+. ie \\n[#NUM_ARGS]=1 \{\
+. ie \B'\\$1' \{\
+. if !\\n[#PRINT_STYLE]=1 \{\
+. \\*[$TITLE_TYPE]UNDERLINE_WEIGHT \\$1
+. nr #\\*[$TITLE_TYPE]UNDERLINE 1
+. \}
+. \}
+. el \{\
+. ie '\\$1'DOUBLE' .nr #\\*[$TITLE_TYPE]UNDERLINE 2
+. el .nr #\\*[$TITLE_TYPE]UNDERLINE 0
+. \}
+. \}
+. el \{\
+. if !\\n[#PRINT_STYLE]=1 \{\
+. nr #\\*[$TITLE_TYPE]UNDERLINE 1
+. if '\\$1'DOUBLE' \{\
+. nr #\\*[$TITLE_TYPE]UNDERLINE 2
+. shift
+. \}
+. \\*[$TITLE_TYPE]UNDERLINE_WEIGHT \\$1
+. if !'\\$2'' \
+. ds $\\*[$TITLE_TYPE]UNDERLINE_GAP \\$2
+. if !'\\$3'' \
+. ds $\\*[$TITLE_TYPE]RULE_GAP \\$3
+. \}
+. \}
+. \}
+. rm $TITLE_TYPE
+.END
+.
+.ALIAS ENDNOTE_STRING_UNDERLINE _UNDERLINE
+.ALIAS ENDNOTE_STRING_UNDERSCORE _UNDERLINE
+\#
+\# DEFAULTS
+\# --------
+\# *Arguments:
+\# <none>
+\# *Function:
+\# Sets up defaults if no values are entered prior to START.
+\# *Notes:
+\# The defaults for $CHAPTER_STRING, $DRAFT_STRING, and
+\# $REVISION_STRING are in the COPYSTYLE macro.
+\#
+.MAC DEFAULTS END
+. if !d $PAPER .PAPER LETTER
+. if !\\n[#DOC_TYPE] .DOCTYPE DEFAULT
+. ie \\n[#PAGENUM_STYLE_SET] .PAGENUM_STYLE \\*[$PAGENUM_STYLE]
+. el \
+. if !\\n[#COPY_STYLE]=1 .PAGENUM_STYLE DIGIT
+. if !\\n[#COPY_STYLE] .COPYSTYLE FINAL
+. if \\n[#DRAFT_WITH_PAGENUM] .COPYSTYLE \\*[$COPY_STYLE]
. if \\n[#DOC_TYPE]=4 \{\
. if !\\n[#USER_SET_L_LENGTH] \{\
. R_MARGIN \\n[#R_MARGIN]u
@@ -5536,10 +5549,11 @@ y\R'#DESCENDER \\n[.cdp]'
. nr #DOC_L_MARGIN \\n[#L_MARGIN]
. nr #DOC_L_LENGTH \\n[#L_LENGTH]
. nr #DOC_R_MARGIN \\n[#PAGE_WIDTH]-(\\n[#DOC_L_MARGIN]+\\n[#L_LENGTH])
-. if '\\*[$SAVED_DOC_FAM]'' \{\
-. ds $DOC_FAM \\*[$FAMILY]
+. ie !'\\*[$SAVED_DOC_FAM]'' \{\
+. ds $DOC_FAM \\*[$SAVED_DOC_FAM]
. rm $SAVED_DOC_FAM
. \}
+. el .ds $DOC_FAM \\*[$FAMILY]
. nr #DOC_PT_SIZE \\n[#PT_SIZE]
.\"
. if \\n[#TOC] .nr #DOC_PT_SIZE \\n[#TOC_PS]
@@ -5561,10 +5575,14 @@ y\R'#DESCENDER \\n[.cdp]'
. ie \\n[#ADJ_DOC_LEAD]=1 .
. el \
. if !\\n[#DOC_LEAD_ADJUST_OFF] .DOC_LEAD_ADJUST
-. ds $DOC_QUAD \\*[$QUAD_VALUE]
+. ie d$RESTORE_DOC_QUAD \{\
+. ds $DOC_QUAD \\*[$RESTORE_DOC_QUAD]
+. rm $RESTORE_DOC_QUAD
+. \}
+. el .ds $DOC_QUAD \\*[$QUAD_VALUE]
. if '\\*[$FONT]'' .FT R
. if '\\*[$PP_FT]'' .ds $PP_FT \\*[$FONT]
-. if !'\\*[$PP_FT]'' .ds $PP_FT \\*[$FONT]
+. FT \\*[$PP_FT]
.\" Counters
. nr #PP 0
. nr #FN_NUMBER 0 1
@@ -5576,40 +5594,38 @@ y\R'#DESCENDER \\n[.cdp]'
.\" General style defaults for both PRINTSTYLEs
. nr #PP_STYLE 1
. PARA_INDENT \\n[#PP_INDENT]u
-. if !d $HDRFTR_FAM .HDRFTR_FAMILY \\*[$DOC_FAM]
-. if !d $HDRFTR_SIZE_CHANGE .HDRFTR_SIZE +0
-. if !d $PAGE_NUM_FAM .PAGENUM_FAMILY \\*[$DOC_FAM]
-. if !d $PAGE_NUM_FT .PAGENUM_FONT R
-. if !d $PAGE_NUM_SIZE_CHANGE .PAGENUM_SIZE +0
-. if !r #PAGE_NUM_POS_SET .PAGENUM_POS BOTTOM CENTER
+. if !d $HDRFTR_FAM .ds $HDRFTR_FAM \\*[$DOC_FAM]
+. if !d $HDRFTR_SIZE_CHANGE .HDRFTR_SIZE +0
+. if !d $PAGE_NUM_FAM .PAGENUM_FAMILY \\*[$DOC_FAM]
+. if !d $PAGE_NUM_FT .PAGENUM_FONT R
+. if !d $PAGE_NUM_SIZE_CHANGE .PAGENUM_SIZE +0
+. if !r #PAGE_NUM_POS_SET .PAGENUM_POS BOTTOM CENTER
. ie \\n[#PAGE_NUM_HYPHENS_SET] \{\
-. if \\n[#PAGE_NUM_HYPHENS]=0 .PAGENUM_HYPHENS OFF
-. if \\n[#PAGE_NUM_HYPHENS]=1 .PAGENUM_HYPHENS
+. if \\n[#PAGE_NUM_HYPHENS]=0 .PAGENUM_HYPHENS OFF
+. if \\n[#PAGE_NUM_HYPHENS]=1 .PAGENUM_HYPHENS
. \}
. el .PAGENUM_HYPHENS
-. if !r #HDRFTR_RIGHT_CAPS .HDRFTR_RIGHT_CAPS
+. if !r #HDRFTR_RIGHT_CAPS .nr #HDRFTR_RIGHT_CAPS 1
. if \\n[#HDRFTR_RIGHT_CAPS]=0 \
. if !d $HDRFTR_RIGHT_SIZE_CHANGE .HDRFTR_RIGHT_SIZE +0
-. if !d $FN_FAM .FOOTNOTE_FAMILY \\*[$DOC_FAM]
-. if !d $FN_FT .FOOTNOTE_FONT R
-. if !d $FN_QUAD .FOOTNOTE_QUAD \\*[$DOC_QUAD]
-. if !r #FN_RULE .FOOTNOTE_RULE
-. if !r #FN_MARKERS .FOOTNOTE_MARKERS
+. if !d $FN_FAM .FOOTNOTE_FAMILY \\*[$DOC_FAM]
+. if !d $FN_FT .FOOTNOTE_FONT R
+. if !d $FN_QUAD .FOOTNOTE_QUAD \\*[$DOC_QUAD]
+. if !r #FN_RULE .FOOTNOTE_RULE
+. if !r #FN_MARKERS .FOOTNOTE_MARKERS
. if \\n[#FN_MARKERS]=1 \{\
. if \\n[#FN_REF]=1 \
. if !\\n[#FN_MARKER_STYLE] .FOOTNOTE_MARKER_STYLE NUMBER
. if !\\n[#FN_MARKER_STYLE] .FOOTNOTE_MARKER_STYLE STAR
. \}
-. if !r #EN_MARKER_STYLE .ENDNOTE_MARKER_STYLE SUPERSCRIPT
-. if !d $EN_PN_STYLE .ENDNOTES_PAGENUM_STYLE digit
-. if !d $EN_FAM .ENDNOTE_FAMILY \\*[$DOC_FAM]
-. if !d $EN_FT .ENDNOTE_FONT R
-. if !d $EN_QUAD .ENDNOTE_QUAD \\*[$DOC_QUAD]
-. if !d $EN_STRING .ENDNOTES_HEADER_STRING "Endnotes"
-. if !d $EN_STRING_FAM .ENDNOTES_HEADER_FAMILY \\*[$EN_FAM]
-. if !d $EN_STRING_QUAD .ENDNOTES_HEADER_QUAD CENTER
-. if !r #EN_STRING_UNDERLINE .nr #EN_STRING_UNDERLINE 2
-. if !r #EN_STRING_CAPS .ENDNOTES_HEADER_CAPS
+. if !r #EN_MARKER_STYLE .ENDNOTE_MARKER_STYLE SUPERSCRIPT
+. if !d $EN_PN_STYLE .ENDNOTES_PAGENUM_STYLE digit
+. if !d $EN_FAM .ENDNOTE_FAMILY \\*[$DOC_FAM]
+. if !d $EN_FT .ENDNOTE_FONT R
+. if !d $EN_QUAD .ENDNOTE_QUAD \\*[$DOC_QUAD]
+. if !d $EN_STRING .ENDNOTES_HEADER_STRING "Endnotes"
+. if !d $EN_STRING_FAM .ENDNOTES_HEADER_FAMILY \\*[$EN_FAM]
+. if !d $EN_STRING_QUAD .ENDNOTES_HEADER_QUAD CENTER
. if !d $EN_TITLE \{\
. ie \\n[#DOC_TYPE]=2 \{\
. ie !'\\*[$CHAPTER_TITLE_1]'' \{\
@@ -5624,32 +5640,29 @@ y\R'#DESCENDER \\n[.cdp]'
. \}
. el .ENDNOTE_TITLE "\\*[$TITLE]"
. \}
-. if !d $EN_TITLE_FAM .ENDNOTE_TITLE_FAMILY \\*[$EN_FAM]
-. if !d $EN_TITLE_QUAD .ENDNOTE_TITLE_QUAD LEFT
-. if !r #EN_TITLE_UNDERLINE .nr #EN_TITLE_UNDERLINE 1
-. if !d $EN_NUMBER_FAM .ENDNOTE_NUMBER_FAMILY \\*[$EN_FAM]
-. if !d $EN_LN_FAM .ENDNOTE_LINENUMBER_FAMILY \\*[$EN_FAM]
+. if !d $EN_TITLE_FAM .ENDNOTE_TITLE_FAMILY \\*[$EN_FAM]
+. if !d $EN_TITLE_QUAD .ENDNOTE_TITLE_QUAD LEFT
+. if !d $EN_NUMBER_FAM .ENDNOTE_NUMBER_FAMILY \\*[$EN_FAM]
+. if !d $EN_LN_FAM .ENDNOTE_LINENUMBER_FAMILY \\*[$EN_FAM]
. if !r #EN_NUMBERS_ALIGN_LEFT \{\
. if !r #EN_NUMBERS_ALIGN_RIGHT \{\
. ie !\\n[#EN_MARKER_STYLE]=2 .ENDNOTE_NUMBERS_ALIGN RIGHT 2
. el .ENDNOTE_NUMBERS_ALIGN RIGHT 4
. \}
. \}
-. if !r #EN_LN_GAP .ENDNOTE_LINENUMBER_GAP 1m
-. if !r #EN_ALLOWS_HEADERS .ENDNOTES_ALLOWS_HEADERS
-. if !d $BIB_PN_STYLE .BIBLIOGRAPHY_PAGENUM_STYLE digit
-. if !d $BIB_FAM .BIBLIOGRAPHY_FAMILY \\*[$DOC_FAM]
-. if !d $BIB_FT .BIBLIOGRAPHY_FONT R
-. if !d $BIB_QUAD .BIBLIOGRAPHY_QUAD \\*[$DOC_QUAD]
-. if !d $BIB_STRING .BIBLIOGRAPHY_STRING "Bibliography"
-. if !d $BIB_STRING_FAM .BIBLIOGRAPHY_STRING_FAMILY \\*[$BIB_FAM]
-. if !d $BIB_STRING_QUAD .BIBLIOGRAPHY_STRING_QUAD CENTER
-. if !r #BIB_STRING_UNDERLINE .nr #BIB_STRING_UNDERLINE 2
-. if !r #BIB_STRING_CAPS .BIBLIOGRAPHY_STRING_CAPS
-. if !d $TOC_HEADER_STRING .TOC_HEADER_STRING "Contents"
-. if !d $TOC_HEADER_QUAD .TOC_HEADER_QUAD LEFT
-. if !d $TOC_PN_STYLE .TOC_PAGENUM_STYLE roman
-. if !r #TOC_PN_PADDING .TOC_PADDING 3
+. if !r #EN_LN_GAP .ENDNOTE_LINENUMBER_GAP 1m
+. if !r #EN_ALLOWS_HEADERS .ENDNOTES_ALLOWS_HEADERS
+. if !d $BIB_PN_STYLE .BIBLIOGRAPHY_PAGENUM_STYLE digit
+. if !d $BIB_FAM .BIBLIOGRAPHY_FAMILY \\*[$DOC_FAM]
+. if !d $BIB_FT .BIBLIOGRAPHY_FONT R
+. if !d $BIB_QUAD .BIBLIOGRAPHY_QUAD \\*[$DOC_QUAD]
+. if !d $BIB_STRING .BIBLIOGRAPHY_STRING "Bibliography"
+. if !d $BIB_STRING_FAM .BIBLIOGRAPHY_STRING_FAMILY \\*[$BIB_FAM]
+. if !d $BIB_STRING_QUAD .BIBLIOGRAPHY_STRING_QUAD CENTER
+. if !d $TOC_HEADER_STRING .TOC_HEADER_STRING "Contents"
+. if !d $TOC_HEADER_QUAD .TOC_HEADER_QUAD LEFT
+. if !d $TOC_PN_STYLE .TOC_PAGENUM_STYLE roman
+. if !r #TOC_PN_PADDING .TOC_PADDING 3
.\" Line numbering
. if !r #LN_GUTTER .nr #LN_GUTTER 2
. if !r #Q_LN_GUTTER .nr #Q_LN_GUTTER 2
@@ -5682,7 +5695,7 @@ y\R'#DESCENDER \\n[.cdp]'
. \}
.\" String defaults for both PRINTSTYLEs
. ie \\n[#DOC_TYPE]=1 \{\
-. ie '\\*[$DOC_TITLE]'' \{\
+. ie '\\*[$DOCTITLE]'' \{\
. if \\n[#USER_DEF_HDRFTR_LEFT]=0 .ds $HDRFTR_LEFT \\*[$AUTHOR_1]
. if \\n[#USER_DEF_HDRFTR_RIGHT]=0 .ds $HDRFTR_RIGHT \\*[$TITLE]
. \}
@@ -5690,25 +5703,24 @@ y\R'#DESCENDER \\n[.cdp]'
. if \\n[#COPY_STYLE]=1 .DRAFT_WITH_PAGENUMBER
. if \\n[#USER_DEF_HDRFTR_LEFT]=0 .ds $HDRFTR_LEFT \\*[$AUTHOR_1]
. if \\n[#USER_DEF_HDRFTR_CENTER]=0 .ds $HDRFTR_CENTER \\*[$TITLE]
-. if \\n[#USER_DEF_HDRFTR_RIGHT]=0 .ds $HDRFTR_RIGHT \\*[$DOC_TITLE]
+. if \\n[#USER_DEF_HDRFTR_RIGHT]=0 .ds $HDRFTR_RIGHT \\*[$DOCTITLE]
. \}
. \}
. el \{\
. if \\n[#USER_DEF_HDRFTR_LEFT]=0 .ds $HDRFTR_LEFT \\*[$AUTHOR_1]
. if \\n[#USER_DEF_HDRFTR_RIGHT]=0 .ds $HDRFTR_RIGHT \\*[$TITLE]
. \}
-. if !d $ATTRIBUTE_STRING .ds $ATTRIBUTE_STRING by
-. if !d $FINIS_STRING .FINIS_STRING "End"
-. if !r #FINIS_STRING_CAPS .nr #FINIS_STRING_CAPS 1
+. if !d $ATTRIBUTE_STRING .ds $ATTRIBUTE_STRING by
+. if !d $FINIS_STRING .FINIS_STRING "End"
+. if !r #FINIS_STRING_CAPS .nr #FINIS_STRING_CAPS 1
.\" Covers
. if !r #DOC_COVERS_OFF .nr #DOC_COVERS 1
. if !r #COVERS_OFF .nr #COVERS 1
. if !d $COVER_COPYRIGHT_QUAD .COVER_COPYRIGHT_QUAD R
. if !d $COVER_MISC_QUAD .COVER_MISC_QUAD L
+. if !d $MISC_QUAD .MISC_QUAD L
. if !d $DOC_COVER_COPYRIGHT_QUAD .DOC_COVER_COPYRIGHT_QUAD R
. if !d $DOC_COVER_MISC_QUAD .DOC_COVER_MISC_QUAD L
-. if !r #DOC_COVER_UNDERLINE .DOC_COVER_UNDERLINE
-. if !r #COVER_UNDERLINE .COVER_UNDERLINE
.\" Defaults for printstyle TYPEWRITE
. if \\n[#PRINT_STYLE]=1 \{\
. TYPEWRITER
@@ -5718,26 +5730,36 @@ y\R'#DESCENDER \\n[.cdp]'
.\" +Doctype underlining (if NAMED)
. if !r #DOCTYPE_UNDERLINE .nr #DOCTYPE_UNDERLINE 1
.\" +Quotes and blockquotes
-. if !r #Q_OFFSET_VALUE \{\
-. if '\\*[$Q_OFFSET_VALUE]'' .QUOTE_INDENT 1
-. \}
+. if !r #Q_OFFSET_VALUE \
+. if '\\*[$Q_OFFSET_VALUE]'' \
+. QUOTE_INDENT \\n[#PP_INDENT]u+(\\n[#PP_INDENT]u/2u)
+. if !d $Q_QUAD .QUOTE_LEFT
+. if !d $BQUOTE_QUAD .BLOCKQUOTE_QUAD LEFT
+. if !r #BQ_OFFSET_VALUE \
+. if '\\*[$BQ_OFFSET_VALUE]'' \
+. BLOCKQUOTE_INDENT \\n[#PP_INDENT]u+(\\n[#PP_INDENT]u/2u)
.\" +Epigraphs
. if !r #EPI_OFFSET_VALUE \
. if '\\*[$EPI_OFFSET_VALUE]'' .EPIGRAPH_INDENT 2
.\" +Linebreaks
. if !d $LINEBREAK_CHAR .LINEBREAK_CHAR * 3 2p
.\" +Footnotes
-. if !d $FN_SIZE_CHANGE .FOOTNOTE_SIZE +0
-. if !r #FN_RULE_LENGTH .FOOTNOTE_RULE_LENGTH 2i
+. if !d $FN_SIZE_CHANGE .FOOTNOTE_SIZE +0
+. if !r #FN_RULE_LENGTH .FOOTNOTE_RULE_LENGTH 2i
.\" +Endnotes
. if !r #EN_PP_INDENT .ENDNOTE_PARA_INDENT \\n[#PP_INDENT]
+. if !r #EN_STRING_UNDERLINE .nr #EN_STRING_UNDERLINE 2
+. if !r #EN_STRING_CAPS .ENDNOTES_HEADER_CAPS
.\" +Footnotes
-. if !r #FN_RULE_ADJ .FOOTNOTE_RULE_ADJ 6p
+. if !r #FN_RULE_ADJ .FOOTNOTE_RULE_ADJ 6p
.\" +Slant stuff
. if !r #SLANT_MEANS_SLANT \{\
. ie \\n[#UNDERLINE_SLANT]=1 .UNDERLINE_SLANT
. el .UNDERLINE_SLANT OFF
. \}
+.\" +Bibliography
+. if !r #BIB_STRING_UNDERLINE .nr #BIB_STRING_UNDERLINE 2
+. if !r #BIB_STRING_CAPS .BIBLIOGRAPHY_STRING_CAPS
. \}
.\" Defaults for printstyle TYPESET
. if \\n[#PRINT_STYLE]=2 \{\
@@ -5752,6 +5774,34 @@ y\R'#DESCENDER \\n[.cdp]'
. \}
. if !d $COVER_TITLE_FT .COVER_TITLE_FONT B
. if !d $COVER_TITLE_SIZE_CHANGE .COVER_TITLE_SIZE +3.5
+.\" (doctitle)
+. if !d $COVER_DOCTITLE_FAM \{\
+. ie !d $DOC_COVER_FAM .COVER_DOCTITLE_FAMILY \\*[$DOC_FAM]
+. el .COVER_DOCTITLE_FAMILY \\*[$COVER_FAM]
+. \}
+. if !d $COVER_DOCTITLE_FT .COVER_DOCTITLE_FONT B
+. if !d $COVER_DOCTITLE_SIZE_CHANGE .COVER_DOCTITLE_SIZE +3.5
+.\" (covertitle)
+. if !d $COVER_COVERTITLE_FAM \{\
+. ie !d $COVER_FAM .COVER_COVERTITLE_FAMILY \\*[$DOC_FAM]
+. el .COVER_COVERTITLE_FAMILY \\*[$COVER_FAM]
+. \}
+. if !d $COVER_COVERTITLE_FT .COVER_COVERTITLE_FONT B
+. if !d $COVER_COVERTITLE_SIZE_CHANGE .COVER_COVERTITLE_SIZE +3.5
+.\" (doc_covertitle)
+. if !d $COVER_DOC_COVERTITLE_FAM \{\
+. ie !d $COVER_FAM .COVER_DOC_COVERTITLE_FAMILY \\*[$DOC_FAM]
+. el .COVER_DOC_COVERTITLE_FAMILY \\*[$COVER_FAM]
+. \}
+. if !d $COVER_DOC_COVERTITLE_FT .COVER_DOC_COVERTITLE_FONT B
+. if !d $COVER_DOC_COVERTITLE_SIZE_CHANGE .COVER_DOC_COVERTITLE_SIZE +3.5
+.\" (chapter)
+. if !d $COVER_CHAPTER_FAM \{\
+. ie !d $COVER_FAM .COVER_CHAPTER_FAMILY \\*[$DOC_FAM]
+. el .COVER_CHAPTER_FAMILY \\*[$COVER_FAM]
+. \}
+. if !d $COVER_CHAPTER_FT .COVER_CHAPTER_FONT B
+. if !d $COVER_CHAPTER_SIZE_CHANGE .COVER_CHAPTER_SIZE +3.5
.\" (chapter title)
. if !d $COVER_CHAPTER_TITLE_FAM \{\
. ie !d $COVER_FAM .COVER_CHAPTER_TITLE_FAMILY \\*[$DOC_FAM]
@@ -5767,6 +5817,12 @@ y\R'#DESCENDER \\n[.cdp]'
. if !d $COVER_SUBTITLE_FT .COVER_SUBTITLE_FONT R
. if !d $COVER_SUBTITLE_SIZE_CHANGE .COVER_SUBTITLE_SIZE +0
.\" (attribution and author[s])
+. if !d $COVER_ATTRIBUTE_FAM \{\
+. ie !d $COVER_FAM .COVER_ATTRIBUTE_FAMILY \\*[$DOC_FAM]
+. el .COVER_ATTRIBUTE_FAMILY \\*[$COVER_FAM]
+. \}
+. if !d $COVER_ATTRIBUTE_FT .COVER_ATTRIBUTE_FONT I
+. if !d $COVER_ATTRIBUTE_SIZE_CHANGE .COVER_ATTRIBUTE_SIZE +0
. if !d $COVER_AUTHOR_FAM \{\
. ie !d $COVER_FAM .COVER_AUTHOR_FAMILY \\*[$DOC_FAM]
. el .COVER_AUTHOR_FAMILY \\*[$COVER_FAM]
@@ -5791,7 +5847,7 @@ y\R'#DESCENDER \\n[.cdp]'
. if !d $COVER_MISC_FAM .COVER_MISC_FAMILY \\*[$DOC_FAM]
. if !d $COVER_MISC_FT .COVER_MISC_FONT R
. if !d $COVER_MISC_SIZE_CHANGE .COVER_MISC_SIZE -2
-. if !r #COVER_MISC_AUTOLEAD .COVER_MISC_AUTOLEAD 2
+. if !r #COVER_MISC_LEAD .COVER_MISC_LEAD 14.5
.\" +Doc cover
. if !d $DOC_COVER_LEAD_ADJ .DOC_COVER_LEAD +0
. if !d $DOC_COVER_FAM .DOC_COVER_FAMILY \\*[$DOC_FAM]
@@ -5802,6 +5858,34 @@ y\R'#DESCENDER \\n[.cdp]'
. \}
. if !d $DOC_COVER_TITLE_FT .DOC_COVER_TITLE_FONT B
. if !d $DOC_COVER_TITLE_SIZE_CHANGE .DOC_COVER_TITLE_SIZE +3.5
+.\" (doctitle)
+. if !d $DOC_COVER_DOCTITLE_FAM \{\
+. ie !d $DOC_COVER_FAM .DOC_COVER_DOCTITLE_FAMILY \\*[$DOC_FAM]
+. el .DOC_COVER_DOCTITLE_FAMILY \\*[$DOC_COVER_FAM]
+. \}
+. if !d $DOC_COVER_DOCTITLE_FT .DOC_COVER_DOCTITLE_FONT B
+. if !d $DOC_COVER_DOCTITLE_SIZE_CHANGE .DOC_COVER_DOCTITLE_SIZE +3.5
+.\" (covertitle)
+. if !d $DOC_COVER_COVERTITLE_FAM \{\
+. ie !d $COVER_FAM .DOC_COVER_COVERTITLE_FAMILY \\*[$DOC_FAM]
+. el .DOC_COVER_COVERTITLE_FAMILY \\*[$COVER_FAM]
+. \}
+. if !d $DOC_COVER_COVERTITLE_FT .DOC_COVER_COVERTITLE_FONT B
+. if !d $DOC_COVER_COVERTITLE_SIZE_CHANGE .DOC_COVER_COVERTITLE_SIZE +3.5
+.\" (doc_covertitle)
+. if !d $DOC_COVER_DOC_COVERTITLE_FAM \{\
+. ie !d $COVER_FAM .DOC_COVER_DOC_COVERTITLE_FAMILY \\*[$DOC_FAM]
+. el .DOC_COVER_DOC_COVERTITLE_FAMILY \\*[$COVER_FAM]
+. \}
+. if !d $DOC_COVER_DOC_COVERTITLE_FT .DOC_COVER_DOC_COVERTITLE_FONT B
+. if !d $DOC_COVER_DOC_COVERTITLE_SIZE_CHANGE
.DOC_COVER_DOC_COVERTITLE_SIZE +3.5
+.\" (chapter)
+. if !d $DOC_COVER_CHAPTER_FAM \{\
+. ie !d $DOC_COVER_FAM .DOC_COVER_CHAPTER_FAMILY \\*[$DOC_FAM]
+. el .DOC_COVER_CHAPTER_FAMILY \\*[$DOC_COVER_FAM]
+. \}
+. if !d $DOC_COVER_CHAPTER_FT .DOC_COVER_CHAPTER_FONT B
+. if !d $DOC_COVER_CHAPTER_SIZE_CHANGE .DOC_COVER_CHAPTER_SIZE +3.5
.\" (chapter title)
. if !d $DOC_COVER_CHAPTER_TITLE_FAM \{\
. ie !d $DOC_COVER_FAM .DOC_COVER_CHAPTER_TITLE_FAMILY \\*[$DOC_FAM]
@@ -5817,6 +5901,12 @@ y\R'#DESCENDER \\n[.cdp]'
. if !d $DOC_COVER_SUBTITLE_FT .DOC_COVER_SUBTITLE_FONT R
. if !d $DOC_COVER_SUBTITLE_SIZE_CHANGE .DOC_COVER_SUBTITLE_SIZE +0
.\" (attribution and author[s])
+. if !d $DOC_COVER_ATTRIBUTE_FAM \{\
+. ie !d $DOC_COVER_FAM .DOC_COVER_ATTRIBUTE_FAMILY \\*[$DOC_FAM]
+. el .DOC_COVER_ATTRIBUTE_FAMILY \\*[$DOC_COVER_FAM]
+. \}
+. if !d $DOC_COVER_ATTRIBUTE_FT .DOC_COVER_ATTRIBUTE_FONT I
+. if !d $DOC_COVER_ATTRIBUTE_SIZE_CHANGE .DOC_COVER_ATTRIBUTE_SIZE +0
. if !d $DOC_COVER_AUTHOR_FAM \{\
. ie !d $DOC_COVER_FAM .DOC_COVER_AUTHOR_FAMILY \\*[$DOC_FAM]
. el .DOC_COVER_AUTHOR_FAMILY \\*[$DOC_COVER_FAM]
@@ -5841,7 +5931,7 @@ y\R'#DESCENDER \\n[.cdp]'
. if !d $DOC_COVER_MISC_FAM .DOC_COVER_MISC_FAMILY \\*[$DOC_FAM]
. if !d $DOC_COVER_MISC_FT .DOC_COVER_MISC_FONT R
. if !d $DOC_COVER_MISC_SIZE_CHANGE .DOC_COVER_MISC_SIZE -2
-. if !r #DOC_COVER_MISC_AUTOLEAD .DOC_COVER_MISC_AUTOLEAD 2
+. if !r #DOC_COVER_MISC_LEAD .DOC_COVER_MISC_LEAD 14.5
.\" +Docheader
. if !d $DOCHEADER_FAM .DOCHEADER_FAMILY \\*[$DOC_FAM]
. if !d $TITLE_FAM \{\
@@ -5853,6 +5943,12 @@ y\R'#DESCENDER \\n[.cdp]'
. ie \\n[#DOC_TYPE]=2 .TITLE_SIZE +4
. el .TITLE_SIZE +3.5
. \}
+. if !d $CHAPTER_FAM \{\
+. ie !d $DOCHEADER_FAM .CHAPTER_FAMILY \\*[$DOC_FAM]
+. el .CHAPTER_FAMILY \\*[$DOCHEADER_FAM]
+. \}
+. if !d $CHAPTER_FT .CHAPTER_FONT B
+. if !d $CHAPTER_SIZE_CHANGE .CHAPTER_SIZE +4
. if !d $CHAPTER_TITLE_FAM \{\
. ie !d $DOCHEADER_FAM .CHAPTER_TITLE_FAMILY \\*[$DOC_FAM]
. el .CHAPTER_TITLE_FAMILY \\*[$DOCHEADER_FAM]
@@ -5865,6 +5961,12 @@ y\R'#DESCENDER \\n[.cdp]'
. \}
. if !d $SUBTITLE_FT .SUBTITLE_FONT R
. if !d $SUBTITLE_SIZE_CHANGE .SUBTITLE_SIZE +0
+. if !d $ATTRIBUTE_FAM \{\
+. ie !d $DOCHEADER_FAM .ATTRIBUTE_FAMILY \\*[$DOC_FAM]
+. el .ATTRIBUTE_FAMILY \\*[$DOCHEADER_FAM]
+. \}
+. if !d $ATTRIBUTE_FT .ATTRIBUTE_FONT I
+. if !d $ATTRIBUTE_SIZE_CHANGE .ATTRIBUTE_SIZE +0
. if !d $AUTHOR_FAM \{\
. ie !d $DOCHEADER_FAM .AUTHOR_FAMILY \\*[$DOC_FAM]
. el .AUTHOR_FAMILY \\*[$DOCHEADER_FAM]
@@ -5875,9 +5977,8 @@ y\R'#DESCENDER \\n[.cdp]'
. ie !d $DOCHEADER_FAM .DOCTYPE_FAMILY \\*[$DOC_FAM]
. el .DOCTYPE_FAMILY \\*[$DOCHEADER_FAM]
. \}
-. if !d $DOCTYPE_FT .DOCTYPE_FONT BI
-. if !d $DOCTYPE_SIZE_CHANGE .DOCTYPE_SIZE +3
-. if !r #DOCTYPE_UNDERLINE .DOCTYPE_UNDERLINE
+. if !d $DOCTYPE_FT .DOCTYPE_FONT BI
+. if !d $DOCTYPE_SIZE_CHANGE .DOCTYPE_SIZE +3
.\" +Headers and footers
. if !d $HDRFTR_LEFT_FAM .HDRFTR_LEFT_FAMILY \\*[$DOC_FAM]
. if !d $HDRFTR_LEFT_FT .HDRFTR_LEFT_FONT R
@@ -5891,8 +5992,14 @@ y\R'#DESCENDER \\n[.cdp]'
. if !d $HDRFTR_CENTER_SIZE_CHANGE .HDRFTR_CENTER_SIZE -.5
. if !d $HDRFTR_RIGHT_FAM .HDRFTR_RIGHT_FAMILY \\*[$DOC_FAM]
. if !d $HDRFTR_RIGHT_FT .HDRFTR_RIGHT_FONT R
-. if \\n[#HDRFTR_RIGHT_CAPS] \
-. if !d $HDRFTR_RIGHT_SIZE_CHANGE .HDRFTR_RIGHT_SIZE -2
+. ie !\\n[#HDRFTR_RIGHT_SMALLCAPS] \{\
+. if \\n[#HDRFTR_RIGHT_CAPS] \
+. if !d $HDRFTR_RIGHT_SIZE_CHANGE .HDRFTR_RIGHT_SIZE -2
+. \}
+. el \{\
+. nr #SKIP_CAPS_SMALLCAPS_WARNING 1
+. if \\n[#HDRFTR_RIGHT_CAPS] .HDRFTR_RIGHT_CAPS OFF
+. \}
. if !d $HDRFTR_RIGHT_SIZE_CHANGE .HDRFTR_RIGHT_SIZE -.5
.\" +Quotes
. if !d $QUOTE_FAM .QUOTE_FAMILY \\*[$DOC_FAM]
@@ -5900,12 +6007,15 @@ y\R'#DESCENDER \\n[.cdp]'
. if !d $QUOTE_SIZE_CHANGE .QUOTE_SIZE+0
. if !r #Q_OFFSET_VALUE \
. if '\\*[$Q_OFFSET_VALUE]'' .QUOTE_INDENT 3
+. if !d $Q_QUAD .QUOTE_LEFT
.\" +Blockquotes
.\" Note: the leading for quotes and blockquotes is set after .DEFAULTS in
START
. if !d $BQUOTE_FAM .BLOCKQUOTE_FAMILY \\*[$DOC_FAM]
. if !d $BQUOTE_FT .BLOCKQUOTE_FONT R
. if !d $BQUOTE_SIZE_CHANGE .BLOCKQUOTE_SIZE -1
. if !d $BQUOTE_QUAD .BLOCKQUOTE_QUAD LEFT
+. if !r #BQ_OFFSET_VALUE \
+. if '\\*[$BQ_OFFSET_VALUE]'' .BLOCKQUOTE_INDENT 3
.\" +Epigraphs
. if !d $EPI_FAM .EPIGRAPH_FAMILY \\*[$DOC_FAM]
. if !d $EPI_FT .EPIGRAPH_FONT R
@@ -5925,7 +6035,7 @@ y\R'#DESCENDER \\n[.cdp]'
.\" +Endnotes
. if !r #EN_PS .ENDNOTE_PT_SIZE (\\n[#DOC_PT_SIZE]u)
. if !d $EN_STRING_FT .ENDNOTES_HEADER_FONT B
-. if !d $EN_STRING_SIZE_CHANGE .ENDNOTES_HEADER_SIZE +1
+. if !d $EN_STRING_SIZE_CHANGE .ENDNOTES_HEADER_SIZE +3.5
. if !d $EN_TITLE_FT .ENDNOTE_TITLE_FONT B
. if !d $EN_TITLE_SIZE_CHANGE .ENDNOTE_TITLE_SIZE +0
. if !d $EN_NUMBER_FT .ENDNOTE_NUMBER_FONT B
@@ -5938,17 +6048,18 @@ y\R'#DESCENDER \\n[.cdp]'
. if !r #BIB_LIST .BIBLIOGRAPHY_TYPE PLAIN
. if !r #BIB_PS .BIBLIOGRAPHY_PT_SIZE
(\\n[#DOC_PT_SIZE]u)
. if !d $BIB_STRING_FT .BIBLIOGRAPHY_STRING_FONT B
-. if !d $BIB_STRING_SIZE_CHANGE .BIBLIOGRAPHY_STRING_SIZE +1
+. if !d $BIB_STRING_SIZE_CHANGE .BIBLIOGRAPHY_STRING_SIZE +3.5
.\" +Table of contents
. if !d $TOC_FAM .TOC_FAMILY \\*[$DOC_FAM]
. if !r #TOC_PS .TOC_PT_SIZE (\\n[#DOC_PT_SIZE]u)
. if '\\*[$TOC_LEAD]'' .TOC_LEAD address@hidden ADJUST
. if !d $TOC_HEADER_FAM .TOC_HEADER_FAMILY \\*[$TOC_FAM]
-. if !d $TOC_HEADER_SIZE_CHANGE .TOC_HEADER_SIZE +4
+. if !d $TOC_HEADER_SIZE_CHANGE .TOC_HEADER_SIZE +3.5
. if !d $TOC_HEADER_FT .TOC_HEADER_FONT B
. if !d $TOC_PN_FAM .TOC_PN_FAMILY \\*[$TOC_FAM]
. if !d $TOC_PN_FT .TOC_PN_FONT R
. if !d $TOC_PN_SIZE_CHANGE .TOC_PN_SIZE +0
+. if !d $TOC_TITLE_FAM .TOC_TITLE_FAMILY \\*[$TOC_FAM]
. \}
.\" +Refer support
. if !r #EN_REF .nr #FN_REF 1
@@ -6051,9 +6162,9 @@ y\R'#DESCENDER \\n[.cdp]'
. if '\\*[$HEAD_\\n[#HD_LEVEL]_BASELINE_ADJ]'' \
. ds $HEAD_\\n[#HD_LEVEL]_BASELINE_ADJ \\n[.v]/10
. if '\\*[$TOC_HEAD_\\n[#HD_LEVEL]_FAM]'' \
-. ds $TOC_HEAD_\\n[#HD_LEVEL]_FAM \\*[$DOC_FAM]
+. ds $TOC_HEAD_\\n[#HD_LEVEL]_FAM \\*[$TOC_FAM]
. \}
-. if '\\*[$TOC_TITLE_FAM]'' .ds $TOC_TITLE_FAM \\*[$DOC_FAM]
+. if '\\*[$TOC_TITLE_FAM]'' .TOC_TITLE_FAMILY \\*[$DOC_FAM]
.\" Re-run MNinit to capture strings and registers set in DEFAULTS.
. if !'\\*[$MN-arg1]'' \{\
. MNinit \
@@ -6070,76 +6181,10 @@ y\R'#DESCENDER \\n[.cdp]'
. \}
.END
\#
-\# ====================================================================
-\#
-\# +++START THE DOCUMENT+++
-\#
-\# THE START MACRO
-\# ---------------
-\# *Arguments:
-\# <none>
-\# *Function:
-\# Reads in default document style parameters and any parameters
-\# the user has changed before issuing START.
-\# Using the information gathered in the opening macros,
-\# prints appropriate title (or chapter #), subtitle, author
-\# and document type (if appropriate).
-\# *Notes:
-\# The .PRINT \& (zero-width character) is required to get the
-\# subsequent .sp request to work as advertised.
-\#
-\# The overall document line length, family, and point-size
-\# are stored in #DOC_L_LENGTH, $DOC_FAM, and #DOC_PT_SIZE for
-\# use in the HEADER and FOOTER macros.
+\# =================================================================
\#
-\# First, define some strings for point sizes
-\#
-\# Doc cover
-\#
-.ds $DOC_COVER_AUTHOR_PT_SIZE \
- \\n[#DOC_PT_SIZE]u\\*[$DOC_COVER_AUTHOR_SIZE_CHANGE]
-.ds $DOC_COVER_CHAPTER_TITLE_PT_SIZE \
- \\n[#DOC_PT_SIZE]u\\*[$DOC_COVER_CHAPTER_TITLE_SIZE_CHANGE]
-.ds $DOC_COVER_COPYRIGHT_PT_SIZE \
- \\n[#DOC_PT_SIZE]u\\*[$DOC_COVER_COPYRIGHT_SIZE_CHANGE]
-.ds $DOC_COVER_DOCTYPE_PT_SIZE \
- \\n[#DOC_PT_SIZE]u\\*[$DOC_COVER_DOCTYPE_SIZE_CHANGE]
-.ds $DOC_COVER_MISC_PT_SIZE \
- \\n[#DOC_PT_SIZE]u\\*[$DOC_COVER_MISC_SIZE_CHANGE]
-.ds $DOC_COVER_SUBTITLE_PT_SIZE \
- \\n[#DOC_PT_SIZE]u\\*[$DOC_COVER_SUBTITLE_SIZE_CHANGE]
-.ds $DOC_COVER_TITLE_PT_SIZE \
- \\n[#DOC_PT_SIZE]u\\*[$DOC_COVER_TITLE_SIZE_CHANGE]
-\# Cover
-.ds $COVER_AUTHOR_PT_SIZE \
- \\n[#DOC_PT_SIZE]u\\*[$COVER_AUTHOR_SIZE_CHANGE]
-.ds $COVER_CHAPTER_TITLE_PT_SIZE \
- \\n[#DOC_PT_SIZE]u\\*[$COVER_CHAPTER_TITLE_SIZE_CHANGE]
-.ds $COVER_COPYRIGHT_PT_SIZE \
- \\n[#DOC_PT_SIZE]u\\*[$COVER_COPYRIGHT_SIZE_CHANGE]
-.ds $COVER_DOCTYPE_PT_SIZE \
- \\n[#DOC_PT_SIZE]u\\*[$COVER_DOCTYPE_SIZE_CHANGE]
-.ds $COVER_MISC_PT_SIZE \
- \\n[#DOC_PT_SIZE]u\\*[$COVER_MISC_SIZE_CHANGE]
-.ds $COVER_SUBTITLE_PT_SIZE \
- \\n[#DOC_PT_SIZE]u\\*[$COVER_SUBTITLE_SIZE_CHANGE]
-.ds $COVER_TITLE_PT_SIZE \
- \\n[#DOC_PT_SIZE]u\\*[$COVER_TITLE_SIZE_CHANGE]
-\# Docheader
-.ds $AUTHOR_PT_SIZE \
- \\n[#DOC_PT_SIZE]u\\*[$AUTHOR_SIZE_CHANGE]
-.ds $CHAPTER_TITLE_PT_SIZE \
- \\n[#DOC_PT_SIZE]u\\*[$CHAPTER_TITLE_SIZE_CHANGE]
-.ds $COPYRIGHT_PT_SIZE \
- \\n[#DOC_PT_SIZE]u\\*[$COPYRIGHT_SIZE_CHANGE]
-.ds $DOCTYPE_PT_SIZE \
- \\n[#DOC_PT_SIZE]u\\*[$DOCTYPE_SIZE_CHANGE]
-.ds $SUBTITLE_PT_SIZE \
- \\n[#DOC_PT_SIZE]u\\*[$SUBTITLE_SIZE_CHANGE]
-.ds $TITLE_PT_SIZE \
- \\n[#DOC_PT_SIZE]u\\*[$TITLE_SIZE_CHANGE]
-\#
-\# Next, some utility macros for various routines to prevent repetition
+\# Macros and aliases needed for doccover, cover, and docheader in
+\# START.
\#
.MAC DOC_HEADER_QUAD END
. if '\\$0'DOC_HEADER_QUAD' .ds $CALLING_MACRO DOCHEADER
@@ -6156,226 +6201,344 @@ y\R'#DESCENDER \\n[.cdp]'
. \}
. el .CENTER
.END
-\#
-\# Aliases for DOC_HEADER_QUAD
-\#
-.ALIAS COVER_H_POS DOC_HEADER_QUAD
-.ALIAS DOC_COVER_H_POS DOC_HEADER_QUAD
-\#
-.MAC PRINT_AUTHORS END
-. ie r#DOING_COVER \{\
-. if \\n[#DOC_COVER]=1 \{\
-. ie !'\\*[$AUTHOR_DOCCOVER_1]'' \{\
-. nr #AUTHORS \\n[#AUTHOR_DOCCOVER_NUM]
-. nr #NEXT_AUTHOR 0 1
-. while \\n[#AUTHORS]>\\n[#NEXT_AUTHOR] \{\
-. ie \\n[#DOC_COVER_AUTHOR_COLOR]=1 \
-. PRINT \
-\m[\\*[$DOC_COVER_AUTHOR_COLOR]]\\*[$AUTHOR_DOCCOVER_\\n+[#NEXT_AUTHOR]]\m[]
-. el .PRINT \\*[$AUTHOR_DOCCOVER_\\n+[#NEXT_AUTHOR]]
+.
+.ALIAS COVER_H_POS DOC_HEADER_QUAD
+.ALIAS DOC_COVER_H_POS DOC_HEADER_QUAD
+\#
+.MAC DO_TITLE_OR_AUTHOR END
+. ie '\\$0'DO_AUTHORS' .ds $TTL_AUTH AUTHOR
+. el .ds $TTL_AUTH TITLE
+. if !'\\*[$\\*[$PRFX]\\*[$TTL_AUTH]_1]'' \{\
+. if '\\$0'DO_SUBTITLE' \{\
+. if '\\*[$PRFX]'\\*[DOC_]COVER_SUB' \{\
+. ds $PRFX SUB
+. nr #\\*[DOC_]COVER_SUB 1
+. \}
+. \}
+. if !\\n[#PRINT_STYLE]=1 \{\
+. fam \\*[$\\*[$COVER_TYPE]\\*[$PRFX]\\*[$TTL_AUTH]_FAM]
+. ft \\*[$\\*[$COVER_TYPE]\\*[$PRFX]\\*[$TTL_AUTH]_FT]
+. ps \
+\\n[#DOC_PT_SIZE]u\\*[$\\*[$COVER_TYPE]\\*[$PRFX]\\*[$TTL_AUTH]_SIZE_CHANGE]
+. if '\\*[$COVER_TYPE]'' .vs \\n[#DOCHEADER_LEAD]u
+. if \\n[#\\*[$COVER_TYPE]\\*[$PRFX]\\*[$TTL_AUTH]_LEAD] \{\
+. vs \\*[$\\*[$COVER_TYPE]\\*[$PRFX]\\*[$TTL_AUTH]_LEAD]
+. if \\n[#DOCHEADER] .sp |\\n[#T_MARGIN]u-1v
+. \}
+. if \\n[#CHAPTER+TITLE]=1 .ALD \\n[.v]u/4u \" A little space before
the chapter title
+. if \\n[#\\*[$COVER_TYPE]\\*[$PRFX]\\*[$TTL_AUTH]_COLOR]=1 \
+. gcolor \\*[$\\*[$COVER_TYPE]\\*[$PRFX]\\*[$TTL_AUTH]_COLOR]
+. if \\n[#\\*[$COVER_TYPE]\\*[$PRFX]\\*[$TTL_AUTH]_CAPS]=1 .CAPS
+. if \\n[#\\*[$COVER_TYPE]\\*[$PRFX]\\*[$TTL_AUTH]_SMALLCAPS]=1
.SMALLCAPS
+. \}
+. if \\n[#\\*[DOC_]COVER_SUB] \{\
+. rr #\\*[DOC_]COVER_SUB
+. ds $PRFX \\*[DOC_]COVER_SUB
+. ds $SAVED_COVER_TYPE \\*[$COVER_TYPE]
+. rm $COVER_TYPE
+. \}
+. nr #ARG_NUM 0 1
+. while \\n[#\\*[$PRFX]\\*[$TTL_AUTH]_NUM]>=\\n+[#ARG_NUM] \{\
+. ie \\n[#\\*[$COVER_TYPE]\\*[$PRFX]\\*[$TTL_AUTH]_UNDERLINE] \{\
+. ds $TITLE_TYPE \\*[$COVER_TYPE]\\*[$PRFX]\\*[$TTL_AUTH]
+. ie \\n[#\\*[$COVER_TYPE]\\*[$PRFX]\\*[$TTL_AUTH]_UNDERLINE]=2 \{\
+. ie !\\n[#PRINT_STYLE]=1 \
+. UNDERSCORE2 \\*[$\\*[$PRFX]\\*[$TTL_AUTH]_UNDERLINE_GAP] \
+\\*[$\\*[$PRFX]\\*[$TTL_AUTH]_RULE_GAP] \
+"\\*[$\\*[$PRFX]\\*[$TTL_AUTH]_\\n[#ARG_NUM]]
+. el .UNDERSCORE "\\*[$\\*[$PRFX]\\*[$TTL_AUTH]_\\n[#ARG_NUM]]
+. \}
+. el \{\
+. ie !\\n[#PRINT_STYLE]=1 \
+. UNDERSCORE "\\*[$\\*[$PRFX]\\*[$TTL_AUTH]_\\n[#ARG_NUM]]
+. el .PRINT "\\*[$\\*[$PRFX]\\*[$TTL_AUTH]_\\n[#ARG_NUM]]
. \}
. \}
. el \{\
-. nr #AUTHORS \\n[#AUTHOR_NUM]
-. nr #NEXT_AUTHOR 0 1
-. while \\n[#AUTHORS]>\\n[#NEXT_AUTHOR] \{\
-. ie \\n[#DOC_COVER_AUTHOR_COLOR]=1 \
-. PRINT \
-\m[\\*[$DOC_COVER_AUTHOR_COLOR]]\\*[$AUTHOR_\\n+[#NEXT_AUTHOR]]\m[]
-. el .PRINT \\*[$AUTHOR_\\n+[#NEXT_AUTHOR]]
-. \}
+. PRINT "\\*[$\\*[$PRFX]\\*[$TTL_AUTH]_\\n[#ARG_NUM]]
. \}
-. return
+. if \\n[#ARG_NUM]>1 .as PDF_BM " \"
+. as PDF_BM \\*[$\\*[$PRFX]\\*[$TTL_AUTH]_\\n[#ARG_NUM]]
. \}
-. if \\n[#COVER]=1 \{\
-. ie !'\\*[$AUTHOR_COVER_1]'' \{\
-. nr #AUTHORS \\n[#AUTHOR_COVER_NUM]
-. nr #NEXT_AUTHOR 0 1
-. while \\n[#AUTHORS]>\\n[#NEXT_AUTHOR] \{\
-. ie \\n[#COVER_AUTHOR_COLOR]=1 \
-. PRINT \
-\m[\\*[$COVER_AUTHOR_COLOR]]\\*[$AUTHOR_COVER_\\n+[#NEXT_AUTHOR]]\m[]
-. el .PRINT \\*[$AUTHOR_COVER_\\n+[#NEXT_AUTHOR]]
-. \}
+. rm $TITLE_TYPE
+. if \\n[#PRINT_STYLE]=2 .vs
+. if \\n[#\\*[$COVER_TYPE]\\*[$PRFX]\\*[$TTL_AUTH]_COLOR]=1 \
+. gcolor
+. SMALLCAPS off
+. CAPS off
+. \}
+. if !'\\*[$SAVED_COVER_TYPE]'' \{\
+. ds $COVER_TYPE \\*[$SAVED_COVER_TYPE]
+. rm $SAVED_COVER_TYPE
+. \}
+.END
+.
+.ALIAS DO_TITLE DO_TITLE_OR_AUTHOR
+.ALIAS DO_SUBTITLE DO_TITLE_OR_AUTHOR
+.ALIAS DO_AUTHORS DO_TITLE_OR_AUTHOR
+\#
+.MAC DO_CHAPTER END
+. fam \\*[$\\*[DOC_]COVER_CHAPTER_FAM]
+. ft \\*[$\\*[DOC_]COVER_CHAPTER_FT]
+. ps \\n[#DOC_PT_SIZE]u\\*[$\\*[DOC_]COVER_CHAPTER_SIZE_CHANGE]
+. if \\n[#\\*[DOC_]COVER_CHAPTER_COLOR]=1 \
+. gcolor \\*[$\\*[DOC_]COVER_CHAPTER_COLOR]
+. if \\n[#\\*[DOC_]COVER_CHAPTER_CAPS]=1 .CAPS
+. if \\n[#\\*[DOC_]COVER_CHAPTER_SMALLCAPS]=1 .SMALLCAPS
+. ie \\n[#\\*[DOC_]COVER_CHAPTER_UNDERLINE] \{\
+. ds $TITLE_TYPE \\*[$COVER_TYPE]CHAPTER
+. ie \\n[#\\*[DOC_]COVER_CHAPTER_UNDERLINE]=2 \
+. UNDERSCORE2 \\*[$\\*[DOC_]COVER_CHAPTER_UNDERLINE_GAP] \
+\\*[$\\*[DOC_]COVER_CHAPTER_RULE_GAP] "\\*[$CHAPTER_STRING] \\*[$CHAPTER]"
+. el .UNDERSCORE "\\*[$CHAPTER_STRING] \\*[$CHAPTER]"
+. \}
+. el .PRINT "\\*[$CHAPTER_STRING] \\*[$CHAPTER]"
+. gcolor
+. SMALLCAPS off
+. CAPS off
+.END
+\#
+\# Spacing adjustments for (doc)cover and docheader elements
+\#
+.MAC _SPACE END
+. ds $\\$0R \\$1
+.END
+.
+.ds SPACER_TYPE_1 SUBTITLE
+.ds SPACER_TYPE_2 ATTRIBUTE
+.ds SPACER_TYPE_3 AUTHOR
+.ds SPACER_TYPE_4 CHAPTER_TITLE
+.ds SPACER_TYPE_5 DOCTYPE
+.
+.nr #LOOP 0 1
+.while \n+[#LOOP]<=5 \{\
+. ALIAS \*[SPACER_TYPE_\n[#LOOP]]_SPACE _SPACE
+. ALIAS COVER_\*[SPACER_TYPE_\n[#LOOP]]_SPACE _SPACE
+. ALIAS DOC_COVER_\*[SPACER_TYPE_\n[#LOOP]]_SPACE _SPACE
+.\}
+\#
+.MAC DEFAULT_DOCHEADER END
+. nr #DOCHEADER 1
+. DOC_HEADER_QUAD
+. vs \\n[#DOCHEADER_LEAD]u
+. if \\n[#PRINT_STYLE]=2 \
+. if \\n[#DOCHEADER_COLOR]=1 \
+. gcolor \\*[$DOCHEADER_COLOR]
+. DO_TITLE
+. rr #DOCHEADER
+. if !'\\*[$SUBTITLE_1]'' \{\
+. ds $PRFX SUB
+. if !'\\*[$SUBTITLE_SPACER]'' .sp \\*[$SUBTITLE_SPACER]
+. if \\n[#PRINT_STYLE]=2 \
+. if \\n[#DOCHEADER_COLOR]=1 \
+. gcolor \\*[$DOCHEADER_COLOR]
+. DO_SUBTITLE
+. rm $PRFX
+. \}
+. if !\\n[#NO_PRINT_AUTHOR] \{\
+. if !'\\*[$AUTHOR_1]'' \{\
+. ie \\n[#PRINT_STYLE]=1 \{\
+. TYPEWRITER
+. ie \\n[#SINGLE_SPACE]=1 .vs \\n[#DOC_LEAD]u
+. el .vs \\n[#DOC_LEAD]u/2u
+. sp
. \}
-. el \{\
-. nr #AUTHORS \\n[#AUTHOR_NUM]
-. nr #NEXT_AUTHOR 0 1
-. while \\n[#AUTHORS]>\\n[#NEXT_AUTHOR] \{\
-. ie \\n[#COVER_AUTHOR_COLOR]=1 \
-. PRINT \
-\m[\\*[$COVER_AUTHOR_COLOR]]\\*[$AUTHOR_\\n+[#NEXT_AUTHOR]]\m[]
-. el .PRINT \\*[$AUTHOR_\\n+[#NEXT_AUTHOR]]
+. el .vs \\n[#DOC_LEAD]u\\*[$DOCHEADER_LEAD_ADJ]
+. if d$ATTRIBUTE_STRING \{\
+. FAMILY \\*[$ATTRIBUTE_FAM]
+. FT \\*[$ATTRIBUTE_FT]
+. ps \
+\\n[#DOC_PT_SIZE]u\\*[$ATTRIBUTE_SIZE_CHANGE]
+. if \\n[#DOCHEADER_COLOR]=1 \
+. gcolor \\*[$DOCHEADER_COLOR]
+. if \\n[#ATTRIBUTE_COLOR]=1 \
+. gcolor \\*[$ATTRIBUTE_COLOR]
+. if \\n[#ATTRIBUTE_CAPS]=1 .CAPS
+. if !'\\*[$ATTRIBUTE_SPACER]'' \
+. sp \\*[$ATTRIBUTE_SPACER]
+. ie \\n[#ATTRIBUTE_UNDERLINE] \{\
+. ds $TITLE_TYPE ATTRIBUTE
+. ie \\n[#ATTRIBUTE_UNDERLINE]=2 \
+. UNDERSCORE2 \\*[$ATTRIBUTE_UNDERLINE_GAP] \
+\\*[$ATTRIBUTE_RULE_GAP] "\\*[$ATTRIBUTE_STRING]"
+. el .UNDERSCORE "\\*[$ATTRIBUTE_STRING]"
. \}
+. el .PRINT "\\*[$ATTRIBUTE_STRING]"
+. if \\n[#ATTRIBUTE_COLOR]=1 .gcolor
+. CAPS off
. \}
-. return
-. \}
-. \}
-. el \{\
-. nr #AUTHORS \\n[#AUTHOR_NUM]
-. nr #NEXT_AUTHOR 0 1
-. while \\n[#AUTHORS]>\\n[#NEXT_AUTHOR] \{\
-. ie \\n[#AUTHOR_COLOR]=1 \
-. PRINT \m[\\*[$AUTHOR_COLOR]]\\*[$AUTHOR_\\n+[#NEXT_AUTHOR]]\m[]
-. el .PRINT \\*[$AUTHOR_\\n+[#NEXT_AUTHOR]]
+. if !'\\*[$AUTHOR_SPACER]'' .sp \\*[$AUTHOR_SPACER]
+. if \\n[#DOCHEADER_COLOR]=1 \
+. gcolor \\*[$DOCHEADER_COLOR]
+. DO_AUTHORS
. \}
. \}
+. FAMILY \\*[$DOC_FAM]
+. FT R
.END
\#
-.MAC DEFAULT_DOCHEADER END
-. DOC_HEADER_QUAD
+.MAC DEFAULT_DOCHEADER_TYPEWRITE END
+. CENTER
+. TYPEWRITER
+. if !\\n[#SINGLE_SPACE] \{\
+. vs \\n[#DOC_LEAD]u/2u
+. sp |\\n[#T_MARGIN]u-1v
+. \}
. if !'\\*[$TITLE_1]'' \{\
-. FAMILY \\*[$TITLE_FAM]
-. FT \\*[$TITLE_FT]
-. ps \\*[$TITLE_PT_SIZE]
-. vs \\n[#DOCHEADER_LEAD]u
-. nr #ARG_NUM 0 1
-. while \\n[#TITLE_NUM]>=\\n+[#ARG_NUM] \{\
-. ie \\n[#TITLE_COLOR]=1 \
-. PRINT "\m[\\*[$TITLE_COLOR]]\\*[$TITLE_\\n[#ARG_NUM]]\m[]
-. el .PRINT "\\*[$TITLE_\\n[#ARG_NUM]]
-. \}
+. ie \\n[#SINGLE_SPACE] \
+. vs \\n[#DOC_LEAD]u+(\\n[#DOC_LEAD]u/4u)
+. el .vs (\\n[#DOC_LEAD]u/2u)+(\\n[#DOC_LEAD]u/4u)
+. CAPS
+. DO_TITLE
+. CAPS OFF
+. vs
. \}
-. if !'\\*[$SUBTITLE_1]'' \{\
-. FAMILY \\*[$SUBTITLE_FAM]
-. FT \\*[$SUBTITLE_FT]
-. ps \\*[$SUBTITLE_PT_SIZE]
-. nr #ARG_NUM 0 1
-. while \\n[#SUBTITLE_NUM]>=\\n+[#ARG_NUM] \{\
-. ie \\n[#SUBTITLE_COLOR]=1 \
-. PRINT "\m[\\*[$SUBTITLE_COLOR]]\\*[$SUBTITLE_\\n[#ARG_NUM]]\m[]
-. el .PRINT "\\*[$SUBTITLE_\\n[#ARG_NUM]]
-. \}
+. if !'\\*[$SUBTITLE]'' \{\
+. ds $PRFX SUB
+. sp
+. DO_SUBTITLE
+. rm $PRFX
. \}
-. if !'\\*[$AUTHOR_1]'' \{\
-. if \\n[#NEW_AUTHOR] \{\
-. rr #NEW_AUTHOR
-. FAMILY \\*[$AUTHOR_FAM]
-. FT \\*[$AUTHOR_FT]
-. ps \\*[$AUTHOR_PT_SIZE]
-. ie \\n[#ATTRIBUTE_COLOR]=1 \
-. PRINT \&\m[\\*[$ATTRIBUTE_COLOR]]\\*[$ATTRIBUTE_STRING]\m[]
-. el .PRINT \&\\*[$ATTRIBUTE_STRING]
-. PRINT_AUTHORS
+. if !\\n[#NO_PRINT_AUTHOR] \{\
+. if !'\\*[$AUTHOR_1]'' \{\
+. sp
+. if d$ATTRIBUTE_STRING .PRINT "\\*[$ATTRIBUTE_STRING]
+. sp
+. DO_AUTHORS
. \}
. \}
-. FAMILY \\*[$DOC_FAM]
-. FT R
.END
\#
.MAC CHAPTER_DOCHEADER END
. DOC_HEADER_QUAD
-. FAMILY \\*[$TITLE_FAM]
-. FT \\*[$TITLE_FT]
-. ps \\*[$TITLE_PT_SIZE]
+. FAMILY \\*[$CHAPTER_FAM]
+. FT \\*[$CHAPTER_FT]
+. ps \\n[#DOC_PT_SIZE]u\\*[$CHAPTER_SIZE_CHANGE]
. vs \\n[#DOCHEADER_LEAD]u
.\" Chapter title only
. ie '\\*[$CHAPTER]'' \{\
+. if \\n[#PRINT_STYLE]=2 \
+. if \\n[#DOCHEADER_COLOR]=1 \
+. gcolor \\*[$DOCHEADER_COLOR]
. ie !'\\*[$CHAPTER_TITLE_1]'' \{\
+. ds $PRFX CHAPTER_
+. nr #DOCHEADER 1
+. DO_TITLE
+. rr #DOCHEADER
+. rm $PRFX
+. \}
+. el .DO_TITLE
+. \}
+.\" Chapter string, possibly with a chapter title
+. el \{\
+. if \\n[#PRINT_STYLE]=2 \
+. if \\n[#DOCHEADER_COLOR]=1 \
+. gcolor \\*[$DOCHEADER_COLOR]
+. if \\n[#CHAPTER_COLOR]=1 \
+. gcolor \\*[$CHAPTER_COLOR]
+. \}
+. if \\n[#CHAPTER_CAPS]=1 .CAPS
+. ie \\n[#CHAPTER_UNDERLINE] \{\
+. ds $TITLE_TYPE CHAPTER
+. ie \\n[#CHAPTER_UNDERLINE]=2 \
+. UNDERSCORE2 \\*[$CHAPTER_UNDERLINE_GAP] \
+\\*[$CHAPTER_RULE_GAP] "\\*[$CHAPTER_STRING] \\*[$CHAPTER]"
+. el .UNDERSCORE "\\*[$CHAPTER_STRING] \\*[$CHAPTER]"
+. \}
+. el .PRINT "\\*[$CHAPTER_STRING] \\*[$CHAPTER]"
+. rm $TITLE_TYPE
+. if \\n[#PRINT_STYLE]=2 \
+. if \\n[#CHAPTER_COLOR]=1 .gcolor
+. CAPS off
+. if !'\\*[$CHAPTER_TITLE_1]'' \{\
+. ds $PRFX CHAPTER_
. if \\n[#PRINT_STYLE]=2 \{\
-. FAMILY \\*[$CHAPTER_TITLE_FAM]
-. FT \\*[$CHAPTER_TITLE_FT]
-. ps \\*[$CHAPTER_TITLE_PT_SIZE]
-. vs \\n[#DOCHEADER_LEAD]u
+. nr #CHAPTER+TITLE 1
+. if \\n[#DOCHEADER_COLOR]=1 \
+. gcolor \\*[$DOCHEADER_COLOR]
. \}
+. if !'\\*[$CHAPTER_TITLE_SPACER]'' \
+. sp \\*[$CHAPTER_TITLE_SPACER]
+. DO_TITLE
+. rm $PRFX
+. rr #CHAPTER+TITLE
+. RLD \\n[#DOC_LEAD]u \" Just looks better this way
+. \}
+. \}
+. FAMILY \\*[$DOC_FAM]
+. FT R
+.END
+\#
+.MAC CHAPTER_DOCHEADER_TYPEWRITE END
+. CENTER
+. TYPEWRITER
+. if !\\n[#SINGLE_SPACE] \{\
+. vs \\n[#DOC_LEAD]u/2u
+. sp |\\n[#T_MARGIN]u-1v
+. \}
+. ie '\\*[$CHAPTER]'' \{\
+. CAPS
+. ie !'\\*[$CHAPTER_TITLE]'' \{\
+. vs \\n[.v]u+(\\n[.v]u/3u)
. nr #ARG_NUM 0 1
. while \\n[#CHAPTER_TITLE_NUM]>=\\n+[#ARG_NUM] \{\
-. ie \\n[#TITLE_COLOR]=1 \{\
-. PRINT \
-\m[\\*[$TITLE_COLOR]]\\*[$CHAPTER_TITLE_\\n[#ARG_NUM]]\m[]
-. \}
-. el .PRINT \\*[$CHAPTER_TITLE_\\n[#ARG_NUM]]
+. UNDERSCORE 3p "\\*[$CHAPTER_TITLE_\\n[#ARG_NUM]]"
. \}
+. vs
. \}
. el \{\
-. ie \\n[#TITLE_COLOR]=1 \{\
-. PRINT \m[\\*[$TITLE_COLOR]]\\*[$CHAPTER_STRING]\m[]
-. \}
-. el .PRINT \\*[$CHAPTER_STRING]
+. CAPS
+. UNDERSCORE 3p "\\*[$CHAPTER_STRING]"
. \}
+. CAPS OFF
+. RLD 1v
. \}
-.\" Chapter string, possibly with a chapter title
. el \{\
-. ie \\n[#TITLE_COLOR]=1 \{\
-. PRINT \m[\\*[$TITLE_COLOR]]\\*[$CHAPTER_STRING] \\*[$CHAPTER]\m[]
-. \}
-. el .PRINT \\*[$CHAPTER_STRING] \\*[$CHAPTER]
-. if !'\\*[$CHAPTER_TITLE_1]'' \{\
-. if \\n[#PRINT_STYLE]=2 \{\
-. FAMILY \\*[$CHAPTER_TITLE_FAM]
-. FT \\*[$CHAPTER_TITLE_FT]
-. ps \\*[$CHAPTER_TITLE_PT_SIZE]
-. vs \\n[#DOCHEADER_LEAD]u
-. ALD \\n[.v]u/4u \" Put a little space before the chapter
title
-. \}
+. CAPS
+. UNDERSCORE 3p "\\*[$CHAPTER_STRING] \\*[$CHAPTER]
+. CAPS OFF
+. if !'\\*[$CHAPTER_TITLE]'' \{\
+. sp
. nr #ARG_NUM 0 1
. while \\n[#CHAPTER_TITLE_NUM]>=\\n+[#ARG_NUM] \{\
-. ie \\n[#CHAPTER_TITLE_COLOR]=1 \{\
-. PRINT \
-\m[\\*[$CHAPTER_TITLE_COLOR]]\\*[$CHAPTER_TITLE_\\n[#ARG_NUM]]\m[]
-. \}
-. el .PRINT \\*[$CHAPTER_TITLE_\\n[#ARG_NUM]]
+. PRINT "\\*[$CHAPTER_TITLE_\\n[#ARG_NUM]]
. \}
-. RLD \\n[#DOC_LEAD]u \" Just looks better this way
. \}
+. sp -1
+. \}
+. vs \\n[#DOC_LEAD]u
+. if \\n[#SINGLE_SPACE] .sp 2
+.END
+\#
+.MAC NAMED_DOCHEADER END
+. DEFAULT_DOCHEADER
+. if !\\n[#NO_PRINT_DOCTYPE] \{\
+. FAMILY \\*[$DOCTYPE_FAM]
+. FT \\*[$DOCTYPE_FT]
+. ps \\n[#DOC_PT_SIZE]u\\*[$DOCTYPE_SIZE_CHANGE]
+. vs \\n[#DOCHEADER_LEAD]u
+. ALD \\n[#DOCHEADER_LEAD]u
+. if \\n[#DOCHEADER_COLOR]=1 \
+. gcolor \\*[$DOCHEADER_COLOR]
+. if \\n[#DOCTYPE_COLOR]=1 \
+. gcolor \\*[$DOCTYPE_COLOR]
+. if \\n[#DOCTYPE_CAPS]=1 .CAPS
+. if !'\\*[$DOCTYPE_SPACER]'' .sp \\*[$DOCTYPE_SPACER]
+. ie \\n[#DOCTYPE_UNDERLINE] \{\
+. ds $TITLE_TYPE DOCTYPE
+. ie \\n[#DOCTYPE_UNDERLINE]=2 \
+. UNDERSCORE2 \\*[$DOCTYPE_UNDERLINE_GAP] \
+\\*[$DOCTYPE_RULE_GAP] "\\*[$DOC_TYPE]
+. el .UNDERSCORE "\\*[$DOC_TYPE]
+. \}
+. el .PRINT "\\*[$DOC_TYPE]
+. gcolor
+. CAPS off
. \}
. FAMILY \\*[$DOC_FAM]
. FT R
.END
\#
-.MAC NAMED_DOCHEADER END
-. DOC_HEADER_QUAD
-. FAMILY \\*[$TITLE_FAM]
-. FT \\*[$TITLE_FT]
-. ps \\*[$TITLE_PT_SIZE]
-. vs \\n[#DOCHEADER_LEAD]u
-. if !'\\*[$TITLE_1]'' \{\
-. nr #ARG_NUM 0 1
-. while \\n[#TITLE_NUM]>=\\n+[#ARG_NUM] \{\
-. ie \\n[#TITLE_COLOR]=1 \{\
-. PRINT "\m[\\*[$TITLE_COLOR]]\\*[$TITLE_\\n[#ARG_NUM]]\m[]
-. \}
-. el .PRINT "\\*[$TITLE_\\n[#ARG_NUM]]
-. \}
-. \}
-. if !'\\*[$SUBTITLE]'' \{\
-. FAMILY \\*[$SUBTITLE_FAM]
-. FT \\*[$SUBTITLE_FT]
-. ps \\*[$SUBTITLE_PT_SIZE]
-. nr #ARG_NUM 0 1
-. while \\n[#SUBTITLE_NUM]>=\\n+[#ARG_NUM] \{\
-. ie \\n[#SUBTITLE_COLOR]=1 \{\
-. PRINT "\m[\\*[$SUBTITLE_COLOR]]\\*[$SUBTITLE_\\n[#ARG_NUM]]\m[]
-. \}
-. el .PRINT "\\*[$SUBTITLE_\\n[#ARG_NUM]]
-. \}
-. \}
-. if !'\\*[$AUTHOR_1]'' \{\
-. FAMILY \\*[$AUTHOR_FAM]
-. FT \\*[$AUTHOR_FT]
-. ps \\*[$AUTHOR_PT_SIZE]
-. ie \\n[#ATTRIBUTE_COLOR]=1 \{\
-. PRINT \&\m[\\*[$ATTRIBUTE_COLOR]]\\*[$ATTRIBUTE_STRING]\m[]
-. \}
-. el .PRINT \&\\*[$ATTRIBUTE_STRING]
-. PRINT_AUTHORS
-. \}
-. FAMILY \\*[$DOCTYPE_FAM]
-. FT \\*[$DOCTYPE_FT]
-. ps \\*[$DOCTYPE_PT_SIZE]
-. vs \\n[#DOCHEADER_LEAD]u
-. ALD \\n[#DOCHEADER_LEAD]u
-. nr #FROM_DOCTYPE 1
-. if \\n[#DOCTYPE_COLOR]=1 .COLOR \\*[$DOCTYPE_COLOR]
-. ie \\n[#DOCTYPE_UNDERLINE]=1 \
-. UNDERSCORE \\*[$DOCTYPE_UNDERLINE_GAP] "\\*[$DOC_TYPE]"
-. el .PRINT "\\*[$DOC_TYPE]"
-. COLOR black
-. FAMILY \\*[$DOC_FAM]
-. FT R
-. rr #FROM_DOCTYPE
-.END
-\#
\# COVER PAGE
\# ----------
\# *Arguments:
@@ -6394,6 +6557,7 @@ y\R'#DESCENDER \\n[.cdp]'
\# applies everything to a doc cover.
\#
.MAC COVER END
+. rm DOC_
. ie '\\$0'DOC_COVER' \{\
. nr #DOC_COVER 1
. ds DOC_ DOC_
@@ -6401,15 +6565,19 @@ y\R'#DESCENDER \\n[.cdp]'
. el .nr #COVER 1
. nr #ARG_NUM 0 1
. nr #COVER_ITEM \\n[#NUM_ARGS] \"loop count
+. if \\n[#NUM_ARGS]=1 \
+. if '\\$1'\\*[DOC_]COVERTEXT' \
+. nr #\\*[DOC_]COVERTEXT_ONLY 1
. while \\n+[#ARG_NUM]<=\\n[#COVER_ITEM] \{\
-. if '\\$1'TITLE' \{\
-. nr #\\*[DOC_]COVER_TITLE 1
-. shift
-. \}
. if '\\$1'DOCTITLE' \{\
. nr #\\*[DOC_]COVER_TITLE 2
. shift
. \}
+. if '\\$1'TITLE' \{\
+. nr #\\*[DOC_]COVER_TITLE 1
+. if \\n[#FROM_\\*[DOC_]COVERTITLE] .nr #\\*[DOC_]COVER_TITLE 7
+. shift
+. \}
. if '\\$1'CHAPTER' \{\
. nr #\\*[DOC_]COVER_TITLE 3
. shift
@@ -6422,10 +6590,16 @@ y\R'#DESCENDER \\n[.cdp]'
. nr #\\*[DOC_]COVER_TITLE 5
. shift
. \}
-. if '\\$1'\\*[DOC_]COVERTITLE' \{\
+. if '\\$1'COVERTITLE' \{\
+. nr #COVERTITLE 1
. nr #\\*[DOC_]COVER_TITLE 6
. shift
. \}
+. if '\\$1'DOC_COVERTITLE' \{\
+. nr #DOC_COVERTITLE 1
+. nr #\\*[DOC_]COVER_TITLE 7
+. shift
+. \}
. if '\\$1'SUBTITLE' \{\
. nr #\\*[DOC_]COVER_SUBTITLE 1
. shift
@@ -6446,6 +6620,14 @@ y\R'#DESCENDER \\n[.cdp]'
. nr #\\*[DOC_]COVER_MISC 1
. shift
. \}
+. if '\\$1'\\*[DOC_]COVERTEXT' \{\
+. nr #\\*[DOC_]COVERTEXT 1
+. shift
+. \}
+. if '\\$1'\\*[DOC_]COVER_IMAGE' \{\
+. nr #\\*[DOC_]COVER_IMAGE 1
+. shift
+. \}
. if '\\$1'PDF_OUTLINE_LABEL' \{\
. shift
. ds $PDF_\\*[DOC_]COVER_LABEL \\$1
@@ -6459,49 +6641,165 @@ y\R'#DESCENDER \\n[.cdp]'
. if '\\$0'DOC_COVER' .rm DOC_
.END
\#
+\# COVER TITLE
+\# -----------
+\# *Arguments:
+\# <covertitle>
+\# *Function:
+\# Stores cover title in string(s) for output on cover pages.
+\#
.MAC COVERTITLE END
-. ie '\\$0'DOC_COVERTITLE' \{\
-. ie \\n[#NUM_ARGS]=0 \{\
-. if \\n[#DOC_COVER_TITLE_NUM] \{\
+. rm DOC_
+. if '\\$0'DOC_COVERTITLE' .ds DOC_ DOC_
+. ie \\n[#NUM_ARGS]=0 \{\
+. nr argc 0 1
+. while \\n+[argc]<=3 \{\
+. if \\n[#\\*[DOC_]COVER_TITLE_NUM] \{\
. nr #ITEM 0 1
-. while \\n[#DOC_COVER_TITLE_NUM]>\\n[#ITEM] \{\
-. rm $DOC_COVER_TITLE_\\n+[#ITEM]
+. while \\n[#\\*[DOC_]COVERTITLE_NUM]>\\n[#ITEM] \{\
+. rm $\\*[DOC_]COVERTITLE_\\n+[#ITEM]
. \}
-. rr #DOC_COVER_TITLE_NUM
-. rm $DOC_COVER_TITLE
-. \}
-. \}
-. el \{\
-. nr #DOC_COVER_TITLE_NUM 0 1
-. while \\n[#NUM_ARGS]>\\n[#DOC_COVER_TITLE_NUM] \{\
-. ds \
-$DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM] \\$\\n[#DOC_COVER_TITLE_NUM]
+. rr #\\*[DOC_]COVERTITLE_NUM
+. rm $\\*[DOC_]COVERTITLE
. \}
-. ds $DOC_COVER_TITLE \\$*
. \}
. \}
. el \{\
-. ie \\n[#NUM_ARGS]=0 \{\
-. if \\n[#COVER_TITLE_NUM] \{\
-. nr #ITEM 0 1
-. while \\n[#COVER_TITLE_NUM]>\\n[#ITEM] \{\
-. rm $COVER_TITLE_\\n+[#ITEM]
-. \}
-. rr #COVER_TITLE_NUM
-. rm $COVER_TITLE
-. \}
-. \}
-. el \{\
-. nr #COVER_TITLE_NUM 0 1
-. while \\n[#NUM_ARGS]>\\n[#COVER_TITLE_NUM] \{\
-. ds $COVER_TITLE_\\n+[#COVER_TITLE_NUM] \\$\\n[#COVER_TITLE_NUM]
-. \}
-. ds $COVER_TITLE \\$*
-.\" . if \\n[#DOCTITLE_NUM]=0 .PDF_TITLE \\*[$COVER_TITLE]
+. nr #\\*[DOC_]COVERTITLE_NUM 0 1
+. while \\n[#NUM_ARGS]>\\n[#\\*[DOC_]COVERTITLE_NUM] \{\
+. ds \
+$\\*[DOC_]COVERTITLE_\\n+[#\\*[DOC_]COVERTITLE_NUM]
\\$\\n[#\\*[DOC_]COVERTITLE_NUM]
+. nr #\\*[DOC_]COVERTITLE_NUM \\n[#\\*[DOC_]COVERTITLE_NUM]
. \}
+. ds $\\*[DOC_]COVERTITLE \\$*
. \}
.END
\#
+\# COVER TEXT
+\# ----------
+\# *Arguments:
+\# [ START <vertical pos> ] | <anything>
+\# *Function:
+\# With no arg, begins a diversion holding the cover text for
+\# output on the cover page. With START <pos>, sets a vertical
+\# starting position relative to the top edge of the page. With
+\# any other arg, ends the diversion.
+\# *Notes:
+\# Aliased as DOC_COVERTEXT.
+\#
+\# If no other items assigned to cover pages, starts 1/3 of the
+\# way down the cover page unless START pos is given, otherwise
+\# starts underneath the last of title, subtitle, author(s) or
+\# doctype, preceded by a blank line.
+\#
+\# Does not persist.
+\#
+.MAC COVERTEXT END
+. rm DOC_
+. if '\\$0'DOC_COVERTEXT' .ds DOC_ DOC_
+. if '\\$1'START' \{\
+. shift
+. nr #\\*[DOC_]COVERTEXT_START_POS (u;\\$1)
+. shift
+. \}
+. ie '\\$1'' \{\
+. nr #COVERTEXT_PP 1
+. di \\*[DOC_]COVER_TEXT
+\!. ie !\\n[#\\*[DOC_]COVERTEXT_START_POS] \{\
+\!. sp |\\n[.p]u/3u-1v
+\!. \}
+\!. el \{\
+\!. vs 0
+\!. sp |0i
+\!. vs \\\\n[#DOC_LEAD]u+\\\\*[$\\*[DOC_]COVER_LEAD_ADJ]
+\!. sp |\\n[#\\*[DOC_]COVERTEXT_START_POS]u-1
+\!. \}
+\!. vpt
+. \}
+. el \{\
+. br
+\!. vpt 0
+. di
+. rm $FONT
+. rr #COVERTEXT_PP
+. IQ CLEAR
+. \}
+. rm DOC_
+.END
+.
+.ALIAS DOC_COVERTEXT COVERTEXT
+\#
+\# COVER IMAGE
+\# -----------
+\#*Arguments:
+\# <image file> <width> <height> [ -L|-C|-R|-I <ind> Y-pos [ X-pos ] ]
+\#*Function:
+\# Places an image on doccovers and covers.
+\#*Notes:
+\# Aliased as DOC_COVER_IMAGE.
+\#
+\# <width> and <height> are required. With no further args, images
+\# are set at 0,0 by default so that full page images fill the entire
+\# printer sheet.
+\#
+\# Positioning args are the same as PDF_IMAGE. -L, -R, -C and -I <ind>
+\# observe the left and right margins.
+\#
+\# Y-pos is required for all but full page images; without it, images
+\# are flush with the top of the page. X-pos is only needed if the
+\# user prefers to give absolute X,Y positioning.
+\#
+\# Note that Y-pos comes before X-pos in the args.
+\#
+.MAC COVER_IMAGE END
+. if '\\$0'DOC_COVER_IMAGE' .ds DOC_ DOC_
+. ds \\*[DOC_]COVER_IMG_FILE \\$1
+. nr \\*[DOC_]COVER_IMG_W (z;\\$2)
+. nr \\*[DOC_]COVER_IMG_H (z;\\$3)
+. if !'\\$4'' \{\
+. ie !\B'\\$4' \{\
+. if '\\$4'-L' .nr \\*[DOC_]COVER_IMG_IND \
+ \\n[#L_MARGIN]u
+. if '\\$4'-C' .nr \\*[DOC_]COVER_IMG_IND \
+ \\n[#PAGE_WIDTH]u-\\n[\\*[DOC_]COVER_IMG_W]u/2
+. if '\\$4'-R' .nr \\*[DOC_]COVER_IMG_IND \
+ \\n[#L_MARGIN]+\\n[.l]u-\\n[\\*[DOC_]COVER_IMG_W]u
+. if '\\$4'-I' \{\
+. nr \\*[DOC_]COVER_IMG_IND \\n[#L_MARGIN]+\\$5
+. if !'\\$6'' .nr \\*[DOC_]COVER_IMG_Y (u;\\$6)
+. shift \\n[#NUM_ARGS]
+. \}
+. if \B'\\$5' .nr \\*[DOC_]COVER_IMG_Y (u;\\$5)
+. \}
+. el \{\
+. nr \\*[DOC_]COVER_IMG_Y (u;\\$4)
+. if \B'\\$5' .nr \\*[DOC_]COVER_IMG_X (u;\\$5)
+. \}
+. \}
+. rm DOC_
+.END
+.
+.ALIAS DOC_COVER_IMAGE COVER_IMAGE
+\#
+.MAC DO_COVER_IMAGE END
+. ll \\n[#PAGE_WIDTH]u
+. po 0
+. vs 0
+. sp |0i
+. if \\n[\\*[DOC_]COVER_IMG_Y] .sp \\n[\\*[DOC_]COVER_IMG_Y]u
+. if \\n[\\*[DOC_]COVER_IMG_X] .in \\n[\\*[DOC_]COVER_IMG_X]u
+. if \\n[\\*[DOC_]COVER_IMG_IND] .in \\n[\\*[DOC_]COVER_IMG_IND]u
+. if \\n[.u]=1 .nf
+. nop \X'pdf: pdfpic \\*[\\*[DOC_]COVER_IMG_FILE] -L \
+\\n[\\*[DOC_]COVER_IMG_W]z \\n[\\*[DOC_]COVER_IMG_H]z'
+. in
+. vs
+. po
+. ll
+.END
+.
+.ALIAS DO_DOC_COVER_IMAGE DO_COVER_IMAGE
+\#
\# COVER PAGE LEADING
\# ------------------
\# *Arguments:
@@ -6519,16 +6817,25 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. el .ds $COVER_LEAD_ADJ \\$1
.END
\#
-\# MISCs get treated similarly to QUOTEs and BLOCKQUOTEs with respect to
-\# leading
+\# MISC_AUTOLEAD functionality has been removed. Leading for MISCs
+\# is now entered as an absolute value. The macro emits a warning.
\#
.MAC MISC_AUTOLEAD END
-. if '\\$0'DOC_COVER_MISC_AUTOLEAD' .nr #DOC_COVER_MISC_AUTOLEAD (p;\\$1)
-. if '\\$0'COVER_MISC_AUTOLEAD' .nr #COVER_MISC_AUTOLEAD (p;\\$1)
+. ds replacement \\$0
+. substring replacement 0 -9
+. ds replacement \\*[replacement]LEAD
+. ds cover-type \\$0
+. substring cover-type 0 2
+. ie '\\*[cover-type]'COV' .ds cover-type cover
+. el .ds cover-type doc-cover
+. tm1 "[mom]: \\$0 at line \\n[.c] of '\\n[.F]' is no longer valid.
+. tm1 " Leading of \\*[cover-type] MISC items is now set with
\\*[replacement], which
+. tm1 " takes an absolute leading value. Please update your document.
+. ab [mom]: Aborting.
.END
-\#
-.ALIAS DOC_COVER_MISC_AUTOLEAD MISC_AUTOLEAD
-.ALIAS COVER_MISC_AUTOLEAD MISC_AUTOLEAD
+.
+.ALIAS DOC_COVER_MISC_AUTOLEAD MISC_AUTOLEAD
+.ALIAS COVER_MISC_AUTOLEAD MISC_AUTOLEAD
\#
\# COVER PAGE START POSITION
\# -------------------------
@@ -6545,238 +6852,16 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
\# down the page (setup in DO_COVER).
\#
.MAC COVER_ADVANCE END
-. ie '\\$0'DOC_COVER_ADVANCE' .nr #DOC_COVER_START_POS (\\$1)
+. ds COVER_TYPE \\$0
+. substring COVER_TYPE 0 2
+. ie 'COVER_TYPE'DOC' .nr #DOC_COVER_START_POS (\\$1)
. el .nr #COVER_START_POS (\\$1)
.END
-\#
-\# UNDERLINE CONTROL
-\# -----------------
-\# *Arguments:
-\# [ DOUBLE ] [ <underline weight> [<underline gap>] ] | <none> | <anything>
-\# *Function:
-\# Toggles underlining of the element indicated by the calling alias
-\# on or off. Uses #<element>_UNDERLINE_WEIGHT to set the weight,
-\# and defines string $<element>_UNDERLINE_GAP.
-\# *Notes:
-\# Calling aliases COVER_ and DOCCOVER_ only apply if DOCTYPE is
-\# NAMED and the DOCTYPE arg is passed to COVER or DOC_COVER.
-\#
-.MAC _UNDERLINE END
-. ie '\\$1'' \{\
-. if '\\$0'BIBLIOGRAPHY_STRING_UNDERLINE' \
-. nr #BIB_STRING_UNDERLINE 1
-. if '\\$0'BIBLIOGRAPHY_STRING_UNDERSCORE' \
-. nr #BIB_STRING_UNDERLINE 1
-. if '\\$0'COVER_UNDERLINE' \
-. nr #COVER_UNDERLINE 1
-. if '\\$0'DOC_COVER_UNDERLINE' \
-. nr #DOC_COVER_UNDERLINE 1
-. if '\\$0'DOCTYPE_UNDERLINE' \
-. nr #DOCTYPE_UNDERLINE 1
-. if '\\$0'ENDNOTE_STRING_UNDERLINE' \
-. nr #EN_STRING_UNDERLINE 1
-. if '\\$0'ENDNOTES_HEADER_UNDERSCORE' \
-. nr #EN_STRING_UNDERLINE 1
-. if '\\$0'ENDNOTE_STRING_UNDERSCORE' \
-. nr #EN_STRING_UNDERLINE 1
-. if '\\$0'ENDNOTE_TITLE_UNDERLINE' \
-. nr #EN_TITLE_UNDERLINE 1
-. if '\\$0'ENDNOTE_TITLE_UNDERSCORE' \
-. nr #EN_TITLE_UNDERLINE 1
-. if '\\$0'TOC_HEADER_UNDERSCORE' \
-. nr #TOC_HEADER_UNDERLINE 1
-. \}
-. el \{\
-. ie \\n[#NUM_ARGS]=1 \{\
-. ds $ARG \\$1
-. substring $ARG -1
-. ie \B'\\*[$ARG]' \{\
-. if !\\n[#PRINT_STYLE]=1 \{\
-. if '\\$0'BIBLIOGRAPHY_STRING_UNDERLINE' \
-. BIBLIOGRAPHY_STRING_UNDERLINE_WEIGHT \\$1
-. if '\\$0'BIBLIOGRAPHY_STRING_UNDERSCORE' \
-. BIBLIOGRAPHY_STRING_UNDERLINE_WEIGHT \\$1
-. if '\\$0'COVER_UNDERLINE' \
-. COVER_UNDERLINE_WEIGHT \\$1
-. if '\\$0'DOC_COVER_UNDERLINE' \
-. DOC_COVER_UNDERLINE_WEIGHT \\$1
-. if '\\$0'DOCTYPE_UNDERLINE' \
-. DOCTYPE_UNDERLINE_WEIGHT \\$1
-. if '\\$0'ENDNOTES_HEADER_UNDERLINE' \{\
-. ENDNOTE_STRING_UNDERLINE_WEIGHT \\$1
-. nr #EN_STRING_UNDERLINE 1
-. \}
-. if '\\$0'ENDNOTE_STRING_UNDERLINE' \{\
-. ENDNOTE_STRING_UNDERLINE_WEIGHT \\$1
-. nr #EN_STRING_UNDERLINE 1
-. \}
-. if '\\$0'ENDNOTES_HEADER_UNDERSCORE' \{\
-. ENDNOTE_STRING_UNDERLINE_WEIGHT \\$1
-. nr #EN_STRING_UNDERLINE 1
-. \}
-. if '\\$0'ENDNOTE_STRING_UNDERSCORE' \{\
-. ENDNOTE_STRING_UNDERLINE_WEIGHT \\$1
-. nr #EN_STRING_UNDERLINE 1
-. \}
-. if '\\$0'ENDNOTE_TITLE_UNDERLINE' \
-. ENDNOTE_TITLE_UNDERLINE_WEIGHT \\$1
-. if '\\$0'ENDNOTE_TITLE_UNDERSCORE' \
-. ENDNOTE_TITLE_UNDERLINE_WEIGHT \\$1
-. if '\\$0'TOC_HEADER_UNDERSCORE' \
-. TOC_HEADER_UNDERLINE_WEIGHT \\$1
-. nr #TOC_HEADER_UNDERLINE 1
-. \}
-. \}
-. el \{\
-. if '\\$0'BIBLIOGRAPHY_STRING_UNDERLINE' \{\
-. ie '\\$1'DOUBLE' .nr #BIB_STRING_UNDERLINE 2
-. el .nr #BIB_STRING_UNDERLINE 0
-. \}
-. if '\\$0'BIBLIOGRAPHY_STRING_UNDERSCORE' \{\
-. ie '\\$1'DOUBLE' .nr #BIB_STRING_UNDERLINE 2
-. el .nr #BIB_STRING_UNDERLINE 0
-. \}
-. if '\\$0'COVER_UNDERLINE' .nr #COVER_UNDERLINE 0
-. if '\\$0'DOC_COVER_UNDERLINE' .nr #DOC_COVER_UNDERLINE 0
-. if '\\$0'DOCTYPE_UNDERLINE' .nr #DOCTYPE_UNDERLINE 0
-. if '\\$0'ENDNOTE_STRING_UNDERLINE' \{\
-. ie '\\$1'DOUBLE' .nr #EN_STRING_UNDERLINE 2
-. el .nr #EN_STRING_UNDERLINE 0
-. \}
-. if '\\$0'ENDNOTES_HEADER_UNDERSCORE' \{\
-. ie '\\$1'DOUBLE' .nr #EN_STRING_UNDERLINE 2
-. el .nr #EN_STRING_UNDERLINE 0
-. \}
-. if '\\$0'ENDNOTE_STRING_UNDERLINE' \{\
-. ie '\\$1'DOUBLE' .nr #EN_STRING_UNDERLINE 2
-. el .nr #EN_STRING_UNDERLINE 0
-. \}
-. if '\\$0'ENDNOTE_STRING_UNDERSCORE' \{\
-. ie '\\$1'DOUBLE' .nr #EN_STRING_UNDERLINE 2
-. el .nr #EN_STRING_UNDERLINE 0
-. \}
-. if '\\$0'ENDNOTE_TITLE_UNDERLINE' \{\
-. ie '\\$1'DOUBLE' .nr #EN_TITLE_UNDERLINE 2
-. el .nr #EN_TITLE_UNDERLINE 0
-. \}
-. if '\\$0'ENDNOTE_TITLE_UNDERSCORE' \{\
-. ie '\\$1'DOUBLE' .nr #EN_TITLE_UNDERLINE 2
-. el .nr #EN_TITLE_UNDERLINE 0
-. \}
-. if '\\$0'TOC_HEADER_UNDERSCORE' \{\
-. ie '\\$1'DOUBLE' .nr #TOC_HEADER_UNDERLINE 2
-. el .nr #TOC_HEADER_UNDERLINE 0
-. \}
-. \}
-. \}
-. el \{\
-. if !\\n[#PRINT_STYLE]=1 \{\
-. if '\\$0'BIBLIOGRAPHY_STRING_UNDERLINE' \{\
-. nr #BIB_STRING_UNDERLINE 1
-. if '\\$1'DOUBLE' \{\
-. nr #BIB_STRING_UNDERLINE 2
-. shift
-. \}
-. BIBLIOGRAPHY_STRING_UNDERLINE_WEIGHT \\$1
-. if !'\\$2'' \
-. ds $BIB_STRING_UNDERLINE_GAP \\$2
-. if !'\\$3'' \
-. ds $BIB_STRING_RULE_GAP \\$3
-. \}
-. if '\\$0'BIBLIOGRAPHY_STRING_UNDERSCORE' \{\
-. nr #BIB_STRING_UNDERLINE 1
-. if '\\$1'DOUBLE' \{\
-. nr #BIB_STRING_UNDERLINE 2
-. shift
-. \}
-. BIBLIOGRAPHY_STRING_UNDERLINE_WEIGHT \\$1
-. if !'\\$2'' .ds $BIB_STRING_UNDERLINE_GAP \\$2
-. if !'\\$3'' .ds $BIB_STRING_RULE_GAP \\$3
-. \}
-. if '\\$0'COVER_UNDERLINE' \{\
-. nr #COVER_UNDERLINE 1
-. COVER_UNDERLINE_WEIGHT \\$1
-. ds $COVER_UNDERLINE_GAP \\$2
-. \}
-. if '\\$0'DOC_COVER_UNDERLINE' \{\
-. nr #DOC_COVER_UNDERLINE 1
-. DOC_COVER_UNDERLINE_WEIGHT \\$1
-. ds $DOC_COVER_UNDERLINE_GAP \\$2
-. \}
-. if '\\$0'DOCTYPE_UNDERLINE' \{\
-. nr #DOCTYPE_UNDERLINE 1
-. DOCTYPE_UNDERLINE_WEIGHT \\$1
-. ds $DOCTYPE_UNDERLINE_GAP \\$2
-. \}
-.\" ENDNOTE_STRING_UNDERLINE and ENDNOTE_STRING_UNDERSCORE are identical
-.\" _UNDERLINE left in for backward compatibility
-. if '\\$0'ENDNOTES_HEADER_UNDERLINE' \{\
-. nr #EN_STRING_UNDERLINE 1
-. if '\\$1'DOUBLE' \{\
-. nr #EN_STRING_UNDERLINE 2
-. shift
-. \}
-. ENDNOTE_STRING_UNDERLINE_WEIGHT \\$1
-. if !'\\$2'' .ds $EN_STRING_UNDERLINE_GAP \\$2
-. if !'\\$3'' .ds $EN_STRING_RULE_GAP \\$3
-. \}
-. if '\\$0'ENDNOTE_STRING_UNDERLINE' \{\
-. nr #EN_STRING_UNDERLINE 1
-. if '\\$1'DOUBLE' \{\
-. nr #EN_STRING_UNDERLINE 2
-. shift
-. \}
-. ENDNOTE_STRING_UNDERLINE_WEIGHT \\$1
-. if !'\\$2'' .ds $EN_STRING_UNDERLINE_GAP \\$2
-. if !'\\$3'' .ds $EN_STRING_RULE_GAP \\$3
-. \}
-. if '\\$0'ENDNOTE_STRING_UNDERSCORE' \{\
-. nr #EN_STRING_UNDERLINE 1
-. if '\\$1'DOUBLE' \{\
-. nr #EN_STRING_UNDERLINE 2
-. shift
-. \}
-. ENDNOTE_STRING_UNDERLINE_WEIGHT \\$1
-. if !'\\$2'' .ds $EN_STRING_UNDERLINE_GAP \\$2
-. if !'\\$3'' .ds $EN_STRING_RULE_GAP \\$3
-. \}
-. if '\\$0'ENDNOTES_HEADER_UNDERSCORE' \{\
-. nr #EN_STRING_UNDERLINE 1
-. if '\\$1'DOUBLE' \{\
-. nr #EN_STRING_UNDERLINE 2
-. shift
-. \}
-. ENDNOTE_STRING_UNDERLINE_WEIGHT \\$1
-. if !'\\$2'' .ds $EN_STRING_UNDERLINE_GAP \\$2
-. if !'\\$3'' .ds $EN_STRING_RULE_GAP \\$3
-. \}
-. if '\\$0'TOC_HEADER_UNDERSCORE' \{\
-. nr #TOC_HEADER_UNDERLINE 1
-. if '\\$1'DOUBLE' \{\
-. nr #TOC_HEADER_UNDERLINE 2
-. shift
-. \}
-. TOC_HEADER_UNDERLINE_WEIGHT \\$1
-. if !'\\$2'' .ds $TOC_HEADER_UNDERLINE_GAP \\$2
-. if !'\\$3'' .ds $TOC_HEADER_RULE_GAP \\$3
-. \}
-. \}
-. \}
-. \}
-.END
-\#
-.ALIAS BIBLIOGRAPHY_STRING_UNDERSCORE _UNDERLINE
-.ALIAS BIBLIOGRAPHY_STRING_UNDERLINE _UNDERLINE
-.ALIAS COVER_UNDERLINE _UNDERLINE
-.ALIAS DOC_COVER_UNDERLINE _UNDERLINE
-.ALIAS DOCTYPE_UNDERLINE _UNDERLINE
-.ALIAS ENDNOTES_HEADER_UNDERLINE _UNDERLINE
-.ALIAS ENDNOTES_HEADER_UNDERSCORE _UNDERLINE
-.ALIAS ENDNOTE_STRING_UNDERLINE _UNDERLINE
-.ALIAS ENDNOTE_STRING_UNDERSCORE _UNDERLINE
-.ALIAS ENDNOTE_TITLE_UNDERLINE _UNDERLINE
-.ALIAS ENDNOTE_TITLE_UNDERSCORE _UNDERLINE
-.ALIAS TOC_HEADER_UNDERSCORE _UNDERLINE
+.
+.ALIAS DOC_COVER_ADVANCE COVER_ADVANCE
+.ALIAS DOC_COVER_START_POS COVER_ADVANCE
+.ALIAS COVER_ADVANCE COVER_ADVANCE
+.ALIAS COVER_START_POS COVER_ADVANCE
\#
\# COVERS - WHETHER TO PRINT
\# -------------------------
@@ -6835,7 +6920,7 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. nr #DOING_COVER 1
. ev COVER
. evc 0
-. TRAP OFF
+. vpt 0
. if \\n[#PAGINATE]=1 \{\
. nr #PAGINATION_WAS_ON 1
. rr #PAGINATE
@@ -6859,53 +6944,51 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. if '\\*[$PDF_DOC_COVER_LABEL]'' \
. ds $PDF_DOC_COVER_LABEL Cover:
. \}
-. el \{\
-. if '\\*[$PDF_COVER_LABEL]'' .ds $PDF_COVER_LABEL Title Page:
-. \}
+. el \
+. if '\\*[$PDF_COVER_LABEL]'' \
+. ds $PDF_COVER_LABEL Title Page:
+. ds $COVER_TYPE \\*[DOC_]COVER_
. if !r#\\*[DOC_]COVER_START_POS \
. nr #\\*[DOC_]COVER_START_POS \\n[#PAGE_LENGTH]/3
-. if \\n[#PRINT_STYLE]=1 \{\
-. ie \\n[#SINGLE_SPACE]=1 .vs \\n[#DOC_LEAD]u*2u
-. el .vs \\n[#DOC_LEAD]u
-. \}
+. if \\n[#PRINT_STYLE]=1 \
+. if !\\n[#SINGLE_SPACE]=1 .vs \\n[#DOC_LEAD]u/2u
. if \\n[#PRINT_STYLE]=2 \{\
-. vs \\n[#DOC_LEAD]u\\*[$\\*[DOC_]COVER_LEAD_ADJ]
-. nr #\\*[DOC_]COVER_LEAD \\n[#LEAD]
+. vs \\n[#DOC_LEAD]u+\\*[$\\*[DOC_]COVER_LEAD_ADJ]
+. nr #\\*[DOC_]COVER_LEAD \\n[.v]
. \}
. if \\n[.ns] .rs
. if '\\$0'DO_COVER' \{\
-. if \\n[TOC.RELOCATE]==5 \{\
+. if \\n[TOC.RELOCATE]==5 \
. if !rTOC_BH .TOC_BEFORE_HERE
-. \}
. \}
. if '\\$0'DO_DOC_COVER' \{\
-. if \\n[TOC.RELOCATE]==3 \{\
+. if \\n[TOC.RELOCATE]==3 \
. if !rTOC_BH .TOC_BEFORE_HERE
-. \}
. \}
. RV_HARD_SET_MARGINS
-. sp |\\n[#\\*[DOC_]COVER_START_POS]u-1v
-. if \\n[#\\*[DOC_]COVER_COLOR]=1 \{\
-. nf
-\m[\\*[$\\*[DOC_]COVER_COLOR]]
-. EOL
+.\" Cover image
+. if \\n[#\\*[DOC_]COVER_IMAGE]=1 \{\
+. DO_\\*[DOC_]COVER_IMAGE
+. rr #\\*[DOC_]COVER_IMAGE
. \}
+.\" Start cover
+. sp |\\n[#\\*[DOC_]COVER_START_POS]u-1v
+. if !\\n[#PRINT_STYLE]=1 \
+. if \\n[#\\*[DOC_]COVER_COLOR]=1 \
+. gcolor \\*[$\\*[DOC_]COVER_COLOR]
. \\*[DOC_]COVER_H_POS
-. fam \\*[$\\*[DOC_]COVER_TITLE_FAM]
-. ft \\*[$\\*[DOC_]COVER_TITLE_FT]
-. ps \\*[$\\*[DOC_]COVER_TITLE_PT_SIZE]
-. ie \\n[#PRINT_STYLE]=1 \{\
-. ie \\n[#SINGLE_SPACE]=1 \{ .vs \\n[#DOC_LEAD]u*2u \}
-. el \{ .vs \\n[#DOC_LEAD]u \}
-. \}
+. if \\n[#\\*[DOC_]COVER_TITLE]=2 .ds DOC DOC
+. fam \\*[$\\*[DOC_]COVER_\\*[DOC]TITLE_FAM]
+. ft \\*[$\\*[DOC_]COVER_\\*[DOC]TITLE_FT]
+. ps \\*[$\\*[DOC_]COVER_\\*[DOC]TITLE_PT_SIZE]
+. ie \\n[#PRINT_STYLE]=1 .TYPEWRITER
. el .vs \\n[#\\*[DOC_]COVER_LEAD]u
-. if \\n[#PRINT_STYLE]=1 .TYPEWRITER
-. if \\n[#\\*[DOC_]COVER_TITLE] \{\
-. nr PDFHREF.VIEW.LEADING.H \\n[PDFHREF.VIEW.LEADING]
-. nr PDFHREF.VIEW.LEADING \\n[nl]u-1v-1000u
-. \}
-. if \\n[#\\*[DOC_]COVER_TITLE]=1 \{\
+. nr PDFHREF.VIEW.LEADING \\n[PDFHREF.VIEW.LEADING.C]
+.\" Title and/or doctitle
+. if (\\n[#\\*[DOC_]COVER_TITLE]=1):(\\n[#\\*[DOC_]COVER_TITLE]=2) \{\
. ie \\n[#PRINT_STYLE]=1 \{\
+. vs \\n[.v]u*2u
+. sp -1.5
. CAPS
. nr #ARG_NUM 0 1
. while \\n[#TITLE_NUM]>=\\n+[#ARG_NUM] \{\
@@ -6914,109 +6997,56 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. as PDF_BM \\*[$TITLE_\\n[#ARG_NUM]]
. \}
. CAPS OFF
+. vs
. \}
. el \{\
-. nr #ARG_NUM 0 1
-. while \\n[#TITLE_NUM]>=\\n+[#ARG_NUM] \{\
-. ie \\n[#\\*[DOC_]COVER_TITLE_COLOR]=1 \{\
-. PRINT \
-\m[\\*[$\\*[DOC_]COVER_TITLE_COLOR]]\\*[$TITLE_\\n[#ARG_NUM]]\m[]
-. \}
-. el \
-. PRINT "\\*[$TITLE_\\n[#ARG_NUM]]
-. if \\n[#ARG_NUM]>1 .as PDF_BM " \"
-. as PDF_BM \\*[$TITLE_\\n[#ARG_NUM]]
-. \}
-. \}
-. PDF_BOOKMARK 1 \\*[$PDF_\\*[DOC_]COVER_LABEL] \\*[PDF_BM]
-.\" . PDF_TITLE \\*[PDF_BM]
-. \}
-. if \\n[#\\*[DOC_]COVER_TITLE]=2 \{\
-. ie \\n[#PRINT_STYLE]=1 \{\
-. CAPS
-. nr #ARG_NUM 0 1
-. while \\n[#DOCTITLE_NUM]>=\\n+[#ARG_NUM] \{\
-. UNDERSCORE "\\*[$\\*[DOC_]TITLE_\\n[#ARG_NUM]]"
-. if \\n[#ARG_NUM]>1 .as PDF_BM " \"
-. as PDF_BM \\*[$\\*[DOC_]TITLE_\\n[#ARG_NUM]]
-. \}
-. CAPS OFF
-. \}
-. el \{\
-. nr #ARG_NUM 0 1
-. while \\n[#DOCTITLE_NUM]>=\\n+[#ARG_NUM] \{\
-. ie \\n[#\\*[DOC_]COVER_TITLE_COLOR]=1 \{\
-. PRINT \
-\m[\\*[$\\*[DOC_]COVER_TITLE_COLOR]]\\*[$\\*[DOC_]TITLE_\\n[#ARG_NUM]]\m[]
-. \}
-. el .PRINT \\*[$\\*[DOC_]TITLE_\\n[#ARG_NUM]]
-. if \\n[#ARG_NUM]>1 .as PDF_BM " \"
-. as PDF_BM \\*[$\\*[DOC_]TITLE_\\n[#ARG_NUM]]
-. \}
+. DO_TITLE
+. rm $PRFX
. \}
. PDF_BOOKMARK 1 \\*[$PDF_\\*[DOC_]COVER_LABEL] \\*[PDF_BM]
-.\" . PDF_TITLE \\*[PDF_BM]
. \}
+.\" Chapter
. if \\n[#\\*[DOC_]COVER_TITLE]=3 \{\
. ie \\n[#PRINT_STYLE]=1 \{\
. CAPS
-. PRINT \\*[$CHAPTER_STRING] \\*[$CHAPTER]
+. UNDERSCORE "\\*[$CHAPTER_STRING] \\*[$CHAPTER]
. CAPS OFF
. \}
-. el \{\
-. ie \\n[#\\*[DOC_]COVER_TITLE_COLOR]=1 \{\
-. PRINT \
-\m[\\*[$\\*[DOC_]COVER_TITLE_COLOR]]\\*[$CHAPTER_STRING] \\*[$CHAPTER]\m[]
-. \}
-. el .PRINT \\*[$CHAPTER_STRING] \\*[$CHAPTER]
-. \}
+. el .DO_CHAPTER
. PDF_BOOKMARK 1 \
\\*[$PDF_\\*[DOC_]COVER_LABEL] \\*[$CHAPTER_STRING] \\*[$CHAPTER]
-.\" . PDF_TITLE \\*[$CHAPTER_STRING] \\*[$CHAPTER]
+. if \\n[#\\*[DOC_]COVER_CHAPTER_CAPS]=1 .CAPS off
. \}
+.\" Chapter title
. if \\n[#\\*[DOC_]COVER_TITLE]=4 \{\
. ie \\n[#PRINT_STYLE]=1 \{\
. CAPS
. nr #ARG_NUM 0 1
-. ie \\n[#SINGLE_SPACE]=0 .vs \\n[#DOC_LEAD]u/2u
-. el .vs \\n[#DOC_LEAD]u
-. sp
-. while \\n[#CHAPTER_TITLE_NUM]>=\\n+[#ARG_NUM] \{\
-. UNDERSCORE "\\*[$CHAPTER_TITLE_\\n[#ARG_NUM]]"
-. if \\n[#ARG_NUM]>1 .as PDF_BM " \"
-. as PDF_BM \\*[$CHAPTER_TITLE_\\n[#ARG_NUM]]
-. \}
+. vs \\n[.v]u*2u
+. sp -1.5
+. while \\n[#CHAPTER_TITLE_NUM]>=\\n[#ARG_NUM] \{\
+. UNDERSCORE "\\*[$CHAPTER_TITLE_\\n+[#ARG_NUM]]"
+. if \\n[#ARG_NUM]>1 .as PDF_BM " \"
+. as PDF_BM \\*[$CHAPTER_TITLE_\\n[#ARG_NUM]]
+. \}
. CAPS OFF
-. if \\n[#SINGLE_SPACE]=0 .vs \\n[#DOC_LEAD]u
+. vs
. \}
. el \{\
-. nr #ARG_NUM 0 1
-. while \\n[#CHAPTER_TITLE_NUM]>=\\n+[#ARG_NUM] \{\
-. ie \\n[#\\*[DOC_]COVER_TITLE_COLOR]=1 \{\
-. PRINT \
-\m[\\*[$\\*[DOC_]COVER_TITLE_COLOR]]\\*[$CHAPTER_TITLE_\\n[#ARG_NUM]]\m[]
-. \}
-. el .PRINT \\*[$CHAPTER_TITLE_\\n[#ARG_NUM]]
-. if \\n[#ARG_NUM]>1 .as PDF_BM " \"
-. as PDF_BM \\*[$CHAPTER_TITLE_\\n[#ARG_NUM]]
-. \}
+. ds $PRFX CHAPTER_
+. DO_TITLE
+. rm $PRFX
. \}
. PDF_BOOKMARK 1 \\*[$PDF_\\*[DOC_]COVER_LABEL] \\*[PDF_BM]
-.\" . PDF_TITLE \\*[PDF_BM]
. \}
+.\" Chapter + chapter title
. if \\n[#\\*[DOC_]COVER_TITLE]=5 \{\
. ie \\n[#PRINT_STYLE]=1 \{\
. CAPS
-. PRINT \\*[$CHAPTER_STRING] \\*[$CHAPTER]
+. UNDERSCORE "\\*[$CHAPTER_STRING] \\*[$CHAPTER]
. CAPS OFF
. \}
-. el \{\
-. ie \\n[#\\*[DOC_]COVER_TITLE_COLOR]=1 \{\
-. PRINT \
-\m[\\*[$\\*[DOC_]COVER_TITLE_COLOR]]\\*[$CHAPTER_STRING] \\*[$CHAPTER]\m[]
-. \}
-. el .PRINT \\*[$CHAPTER_STRING] \\*[$CHAPTER]
-. \}
+. el .DO_CHAPTER
. if !'\\*[$CHAPTER_TITLE_1]'' \{\
. ie \\n[#PRINT_STYLE]=1 \{\
. ie \\n[#SINGLE_SPACE]=0 .vs \\n[#DOC_LEAD]u/2u
@@ -7024,253 +7054,265 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. sp
. nr #ARG_NUM 0 1
. while \\n[#CHAPTER_TITLE_NUM]>=\\n+[#ARG_NUM] \{\
-. UNDERSCORE "\\*[$CHAPTER_TITLE_\\n[#ARG_NUM]]"
+. PRINT "\\*[$CHAPTER_TITLE_\\n[#ARG_NUM]]"
. if \\n[#ARG_NUM]>1 .as PDF_BM " \"
. as PDF_BM \\*[$CHAPTER_TITLE_\\n[#ARG_NUM]]
. \}
. if \\n[#SINGLE_SPACE]=0 .vs \\n[#DOC_LEAD]u
. \}
. el \{\
-. fam \\*[$\\*[DOC_]COVER_CHAPTER_TITLE_FAM]
-. ft \\*[$\\*[DOC_]COVER_CHAPTER_TITLE_FT]
-. ps \\*[$\\*[DOC_]COVER_CHAPTER_TITLE_PT_SIZE]
-. ALD \\n[.v]u/4u \"Put a little space before the chapter title
-. nr #ARG_NUM 0 1
-. while \\n[#CHAPTER_TITLE_NUM]>=\\n+[#ARG_NUM] \{\
-. ie \\n[#\\*[DOC_]COVER_TITLE_COLOR]=1 \{\
-. PRINT \
-\m[\\*[$\\*[DOC_]COVER_TITLE_COLOR]]\\*[$CHAPTER_TITLE_\\n[#ARG_NUM]]\m[]
-. \}
-. el .PRINT \\*[$CHAPTER_TITLE_\\n[#ARG_NUM]]
-. if \\n[#ARG_NUM]>1 .as PDF_BM " \"
-. as PDF_BM \\*[$CHAPTER_TITLE_\\n[#ARG_NUM]]
-. \}
+. ds $PRFX CHAPTER_
+. if \\n[#PRINT_STYLE]=2 .nr #CHAPTER+TITLE 1
+. if !'\\*[$\\*[DOC_]COVER_CHAPTER_TITLE_SPACER]'' \
+. sp \\*[$\\*[DOC_]COVER_CHAPTER_TITLE_SPACER]
+. DO_TITLE
+. rr #CHAPTER+TITLE
+. rm $PRFX
. \}
. \}
. PDF_BOOKMARK 1 \\*[$PDF_\\*[DOC_]COVER_LABEL] \\*[PDF_BM]
-.\" . PDF_TITLE \\*[PDF_BM]
. \}
-. if \\n[#\\*[DOC_]COVER_TITLE]=6 \{\
+.\" (Doc)covertitle
+.\" Titles to (doc)covers that are entered with
+.\" .TITLE DOC_COVER title
+.\" and included in (DOC)COVER with TITLE get treated as
+.\" (DOC_)COVERTITLEs, so we define the appropriate strings and
+.\" registers from their (DOC_)COVER_TITLE equivalents.
+.\"
+. if (\\n[#\\*[DOC_]COVER_TITLE]=6):(\\n[#\\*[DOC_]COVER_TITLE]=7) \{\
+. if \\n[#FROM_\\*[DOC_]COVERTITLE] \{\
+. ds $\\*[DOC_]COVER_\\*[DOC_]COVERTITLE_FAM \
+\\*[$\\*[DOC_]COVER_TITLE_FAM]
+. ds $\\*[DOC_]COVER_\\*[DOC_]COVERTITLE_FT \
+\\*[$\\*[DOC_]COVER_TITLE_FT]
+. ds $\\*[DOC_]COVER_\\*[DOC_]COVERTITLE_COLOR \
+\\*[$\\*[DOC_]COVER_TITLE_COLOR]
+. nr #\\*[DOC_]COVER_\\*[DOC_]COVERTITLE_COLOR \
+\\n[#\\*[DOC_]COVER_TITLE_COLOR]
+. nr #\\*[DOC_]COVER_\\*[DOC_]COVERTITLE_CAPS \
+\\n[#\\*[DOC_]COVER_TITLE_CAPS]
+. nr #\\*[DOC_]COVER_\\*[DOC_]COVERTITLE_SMALLCAPS \
+\\n[#\\*[DOC_]COVER_TITLE_SMALLCAPS]
+. ds $\\*[DOC_]COVER_\\*[DOC_]COVERTITLE_LEAD \
+\\*[$\\*[DOC_]COVER_TITLE_LEAD]
+. ds $\\*[DOC_]COVER_\\*[DOC_]COVERTITLE_SIZE_CHANGE \
+\\*[$\\*[DOC_]COVER_TITLE_SIZE_CHANGE]
+. nr #\\*[DOC_]COVER_\\*[DOC_]COVERTITLE_UNDERLINE \
+\\n[#\\*[DOC_]COVER_TITLE_UNDERLINE]
+. nr #\\*[DOC_]COVER_\\*[DOC_]COVERTITLE_UNDERLINE_WEIGHT \
+\\n[#\\*[DOC_]COVER_TITLE_UNDERLINE_WEIGHT]
+. nr #\\*[DOC_]COVER_\\*[DOC_]COVERTITLE_UNDERLINE_WEIGHT_ADJ \
+\\n[#\\*[DOC_]COVER_TITLE_UNDERLINE_WEIGHT_ADJ]
+. ds $\\*[DOC_]COVER_\\*[DOC_]COVERTITLE_UNDERLINE_GAP \
+\\*[$\\*[DOC_]COVER_TITLE_UNDERLINE_GAP]
+. ds $\\*[DOC_]COVER_\\*[DOC_]COVERTITLE_RULE_GAP \
+\\*[$\\*[DOC_]COVER_TITLE_RULE_GAP]
+. rr #FROM_\\*[DOC_]COVERTITLE
+. \}
. ie \\n[#PRINT_STYLE]=1 \{\
. CAPS
+. vs \\n[.v]u*2u
. nr #ARG_NUM 0 1
-. while \\n[#\\*[DOC_]COVER_TITLE_NUM]>=\\n+[#ARG_NUM] \{\
-. UNDERSCORE "\\*[$\\*[DOC_]COVER_TITLE_\\n[#ARG_NUM]]"
+. while \\n[#\\*[DOC_]COVERTITLE_NUM]>=\\n+[#ARG_NUM] \{\
+. UNDERSCORE "\\*[$\\*[DOC_]COVERTITLE_\\n[#ARG_NUM]]"
. if \\n[#ARG_NUM]>1 .as PDF_BM " \"
-. as PDF_BM \\*[$\\*[DOC_]COVER_TITLE_\\n[#ARG_NUM]]
+. as PDF_BM \\*[$\\*[DOC_]COVERTITLE_\\n[#ARG_NUM]]
. \}
+. vs
. CAPS OFF
. \}
. el \{\
-. nr #ARG_NUM 0 1
-. while \\n[#\\*[DOC_]COVER_TITLE_NUM]>=\\n+[#ARG_NUM] \{\
-. ie \\n[#\\*[DOC_]COVER_TITLE_COLOR]=1 \{\
-. PRINT \
-\m[\\*[$\\*[DOC_]COVER_TITLE_COLOR]]\
-\\*[$\\*[DOC_]COVER_TITLE_\\n[#ARG_NUM]]\m[]
-. \}
-. el .PRINT \\*[$\\*[DOC_]COVER_TITLE_\\n[#ARG_NUM]]
-. if \\n[#ARG_NUM]>1 .as PDF_BM " \"
-. as PDF_BM \\*[$\\*[DOC_]COVER_TITLE_\\n[#ARG_NUM]]
-. \}
+. ds $PRFX \\*[DOC_]COVER
+. DO_TITLE
+. rm $PRFX
. \}
. PDF_BOOKMARK 1 \\*[$PDF_\\*[DOC_]COVER_LABEL] \\*[PDF_BM]
-.\" . PDF_TITLE \\*[PDF_BM]
-. \}
-. if \\n[#\\*[DOC_]COVER_TITLE] \{\
-. nr PDFHREF.VIEW.LEADING \\n[PDFHREF.VIEW.LEADING.H]
-. rr PDFHREF.VIEW.LEADING.H
. \}
+. ie !'\\*[DOC_]'' \
+. if !\\n[#DOC_COVER_TITLE] .PDF_BOOKMARK 1 Cover page
+. el \
+. if !\\n[#COVER_TITLE] .PDF_BOOKMARK 1 Title page
+. rr #\\*[DOC_]COVER_TITLE
+.\" Subtitle
. if \\n[#\\*[DOC_]COVER_SUBTITLE]=1 \{\
-. fam \\*[$\\*[DOC_]COVER_SUBTITLE_FAM]
-. ft \\*[$\\*[DOC_]COVER_SUBTITLE_FT]
-. ps \\*[$\\*[DOC_]COVER_SUBTITLE_PT_SIZE]
-. if \\n[#PRINT_STYLE]=1 \{\
-. TYPEWRITER
-. ie \\n[#SINGLE_SPACE]=0 .vs \\n[#DOC_LEAD]u/2u
-. el .vs \\n[#DOC_LEAD]u
-. sp
-. \}
-. if \\n[#\\*[DOC_]COVER]=1 \{\
-. ie !'\\*[$SUBTITLE_\\*[DOC_]COVER_1]'' \{\
-. nr #SUBTITLES \\n[#SUBTITLE_\\*[DOC_]COVER_NUM]
-. nr #NEXT_SUBTITLE 0 1
-. while \\n[#SUBTITLES]>\\n[#NEXT_SUBTITLE] \{\
-. ie \\n[#\\*[DOC_]COVER_SUBTITLE_COLOR]=1 \{\
-. PRINT \
-\m[\\*[$\\*[DOC_]COVER_SUBTITLE_COLOR]]\
-\\*[$SUBTITLE_\\*[DOC_]COVER_\\n+[#NEXT_SUBTITLE]]\m[]
-. \}
-. el .PRINT \
-\\*[$SUBTITLE_\\*[DOC_]COVER_\\n+[#NEXT_SUBTITLE]]
-. \}
-. \}
-. el \{\
-. nr #SUBTITLES \\n[#SUBTITLE_NUM]
-. nr #NEXT_SUBTITLE 0 1
-. while \\n[#SUBTITLES]>\\n[#NEXT_SUBTITLE] \{\
-. ie \\n[#\\*[DOC_]COVER_SUBTITLE_COLOR]=1 \{\
-. PRINT \
-\m[\\*[$\\*[DOC_]COVER_SUBTITLE_COLOR]]\\*[$SUBTITLE_\\n+[#NEXT_SUBTITLE]]\m[]
-. \}
-. el .PRINT \\*[$SUBTITLE_\\n+[#NEXT_SUBTITLE]]
-. \}
+. ie \\n[#PRINT_STYLE]=1 \{\
+. if !'\\*[$\\*[DOC_]COVER_SUBTITLE_1]'' \
+. ds $PRFX \\*[DOC_]COVER_
+. sp 2
+. nr #ARG_NUM 0 1
+. while \\n[#\\*[$PRFX]SUBTITLE_NUM]>=\\n+[#ARG_NUM] \{\
+. PRINT "\\*[$\\*[$PRFX]SUBTITLE_\\n[#ARG_NUM]]"
. \}
+. rm $PRFX
. \}
-. if \\n[#PRINT_STYLE]=1 \{\
-. if \\n[#SINGLE_SPACE]=0 .vs
+. el \{\
+. ie !'\\*[$\\*[DOC_]COVER_SUBTITLE_1]'' .ds $PRFX \\*[DOC_]COVER_SUB
+. el .ds $PRFX SUB
+. if !'\\*[$\\*[DOC_]COVER_SUBTITLE_SPACER]'' \
+. sp \\*[$\\*[DOC_]COVER_SUBTITLE_SPACER]
+. DO_SUBTITLE
+. rm $PRFX
. \}
. \}
-. if \\n[#PRINT_STYLE]=1 \{\
+. if \\n[#PRINT_STYLE]=1 \
. if !r#\\*[DOC_]COVER_SUBTITLE .sp
-. \}
+.\" Author (plus attribution)
. if \\n[#\\*[DOC_]COVER_AUTHOR]=1 \{\
-. fam \\*[$\\*[DOC_]COVER_AUTHOR_FAM]
-. ft \\*[$\\*[DOC_]COVER_AUTHOR_FT]
-. ps \\*[$\\*[DOC_]COVER_AUTHOR_PT_SIZE]
-. if \\n[#PRINT_STYLE]=1 \{\
-. TYPEWRITER
-. ie \\n[#SINGLE_SPACE]=1 .vs \\n[#DOC_LEAD]u
-. el .vs \\n[#DOC_LEAD]u/2u
+. ie \\n[#PRINT_STYLE]=1 \
. sp
+. el \{\
+. ie !'\\*[$\\*[DOC_]COVER_AUTHOR_LEAD]'' \
+. vs \\*[$\\*[DOC_]COVER_AUTHOR_LEAD]
+. el .vs \\n[#\\*[DOC_]COVER_LEAD]u
+. \}
+. if '\\*[$\\*[DOC_]COVER_ATTRIBUTE_STRING]'' \
+. ds $\\*[DOC_]COVER_ATTRIBUTE_STRING \
+ \\*[$ATTRIBUTE_STRING]
+. ie !\\n[#PRINT_STYLE]=1 \{\
+. fam \\*[$\\*[DOC_]COVER_ATTRIBUTE_FAM]
+. ft \\*[$\\*[DOC_]COVER_ATTRIBUTE_FT]
+. ps \
+\\n[#DOC_PT_SIZE]u\\*[$\\*[DOC_]COVER_ATTRIBUTE_SIZE_CHANGE]
+. if \\n[#\\*[DOC_]COVER_ATTRIBUTE_COLOR]=1 \
+. gcolor \\*[$\\*[DOC_]COVER_ATTRIBUTE_COLOR]
+. if \\n[#\\*[DOC_]COVER_ATTRIBUTE_CAPS]=1 .CAPS
+. if \\n[#\\*[DOC_]COVER_ATTRIBUTE_SMALLCAPS]=1 .SMALLCAPS
+. if !'\\*[$\\*[DOC_]COVER_ATTRIBUTE_SPACER]'' \
+. sp \\*[$\\*[DOC_]COVER_ATTRIBUTE_SPACER]
+. ie \\n[#\\*[DOC_]COVER_ATTRIBUTE_UNDERLINE] \{\
+. ds $TITLE_TYPE \\*[DOC_]COVER_ATTRIBUTE
+. ie \\n[#\\*[DOC_]COVER_ATTRIBUTE_UNDERLINE]=2 \
+. UNDERSCORE2 \\*[$\\*[DOC_]COVER_ATTRIBUTE_UNDERLINE_GAP] \
+\\*[$\\*[DOC_]COVER_ATTRIBUTE_RULE_GAP] "\\*[$\\*[DOC_]COVER_ATTRIBUTE_STRING]"
+. el .UNDERSCORE \\*[$\\*[DOC_]COVER_ATTRIBUTE_STRING]
+. \}
+. el .PRINT "\\*[$\\*[DOC_]COVER_ATTRIBUTE_STRING]"
+. SMALLCAPS off
+. CAPS off
+. if \\n[#\\*[DOC_]COVER_ATTRIBUTE_COLOR]=1 \
+. gcolor
. \}
-. ie d$ATTRIBUTE_STRING_DO_CCOVER \{\
-. ie \\n[#\\*[DOC_]COVER_ATTRIBUTE_COLOR]=1 \{\
-. PRINT \
-\&\m[\\*[$\\*[DOC_]COVER_ATTRIBUTE_COLOR]]\
-\\*[$ATTRIBUTE_STRING_\\*[DOC_]COVER]\m[]
-. \}
-. el .PRINT \&\\*[$ATTRIBUTE_STRING_\\*[DOC_]COVER]
-. \}
+. el \
+. PRINT "\\*[$\\*[DOC_]COVER_ATTRIBUTE_STRING]"
+. ie \\n[#PRINT_STYLE]=1 .sp
. el \{\
-. if d$ATTRIBUTE_STRING \{\
-. ie \\n[#\\*[DOC_]COVER_ATTRIBUTE_COLOR]=1 \{\
-. PRINT \
-\&\m[\\*[$\\*[DOC_]COVER_ATTRIBUTE_COLOR]]\\*[$ATTRIBUTE_STRING]\m[]
-. \}
-. el .PRINT \&\\*[$ATTRIBUTE_STRING]
-. \}
+. if !'\\*[$\\*[DOC_]COVER_AUTHOR_SPACER]'' \
+. sp \\*[$\\*[DOC_]COVER_AUTHOR_SPACER]
. \}
-. PRINT_AUTHORS
+. DO_AUTHORS
+. rm $PRFX
. \}
-. fam \\*[$\\*[DOC_]COVER_DOCTYPE_FAM]
-. ft \\*[$\\*[DOC_]COVER_DOCTYPE_FT]
-. ps \\*[$\\*[DOC_]COVER_DOCTYPE_PT_SIZE]
-. sp
+.\" Named doctype string
. if \\n[#DOC_TYPE]=3 \{\
. if \\n[#\\*[DOC_]COVER_DOCTYPE]=1 \{\
. ie \\n[#PRINT_STYLE]=1 \{\
. TYPEWRITER
-. vs \\n[#DOC_LEAD]u
-. UNDERSCORE2 "\\*[$DOC_TYPE]"
+. sp 1.5
+. UNDERSCORE2 3p 2p "\\*[$DOC_TYPE]
. \}
. el \{\
-. nr #FROM_\\*[DOC_]COVER 1
-. ie \\n[#\\*[DOC_]COVER_DOCTYPE_COLOR]=1 \{\
-. COLOR \\*[$\\*[DOC_]COVER_DOCTYPE_COLOR]
-. ie \\n[#\\*[DOC_]COVER_UNDERLINE]=1 \
-. UNDERSCORE \\*[$\\*[DOC_]COVER_UNDERLINE_GAP]
"\\*[$DOC_TYPE]"
-. el .PRINT "\\*[$DOC_TYPE]"
-. \}
-. el \{\
-. ie \\n[#\\*[DOC_]COVER_UNDERLINE]=1 \
-. UNDERSCORE \
-\\*[$\\*[DOC_]COVER_UNDERLINE_GAP] "\\*[$DOC_TYPE]"
-. el .PRINT "\\*[$DOC_TYPE]"
-. \}
-. rr #FROM_\\*[DOC_]COVER
-. \}
+. fam \\*[$\\*[DOC_]COVER_DOCTYPE_FAM]
+. ft \\*[$\\*[DOC_]COVER_DOCTYPE_FT]
+. ps \
+\\n[#DOC_PT_SIZE]u\\*[$\\*[DOC_]COVER_DOCTYPE_SIZE_CHANGE]
+. if \\n[#\\*[DOC_]COVER_DOCTYPE_COLOR]=1 \
+. gcolor \\*[$\\*[DOC_]COVER_DOCTYPE_COLOR]
+. sp
+. if \\n[#\\*[DOC_]COVER_DOCTYPE_CAPS]=1 .CAPS
+. if \\n[#\\*[DOC_]COVER_DOCTYPE_SMALLCAPS]=1 .SMALLCAPS
+. if !'\\*[$\\*[DOC_]COVER_DOCTYPE_SPACER]'' \
+. sp \\*[$\\*[DOC_]COVER_DOCTYPE_SPACER]
+. ie \\n[#\\*[DOC_]COVER_DOCTYPE_UNDERLINE] \{\
+. ds $TITLE_TYPE \\*[DOC_]COVER_DOCTYPE
+. ie \\n[#\\*[DOC_]COVER_DOCTYPE_UNDERLINE]=2 \
+. UNDERSCORE2 \\*[$\\*[DOC_]COVER_DOCTYPE_UNDERLINE_GAP] \
+\\*[$\\*[DOC_]COVER_DOCTYPE_RULE_GAP] "\\*[$DOC_TYPE]"
+. el .UNDERSCORE "\\*[$DOC_TYPE]"
+. \}
+. el .PRINT "\\*[$DOC_TYPE]"
+. SMALLCAPS off
+. CAPS off
+. if \\n[#\\*[DOC_]COVER_DOCTYPE_COLOR]=1 \
+. gcolor
+. \}
+. \}
+. \}
+.\" Covertext
+. if \\n[#\\*[DOC_]COVERTEXT]=1 \{\
+. nr #DOING_COVERTEXT 1
+. if !\\n[#\\*[DOC_]COVERTEXT_START_POS] .sp
+. if \\n[#\\*[DOC_]COVERTEXT]=1 \{\
+. ev \\*[DOC_]COVERTEXT
+. nf
+. \\*[DOC_]COVER_TEXT
+. ev
. \}
+. rr #\\*[DOC_]COVERTEXT
+. rm \\*[DOC_]COVER_TEXT
+. rr #DOING_COVERTEXT
+. rr #\\*[DOC_]COVERTEXT_START_POS
. \}
. sp |\\n[#VISUAL_B_MARGIN]u
-. ie \\n[#PRINT_STYLE]=1 \{\
-. TYPEWRITER
-. ie \\n[#SINGLE_SPACE]=1 .vs \\n[#DOC_LEAD]u
-. el .vs \\n[#DOC_LEAD]u/2u
-. sp
-. \}
+.\" Copyright
+. ie \\n[#PRINT_STYLE]=1 \
+. if !\\n[#SINGLE_SPACE] .sp
. el \{\
. fam \\*[$\\*[DOC_]COVER_COPYRIGHT_FAM]
. ft \\*[$\\*[DOC_]COVER_COPYRIGHT_FT]
-. ps \\*[$\\*[DOC_]COVER_COPYRIGHT_PT_SIZE]
-. vs \\n[.ps]u+\\n[#\\*[DOC_]COVER_MISC_AUTOLEAD]u
+. ps \\n[#DOC_PT_SIZE]u\\*[$\\*[DOC_]COVER_COPYRIGHT_SIZE_CHANGE]
. nr #COPYRIGHT_V_ADJ \\n[#DOC_LEAD]-\\n[.v]
. sp \\n[#COPYRIGHT_V_ADJ]u
. rr #COPYRIGHT_V_ADJ
. \}
. if \\n[#\\*[DOC_]COVER_COPYRIGHT]=1 \{\
-. if !'\\*[$COPYRIGHT_DOCCOVER]'' \{\
-. ds $SAVED_COPYRIGHT \\*[$COPYRIGHT]
-. ds $COPYRIGHT \\*[$COPYRIGHT_DOCCOVER]
-. \}
. QUAD \\*[$\\*[DOC_]COVER_COPYRIGHT_QUAD]
-. ie \\n[#\\*[DOC_]COVER_COPYRIGHT_COLOR]=1 \{\
-. PRINT \m[\\*[$\\*[DOC_]COVER_COPYRIGHT_COLOR]]\\*[$COPYRIGHT]\m[]
-. \}
-. el .PRINT \\*[$COPYRIGHT]
-. if d$SAVED_COPYRIGHT .ds $COPYRIGHT \\*[$SAVED_COPYRIGHT]
+. if \\n[#\\*[DOC_]COVER_COPYRIGHT_COLOR]=1 \
+. gcolor \\*[$\\*[DOC_]COVER_COPYRIGHT_COLOR]
+. PRINT \\*[$\\*[DOC_]COVER_COPYRIGHT]
+. if \\n[#\\*[DOC_]COVER_COPYRIGHT_COLOR]=1 \
+. gcolor
. \}
-. br
+. sp |\\n[#VISUAL_B_MARGIN]u
+.\" Misc
. if \\n[#\\*[DOC_]COVER_MISC]=1 \{\
. if \\n[#PRINT_STYLE]=2 \{\
. fam \\*[$\\*[DOC_]COVER_MISC_FAM]
. ft \\*[$\\*[DOC_]COVER_MISC_FT]
-. ps \\*[$\\*[DOC_]COVER_MISC_PT_SIZE]
-. \}
-. QUAD \\*[$\\*[DOC_]COVER_MISC_QUAD]
-. ie !'\\*[$MISC_\\*[DOC_]COVER_1]'' \{\
-. nr #MISCS \\n[#MISC_\\*[DOC_]COVER_NUM]
+. ps \\n[#DOC_PT_SIZE]u\\*[$\\*[DOC_]COVER_MISC_SIZE_CHANGE]
+. vs \\*[$\\*[DOC_]COVER_MISC_LEAD]
+. if \\n[#\\*[DOC_]COVER_MISC_COLOR]=1 \
+. gcolor \\*[$\\*[DOC_]COVER_MISC_COLOR]
+. \}
+. ie !'\\*[$\\*[DOC_]COVER_MISC_1]'' \{\
+. QUAD \\*[$\\*[DOC_]COVER_MISC_QUAD]
+. da MISC_DIV
. nr #NEXT_MISC 0 1
-. while \\n[#MISCS]>\\n[#NEXT_MISC] \{\
-. ie \\n[#\\*[DOC_]COVER_MISC_COLOR]=1 \{\
-. da MISC_DIV
-. PRINT \
-\m[\\*[$\\*[DOC_]COVER_MISC_COLOR]]\\*[$MISC_\\*[DOC_]COVER_\\n+[#NEXT_MISC]]\m[]
-. br
-. da
-. rm $MISC_\\*[DOC_]COVER_\\n[#NEXT_MISC]
-. rm $MISC_\\n[#NEXT_MISC]
-. \}
-. el \{\
-. da MISC_DIV
-. PRINT \\*[$MISC_\\*[DOC_]COVER_\\n+[#NEXT_MISC]]
-. br
-. da
-. rm $MISC_\\*[DOC_]COVER_\\n[#NEXT_MISC]
-. rm $MISC_\\n[#NEXT_MISC]
-. \}
+. while \\n[#\\*[DOC_]COVER_MISC_LINES]>=\\n+[#NEXT_MISC] \{\
+. nop \\*[$\\*[DOC_]COVER_MISC_\\n[#NEXT_MISC]]
+. br
. \}
-. rm $MISC_\\n+[#NEXT_MISC]
+. da
. \}
. el \{\
-. nr #MISCS \\n[#MISC_NUM]
+. QUAD \\*[$MISC_QUAD]
+. da MISC_DIV
. nr #NEXT_MISC 0 1
-. while (\\n[#MISCS]>=\\n+[#NEXT_MISC]) \{\
-. ie \\n[#\\*[DOC_]COVER_MISC_COLOR]=1 \{\
-. da MISC_DIV
-. PRINT \
-\m[\\*[$\\*[DOC_]COVER_MISC_COLOR]]\\*[$MISC_\\n[#NEXT_MISC]]\m[]
-. br
-. da
-. \}
-. el \{\
-. da MISC_DIV
-. PRINT \\*[$MISC_\\n[#NEXT_MISC]]
-. br
-. da
-. \}
-. nr #MISC_DEPTH +\\n[dn]
+. while \\n[#MISC_LINES]>=\\n+[#NEXT_MISC] \{\
+. nop \\*[$MISC_\\n[#NEXT_MISC]]
+. br
. \}
+. da
. \}
-. nr #MISC_DEPTH -\\n[#DOC_LEAD]
-. sp |\\n[#VISUAL_B_MARGIN]u-\\n[#MISC_DEPTH]u
+. nr #MISC_V_ADJ \\n[#DOC_LEAD]-\\n[.v]
+. sp \\n[#MISC_V_ADJ]u
+. sp -\\n[dn]u+1
. nf
. MISC_DIV
+. if \\n[#MISC_COLOR]=1 .gcolor
+. if \\n[#\\*[DOC_]COVER_MISC_COLOR]=1 .gcolor
. rm MISC_DIV
. rr #MISC_DEPTH
. \}
-. if '\\$0'DO_COVER' .nr #COVER_END 1
-. if '\\$0'DO_DOC_COVER' .nr #DOC_COVER_END 1
. if \\n[TOC.RELOCATE]==1 \{\
. if !\\n[#COVER_BLANKPAGE] \
. if !rTOC_BH .TOC_AFTER_HERE
@@ -7293,31 +7335,18 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. EOL
. TRAP
. NEWPAGE
+. if '\\*[$COVER_TYPE]'DOC_COVER_' .ds DOC DOC
+. rm $COVER_TYPE
. if \\n[#PAGINATION_WAS_ON]=1 .nr % +1
-. if \\n[#DOC_COVER_END]=1 \{\
-. ie \\n[#DOC_COVER_BLANKPAGE]=1 \{\
-. if \\n[TOC.RELOCATE] \
-. if !\\n[#TOC_BH] .TOC_AFTER_HERE
-. NEWPAGE
-. rr #DOC_COVER_BLANKPAGE
-. if !\\n[#DOCCOVERS_COUNT]=1 .nr % -2
-. \}
-. el \
-. if !\\n[#DOCCOVERS_COUNT]=1 .nr #PAGE_NUM_ADJ -1
-. rr #DOC_COVER_END
-. \}
-. if \\n[#COVER_END]=1 \{\
-. ie \\n[#COVER_BLANKPAGE]=1 \{\
-. if \\n[TOC.RELOCATE] \
-. if !\\n[TOC_BH] .TOC_AFTER_HERE
-. NEWPAGE
-. rr #COVER_BLANKPAGE
-. if !\\n[#COVERS_COUNT]=1 .nr % -2
-. \}
-. el \
-. if !\\n[#COVERS_COUNT]=1 .nr #PAGE_NUM_ADJ -1
-. rr #COVER_END
+. ie \\n[#\\*[DOC]_COVER_BLANKPAGE]=1 \{\
+. if \\n[TOC.RELOCATE] \
+. if !\\n[#TOC_BH] .TOC_AFTER_HERE
+. NEWPAGE
+. rr #\\*[DOC]_COVER_BLANKPAGE
+. if !\\n[#\\*[DOC]COVERS_COUNT]=1 .nr % -2
. \}
+. el \
+. if !\\n[#\\*[DOC]COVERS_COUNT]=1 .nr #PAGE_NUM_ADJ -1
. if !'\\n[.ev]'0' .ev
. if \\n[#PAGINATION_WAS_ON] \{\
. rr #PAGINATION_WAS_ON
@@ -7341,7 +7370,25 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. if \\n[#RECTO_VERSO] .nr #RV_POST_COVER 1
.END
\#
-\# Macro to begin document processing
+\# +++START THE DOCUMENT+++
+\#
+\# THE START MACRO
+\# ---------------
+\# *Arguments:
+\# <none>
+\# *Function:
+\# Macro to start document processiong. Reads in default document
+\# style parameters and any parameters the user has changed before
+\# issuing START. Using the information gathered in the opening
+\# macros, prints appropriate title (or chapter #), subtitle,
+\# author and document type (if appropriate).
+\# *Notes:
+\# The .PRINT \& (zero-width character) is required to get the
+\# subsequent .sp request to work as advertised.
+\#
+\# The overall document line length, family, and point-size
+\# are stored in #DOC_L_LENGTH, $DOC_FAM, and #DOC_PT_SIZE for
+\# use in the HEADER and FOOTER macros.
\#
.MAC START END
. nr #DOCS 1
@@ -7357,12 +7404,11 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. ta \\n[.l]u
. sp |1i-1v
. CENTER
-. PRINT "You neglected to enter a PRINTSTYLE"
-. fl
+. PRINT "You neglected to enter a PRINTSTYLE."
. ab [mom]: PRINTSTYLE missing. Aborting '\\n[.F]'.
. \}
. if \\n[#LINENUMBERS]=1 \{\
-. nn
+. nm
. NUMBER_LINES OFF
. nr #LINENUMBERS 2
. \}
@@ -7386,29 +7432,12 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. if address@hidden .nr @R_MARGIN \\n[#DOC_R_MARGIN]
.\" Covers and doc covers
. if \\n[#DOC_COVERS]=1 \{\
-. if \\n[#DOC_COVER]=1 \{\
-. DO_DOC_COVER
-. rr #DOC_COVER
-. rr #DOC_COVER_TITLE
-. rr #DOC_COVER_SUBTITLE
-. rr #DOC_COVER_AUTHOR
-. rr #DOC_COVER_DOCTYPE
-. rr #DOC_COVER_COPYRIGHT
-. rr #DOC_COVER_MISC
-. \}
+. if \\n[#DOC_COVER]=1 .DO_DOC_COVER
. \}
. if \\n[#COVERS]=1 \{\
-. if \\n[#COVER]=1 \{\
-. DO_COVER
-. rr #COVER
-. rr #COVER_TITLE
-. rr #COVER_SUBTITLE
-. rr #COVER_AUTHOR
-. rr #COVER_DOCTYPE
-. rr #COVER_COPYRIGHT
-. rr #COVER_MISC
-. \}
+. if \\n[#COVER]=1 .DO_COVER
. \}
+. nr PDFHREF.VIEW.LEADING \\n[PDFHREF.VIEW.LEADING.T]
. if !\\n[#TOC] .RV_HARD_SET_MARGINS
. if \\n[#COLUMNS] .COLUMNS \\n[#NUM_COLS] \\n[#GUTTER]u
.\" Collect TITLE for TOC.
@@ -7443,7 +7472,6 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. rm $TOC_AUTHORS
. \}
. \}
-. sp |\\n[#DOCHEADER_ADVANCE]u-\\n[#DOC_LEAD]u
. if !'\\*[$TOC_TITLE_ITEM]'' \
. PDF_BOOKMARK 1 \\*[$TOC_TITLE_ITEM]
. as $TOC_TITLE_ITEM \|
@@ -7465,6 +7493,7 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. rr #COLLATE
. rr #PAGINATION_STATE
.\" End collate stuff
+. sp |\\n[#DOCHEADER_ADVANCE]u-\\n[#DOC_LEAD]u
. ie \\n[#DOC_HEADER]=0 \{\
. if \\n[.ns] .rs
. if \\n[#DOC_TYPE]=4 \
@@ -7500,171 +7529,57 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. nr #AUTOLEAD_VALUE \\n[#SAVED_AUTOLEAD_VALUE]
. \}
. nr #DOCHEADER_LEAD \\n[#LEAD]
+. vpt 0
.\" Default doctype
. if \\n[#DOC_TYPE]=1 \{\
-. if \\n[.ns] .rs
-. ev DOCHEADER
-. if \\n[#DOCHEADER_COLOR]=1 \{\
-. nf
-\m[\\*[$DOCHEADER_COLOR]]
-. EOL
+. if \\n[.ns] \{\
+. rs
+. nop \&
+. sp -1
. \}
+. ev DOCHEADER
+. evc 0
. L_MARGIN \\n[#DOC_L_MARGIN]u
. LL \\n[#DOC_L_LENGTH]u
. ta \\n[.l]u
-. if \\n[#PRINT_STYLE]=1 \{\
-. DOC_HEADER_QUAD
-. TYPEWRITER
-. if !\\n[#SINGLE_SPACE] \{\
-. vs (\\n[#DOC_LEAD]u/2u)+(\\n[.v]u/3u)
-. sp |\\n[#T_MARGIN]u-1v
-. \}
-. if !'\\*[$TITLE_1]'' \{\
-. CAPS
-. nr #ARG_NUM 0 1
-. while \\n[#TITLE_NUM]>=\\n+[#ARG_NUM] \{\
-. UNDERSCORE 3p "\\*[$TITLE_\\n[#ARG_NUM]]"
-. \}
-. CAPS OFF
-. \}
-. if !'\\*[$SUBTITLE]'' \{\
-. sp
-. nr #ARG_NUM 0 1
-. while \\n[#SUBTITLE_NUM]>=\\n+[#ARG_NUM] \{\
-. UNDERSCORE 3p "\\*[$SUBTITLE_\\n[#ARG_NUM]]"
-. \}
-. \}
-. if !'\\*[$AUTHOR_1]'' \{\
-. sp
-. PRINT \&\\*[$ATTRIBUTE_STRING]
-. nr #AUTHORS \\n[#AUTHOR_NUM]
-. nr #NEXT_AUTHOR 0 1
-. if !\\n[#SINGLE_SPACE] .vs (\\n[#DOC_LEAD]u/2u)+(\\n[.v]u/3u)
-. while \\n[#AUTHORS]>\\n[#NEXT_AUTHOR] \{\
-. PRINT \\*[$AUTHOR_\\n+[#NEXT_AUTHOR]]
-. \}
-. \}
-. \}
-. if \\n[#PRINT_STYLE]=2 \{\
-. DEFAULT_DOCHEADER
-. \}
+. if \\n[#PRINT_STYLE]=1 .DEFAULT_DOCHEADER_TYPEWRITE
+. if \\n[#PRINT_STYLE]=2 .DEFAULT_DOCHEADER
. ev
. \}
.\" Chapter doctype
. if \\n[#DOC_TYPE]=2 \{\
. if \\n[.ns] .rs
-. ev DOCHEADER
-. if \\n[#DOCHEADER_COLOR]=1 \{\
-. nf
-\m[\\*[$DOCHEADER_COLOR]]
-. EOL
-. \}
-. L_MARGIN \\n[#DOC_L_MARGIN]u
-. LL \\n[#DOC_L_LENGTH]u
-. ta \\n[.l]u
-. if \\n[#PRINT_STYLE]=1 \{\
-. CENTER
-. TYPEWRITER
-. if !\\n[#SINGLE_SPACE] \{\
-. vs (\\n[#DOC_LEAD]u/2u)+(\\n[.v]u/3u)
-. sp |\\n[#T_MARGIN]u-1v
-. \}
-. ie '\\*[$CHAPTER]'' \{\
-. CAPS
-. ie !'\\*[$CHAPTER_TITLE]'' \{\
-. nr #ARG_NUM 0 1
-. while \\n[#CHAPTER_TITLE_NUM]>=\\n+[#ARG_NUM] \{\
-. UNDERSCORE 3p "\\*[$CHAPTER_TITLE_\\n[#ARG_NUM]]"
-. \}
-. \}
-. el \{\
-. CAPS
-. UNDERSCORE 3p "\\*[$CHAPTER_STRING]"
-. \}
-. CAPS OFF
-. RLD 1v
-. \}
-. el \{\
-. CAPS
-. PRINT \\*[$CHAPTER_STRING] \\*[$CHAPTER]
-. CAPS OFF
-. if !'\\*[$CHAPTER_TITLE]'' \{\
-. sp
-. nr #ARG_NUM 0 1
-. while \\n[#CHAPTER_TITLE_NUM]>=\\n+[#ARG_NUM] \{\
-. UNDERSCORE 3p "\\*[$CHAPTER_TITLE_\\n[#ARG_NUM]]"
-. \}
-. \}
-. RLD 1v
-. \}
-. vs \\n[#DOC_LEAD]u
-. if \\n[#SINGLE_SPACE] .sp 2
-. \}
-. if \\n[#PRINT_STYLE]=2 \{\
-. CHAPTER_DOCHEADER
-. di DOCHEADER_DIVERSION \" This diversion is only
-. br \" necessary to find the depth of the
-. CHAPTER_DOCHEADER \" docheader
-. br
-. di
-. nr #DOCHEADER_DEPTH \\n[dn]-\\n[#DOCHEADER_LEAD] \" Storing the
depth (height) of the diversion
-. \" in
#DOCHEADER_DEPTH
-. rm DOCHEADER_DIVERSION \" Removing the
diversion macro
-. \}
+. ev DOCHEADER
+. evc 0
+. if \\n[#DOCHEADER_COLOR]=1 \
+. gcolor \\*[$DOCHEADER_COLOR]
+. L_MARGIN \\n[#DOC_L_MARGIN]u
+. LL \\n[#DOC_L_LENGTH]u
+. ta \\n[.l]u
+. if \\n[#PRINT_STYLE]=1 .CHAPTER_DOCHEADER_TYPEWRITE
+. if \\n[#PRINT_STYLE]=2 .CHAPTER_DOCHEADER
. ev
. \}
.\" Named
. if \\n[#DOC_TYPE]=3 \{\
-. if \\n[.ns] .rs
-. ev DOCHEADER
-. if \\n[#DOCHEADER_COLOR]=1 \{\
-. nf
-\m[\\*[$DOCHEADER_COLOR]]
-. EOL
+. if \\n[.ns] \{\
+. rs
+. nop \&
+. sp -1
. \}
+. ev DOCHEADER
+. evc 0
+. if \\n[#DOCHEADER_COLOR]=1 \
+. gcolor \\*[$DOCHEADER_COLOR]
. L_MARGIN \\n[#DOC_L_MARGIN]u
. LL \\n[#DOC_L_LENGTH]u
. ta \\n[.l]u
. if \\n[#PRINT_STYLE]=1 \{\
-. CENTER
-. TYPEWRITER
-. if !\\n[#SINGLE_SPACE] \{\
-. vs (\\n[#DOC_LEAD]u/2u)+(\\n[.v]u/3u)
-. sp |\\n[#T_MARGIN]u-1v
-. \}
-. if !'\\*[$TITLE_1]'' \{\
-. CAPS
-. nr #ARG_NUM 0 1
-. while \\n[#TITLE_NUM]>=\\n+[#ARG_NUM] \{\
-. UNDERSCORE 3p "\\*[$TITLE_\\n[#ARG_NUM]]"
-. \}
-. CAPS OFF
-. \}
-. if !'\\*[$SUBTITLE]'' \{\
+. DEFAULT_DOCHEADER_TYPEWRITE
+. if !\\n[#NO_PRINT_DOCTYPE] \{\
. sp
-. nr #ARG_NUM 0 1
-. while \\n[#SUBTITLE_NUM]>=\\n+[#ARG_NUM] \{\
-. UNDERSCORE 3p "\\*[$SUBTITLE_\\n[#ARG_NUM]]"
-. \}
-. \}
-. if !'\\*[$AUTHOR_1]'' \{\
-. sp
-. PRINT \&\\*[$ATTRIBUTE_STRING]
-. nr #AUTHORS \\n[#AUTHOR_NUM]
-. nr #NEXT_AUTHOR 0 1
-. if !\\n[#SINGLE_SPACE] .vs (\\n[#DOC_LEAD]u/2u)+(\\n[.v]u/3u)
-. while \\n[#AUTHORS]>\\n[#NEXT_AUTHOR] \{\
-. PRINT \\*[$AUTHOR_\\n+[#NEXT_AUTHOR]]
-. \}
+. UNDERSCORE2 3p 2p "\\*[$DOC_TYPE]"
. \}
-. ie !\\n[#SINGLE_SPACE] .sp 2
-. el .sp
-. ie \\n[#DOCTYPE_UNDERLINE] \{\
-. UNDERSCORE2 3p "\\*[$DOC_TYPE]"
-. \}
-. el \
-. PRINT "\\*[$DOC_TYPE]"
-. if \\n[#SINGLE_SPACE]=1 .sp
. \}
. if \\n[#PRINT_STYLE]=2 .NAMED_DOCHEADER
. ev
@@ -7689,26 +7604,34 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. ta \\n[.l]u
. \}
. \}
+. nr #NO_PRINT_AUTHOR 1
+. nr #NO_PRINT_DOCTYPE 1
. \}
. vs \\n[#DOC_LEAD]u
+. if \\n[#PRINT_STYLE]=1 \
+. if \\n[#SINGLE_SPACE]=1 .sp
. if \\n[#ADJ_DOC_LEAD]=1 \{\
. ie \\n[#ADVANCE_FROM_TOP]=0 \
. if \\n[#DOC_HEADER]=1 .SHIM
. el .rr #ADVANCE_FROM_TOP
. \}
. mk dc
+. FAMILY \\*[$DOC_FAM]
. QUAD \\*[$DOC_QUAD]
. CLEANUP_DEFAULTS
. nr #START_FOR_FOOTERS 1
. if !\\n[#DOC_TYPE]=4 .em TERMINATE
. if \\n[#LINENUMBERS]=2 \{\
-. NUMBER_LINES RESUME
+. ie \\n[#PER_SECTION] .NUMBER_LINES 1
+. el .NUMBER_LINES RESUME
. nr #LINENUMBERS 1
. \}
. if \\n[#RUN_ON]=1 \{\
. if \\n[#FN_MARKER_STYLE]=1 .RUNON_WARNING
. if \\n[#FN_MARKER_STYLE]=2 .RUNON_WARNING
. \}
+. nr PDFHREF.VIEW.LEADING \\n[PDFHREF.VIEW.LEADING.H]
+. vpt
.END
\#
.MAC CLEANUP_DEFAULTS END
@@ -7926,7 +7849,7 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
\# *Argument:
\# None
\# *Function:
-\# Advances to the next "valid" baseline.
+\# Advances to the next valid baseline.
\# *Notes:
\# If a user plays around with spacing in a doc (say, with ALD),
\# it isn't easy to get mom back on track so she can achieve
@@ -7989,10 +7912,16 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. if !'\\$1'COVER' .nr #NEITHER 1
. if !'\\$1'COVER' \
. if !'\\$1'DOC_COVER' .nr #NEITHER 1
-. if '\\$1'DOC_COVER' \
-. ds $ATTRIBUTE_STRING_DOC_COVER \\$2
-. if '\\$1'COVER' \
-. ds $ATTRIBUTE_STRING_COVER \\$2
+. if '\\$1'DOC_COVER' \{\
+. ds $DOC_COVER_ATTRIBUTE_STRING \\$2
+. if '\\*[$DOC_COVER_ATTRIBUTE_STRING]'' \
+. ds $DOC_COVER_ATTRIBUTE_STRING \&
+. \}
+. if '\\$1'COVER' \{\
+. ds $COVER_ATTRIBUTE_STRING \\$2
+. if '\\*[$COVER_ATTRIBUTE_STRING]'' \
+. ds $COVER_ATTRIBUTE_STRING \&
+. \}
. if \\n[#NEITHER]=1 \{\
. ds $ATTRIBUTE_STRING \\$1
. rr #NEITHER
@@ -8051,11 +7980,6 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. ds $FINIS_STRING \\$1
.END
\#
-.MAC FINIS_STRING_CAPS END
-. ie '\\$1'' .nr #FINIS_STRING_CAPS 1
-. el .nr #FINIS_STRING_CAPS 0
-.END
-\#
\# ====================================================================
\#
\# +++RECTO/VERSO+++
@@ -8502,22 +8426,36 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. ALD \\n[#DOC_LEAD]u
. CENTER
. if \\n[#FINIS_STRING_CAPS]=1 .CAPS
-. if \\n[#PRINT_STYLE]=1 .PRINT "--\\*[$FINIS_STRING]--
+. if \\n[#PRINT_STYLE]=1 \{\
+. ie !\\n[#FINIS_NO_DASHES] .PRINT "--\\*[$FINIS_STRING]--
+. el .PRINT "\\*[$FINIS_STRING]
+. \}
. if \\n[#PRINT_STYLE]=2 \{\
-. ie \\n[#FINIS_COLOR] \
-. PRINT \
-\m[\\*[$FINIS_COLOR]]\v'-\\n[#EM_ADJUST]u'\[em]\v'+\\n[#EM_ADJUST]u'\
-\\*[$FINIS_STRING]\v'-\\n[#EM_ADJUST]u'\*[FU1]\[em]\m[]\c
-. el .PRINT \
-\v'-\\n[#EM_ADJUST]u'\[em]\v'+\\n[#EM_ADJUST]u'\
-\\*[$FINIS_STRING]\v'-\\n[#EM_ADJUST]u'\*[FU1]\[em]\m[]\c
+. if \\n[#FINIS_COLOR]=1 .gcolor \\*[$FINIS_COLOR]
+. ie !\\n[#FINIS_NO_DASHES] .ds $FINIS_DASH \
+\v'-\\n[#EM_ADJUST]u'\[em]\v'+\\n[#EM_ADJUST]u'
+. el .rm $FINIS_DASH
+. PRINT \
+\\*[$FINIS_DASH]\\*[$FINIS_STRING]\\*[$FINIS_DASH]\c
. \}
. EL
+. if \\n[#FINIS_COLOR]=1 .gcolor
. if \\n[#FINIS_STRING_CAPS]=1 .CAPS OFF
. ev
. pdfsync
.END
\#
+.MAC FINIS_STRING_CAPS END
+. ie '\\$1'' .nr #FINIS_STRING_CAPS 1
+. el .nr #FINIS_STRING_CAPS 0
+.END
+.
+.ALIAS FINIS_CAPS FINIS_STRING_CAPS
+\#
+.MAC FINIS_NO_DASHES END
+. nr #FINIS_NO_DASHES 1
+.END
+\#
\# ====================================================================
\#
\# +++HEADERS/FOOTERS+++
@@ -8587,23 +8525,46 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. ds $HDRFTR_LEFT \\$1
.END
\#
-\# HDRFTR LEFT CAPS
-\# ----------------
+\# HDRFTR <POSITION> CAPS AND SMALLCAPS
+\# ------------------------------------
\# *Argument:
\# <none> | <anything>
\# *Function:
-\# Turns capitalisation of $HDRFTR_LEFT (typically, the author of
-\# the document) on or off.
+\# Turns capitalisation of $HDRFTR_<POSITION> on or off.
\# *Notes:
-\# Default is on.
+\# Default for RIGHT (ie AUTHOR) is on.
\#
-.MAC HDRFTR_LEFT_CAPS END
-. ie '\\$1'' .nr #HDRFTR_LEFT_CAPS 1
+.MAC CAPS_SMALLCAPS_WARNING END
+. tm1 "[mom]: At line \\n[.c], both CAPS and SMALLCAPS have been enabled
for HEADER_\\$1.
+. tm1 " CAPS takes precedence.
+.END
+.
+.MAC _HDRFTR_CAPS END
+. if '\\$0'HEADER_LEFT_CAPS' .ds POSITION LEFT
+. if '\\$0'HEADER_CENTER_CAPS' .ds POSITION CENTER
+. if '\\$0'HEADER_CENTRE_CAPS' .ds POSITION CENTER
+. if '\\$0'HEADER_RIGHT_CAPS' .ds POSITION RIGHT
+. if \\n[#HDRFTR_\\*[POSITION]_SMALLCAPS]=1 \
+. CAPS_SMALLCAPS_WARNING \\*[POSITION]
+. ie '\\$1'' .nr #HDRFTR_\\*[POSITION]_CAPS 1
. el \{\
-. nr #HDRFTR_LEFT_CAPS 0
-. ds $HDRFTR_LEFT_SIZE_CHANGE +0
+. nr #HDRFTR_\\*[POSITION]_CAPS 0
+. ds $HDRFTR_\\*[POSITION]_SIZE_CHANGE +0
. \}
.END
+.
+.MAC _HDRFTR_SMALLCAPS END
+. if '\\$0'HEADER_LEFT_SMALLCAPS' .ds POSITION LEFT
+. if '\\$0'HEADER_CENTER_SMALLCAPS' .ds POSITION CENTER
+. if '\\$0'HEADER_CENTRE_SMALLCAPS' .ds POSITION CENTER
+. if '\\$0'HEADER_RIGHT_SMALLCAPS' .ds POSITION RIGHT
+. if \\n[#HDRFTR_\\*[POSITION]_CAPS]=1 \{\
+. CAPS_SMALLCAPS_WARNING \\*[POSITION]
+. \}
+. ie '\\$1'' .nr #HDRFTR_\\*[POSITION]_SMALLCAPS 1
+. el \
+. nr #HDRFTR_\\*[POSITION]_SMALLCAPS 0
+.END
\#
\# HDRFTR CENTER
\# -------------
@@ -8639,8 +8600,8 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. ds $HDRFTR_CENTER \\$1
.END
\#
-\# HDRFTR CENTER CAPS
-\# ------------------
+\# HDRFTR CENTER CAPS AND SMALLCAPS
+\# --------------------------------
\# *Argument:
\# <none> | <anything>
\# *Function:
@@ -8649,12 +8610,13 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
\# *Notes:
\# Default is on.
\#
-.MAC HDRFTR_CENTER_CAPS END
-. ie '\\$1'' .nr #HDRFTR_CENTER_CAPS 1
-. el \{\
-. nr #HDRFTR_CENTER_CAPS 0
-. ds $HDRFTR_CENTER_SIZE_CHANGE +0
+.MAC HDRFTR_CENTER_SMALLCAPS END
+. if \\n[#HDRFTR_CENTER_SMALLCAPS]=1 \{\
+. CAPS_SMALLCAPS_WARNING CENTER
. \}
+. ie '\\$1'' .nr #HDRFTR_CENTER_SMALLCAPS 1
+. el \
+. nr #HDRFTR_CENTER_SMALLCAPS 0
.END
\#
\# HDRFTR CENTER PADDING
@@ -8675,12 +8637,12 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
\# A unit of measure is required.
\#
.MAC HDRFTR_CENTER_PAD END
-. if '\\$1'LEFT' .nr #HDRFTR_CTR_PAD_LEFT (\\$2)
+. if '\\$1'LEFT' .nr #HDRFTR_CTR_PAD_LEFT (\\$2)
. if '\\$1'RIGHT' .nr #HDRFTR_CTR_PAD_RIGHT (\\$2)
.END
\#
-\# SWITCH HDRFTR CENTER PADDING SIDE - support macro
-\# --------------------------------
+\# SWITCH HDRFTR CENTER PADDING SIDE (support macro)
+\# -------------------------------------------------
\# *Argument:
\# <none>
\# *Function:
@@ -8720,8 +8682,8 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. ds $HDRFTR_RIGHT \\$1
.END
\#
-\# HDRFTR RIGHT CAPS
-\# -----------------
+\# HDRFTR RIGHT CAPS AND SMALLCAPS
+\# -------------------------------
\# *Argument:
\# <none> | <anything>
\# *Function:
@@ -8730,12 +8692,13 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
\# *Notes:
\# Default is on.
\#
-.MAC HDRFTR_RIGHT_CAPS END
-. ie '\\$1'' .nr #HDRFTR_RIGHT_CAPS 1
-. el \{\
-. nr #HDRFTR_RIGHT_CAPS 0
-. ds $HDRFTR_RIGHT_SIZE_CHANGE +0
+.MAC HDRFTR_RIGHT_SMALLCAPS END
+. if \\n[#HDRFTR_RIGHT_SMALLCAPS]=1 \{\
+. CAPS_SMALLCAPS_WARNING RIGHT
. \}
+. ie '\\$1'' .nr #HDRFTR_RIGHT_SMALLCAPS 1
+. el \
+. nr #HDRFTR_RIGHT_SMALLCAPS 0
.END
\#
\# HDRFTR RULE
@@ -8857,7 +8820,7 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. el .nr #HDRFTR_RULE 0
. \}
.END
-\#
+.
.ALIAS HDRFTR_RULE_INTERNAL HDRFTR_RULE
\#
\# HDRFTR PLAIN
@@ -8870,20 +8833,27 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
\# text. Font for the header/footer becomes roman throughout.
\#
.MAC HDRFTR_PLAIN END
-. HDRFTR_FAMILY \\*[$DOC_FAM]
-. HDRFTR_PT_SIZE \\n[#DOC_PT_SIZE]
-. HDRFTR_LEFT_FAMILY \\*[$DOC_FAM]
-. HDRFTR_LEFT_FONT R
-. HDRFTR_LEFT_SIZE +0
-. HDRFTR_LEFT_CAPS OFF
-. HDRFTR_CENTER_FAMILY \\*[$DOC_FAM]
-. HDRFTR_CENTER_FONT R
-. HDRFTR_CENTER_SIZE +0
-. HDRFTR_CENTER_CAPS OFF
-. HDRFTR_RIGHT_FAMILY \\*[$DOC_FAM]
-. HDRFTR_RIGHT_FONT R
-. HDRFTR_RIGHT_SIZE +0
-. HDRFTR_RIGHT_CAPS OFF
+. rm $HDRFTR_FAMILY
+. rm #HDRFTR_PT_SIZE
+. rm $HDRFTR_COLOR
+. rm $HDRFTR_LEFT_FAMILY
+. rm $HDRFTR_LEFT_FONT
+. rm $HDRFTR_LEFT_SIZE_CHANGE
+. rr #HDRFTR_LEFT_CAPS
+. rr #HDRFTR_LEFT_SMALLCAPS
+. rr #HDRFTR_LEFT_COLOR
+. rm $HDRFTR_CENTER_FAMILY
+. rm $HDRFTR_CENTER_FONT
+. rm $HDRFTR_CENTER_SIZE_CHANGE
+. rr #HDRFTR_CENTER_CAPS
+. rr #HDRFTR_CENTER_SMALLCAPS
+. rr #HDRFTR_CENTER_COLOR
+. rm $HDRFTR_RIGHT_FAMILY
+. rm $HDRFTR_RIGHT_FONT
+. rm $HDRFTR_RIGHT_SIZE_CHANGE
+. rr #HDRFTR_RIGHT_CAPS
+. rr #HDRFTR_RIGHT_SMALLCAPS
+. rr #HDRFTR_RIGHT_COLOR
.END
\#
\# SWITCH HDRFTR
@@ -9047,6 +9017,8 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. ds $HDRFTR_RIGHT_SIZE_CHANGE \\*[$HDRFTR_TMP_SIZE_CHANGE_SWITCH]
. nr #HDRFTR_TMP_CAPS_SWITCH \\n[#HDRFTR_LEFT_CAPS]
. nr #HDRFTR_LEFT_CAPS \\n[#HDRFTR_RIGHT_CAPS]
+. nr #HDRFTR_TMP_SMALLCAPS_SWITCH \\n[#HDRFTR_LEFT_SMALLCAPS]
+. nr #HDRFTR_LEFT_SMALLCAPS \\n[#HDRFTR_RIGHT_SMALLCAPS]
. nr #HDRFTR_RIGHT_CAPS \\n[#HDRFTR_TMP_CAPS_SWITCH]
. ds $HDRFTR_TMP_COLOR_SWITCH \\*[$HDRFTR_LEFT_COLOR]
. ds $HDRFTR_LEFT_COLOR \\*[$HDRFTR_RIGHT_COLOR]
@@ -9068,14 +9040,14 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. \}
. if o .RIGHT
. if e .LEFT
-. if \\n[#RECTO_VERSO]=0 .LEFT
+. if \\n[#RECTO_VERSO]=0 .LEFT
. if \\n[#HDRFTR_LEFT_CAPS] .CAPS
. ie '\\*[$HDRFTR_LEFT]'#' .PRINT \\n[#PAGENUMBER]
. el \{\
. ie !'\\*[$HDRFTR_LEFT]'' .PRINT \\*[$HDRFTR_LEFT]
. el .PRINT \&
. \}
-. if \\n[#HDRFTR_LEFT_CAPS] .CAPS OFF
+. if \\n[#HDRFTR_LEFT_CAPS] .CAPS OFF
. CENTER
. if \\n[#HDRFTR_CENTER_CAPS] .CAPS
. rt \\n[y]u
@@ -9089,7 +9061,7 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. if \\n[#HDRFTR_CENTER_CAPS] .CAPS OFF
. if o .LEFT
. if e .RIGHT
-. if \\n[#RECTO_VERSO]=0 .RIGHT
+. if \\n[#RECTO_VERSO]=0 .RIGHT
. if \\n[#HDRFTR_RIGHT_CAPS] .CAPS
. rt \\n[y]u
. ie '\\*[$HDRFTR_RIGHT]'#' .PRINT \\n[#PAGENUMBER]
@@ -9116,6 +9088,7 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. if o .LEFT
. if e .RIGHT
. if \\n[#RECTO_VERSO]=0 .LEFT
+. if \\n[#HDRFTR_LEFT_SMALLCAPS] .SMALLCAPS
. if \\n[#HDRFTR_LEFT_CAPS] .CAPS
. ie '\\*[$HDRFTR_LEFT]'#' \{\
. ie \\n[#HDRFTR_LEFT_COLOR]=1 \
@@ -9133,6 +9106,7 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. el .nop \&
. \}
. if \\n[#HDRFTR_LEFT_CAPS] .CAPS OFF
+. if \\n[#HDRFTR_LEFT_SMALLCAPS] .SMALLCAPS OFF
. fam \\*[$HDRFTR_CENTER_FAM]
. ft \\*[$HDRFTR_CENTER_FT]
. ps \\n[#HDRFTR_PT_SIZE]u\\*[$HDRFTR_CENTER_SIZE_CHANGE]
@@ -9143,6 +9117,7 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. di
. \}
. CENTER
+. if \\n[#HDRFTR_CENTER_SMALLCAPS] .SMALLCAPS
. if \\n[#HDRFTR_CENTER_CAPS] .CAPS
. rt \\n[y]u
. ie '\\*[$HDRFTR_CENTER]'#' \{\
@@ -9163,6 +9138,7 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. el .PRINT \&
. \}
. if \\n[#HDRFTR_CENTER_CAPS] .CAPS OFF
+. if \\n[#HDRFTR_CENTER_SMALLCAPS] .SMALLCAPS OFF
. fam \\*[$HDRFTR_RIGHT_FAM]
. ft \\*[$HDRFTR_RIGHT_FT]
. ps \\n[#HDRFTR_PT_SIZE]u\\*[$HDRFTR_RIGHT_SIZE_CHANGE]
@@ -9175,6 +9151,7 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. if o .RIGHT
. if e .LEFT
. if \\n[#RECTO_VERSO]=0 .RIGHT
+. if \\n[#HDRFTR_RIGHT_SMALLCAPS] .SMALLCAPS
. if \\n[#HDRFTR_RIGHT_CAPS] .CAPS
. rt \\n[y]u
. ie '\\*[$HDRFTR_RIGHT]'#' \{\
@@ -9193,6 +9170,7 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. el .PRINT \&
. \}
. if \\n[#HDRFTR_RIGHT_CAPS] .CAPS OFF
+. if \\n[#HDRFTR_RIGHT_SMALLCAPS] .SMALLCAPS OFF
. \}
. if \\n[#HDRFTR_RULE] .HDRFTR_RULE_INTERNAL
. br
@@ -9456,6 +9434,16 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. \}
. if \\n[#PRINT_STYLE]=2 .sp \\n[#Q_LEAD_DIFF]u
. \}
+. if \\n[#RESET_FN_COUNTERS]=1 \{\
+. rr #RESET_FN_COUNTERS
+. PROCESS_FN_IN_DIVER
+. nr #FN_COUNT \\n[#SAVED_FN_COUNT] 1
+. if \\n[#COLUMNS]=1 .nr #FN_COUNT_FOR_COLS
\\n[#SAVED_FN_COUNT_FOR_COLS] 1
+. ie \\n[#RESET_FN_NUMBER]=1 .nr #FN_NUMBER \\n[#SAVED_FN_NUMBER] 1
+. el .nr #FN_NUMBER \\n[#FN_NUMBER] 1
+. rm FN_IN_DIVER
+. if dRUNON_FN_IN_DIVER .rm RUNON_FN_IN_DIVER
+. \}
. if \\n[#EPIGRAPH] \{\
. ie \\n[#TAB_ACTIVE] .TAB \\n[#CURRENT_TAB]
. el \{\
@@ -9490,10 +9478,10 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. ll \\n[#COL_L_LENGTH]u
. ta \\n[.l]u
. if \\n[#QUOTE] \{\
-. ie \\n[#Q_OFFSET_VALUE] \
-. po +(\\n[#PP_INDENT]u*\\n[#Q_OFFSET_VALUE]u)
+. ie \\n[#\\*[BQ]_OFFSET_VALUE] \
+. po +(\\n[#PP_INDENT]u*\\n[#\\*[BQ]_OFFSET_VALUE]u)
. el \
-. po +\\*[$Q_OFFSET_VALUE]
+. po +\\*[$\\*[BQ]_OFFSET_VALUE]
. \}
. if \\n[#EPIGRAPH] \{\
. if \\n[#EPI_ACTIVE] \{\
@@ -9507,16 +9495,6 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. el .po \\n[#COL_\\n[#COL_NUM]_L_MARGIN]u+\\*[$EPI_OFFSET_VALUE]
. \}
. \}
-. if \\n[#RESET_FN_COUNTERS]=1 \{\
-. rr #RESET_FN_COUNTERS
-. PROCESS_FN_IN_DIVER
-. nr #FN_COUNT \\n[#SAVED_FN_COUNT] 1
-. if \\n[#COLUMNS]=1 .nr #FN_COUNT_FOR_COLS
\\n[#SAVED_FN_COUNT_FOR_COLS] 1
-. ie \\n[#RESET_FN_NUMBER]=1 .nr #FN_NUMBER \\n[#SAVED_FN_NUMBER] 1
-. el .nr #FN_NUMBER \\n[#FN_NUMBER] 1
-. rm FN_IN_DIVER
-. if dRUNON_FN_IN_DIVER .rm RUNON_FN_IN_DIVER
-. \}
. rr #FROM_HEADER
. rr #DEFER_SPACE_ADDED
. if !\\n[#FN_DEPTH] .if r #DIVERTED .rr #DIVERTED
@@ -9579,6 +9557,9 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. rr tbl*interrupted
. \}
. el address@hidden
+. if \\n[#QUOTE]=1 \
+. if '\\*[$Q_QUAD]'LEFT' .po \\n[#Q_OFFSET]u
+. if \\n[#QUOTE]=2 .po \\n[#BQ_OFFSET]u
.END
\#
\# ====================================================================
@@ -9649,6 +9630,10 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
\# FINAL respects PAGENUMBER.
\#
.MAC FOOTER END
+. if \\n[#DOING_COVERTEXT] \{\
+. tm1 "[mom]: COVERTEXT exceeds cover page depth.
+. ab [mom]: Aborting '\\n[.F]'.
+. \}
. vpt 0
. rr #LB_4_HD
. rr #QUOTE_4_HD
@@ -9846,16 +9831,16 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
.END
\#
.MAC PRINT_FOOTER END
-. br
.\" Have to change position of FN_OVERFLOW_TRAP or it screws up the
.\" placement of page numbers (or footers). It's reset to its original
.\" position at the end of the macro.
. if r #SAVED_FOOTER_POS .ch FOOTER \\n[#SAVED_FOOTER_POS]u
. rr #SAVED_FOOTER_POS
+. vpt 0
+. sp -1
. ie (\\n[#FOOTER_MARGIN]+\\n[.v]>\\n[#B_MARGIN]) .nr #SKIP_FOOTER 1
. el \{\
. ev FOOTER
-. vpt 0
. ie n \
. sp |\\n[#PAGE_LENGTH]u-\\n[#FOOTER_MARGIN]u
. el \
@@ -10000,7 +9985,7 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
\#
\# ====================================================================
\#
-\# +++HEADS+++
+\# +++HEADINGS+++
\#
.char \[hd-num-spacer] \0
.char \[parahead-spacer] \~\~
@@ -10023,7 +10008,7 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
.MAC HEADING END
. if !\B'\\$1' \{\
. tm1 "[mom]: The first argument to \\$0 must be a numeric heading level.
-. ab Aborting '\\n[.F]' at \\$0, line \\n[.c].
+. ab [mom]: Aborting '\\n[.F]' at \\$0, line \\n[.c].
. \}
. if r #QUOTE .rr #QUOTE
. if r #END_QUOTE .rr #END_QUOTE
@@ -10072,7 +10057,7 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. if \\n[#NUM_ARGS]>1 \{\
. tm1 "[mom]: Error at line \\n[.c], \\$0.
. tm1 " PARAHEAD may not be given more than 1 line of text.
-. ab Aborting '\\n[.F]' at \\$0, line \\n[.c].
+. ab [mom]: Aborting '\\n[.F]' at \\$0, line \\n[.c].
. \}
. vpt 0
. if !(\\n[#PRINT_STYLE]=1)&(\\n[#SINGLE_SPACE]=1) .sp -1v
@@ -10092,7 +10077,7 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. if \\n[#PRINT_STYLE]=2 \{\
. fam \\*[$HEAD_\\n[#LEVEL]_FAM]
. ft \\*[$HEAD_\\n[#LEVEL]_FT]
-. ps \\n[#DOC_PT_SIZE]u+\\*[$HEAD_\\n[#LEVEL]_SIZE]
+. ps \\n[#DOC_PT_SIZE]u\\*[$HEAD_\\n[#LEVEL]_SIZE]
. nf
. \}
.\" Numbering
@@ -10255,6 +10240,14 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. CAPS
. nr #CAPS_OFF 1
. \}
+. if \\n[#SMALLCAPS_ON] \{\
+. SMALLCAPS OFF
+. nr #SMALLCAPS_RESTORE 1
+. \}
+. if \\n[#HEAD_\\n[#LEVEL]_SMALLCAPS] \{\
+. SMALLCAPS
+. nr #SMALLCAPS_OFF 1
+. \}
. if !'\\*[$HEAD_\\n[#LEVEL]_COLOR]'' \
. COLOR \\*[$HEAD_\\n[#LEVEL]_COLOR]
. nop \X'ps: exec decornone'\c
@@ -10385,6 +10378,14 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. CAPS
. rr #CAPS_RESTORE
. \}
+. if \\n[#SMALLCAPS_OFF] \{\
+. SMALLCAPS OFF
+. rr #SMALLCAPS_OFF
+. \}
+. if \\n[#SMALLCAPS_RESTORE] \{\
+. SMALLCAPS
+. rr #SMALLCAPS_RESTORE
+. \}
. ev
. rm $HD_NUM
. rr #HD_NUM_INDENT
@@ -10443,7 +10444,7 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
.MAC HEADING_STYLE END
. if !\B'\\$1' \{\
. tm1 "[mom]: The first argument to \\$0 must be a numeric heading level.
-. ab Aborting '\\n[.F]' at \\$0, line \\n[.c].
+. ab [mom]: Aborting '\\n[.F]' at \\$0, line \\n[.c].
. \}
. nr #LEVEL \\$1
. if \\n[#FROM_OLDSTYLE] .nr #LEVEL_\\n[#LEVEL]_SET 1
@@ -10458,13 +10459,13 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. shift
. if '\\$1'' \{\
. tm1 "[mom]: The UNDERSCORE argument to \\$0 requires a rule
weight.
-. ab Aborting '\\n[.F]' at \\$0, line \\n[.c].
+. ab [mom]: Aborting '\\n[.F]' at \\$0, line \\n[.c].
. \}
. ds $HEAD_\\n[#LEVEL]_UL_WEIGHT \\$1
. shift
. if '\\$1'' \{\
. tm1 "[mom]: The UNDERSCORE argument to \\$0 requires a rule gap.
-. ab Aborting '\\n[.F]' at \\$0, line \\n[.c].
+. ab [mom]: Aborting '\\n[.F]' at \\$0, line \\n[.c].
. \}
. ds $HEAD_\\n[#LEVEL]_UL_GAP \\$1
. shift
@@ -10478,25 +10479,26 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. shift
. if '\\$1'' \{\
. tm1 "[mom]: The UNDERSCORE2 argument to \\$0 requires a rule
weight.
-. ab Aborting '\\n[.F]' at \\$0, line \\n[.c].
+. ab [mom]: Aborting '\\n[.F]' at \\$0, line \\n[.c].
. \}
. ds $HEAD_\\n[#LEVEL]_UL2_WEIGHT \\$1
. shift
. if '\\$1'' \{\
. tm1 "[mom]: The UNDERSCORE2 argument to \\$0 requires a rule gap.
-. ab Aborting '\\n[.F]' at \\$0, line \\n[.c].
+. ab [mom]: Aborting '\\n[.F]' at \\$0, line \\n[.c].
. \}
. ds $HEAD_\\n[#LEVEL]_UL2_GAP_1 \\$1
. shift
. if '\\$1'' \{\
. tm1 "[mom]: The UNDERSCORE2 argument to \\$0 requires an
inter-rule gap.
-. ab Aborting '\\n[.F]' at \\$0, line \\n[.c].
+. ab [mom]: Aborting '\\n[.F]' at \\$0, line \\n[.c].
. \}
. ds $HEAD_\\n[#LEVEL]_UL2_GAP_2 \\$1
. shift
. \}
. if '\\$1'NO_UNDERSCORE2' \{\
. rr #HEAD_\\n[#LEVEL]_UNDERSCORE2
+. shift
. \}
. if '\\$1'SPACE_AFTER' \{\
. nr #HEAD_\\n[#LEVEL]_SPACE_AFTER 1
@@ -10550,6 +10552,14 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. rr #HEAD_\\n[#LEVEL]_CAPS
. shift
. \}
+. if '\\$1'SMALLCAPS' \{\
+. nr #\\*[$TOC]HEAD_\\n[#LEVEL]_SMALLCAPS 1
+. shift
+. \}
+. if '\\$1'NO_SMALLCAPS' \{\
+. rr #HEAD_\\n[#LEVEL]_SMALLCAPS
+. shift
+. \}
. if '\\$1'NUMBER' \{\
. nr #NUMBER_HEAD_\\n[#LEVEL] 1
. nr #HEAD_\\n[#LEVEL]_NUM 0 1
@@ -10569,7 +10579,7 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. rr #LEVEL
. if d$TOC .rm $TOC
.END
-\#
+.
.ALIAS TOC_ENTRY_STYLE HEADING_STYLE
\#
\# OLDSTYLE HEADINGS
@@ -10708,7 +10718,7 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. tm1 " Use 'HEADING <level> PARAHEAD <text>' instead.
. tm1 " You will probably want to invoke HEADING_STYLE to set
. tm1 " the type parameters for the parahead. See docs.
-. ab Aborting '\\n[.F]' at \\$0, line \\n[.c].
+. ab [mom]: Aborting '\\n[.F]' at \\$0, line \\n[.c].
.END
\#
\# Wrapper macro for oldstyle NUMBER_HEADS, NUMBER_SUBHEADS...
@@ -10717,7 +10727,7 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. if '\\$0'NUMBER_PARAHEADS' \{\
. tm1 "[mom]: \\$0 is no longer a valid macro.
. tm1 " Use 'HEADING_STYLE <level> NUMBER' instead. See docs.
-. ab Aborting '\\n[.F]' at \\$0, line \\n[.c].
+. ab [mom]: Aborting '\\n[.F]' at \\$0, line \\n[.c].
. return
. \}
. if '\\$0'NUMBER_HEADS' .nr level 1
@@ -10738,7 +10748,7 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. rm $PARAM
. rm $SWITCH
.END
-\#
+.
.ALIAS NUMBER_HEADS HEADING_NUMBERS
.ALIAS NUMBER_SUBHEADS HEADING_NUMBERS
.ALIAS NUMBER_SUBSUBHEADS HEADING_NUMBERS
@@ -10786,7 +10796,7 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. tm1 "[mom]: PREFIX_CHAPTER_NUMBER cannot determine a chapter number.
. tm1 " Enter the current chapter number as a digit after
. tm1 " PREFIX_CHAPTER_NUMBER.
-. ab Aborting '\\n[.F]', line \\n[.c].
+. ab [mom]: Aborting '\\n[.F]', line \\n[.c].
.END
\#
\# ====================================================================
@@ -10962,6 +10972,11 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
\#
.MAC PP END
. br
+. if \\n[#COVERTEXT_PP] \{\
+. ie \\n[#INDENT_ACTIVE] .ti \\n[#INDENT]u+\\n[#PP_INDENT]u
+. el .ti \\n[#PP_INDENT]u
+. return
+. \}
. if \\n[defer-pp-ind-reset] \{\
. sp -1
. rr defer-pp-ind-reset
@@ -11170,14 +11185,18 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
\# Default is 3 for typeset; 2 for typewrite.
\#
.MAC QUOTE_INDENT END
-. rr #Q_OFFSET_VALUE
-. rm $Q_OFFSET_VALUE
+. if '\\$0'BLOCKQUOTE_INDENT' .ds BQ BQ
+. if '\\$0'QUOTE_INDENT' .ds BQ Q
+. rr #\\*[BQ]_OFFSET_VALUE
+. rm $\\*[BQ]_OFFSET_VALUE
. ds $EVAL_QI_ARG \\$1
. substring $EVAL_QI_ARG -1
-. ie \B'\\*[$EVAL_QI_ARG]' .nr #Q_OFFSET_VALUE \\$1
-. el .ds $Q_OFFSET_VALUE \\$1
-. rm $EVAL_QI_ARG
+. ie \B'\\*[$EVAL_QI_ARG]' .nr #\\*[BQ]_OFFSET_VALUE \\$1
+. el .ds $\\*[BQ]_OFFSET_VALUE \\$1
+. rm BQ
.END
+.
+.ALIAS BLOCKQUOTE_INDENT QUOTE_INDENT
\#
\# QUOTE_AUTOLEAD
\# --------------
@@ -11193,7 +11212,7 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. if '\\$0'ENDNOTE_QUOTE_AUTOLEAD' .nr #EN_Q_AUTOLEAD (p;\\$1)
. if '\\$0'ENDNOTE_BLOCKQUOTE_AUTOLEAD' .nr #EN_BQ_AUTOLEAD (p;\\$1)
.END
-\#
+.
.ALIAS BLOCKQUOTE_AUTOLEAD QUOTE_AUTOLEAD
.ALIAS ENDNOTE_QUOTE_AUTOLEAD QUOTE_AUTOLEAD
.ALIAS ENDNOTE_BLOCKQUOTE_AUTOLEAD QUOTE_AUTOLEAD
@@ -11252,8 +11271,10 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. nr #IN_DIVER 1
. nr #QUOTE 1
. di P_QUOTE
-. ie !'\\*[$Q_OFFSET_VALUE]'' .ll
\\n[#L_LENGTH]u-(\\*[$Q_OFFSET_VALUE]*2u)
-. el .ll \\n[#L_LENGTH]u-(\\n[#PP_INDENT]u*(\\n[#Q_OFFSET_VALUE]u*2u))
+. if '\\*[$Q_QUAD]'LEFT' \{\
+. ie !'\\*[$Q_OFFSET_VALUE]'' .ll \\n[#L_LENGTH]u-\\*[$Q_OFFSET_VALUE]
+. el .ll \\n[#L_LENGTH]u-(\\n[#PP_INDENT]u*\\n[#Q_OFFSET_VALUE]u)
+. \}
. ta \\n[.l]u
. if \\n[#COLUMNS] \{\
. ie \\n[#Q_OFFSET_VALUE] \
@@ -11284,12 +11305,11 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. \}
. \}
. nr #Q_LEAD_REAL \\n[.v]
-. LEFT
. if \\n[#QUOTE_COLOR]=1 \{\
. nf
-\m[\\*[$QUOTE_COLOR]]
-. EOL
+. gcolor \\*[$QUOTE_COLOR]
. \}
+. \\*[$Q_QUAD]
. \}
. if \\n[#LINENUMBERS]=2 \{\
. ie \\n[#QUOTE_LN]=1 \{\
@@ -11364,7 +11384,7 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. CODE_FONT R
. ft \\*[$CODE_FT]
. \}
-. if \\n[#CODE_COLOR]=1 .COLOR \\*[$CODE_COLOR]
+. if \\n[#CODE_COLOR]=1 .gcolor \\*[$CODE_COLOR]
. char ' \[aq]
. if !\\n[#CODE_SIZE_ADJ]=0 .ps
\\n[#PT_SIZE]u*\\n[#CODE_SIZE_ADJ]u/100u
. if \\n[#SQ_ON] \{\
@@ -11391,46 +11411,10 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. rr #SQ_WAS_ON
. SMARTQUOTES
. \}
-. if \\n[#QUOTE] .sp 1v
+. if \\n[#QUOTE] .sp
. \}
.END
\#
-\# CODE_FAMILY
-\# -----------
-\# *Arguments:
-\# <family>
-\# *Function:
-\# Creates register #CODE_FAM and string $CODE_FAM for use by CODE.
-\#
-.MAC CODE_FAMILY END
-. nr #CODE_FAM 1
-. ds $CODE_FAM \\$1
-.END
-\#
-\# CODE_FONT
-\# ---------
-\# *Arguments:
-\# <font>
-\# *Function:
-\# Creates register #CODE_FT and string $CODE_FT for use by CODE.
-\#
-.MAC CODE_FONT END
-. nr #CODE_FT 1
-. ds $CODE_FT \\$1
-.END
-\#
-\# CODE_SIZE
-\# ---------
-\# *Arguments:
-\# <percentage to zoom code font>
-\# *Function:
-\# Creates register #CODE_SIZE_ADJ, used in CODE to zoom the
-\# CODE_FONT to a percentage of the current point size.
-\#
-.MAC CODE_SIZE END
-. nr #CODE_SIZE_ADJ \\$1
-.END
-\#
\# ---Blockquotes---
\#
\# BLOCKQUOTE
@@ -11450,6 +11434,7 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
\#
.MAC BLOCKQUOTE END
. br
+. if \\n[#PP]>0 .rr #START
. if \\n[#LINENUMBERS]=1 \{\
. nr #LINENUMBERS 2
. nr #NEXT_LN \\n[ln]
@@ -11470,48 +11455,48 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. \}
. \}
. di B_QUOTE
-. ie !'\\*[$Q_OFFSET_VALUE]'' .ll
\\n[#L_LENGTH]u-(\\*[$Q_OFFSET_VALUE]*2u)
-. el .ll \\n[#L_LENGTH]u-(\\n[#PP_INDENT]u*(\\n[#Q_OFFSET_VALUE]u*2u))
+. ie !'\\*[$BQ_OFFSET_VALUE]'' .ll
\\n[#L_LENGTH]u-(\\*[$BQ_OFFSET_VALUE]*2u)
+. el .ll \\n[#L_LENGTH]u-(\\n[#PP_INDENT]u*(\\n[#BQ_OFFSET_VALUE]u*2u))
. if \\n[in-cutaround] .nr #PP_INDENT \\n[.i]+\\n[pp-ind-tmp]
. if \\n[#ENDNOTE] \{\
. if \\n[#EN_NUMBERS_ALIGN_RIGHT] \{\
-. ie r#Q_OFFSET_VALUE \
+. ie r#BQ_OFFSET_VALUE \
. ll \
-\\n[#RESET_L_LENGTH]u-\\n[#EN_TEXT_INDENT]u-(\\n[#EN_PP_INDENT]u*(\\n[#Q_OFFSET_VALUE]u*2u))
+\\n[#RESET_L_LENGTH]u-\\n[#EN_TEXT_INDENT]u-(\\n[#EN_PP_INDENT]u*(\\n[#BQ_OFFSET_VALUE]u*2u))
. el \
. ll \
-\\n[#RESET_L_LENGTH]u-\\n[#EN_TEXT_INDENT]u-(\\*[$Q_OFFSET_VALUE]*2u)
+\\n[#RESET_L_LENGTH]u-\\n[#EN_TEXT_INDENT]u-(\\*[$BQ_OFFSET_VALUE]*2u)
. \}
. if \\n[#EN_NUMBERS_ALIGN_LEFT] \{\
-. ie r#Q_OFFSET_VALUE \
-. ll
\\n[#L_LENGTH]u-(\\n[#EN_PP_INDENT]u*(\\n[#Q_OFFSET_VALUE]u*2u))
+. ie r#BQ_OFFSET_VALUE \
+. ll
\\n[#L_LENGTH]u-(\\n[#EN_PP_INDENT]u*(\\n[#BQ_OFFSET_VALUE]u*2u))
. el \
-. ll \\n[#L_LENGTH]u-(\\*[$Q_OFFSET_VALUE]u*2u)
+. ll \\n[#L_LENGTH]u-(\\*[$BQ_OFFSET_VALUE]u*2u)
. \}
. \}
. ta \\n[.l]u
. CHECK_INDENT
. if \\n[#COLUMNS] \{\
-. ie r#Q_OFFSET_VALUE \
+. ie r#BQ_OFFSET_VALUE \
. ll \
-\\n[#COL_L_LENGTH]u-(\\n[#PP_INDENT]u*(\\n[#Q_OFFSET_VALUE]u*2u))
+\\n[#COL_L_LENGTH]u-(\\n[#PP_INDENT]u*(\\n[#BQ_OFFSET_VALUE]u*2u))
. el \
-. ll \\n[#COL_L_LENGTH]u-(\\*[$Q_OFFSET_VALUE]*2u)
+. ll \\n[#COL_L_LENGTH]u-(\\*[$BQ_OFFSET_VALUE]*2u)
. if \\n[#ENDNOTE] \{\
. if \\n[#EN_NUMBERS_ALIGN_RIGHT] \{\
-. ie r#Q_OFFSET_VALUE \
+. ie r#BQ_OFFSET_VALUE \
. ll \
-\\n[#RESET_L_LENGTH]u-\\n[#EN_TEXT_INDENT]u-(\\n[#EN_PP_INDENT]u*(\\n[#Q_OFFSET_VALUE]u*2u))
+\\n[#RESET_L_LENGTH]u-\\n[#EN_TEXT_INDENT]u-(\\n[#EN_PP_INDENT]u*(\\n[#BQ_OFFSET_VALUE]u*2u))
. el \
. ll \
-\\n[#RESET_L_LENGTH]u-\\n[#EN_TEXT_INDENT]u-(\\*[$Q_OFFSET_VALUE]*2u)
+\\n[#RESET_L_LENGTH]u-\\n[#EN_TEXT_INDENT]u-(\\*[$BQ_OFFSET_VALUE]*2u)
. \}
. if \\n[#EN_NUMBERS_ALIGN_LEFT] \{\
-. ie r#Q_OFFSET_VALUE \
+. ie r#BQ_OFFSET_VALUE \
. ll \
-\\n[#COL_L_LENGTH]u-(\\n[#EN_PP_INDENT]u*(\\n[#Q_OFFSET_VALUE]u*2u))
+\\n[#COL_L_LENGTH]u-(\\n[#EN_PP_INDENT]u*(\\n[#BQ_OFFSET_VALUE]u*2u))
. el \
-. ll \\n[#COL_L_LENGTH]u-(\\*[$Q_OFFSET_VALUE]*2u)
+. ll \\n[#COL_L_LENGTH]u-(\\*[$BQ_OFFSET_VALUE]*2u)
. \}
. \}
. ta \\n[.l]u
@@ -11542,8 +11527,7 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. nr #Q_LEAD_REAL \\n[.v]
. if \\n[#BQUOTE_COLOR]=1 \{\
. nf
-\m[\\*[$BQUOTE_COLOR]]
-. EOL
+. gcolor \\*[$BQUOTE_COLOR]
. \}
. QUAD \\*[$BQUOTE_QUAD]
. nr #DIVERSIONS_HY_MARGIN (p;\\n[.ps]u*2.75)/1000
@@ -11574,7 +11558,7 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. \}
. \}
. \}
-. el .DO_QUOTE
+. el .DO_BLOCKQUOTE
.END
\#
\# DO QUOTE
@@ -11597,10 +11581,12 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. rr #DIVER_LN_OFF
. \}
. di
+. if '\\$0'DO_BLOCKQUOTE' .ds BQ BQ
+. if '\\$0'DO_QUOTE' .ds BQ Q
. if \\n[in-cutaround] \{\
. if \\n[dn]>\\n[.t] \{\
. tm1 "[mom]: Blockquote depth exceeds cutaround depth."
-. ab Aborting at line \\n[.c].
+. ab [mom]: Aborting at line \\n[.c].
. \}
. \}
. rr #IN_DIVER
@@ -11616,13 +11602,13 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. nr #DONE_ONCE 0 1
. REMOVE_INDENT
. ev
-. nr #Q_DEPTH (\\n[#DIVER_DEPTH])
+. nr #Q_DEPTH \\n[#DIVER_DEPTH]
. nr #Q_LEAD_DIFF \\n[#LEAD]-\\n[#Q_LEAD_REAL]
. if !\\n[.v]=\\n[#Q_LEAD_REAL] \{\
. if !\\n[#NO_SHIM] \{\
. br
. nr #CALCULATE_ONLY 1
-. nr #CURRENT_V_POS \\n[nl]+\\n[#Q_DEPTH]-\\n[#Q_LEAD_DIFF]u
+. nr #CURRENT_V_POS \\n[nl]+\\n[#Q_DEPTH]
. SHIM
. rr #CALCULATE_ONLY
. nr #Q_SPACE_ADJ (\\n[#SHIM]/2)
@@ -11675,22 +11661,28 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. \}
. \}
. \}
-. ie !'\\*[$Q_OFFSET_VALUE]'' .nr #Q_OFFSET
\\n[#L_MARGIN]+\\*[$Q_OFFSET_VALUE]
+. ie !'\\*[$\\*[BQ]_OFFSET_VALUE]'' \
+. nr #\\*[BQ]_OFFSET \\n[#L_MARGIN]+\\*[$\\*[BQ]_OFFSET_VALUE]
. el \
-. nr #Q_OFFSET \\n[#L_MARGIN]+(\\n[#PP_INDENT]*\\n[#Q_OFFSET_VALUE])
+. nr #\\*[BQ]_OFFSET
\\n[#L_MARGIN]+(\\n[#PP_INDENT]*\\n[#\\*[BQ]_OFFSET_VALUE])
. if \\n[#COLUMNS] \{\
-. ie r#Q_OFFSET_VALUE \
-. nr #Q_OFFSET \
-\\n[#COL_\\n[#COL_NUM]_L_MARGIN]+(\\n[#PP_INDENT]*\\n[#Q_OFFSET_VALUE])
-. el .nr #Q_OFFSET \\n[#COL_\\n[#COL_NUM]_L_MARGIN]+\\*[$Q_OFFSET_VALUE]
+. ie r#\\*[BQ]_OFFSET_VALUE \
+. nr #\\*[BQ]_OFFSET \
+\\n[#COL_\\n[#COL_NUM]_L_MARGIN]+(\\n[#PP_INDENT]*\\n[#\\*[BQ]_OFFSET_VALUE])
+. el .nr #\\*[BQ]_OFFSET
\\n[#COL_\\n[#COL_NUM]_L_MARGIN]+\\*[$\\*[BQ]_OFFSET_VALUE]
. \}
. if !\\n[#ENDNOTE] \{\
-. po \\n[#Q_OFFSET]u
-. if '\\n[.z]'FLOAT*DIV' \!.po \\n[#Q_OFFSET]u
+. ie '\\*[BQ]'Q' \{\
+. if '\\*[$Q_QUAD]'LEFT' \
+. po \\n[#Q_OFFSET]u
+. if '\\n[.z]'FLOAT*DIV' \!.po \\n[#Q_OFFSET]u
+. \}
+. el .po \\n[#\\*[BQ]_OFFSET]u
+. if '\\n[.z]'FLOAT*DIV' \!.po \\n[#\\*[BQ]_OFFSET]u
. \}
. if \\n[#ENDNOTE] \{\
-. ie \\n[#Q_OFFSET_VALUE] .in +\\n[#EN_PP_INDENT]u*\\n[#Q_OFFSET_VALUE]u
-. el .in +\\*[$Q_OFFSET_VALUE]
+. ie \\n[#\\*[BQ]_OFFSET_VALUE] .in
+\\n[#EN_PP_INDENT]u*\\n[#\\*[BQ]_OFFSET_VALUE]u
+. el .in +\\*[$\\*[BQ]_OFFSET_VALUE]
. \}
. ie \\n[#START]=1 \{\
. ie !\\n[#Q_LEAD_DIFF]<0 .ALD \\n[#Q_SPACE_ADJ]u
@@ -11698,22 +11690,22 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. \}
. el \{\
. if \\n[#PRINT_STYLE]=2 \{\
-. if !\\n[.v]=\\n[#Q_LEAD] .ALD \\n[#Q_SPACE_ADJ]u
+. if !\\n[.v]=\\n[#Q_LEAD_REAL] .ALD \\n[#Q_SPACE_ADJ]u
. \}
. \}
. if \\n[#QUOTE]=1 \{\
. nf
. P_QUOTE
. br
-. if !\\n[#START] .rr #QUOTE
. \}
. if \\n[#QUOTE]=2 \{\
. nf
. B_QUOTE
. br
. \}
+. if !\\n[#START] .rr #QUOTE
. if \\n[in-cutaround] .nr #PP_INDENT \\n[pp-ind-tmp]
-\#. if !\\n[ev-popped] .ev \! Needed once cutarounds are implemented
+\#. if !\\n[ev-popped] .ev \" Needed once cutarounds are implemented
. rr delay-ev-pop
. if \\n[reset-ll] \{\
. if '\\*[cutaround-type]'RIGHT' \{\
@@ -11816,7 +11808,10 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. if \\n[#PRINT_STYLE]=1 \
. if \\n[#UNDERLINE_QUOTES] .FT R
. nr #QUOTE_4_HD 1
+. rm BQ
.END
+.
+.ALIAS DO_BLOCKQUOTE DO_QUOTE
\#
\# Utility macros for DO_QUOTE
\# ---------------------------
@@ -11877,7 +11872,8 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. el .ALD \\n[#DOC_LEAD]u+\\n[#Q_LEAD_DIFF]u
. \}
. el \{\
-. ALD \\n[#DOC_LEAD]u+\\n[#Q_LEAD_DIFF]
+. ie !\\n[#Q_LEAD_DIFF] .ALD \\n[#DOC_LEAD]u
+. el .ALD \\n[#Q_LEAD_DIFF]u
. if address@hidden .rs
. \}
. nr #Q_PARTIAL_DEPTH 0 \\n[#Q_LEAD_REAL]
@@ -12035,7 +12031,7 @@ $DOC_COVER_TITLE_\\n+[#DOC_COVER_TITLE_NUM]
\\$\\n[#DOC_COVER_TITLE_NUM]
. if '\\*[$PN_FOR_KN]'1' .ds $POST_HY_KN \*[BU3]
. if '\\*[$PN_FOR_KN]'7' .ds $POST_HY_KN \*[BU3]
. PRINT \
-\m[\\*[$PAGENUM_COLOR]]\
+\m[\\*[$PAGE_NUM_COLOR]]\
\\*[$HYPHEN]\|\\*[$PRE_HY_KN]\\n[#PAGENUMBER]\\*[$POST_HY_KN]\|\\*[$HYPHEN]
. br
. rm $PRE_HY_KERN
@@ -12116,11 +12112,11 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. PN_WITH_HYPHENS
. \}
. if '\\*[$PAGENUM_STYLE]'roman' \
-. PRINT \m[\\*[$PAGENUM_COLOR]]-\|\\n[#PAGENUMBER]\|-
+. PRINT \m[\\*[$PAGE_NUM_COLOR]]-\|\\n[#PAGENUMBER]\|-
. if '\\*[$PAGENUM_STYLE]'alpha' \
-. PRINT \m[\\*[$PAGENUM_COLOR]]-\|\\n[#PAGENUMBER]\|-
+. PRINT \m[\\*[$PAGE_NUM_COLOR]]-\|\\n[#PAGENUMBER]\|-
. \}
-. el .PRINT \m[\\*[$PAGENUM_COLOR]]\\n[#PAGENUMBER]
+. el .PRINT \m[\\*[$PAGE_NUM_COLOR]]\\n[#PAGENUMBER]
. \}
. ev
. nr #DIVER_DEPTH 0
@@ -12469,7 +12465,7 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. if !\\n[#LINENUMBERS] \{\
. tm1 "[mom]: Line numbering must be enabled with NUMBER_LINES when
. tm1 " FOOTNOTE_MARKER_STYLE is LINE.
-. ab Aborting '\\n[.F]' at \\$0, line \\n[.c].
+. ab [mom]: Aborting '\\n[.F]' at \\$0, line \\n[.c].
. \}
. if \\n[#FN_MARK]=0 .nr #FN_MARK \\n[ln]
. nr #FN_MARK_2 \\n[ln]
@@ -12747,7 +12743,7 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. if !'\\*[$FN_SPACE]'' .sp -\\*[$FN_SPACE]
. \}
. \}
-. el .sp 1v
+. el .sp
. nr #RULED 1
. \}
. \}
@@ -13393,47 +13389,6 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. nr #EN_PS (p;\\$1)
.END
\#
-\# ENDNOTES, BIBLIOGRAPHY and TOC LEADING
-\# --------------------------------------
-\# *Argument:
-\# <leading> [ ADJUST ]
-\# *Function:
-\# Depending on the name by which it's called, creates or modifies
-\# register #<type>_LEAD, where <type> is BIB, EN, or TOC. Creates or
removes
-\# register #ADJ_<type>_LEAD. Stores arguments in strings if BIB,
-\# EN, or TOC leading are set before START.
-\# *Notes:
-\# Default is same as doc lead for TYPESET, adjusted; 24 for TYPEWRITE.
-\#
-.MAC _LEAD END
-. if '\\$0'BIBLIOGRAPHY_LEAD' .ds $SECTION BIB
-. if '\\$0'ENDNOTE_LEAD' .ds $SECTION EN
-. if '\\$0'TOC_LEAD' .ds $SECTION TOC
-. ds $\\*[$SECTION]_LEAD \\$1
-. ds $ADJUST_\\*[$SECTION]_LEAD \\$2
-. if !\\n[#OK_PROCESS_LEAD] .return
-. nr #\\*[$SECTION]_LEAD (p;\\$1)
-. rr #ADJ_\\*[$SECTION]_LEAD
-. als \\*[$SECTION]_LEAD DOC_LEAD
-. if '\\$2'ADJUST' \{\
-. nr #ORIG_DOC_LEAD \\n[#UNADJUSTED_DOC_LEAD]
-. nr #RESTORE_ADJ_DOC_LEAD \\n[#ADJ_DOC_LEAD]
-. nr #ADJ_DOC_LEAD 1
-. nr #ADJ_\\*[$SECTION]_LEAD 1
-. nr #NO_TRAP_RESET 1
-. \\*[$SECTION]_LEAD \\n[#\\*[$SECTION]_LEAD]u ADJUST
-. nr #\\*[$SECTION]_LEAD \\n[#DOC_LEAD]
-. DOC_LEAD \\n[#ORIG_DOC_LEAD]u
-. rr #NO_TRAP_RESET
-. nr #ADJ_DOC_LEAD \\n[#RESTORE_ADJ_DOC_LEAD]
-. rr #ORIG_DOC_LEAD
-. \}
-.END
-\#
-.ALIAS BIBLIOGRAPHY_LEAD _LEAD
-.ALIAS ENDNOTE_LEAD _LEAD
-.ALIAS TOC_LEAD _LEAD
-\#
\# ENDNOTE SPACING
\# ----------------
\# *Arguments:
@@ -13477,36 +13432,53 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
.MAC ENDNOTES_HEADER_STRING END
. ds $EN_STRING \\$1
.END
+.
+.ALIAS ENDNOTE_STRING ENDNOTES_HEADER_STRING
+\#
+\# ENDNOTE STRING START POSTION
+\# ----------------------------
+\# *Argument:
+\# <distance from page top>
+\# *Function:
+\# Creates or modifies register #EN_STRING_V_POS
\#
.MAC ENDNOTES_HEADER_V_POS END
-. nr #EN_STRING_ADVANCE (\\$1)
+. nr #EN_STRING_V_POS (\\$1)
.END
+.
+.ALIAS ENDNOTE_STRING_ADVANCE ENDNOTES_HEADER_V_POS
+.ALIAS ENDNOTE_STRING_V_POS ENDNOTES_HEADER_V_POS
+.ALIAS ENDNOTES_HEADER_V_POS ENDNOTES_HEADER_V_POS
\#
-.ALIAS ENDNOTE_STRING ENDNOTES_HEADER_STRING
-.ALIAS ENDNOTE_STRING_ADVANCE ENDNOTES_HEADER_V_POS
-\#
-\# ENDNOTE HEADER CAPS
-\# -------------------
+\# ENDNOTE HEADER CAPS and SMALLCAPS
+\# ---------------------------------
\# *Arguments:
\# <none> | <anything>
\# *Function:
-\# Turns capitalization of the endnotes pages title string
-\# "Endnotes" on or off.
+\# Turns capitalization or smallcaps style of the endnotes pages
+\# title string "Endnotes" on or off.
\# *Notes:
\# Users may want the endnotes pages title string to be in
\# caps, but the toc entry for endnotes in lower case. If the
\# argument to ENDNOTES_HEADER_STRING is in lower case and
\# ENDNOTES_HEADER_CAPS is turned on, this is exactly what will
-\# happen.
+\# happen. Ditto for smallcaps.
\#
-\# Default is on.
+\# Default for CAPS is on.
\#
.MAC ENDNOTES_HEADER_CAPS END
. ie '\\$1'' .nr #EN_STRING_CAPS 1
. el .nr #EN_STRING_CAPS 0
.END
-\#
+.
.ALIAS ENDNOTE_STRING_CAPS ENDNOTES_HEADER_CAPS
+.
+.MAC ENDNOTES_HEADER_SMALLCAPS END
+. ie '\\$1'' .nr #EN_STRING_SMALLCAPS 1
+. el .nr #EN_STRING_SMALLCAPS 0
+.END
+.
+.ALIAS ENDNOTE_STRING_SMALLCAPS ENDNOTES_HEADER_SMALLCAPS
\#
\# ENDNOTE TITLE
\# -------------
@@ -13839,7 +13811,7 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. if !\\n[#LINENUMBERS] \{\
. tm1 "[mom]: Line numbering must be enabled with NUMBER_LINES when
. tm1 " ENDNOTE_MARKER_STYLE is LINE.
-. ab Aborting '\\n[.F]' at \\$0, line \\n[.c].
+. ab [mom]: Aborting '\\n[.F]' at \\$0, line \\n[.c].
. \}
. if \\n[#EN_MARK]=0 .nr #EN_MARK \\n[ln]
. nr #EN_MARK_2 \\n[ln]
@@ -13871,8 +13843,12 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. FAMILY \\*[$EN_TITLE_FAM]
. FT \\*[$EN_TITLE_FT]
. ps \\n[#EN_PS]u\\*[$EN_TITLE_SIZE_CHANGE]
+. if \\n[#EN_TITLE_COLOR] .gcolor \\*[$EN_TITLE_COLOR]
+. if \\n[#ENDNOTE_TITLE_SMALLCAPS] .SMALLCAPS
+. if \\n[#ENDNOTE_TITLE_CAPS] .CAPS
. \}
-. sp
+. ie \\n[#SINGLE_SPACE]=1 .sp 2
+. el .sp
. if !'\\*[$EN_TITLE]'' \{\
. if '\\*[$EN_TITLE_QUAD]'L' .LEFT
. if '\\*[$EN_TITLE_QUAD]'LEFT' .LEFT
@@ -13882,12 +13858,17 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. if '\\*[$EN_TITLE_QUAD]'R' .RIGHT
. if '\\*[$EN_TITLE_QUAD]'RIGHT' .RIGHT
. ie \\n[#EN_TITLE_UNDERLINE] \{\
-. nr #FROM_EN_TITLE 1
. UNDERSCORE "\\*[$EN_TITLE]"
-. rr #FROM_EN_TITLE
. \}
-. el .PRINT "\\*[$EN_TITLE]"
+. el \{\
+. ie \\n[#PRINT_STYLE]=1 \
+. UNDERSCORE "\\*[$EN_TITLE]"
+. el .PRINT "\\*[$EN_TITLE]"
+. \}
. \}
+. if \\n[#EN_TITLE_COLOR] .gcolor
+. if \\n[#ENDNOTE_TITLE_SMALLCAPS] .SMALLCAPS OFF
+. if \\n[#ENDNOTE_TITLE_CAPS] .CAPS OFF
. \}
.\" Get indent from endnotes point size; convert string to reg in
.\" case indent string is, e.g., m or n
@@ -13895,12 +13876,15 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. nr #REF_EN_INDENT (u;\\*[$REF_EN_INDENT])
. if \\n[#PRINT_STYLE]=1 \{\
. TYPEWRITER
-. if \\n[#EN_NUMBER]=1 .sp
+. if \\n[#EN_NUMBER]=1 \{\
+. ie \\n[#SINGLE_SPACE]=1 .sp
+. el .sp .25
+. \}
. if \\n[#EN_MARKER_STYLE]=3 .ps -2
. \}
. if \\n[#PRINT_STYLE]=2 \{\
. if \\n[#EN_NUMBER]=1 \
-. if !'\\*[$EN_TITLE]'' .sp .5v
+. if !'\\*[$EN_TITLE]'' .sp .25v
. if \\n[#EN_MARKER_STYLE]=1 \{\
. FAMILY \\*[$EN_NUMBER_FAM]
. FT \\*[$EN_NUMBER_FT]
@@ -14041,6 +14025,9 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. \}
.END
\#
+\# Endnotes (user space macro)
+\# ---------------------------
+\#
\# ENDNOTES
\# --------
\# *Arguments:
@@ -14055,6 +14042,36 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. nr #LAST_EN \\n[#EN_NUMBER]
. nr #ENDNOTES 1
. nr #EN_FIRST_PAGE 1
+. SETUP_ENDNOTES
+. if !\\n[#PRINT_STYLE]=1 .chop END_NOTES
+. nf
+. END_NOTES
+. rm END_NOTES
+. ps \\n[#DOC_PT_SIZE]u
+. if \\n[#PRINT_STYLE]=1 .vs \\n[#DOC_LEAD]u
+. if \\n[#PRINT_STYLE]=2 \{\
+. ie \\n[#ADJ_EN_LEAD] \
+. nr #DOC_LEAD \\n[#RESTORE_DOC_LEAD]
+. el .DOC_LEAD \\n[#RESTORE_DOC_LEAD]u
+. rr #RESTORE_DOC_LEAD
+. \}
+. if \\n[#COLUMNS_WERE_ON] .nr #COLUMNS 1
+. if \\n[#HEADER_STATE]=1 .HEADERS
+. if \\n[#LINENUMBERS]=2 \{\
+. NUMBER_LINES RESUME
+. nr #LINENUMBERS 1
+. \}
+.
+. PRINT_FOOTER
+. rr #ENDNOTES
+.END
+\#
+\# Macros common to endnotes, bibliography, and toc
+\# ------------------------------------------------
+\#
+.MAC SETUP_BIB_EN END
+. if '\\$0'SETUP_BIBLIOGRAPHY' .ds EN-OR-BIB BIB
+. if '\\$0'SETUP_ENDNOTES' .ds EN-OR-BIB EN
. nr #HEADER_STATE \\n[#HEADERS_ON]
. ds $RESTORE_PAGENUM_STYLE \\*[$PAGENUM_STYLE]
. if \\n[#LINENUMBERS]=1 \{\
@@ -14062,17 +14079,17 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. nr #LINENUMBERS 2
. \}
. if \\n[#HEADERS_ON]=1 \
-. if !\\n[#EN_ALLOWS_HEADERS_ALL] .HEADERS OFF
+. if !\\n[#\\*[EN-OR-BIB]_ALLOWS_HEADERS_ALL] .HEADERS OFF
. if \\n[#HEADER_STATE]=1 \{\
-. ie \\n[#EN_HDRFTR_CENTER]=1 .
+. ie \\n[#\\*[EN-OR-BIB]_HDRFTR_CENTER]=1 .
. el .rm $HDRFTR_CENTER
. \}
. ie !\\n[#SUSPEND_PAGINATION] \{\
. if \\n[#PAGINATE]=1 \{\
. if \\n[#PAGE_NUM_V_POS]=1 \{\
-. PAGENUM_STYLE \\*[$EN_PN_STYLE]
-. if \\n[#EN_FIRST_PN] .PAGENUMBER \\n[#EN_FIRST_PN]-1
-. if r #EN_NO_FIRST_PN .nr #PAGINATE 0
+. PAGENUM_STYLE \\*[$\\*[EN-OR-BIB]_PN_STYLE]
+. if \\n[#\\*[EN-OR-BIB]_FIRST_PN] .PAGENUMBER
\\n[#\\*[EN-OR-BIB]_FIRST_PN]-1
+. if r #\\*[EN-OR-BIB]_NO_FIRST_PN .nr #PAGINATE 0
. \}
. \}
. \}
@@ -14092,116 +14109,144 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. \}
. ie !\\n[#SUSPEND_PAGINATION] \{\
. if \\n[#PAGE_NUM_V_POS]=1 \{\
-. if r #EN_NO_FIRST_PN \
+. if r #\\*[EN-OR-BIB]_NO_FIRST_PN \
. if \\n[#PAGINATION_STATE]=1 .nr #PAGINATE 1
. \}
. \}
. el \
. if \\n[#PAGE_NUM_V_POS]=2 .nr #PAGINATE 0
. rr #PAGINATION_STATE
-. PAGENUM_STYLE \\*[$EN_PN_STYLE]
-. if \\n[#EN_FIRST_PN] .PAGENUMBER \\n[#EN_FIRST_PN]
+. PAGENUM_STYLE \\*[$\\*[EN-OR-BIB]_PN_STYLE]
+. if \\n[#\\*[EN-OR-BIB]_FIRST_PN] .PAGENUMBER \\n[#\\*[EN-OR-BIB]_FIRST_PN]
. if \\n[#HEADER_STATE]=1 \
-. if \\n[#EN_ALLOWS_HEADERS] .HEADERS
+. if \\n[#\\*[EN-OR-BIB]_ALLOWS_HEADERS] .HEADERS
.\" Collect endnotes title string for TOC
. nr #TOC_ENTRY_PN \\n%+\\n[#PAGE_NUM_ADJ]
. af #TOC_ENTRY_PN \\g[#PAGENUMBER]
-. ds $TOC_TITLE_ITEM \\*[$EN_STRING]\|
-. PDF_BOOKMARK 1 \\*[$EN_STRING]
+. ds $TOC_TITLE_ITEM \\*[$\\*[EN-OR-BIB]_STRING]\|
+. PDF_BOOKMARK 1 \\*[$\\*[EN-OR-BIB]_STRING]
. TITLE_TO_TOC
.\" End collection of endnotes title string for TOC
.\" Process endnotes
-. if \\n[#PRINT_STYLE]=1 .vs \\n[#EN_LEAD]u
+. if \\n[#PRINT_STYLE]=1 .vs \\n[#\\*[EN-OR-BIB]_LEAD]u
. if \\n[#PRINT_STYLE]=2 \{\
-. if \\n[#EN_NO_COLS] \{\
+. if \\n[#\\*[EN-OR-BIB]_NO_COLS] \{\
. if \\n[#COLUMNS] .nr #COLUMNS_WERE_ON 1
. nr #COLUMNS 0
. \}
. nr #RESTORE_DOC_LEAD \\n[#DOC_LEAD]
-. ie \\n[#ADJ_EN_LEAD] .nr #DOC_LEAD \\n[#EN_LEAD]
-. el .DOC_LEAD \\n[#EN_LEAD]u
+. ie \\n[#ADJ_\\*[EN-OR-BIB]_LEAD] .nr #DOC_LEAD
\\n[#\\*[EN-OR-BIB]_LEAD]
+. el .DOC_LEAD \\n[#\\*[EN-OR-BIB]_LEAD]u
. \}
. vpt 0
-. ie r#EN_STRING_ADVANCE .sp |\\n[#EN_STRING_ADVANCE]u-1v
-. el .sp |\\n[#T_MARGIN]u-1v
-. vpt 1
+. RESTORE_SPACE
+. ie r#\\*[EN-OR-BIB]_STRING_V_POS .sp
|\\n[#\\*[EN-OR-BIB]_STRING_V_POS]u-1v
+. el .sp |\\n[#T_MARGIN]u-\\n[#\\*[EN-OR-BIB]_LEAD]u
+. vpt
. mk ec
. if \\n[#SLANT_ON] \{\
\*[SLANTX]\c
. \}
. sp
-. if !'\\*[$EN_STRING]'' \{\
+. if !'\\*[$\\*[EN-OR-BIB]_STRING]'' \{\
. if \\n[#PRINT_STYLE]=1 \{\
. TYPEWRITER
-. vs \\n[#EN_LEAD]u
+. vs \\n[#\\*[EN-OR-BIB]_LEAD]u
. \}
. if \\n[#PRINT_STYLE]=2 \{\
. LL \\n[#DOC_L_LENGTH]u
. ta \\n[.l]u
. if \\n[#COLUMNS] \{\
-. ie \\n[#EN_NO_COLS] .LL \\n[#DOC_L_LENGTH]u
+. ie \\n[#\\*[EN-OR-BIB]_NO_COLS] .LL \\n[#DOC_L_LENGTH]u
. el .LL \\n[#COL_L_LENGTH]u
. ta \\n[.l]u
. \}
-. FAMILY \\*[$EN_STRING_FAM]
-. FT \\*[$EN_STRING_FT]
-. ps \\n[#EN_PS]u\\*[$EN_STRING_SIZE_CHANGE]
-. vs \\n[#EN_LEAD]u
-. if \\n[#ENDNOTE_STRING_COLOR]=1 \{\
-. COLOR \\*[$ENDNOTE_STRING_COLOR]
-. EOL
-. \}
-. \}
-. if '\\*[$EN_STRING_QUAD]'L' .LEFT
-. if '\\*[$EN_STRING_QUAD]'LEFT' .LEFT
-. if '\\*[$EN_STRING_QUAD]'C' .CENTER
-. if '\\*[$EN_STRING_QUAD]'CENTER' .CENTER
-. if '\\*[$EN_STRING_QUAD]'CENTRE' .CENTER
-. if '\\*[$EN_STRING_QUAD]'R' .RIGHT
-. if '\\*[$EN_STRING_QUAD]'RIGHT' .RIGHT
+. FAMILY \\*[$\\*[EN-OR-BIB]_STRING_FAM]
+. FT \\*[$\\*[EN-OR-BIB]_STRING_FT]
+. ps \\n[#\\*[EN-OR-BIB]_PS]u\\*[$\\*[EN-OR-BIB]_STRING_SIZE_CHANGE]
+. vs \\n[#\\*[EN-OR-BIB]_LEAD]u
+. \}
+. if '\\*[$\\*[EN-OR-BIB]_STRING_QUAD]'L' .LEFT
+. if '\\*[$\\*[EN-OR-BIB]_STRING_QUAD]'LEFT' .LEFT
+. if '\\*[$\\*[EN-OR-BIB]_STRING_QUAD]'C' .CENTER
+. if '\\*[$\\*[EN-OR-BIB]_STRING_QUAD]'CENTER' .CENTER
+. if '\\*[$\\*[EN-OR-BIB]_STRING_QUAD]'CENTRE' .CENTER
+. if '\\*[$\\*[EN-OR-BIB]_STRING_QUAD]'R' .RIGHT
+. if '\\*[$\\*[EN-OR-BIB]_STRING_QUAD]'RIGHT' .RIGHT
. EOL
-. if \\n[#EN_STRING_CAPS] .CAPS
-. ie \\n[#EN_STRING_UNDERLINE] \{\
-. nr #FROM_EN_STRING 1
-. ie \\n[#EN_STRING_UNDERLINE]=2 \
-. UNDERSCORE2 \\*[$EN_UNDERLINE_GAP] \\*[$EN_RULE_GAP]
"\\*[$EN_STRING]"
-. el .UNDERSCORE "\\*[$EN_STRING]"
-. rr #FROM_EN_STRING
-. \}
-. el .PRINT "\\*[$EN_STRING]
-. \}
-. CAPS OFF
-. if \\n[#PRINT_STYLE]=1 \{\
-. ie \\n[#SINGLE_SPACE]=1 .sp
-. el \{\
-. ie \\n[#EN_SINGLESPACE]=1 .sp
-. el .
-. \}
-. \}
-. if \\n[#PRINT_STYLE]=2 .ALD \\n[#EN_LEAD]u
-. QUAD \\*[$EN_QUAD]
-. chop END_NOTES
-. nf
-. END_NOTES
-. rm END_NOTES
-. ps \\n[#DOC_PT_SIZE]u
-. if \\n[#PRINT_STYLE]=1 .vs \\n[#DOC_LEAD]u
-. if \\n[#PRINT_STYLE]=2 \{\
-. ie \\n[#ADJ_EN_LEAD] \
-. nr #DOC_LEAD \\n[#RESTORE_DOC_LEAD]
-. el .DOC_LEAD \\n[#RESTORE_DOC_LEAD]u
-. rr #RESTORE_DOC_LEAD
+. if \\n[#\\*[EN-OR-BIB]_STRING_COLOR]=1 .gcolor
\\*[$\\*[EN-OR-BIB]_STRING_COLOR]
+. if \\n[#\\*[EN-OR-BIB]_STRING_CAPS] .CAPS
+. if \\n[#\\*[EN-OR-BIB]_STRING_SMALLCAPS] .SMALLCAPS
+. ie \\n[#\\*[EN-OR-BIB]_STRING_UNDERLINE] \{\
+. if \\n[#PRINT_STYLE]=2 .ds $TITLE_TYPE \\*[EN-OR-BIB]_STRING
+. ie \\n[#PRINT_STYLE]=1 \{\
+. UNDERSCORE2 3p 2p "\\*[$\\*[EN-OR-BIB]_STRING]"
+. \}
+. el \{\
+. ie \\n[#\\*[EN-OR-BIB]_STRING_UNDERLINE]=2 \
+. UNDERSCORE2 \\*[$\\*[EN-OR-BIB]_UNDERLINE_GAP]
\\*[$\\*[EN-OR-BIB]_RULE_GAP] "\\*[$\\*[EN-OR-BIB]_STRING]"
+. el .UNDERSCORE "\\*[$\\*[EN-OR-BIB]_STRING]"
+. \}
+. \}
+. el .PRINT "\\*[$\\*[EN-OR-BIB]_STRING]
. \}
-. if \\n[#COLUMNS_WERE_ON] .nr #COLUMNS 1
-. if \\n[#HEADER_STATE]=1 .HEADERS
-. if \\n[#LINENUMBERS]=2 \{\
-. NUMBER_LINES RESUME
-. nr #LINENUMBERS 1
+. SMALLCAPS OFF
+. CAPS OFF
+. if \\n[#\\*[EN-OR-BIB]_STRING_COLOR]=1 .gcolor
+. if \\n[#PRINT_STYLE]=1 \{\
+. ie \\n[#SINGLE_SPACE]=1 .sp
+. el \{\
+. ie \\n[#\\*[EN-OR-BIB]_SINGLESPACE]=1 .sp
+. el .
+. \}
. \}
+. SHIM
+. QUAD \\*[$\\*[EN-OR-BIB]_QUAD]
+.END
.
-. PRINT_FOOTER
-. rr #ENDNOTES
+.ALIAS SETUP_BIBLIOGRAPHY SETUP_BIB_EN
+.ALIAS SETUP_ENDNOTES SETUP_BIB_EN
+\#
+\# ENDNOTES, BIBLIOGRAPHY and TOC LEADING
+\# --------------------------------------
+\# *Argument:
+\# <leading> [ ADJUST ]
+\# *Function:
+\# Depending on the name by which it's called, creates or modifies
+\# register #<type>_LEAD, where <type> is BIB, EN, or TOC. Creates or
removes
+\# register #ADJ_<type>_LEAD. Stores arguments in strings if BIB,
+\# EN, or TOC leading are set before START.
+\# *Notes:
+\# Default is same as doc lead for TYPESET, adjusted; 24 for TYPEWRITE.
+\#
+.MAC _LEAD END
+. if '\\$0'BIBLIOGRAPHY_LEAD' .ds $SECTION BIB
+. if '\\$0'ENDNOTE_LEAD' .ds $SECTION EN
+. if '\\$0'TOC_LEAD' .ds $SECTION TOC
+. ds $\\*[$SECTION]_LEAD \\$1
+. ds $ADJUST_\\*[$SECTION]_LEAD \\$2
+. if !\\n[#OK_PROCESS_LEAD] .return
+. nr #\\*[$SECTION]_LEAD (p;\\$1)
+. rr #ADJ_\\*[$SECTION]_LEAD
+. als \\*[$SECTION]_LEAD DOC_LEAD
+. if '\\$2'ADJUST' \{\
+. nr #ORIG_DOC_LEAD \\n[#UNADJUSTED_DOC_LEAD]
+. nr #RESTORE_ADJ_DOC_LEAD \\n[#ADJ_DOC_LEAD]
+. nr #ADJ_DOC_LEAD 1
+. nr #ADJ_\\*[$SECTION]_LEAD 1
+. nr #NO_TRAP_RESET 1
+. \\*[$SECTION]_LEAD \\n[#\\*[$SECTION]_LEAD]u ADJUST
+. nr #\\*[$SECTION]_LEAD \\n[#DOC_LEAD]
+. DOC_LEAD \\n[#ORIG_DOC_LEAD]u
+. rr #NO_TRAP_RESET
+. nr #ADJ_DOC_LEAD \\n[#RESTORE_ADJ_DOC_LEAD]
+. rr #ORIG_DOC_LEAD
+. \}
.END
+.
+.ALIAS BIBLIOGRAPHY_LEAD _LEAD
+.ALIAS ENDNOTE_LEAD _LEAD
+.ALIAS TOC_LEAD _LEAD
\#
\# ====================================================================
\#
@@ -14234,13 +14279,14 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
.END
\#
.MAC BIBLIOGRAPHY_STRING_ADVANCE END
-. nr #BIB_STRING_ADVANCE (\\$1)
+. nr #BIB_STRING_V_POS (u;\\$1)
.END
\#
-.MAC BIBLIOGRAPHY_STRING_CAPS END
-. ie '\\$1'' .nr #BIB_STRING_CAPS 1
-. el .nr #BIB_STRING_CAPS 0
+.MAC BIBLIOGRAPHY_STRING_V_POS END
+. nr #BIB_STRING_V_POS (u;\\$1)
.END
+.
+.ALIAS BIBLIOGRAPHY_HEADER_V_POS BIBLIOGRAPHY_STRING_V_POS
\#
.MAC BIBLIOGRAPHY_NO_COLUMNS END
. ie '\\$1'' .nr #BIB_NO_COLS 1
@@ -14317,7 +14363,8 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
\# LIST means unumbered." Effectively, any arg but LIST produces
\# a "plain" bibliographic list.
\#
-\# The 2nd and 3rd args have the same options as the 2nd arg to LIST.
+\# The 2nd and 3rd args have the same options as the 2nd and 3rd
+\# args to LIST.
\#
.MAC BIBLIOGRAPHY_TYPE END
. ie '\\$1'LIST' \{\
@@ -14356,8 +14403,8 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. el .nr #BIB_SPACE (\\$1)
.END
\#
-\# Set up bibliography page
-\# ------------------------
+\# Bibliography (user space macro)
+\# -------------------------------
\# *Function:
\# Sets up a new page, with title, ready to accept the output
\# of refer's $LIST$ or .R1 bibliography .R2
@@ -14365,135 +14412,13 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
\# Bibliography pages are set up almost identically to endnotes pages.
\#
.MAC BIBLIOGRAPHY END
+. if \\n[defer] .NEWPAGE
. ie '\\$1'' \{\
. rr #FN_REF
. rr #EN_REF
. nr #BIBLIOGRAPHY 1
. nr #BIB_FIRST_PAGE 1
-. nr #HEADER_STATE \\n[#HEADERS_ON]
-. ds $RESTORE_PAGENUM_STYLE \\*[$PAGENUM_STYLE]
-. if \\n[#LINENUMBERS]=1 \{\
-. NUMBER_LINES OFF
-. nr #LINENUMBERS 2
-. \}
-. if \\n[#HEADERS_ON]=1 \
-. if !\\n[#BIB_ALLOWS_HEADERS_ALL] .HEADERS OFF
-. if \\n[#HEADER_STATE]=1 \{\
-. ie \\n[#BIB_HDRFTR_CENTER]=1 .
-. el .rm $HDRFTR_CENTER
-. \}
-. ie !\\n[#SUSPEND_PAGINATION] \{\
-. if \\n[#PAGINATE]=1 \{\
-. if \\n[#PAGE_NUM_V_POS]=1 \{\
-. PAGENUM_STYLE \\*[$BIB_PN_STYLE]
-. if \\n[#BIB_FIRST_PN] .PAGENUMBER \\n[#BIB_FIRST_PN]-1
-. if r #BIB_NO_FIRST_PN .nr #PAGINATE 0
-. \}
-. \}
-. \}
-. el \{\
-. ie \\n[#PAGE_NUM_V_POS]=2 .nr #PAGINATE 1
-. el .nr #PAGINATE 0
-. \}
-. if \\n[#FOOTERS_ON]=1 \{\
-. if !'\\*[$HDRFTR_CENTER_OLD]'' \
-. ds $HDRFTR_CENTER \\*[$HDRFTR_CENTER_OLD]
-. \}
-. NEWPAGE
-. if \\n[#FOOTERS_ON]=1 \{\
-. ds $HDRFTR_CENTER \\*[$HDRFTR_CENTER_NEW]
-. rm $HDRFTR_CENTER_OLD
-. rm $HDRFTR_CENTER_NEW
-. \}
-. ie !\\n[#SUSPEND_PAGINATION] \{\
-. if \\n[#PAGE_NUM_V_POS]=1 \{\
-. if r #BIB_NO_FIRST_PN \{\
-. if \\n[#PAGINATION_STATE]=1 .nr #PAGINATE 1
-. \}
-. \}
-. \}
-. el \
-. if \\n[#PAGE_NUM_V_POS]=2 .nr #PAGINATE 0
-. rr #PAGINATION_STATE
-. PAGENUM_STYLE \\*[$BIB_PN_STYLE]
-. if \\n[#BIB_FIRST_PN] .PAGENUMBER \\n[#BIB_FIRST_PN]
-. if \\n[#HEADER_STATE]=1 \
-. if \\n[#BIB_ALLOWS_HEADERS] .HEADERS
-.\" Collect bibliography title string for TOC
-. nr #TOC_ENTRY_PN \\n%+\\n[#PAGE_NUM_ADJ]
-. af #TOC_ENTRY_PN \\g[#PAGENUMBER]
-. ds $TOC_TITLE_ITEM \\*[$BIB_STRING]\\|
-. PDF_BOOKMARK 1 \\*[$BIB_STRING]
-. TITLE_TO_TOC
-.\" End collection of bibliography title string for TOC
-.\" Process bibliography
-. if \\n[#PRINT_STYLE]=1 .vs \\n[#BIB_LEAD]u
-. if \\n[#PRINT_STYLE]=2 \{\
-. if \\n[#BIB_NO_COLS] \{\
-. if \\n[#COLUMNS] .nr #COLUMNS_WERE_ON 1
-. nr #COLUMNS 0
-. \}
-. nr #RESTORE_DOC_LEAD \\n[#DOC_LEAD]
-. ie \\n[#ADJ_BIB_LEAD] .nr #DOC_LEAD \\n[#BIB_LEAD]
-. el .DOC_LEAD \\n[#BIB_LEAD]u
-. \}
-. vpt 0
-. ie r#BIB_STRING_ADVANCE .sp |\\n[#BIB_STRING_ADVANCE]u-1v
-. el .sp |\\n[#T_MARGIN]u-1v
-. vpt 1
-. mk bc
-. if \\n[#SLANT_ON] \{\
-\*[SLANTX]\c
-. \}
-. sp
-. if !'\\*[$BIB_STRING]'' \{\
-. if \\n[#PRINT_STYLE]=1 \{\
-. TYPEWRITER
-. vs \\n[#BIB_LEAD]u
-. \}
-. if \\n[#PRINT_STYLE]=2 \{\
-. LL \\n[#DOC_L_LENGTH]u
-. ta \\n[.l]u
-. if \\n[#COLUMNS] \{\
-. ie \\n[#BIB_NO_COLS] .LL \\n[#DOC_L_LENGTH]u
-. el .LL \\n[#COL_L_LENGTH]u
-. ta \\n[.l]u
-. \}
-. FAMILY \\*[$BIB_STRING_FAM]
-. FT \\*[$BIB_STRING_FT]
-. ps \\n[#BIB_PS]u\\*[$BIB_STRING_SIZE_CHANGE]
-. vs \\n[#BIB_LEAD]u
-. \}
-. if '\\*[$BIB_STRING_QUAD]'LEFT' .LEFT
-. if '\\*[$BIB_STRING_QUAD]'C' .CENTER
-. if '\\*[$BIB_STRING_QUAD]'CENTER' .CENTER
-. if '\\*[$BIB_STRING_QUAD]'CENTRE' .CENTER
-. if '\\*[$BIB_STRING_QUAD]'R' .RIGHT
-. if '\\*[$BIB_STRING_QUAD]'RIGHT' .RIGHT
-. EOL
-. if \\n[#BIB_STRING_CAPS] .CAPS
-. ie \\n[#BIB_STRING_UNDERLINE] \{\
-. nr #FROM_BIB_STRING 1
-. ie \\n[#BIB_STRING_UNDERLINE]=2 \
-. UNDERSCORE2 "\\*[$BIB_STRING]"
-. el .UNDERSCORE "\\*[$BIB_STRING]"
-. rr #FROM_BIB_STRING
-. \}
-. el .PRINT "\\*[$BIB_STRING]"
-. \}
-. CAPS OFF
-. FAMILY \\*[$BIB_FAMILY]
-. FT \\*[$BIB_FT]
-. ps -\\*[$BIB_STRING_SIZE_CHANGE]
-. if \\n[#PRINT_STYLE]=1 \{\
-. ie \\n[#SINGLE_SPACE]=1 .ALD \\n[#BIB_LEAD]*3u
-. el \{\
-. ie \\n[#BIB_SINGLESPACE]=1 .ALD \\n[#BIB_LEAD]u*3u
-. el .ALD \\n[#BIB_LEAD]u
-. \}
-. \}
-. if \\n[#PRINT_STYLE]=2 .ALD \\n[#BIB_LEAD]u*2u
-. QUAD \\*[$BIB_QUAD]
+. SETUP_BIBLIOGRAPHY
. if \\n[#PRINT_STYLE]=1 \{\
. ie \\n[#SINGLE_SPACE]=1 .vs \\n[#BIB_LEAD]u
. el \{\
@@ -14562,8 +14487,8 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
\!. ps \\n[#TOC_PS]u\\*[$TOC_HEAD_\\n[#LEVEL]_SIZE]
. \}
. el \{\
-\!. FAMILY \\*[$TOC_TITLE_FAM]
-\!. FT \\*[$TOC_TITLE_FT]
+\!. FAMILY \\*[$TOC_TITLE_FAM]
+\!. FT \\*[$TOC_TITLE_FT]
\!. ps \\n[#TOC_PS]u\\*[$TOC_TITLE_SIZE]
. \}
. \}
@@ -14592,6 +14517,10 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. \}
\!. vpt 0
. ie '\\$0'HD_TO_TOC' \{\
+. if \\n[#PRINT_STYLE]=1 \{\
+. ds $TOC_HEAD_\\n[#LEVEL]_FAM] \\*[$TYPEWRITER_FAM]
+. ds $TOC_HEAD_\\n[#LEVEL]_FT] R
+. \}
\!. PAD \
"\\f[\\*[$TOC_HEAD_\\n[#LEVEL]_FAM]\
\\*[$TOC_HEAD_\\n[#LEVEL]_FT]]\
@@ -14600,6 +14529,10 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
"\\*[PDFBOOKMARK.NAME]"
. \}
. el \{\
+. if \\n[#PRINT_STYLE]=1 \{\
+. ds $TOC_TITLE_FAM \\*[$TYPEWRITER_FAM]
+. ds $TOC_TITLE_FT R
+. \}
\!. PAD \
"\\f[\\*[$TOC_TITLE_FAM]\\*[$TOC_TITLE_FT]]\
\h'\\n[#TOC_TITLE_INDENT]u'\\*[$TOC_TITLE_ITEM]\\*[$TOC_PN\\*[_TYPEWRITE]]" \
@@ -14633,8 +14566,8 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. da
. ev
.END
-\#
-.ALIAS HD_TO_TOC TO_TOC
+.
+.ALIAS HD_TO_TOC TO_TOC
.ALIAS TITLE_TO_TOC TO_TOC
\#
\# Control macros for toc
@@ -14683,6 +14616,14 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. rr #TOC_TITLE_CAPS
. shift
. \}
+. if '\\$1'SMALLCAPS' \{\
+. nr #TOC_TITLE_SMALLCAPS 1
+. shift
+. \}
+. if '\\$1'NO_SMALLCAPS' \{\
+. rr #TOC_TITLE_SMALLCAPS
+. shift
+. \}
. if '\\$1'INDENT' \{\
. shift
. nr #TOC_TITLE_INDENT \\$1
@@ -14704,23 +14645,30 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. ds $TOC_HEADER_STRING \\$1
.END
\#
-\# TOC HEADER CAPS
-\# ---------------
+\# TOC HEADER CAPS and SMALLCAPS
+\# -----------------------------
\# *Arguments:
\# <none> | <anything>
\# *Function:
-\# Turns capitalization of the toc title string on or off.
+\# Turns capitalization or smallcaps style of the toc title string
+\# on or off.
\# *Notes:
\# Users may want the the toc title string to be in
\# caps, but the page header to be in lower case. If the
\# argument to TOC_HEADER_STRING is in lower case and
\# TOC_HEADER_CAPS is turned on, this is exactly what will
-\# happen.
+\# happen. Ditto for SMALLCAPS.
\#
.MAC TOC_HEADER_CAPS END
. ie '\\$1'' .nr #TOC_STRING_CAPS 1
. el .nr #TOC_STRING_CAPS 0
.END
+.
+.MAC TOC_HEADER_SMALLCAPS END
+. ie '\\$1'' .nr #TOC_STRING_SMALLCAPS 1
+. el .nr #TOC_STRING_SMALLCAPS 0
+.END
+.
\#
\# TOC VERTICAL PLACEMENT
\# ----------------------
@@ -14904,8 +14852,10 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. if \\n[#PREFIX_CH_NUM] .nr #TOC_INDENT_ADJ \\n[#TOC_CH_NUM_INDENT]
. \}
. el \{\
-. nr #SKIP_ENTRY 1
-. nr #TOC_INDENT_ADJ 0
+. if !\\n[#DOC_TYPE]=2 \{\
+. if r #LEVEL .nr #SKIP_ENTRY 1
+. nr #TOC_INDENT_ADJ 0
+. \}
. \}
. nr #TOC 1
. nr TOC.RELOCATE 0
@@ -14928,8 +14878,11 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. rr #COLUMNS
. COLLATE
. if \\n[#PRINT_STYLE]=1 \{\
-. if \\n[#SINGLE_SPACE] .vs 24
+. rr #IGNORE
+. if \\n[#SINGLE_SPACE] .DOC_LEAD 24
. DOC_LEAD_ADJUST
+. TRAPS
+. nr #IGNORE 1
. \}
. if \\n[#PRINT_STYLE]=2 .vs \\n[#TOC_LEAD]u
. if \\n[#FINIS] \{\
@@ -14950,15 +14903,20 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. ie \\n[#TOC_HEADER_V_POS] \
. DOCHEADER OFF \\n[#TOC_HEADER_V_POS]u-\\n[#DOC_LEAD]u
. el .DOCHEADER OFF \\n[#T_MARGIN]u-\\n[#DOC_LEAD]u
+. if (\\n[#PRINT_STYLE]=1)&(\\n[#SINGLE_SPACE]=1) \{\
+. DOCHEADER OFF \\n[#T_MARGIN]u-(\\n[#DOC_LEAD]u*2u)
+. \}
. if !r #TOC_START_PAGENUM .nr #TOC_START_PAGENUM 1
. PAGENUMBER \\n[#TOC_START_PAGENUM]
. if \\n[#LINENUMBERS]=2 .nr #LINENUMBERS 3
. L_MARGIN \\n[#DOC_L_MARGIN]u
. LL \\n[#DOC_L_LENGTH]u
+. HEADER_FAMILY \\*[$TOC_FAM]
. HEADER_CENTER "\\*[$TOC_HEADER_STRING]
. if \\n[#SLANT_ON] .nop \\*[SLANTX]
-. START
. PAGENUM_STYLE \\*[$TOC_PN_STYLE]
+. PAGENUM_FAMILY \\*[$TOC_PN_FAM]
+. START
. PDF_BOOKMARK 1 \\*[$TOC_HEADER_STRING]
. if \\n[#PRINT_STYLE]=1 .TYPEWRITER
. if \\n[#PRINT_STYLE]=2 \{\
@@ -14971,24 +14929,27 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. \}
. \}
. QUAD \\*[$TOC_HEADER_QUAD]
+. if \\n[#TOC_HEADER_COLOR]=1 .gcolor \\*[$TOC_HEADER_COLOR]
. if \\n[#TOC_STRING_CAPS] .CAPS
+. if \\n[#TOC_STRING_SMALLCAPS] .SMALLCAPS
. if \\n[#PRINT_STYLE]=1 \{\
. UNDERSCORE 3p "\\*[$TOC_HEADER_STRING]"
. \}
. if \\n[#PRINT_STYLE]=2 \{\
. ie \\n[#TOC_HEADER_UNDERLINE] \{\
-. nr #FROM_TOC_HEADER 1
+. ds $TITLE_TYPE TOC_HEADER
. ie \\n[#TOC_HEADER_UNDERLINE]=2 \
. UNDERSCORE2 \\*[$TOC_UNDERLINE_GAP] \\*[$TOC_RULE_GAP]
"\\*[$TOC_HEADER_STRING]"
. el .UNDERSCORE "\\*[$TOC_HEADER_STRING]"
-. rr #FROM_TOC_HEADER
. \}
. el .PRINT \\*[$TOC_HEADER_STRING]
. \}
+. SMALLCAPS OFF
. CAPS OFF
+. if \\n[#TOC_HEADER_COLOR]=1 .gcolor
. sp
+. SHIM
. nf
-. gcolor
. TOC_ENTRIES
. rr #TOC
. if \\n[#LINENUMBERS]=3 \{\
@@ -15109,7 +15070,7 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. tm1 "[mom]: You must append a number to the \\$1 argument to \\$0.
. tm1 " The number should be the total number of items in this
list.
. tm1 " See the documentation.
-. ab Aborting '\\n[.F]' at \\$0, line \\n[.c].
+. ab [mom]: Aborting '\\n[.F]' at \\$0, line \\n[.c].
. \}
. ds $ROMAN_WIDTH \\$1
. substring $ROMAN_WIDTH 1
@@ -15801,6 +15762,16 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
\# N.B.--the START macro must be used after every COLLATE
\#
.MAC COLLATE END
+. nr #HEADER_STATE \\n[#HEADERS_ON]
+. if (\\n[defer]=0)&(\\n[float*defer]=0) .HEADERS OFF
+. if \\n[#LINENUMBERS] \{\
+. NUMBER_LINES off
+. nr #LINENUMBERS 2
+. \}
+. if \\n[nl]=\\n[#PAGE_TOP] \{\
+. nr #NO_NEWPAGE 1
+. RESTORE_SPACE
+. \}
. if \\n[defer] \
. DO_FOOTER
. EOL
@@ -15810,7 +15781,6 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. ds $SAVED_PP_FT \\*[$PP_FT]
. nr #COLLATE 1
. nr #PRE_COLLATE 1
-. nr #HEADER_STATE \\n[#HEADERS_ON]
. nr #POST_TOP 1
. nr #ARG_NUM 0 1
. nr #LOOP \\n[#ACTIVE_LEVELS] \" loop count
@@ -15824,7 +15794,6 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. if \\n[pdf-img*label-with-chapter]=1 .nr pdf-img*label-num 0 1
. if \\n[pic*label-with-chapter]=1 .nr pic*label-num 0 1
. if \\n[tbl*label-with-chapter]=1 .nr tbl*label-num 0 1
-. if (\\n[defer]=0)&(\\n[float*defer]=0) .HEADERS OFF
. if \\n[#DOC_HEADER]=2 .nr #DOC_HEADER 1
. if \\n[#PAGE_NUM_V_POS]=1 \{\
. nr #PAGINATION_STATE \\n[#PAGINATE]
@@ -15861,12 +15830,28 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. if \\n[#TOC]=0 .nr #CH_NUM +1
. rm $EN_TITLE
. COVERTITLE
-. DOCCOVERTITLE
-. MISC
+. DOC_COVERTITLE
. TITLE
-. SUBTITLE
. CHAPTER
. CHAPTER_TITLE
+. SUBTITLE
+. MISC
+. rr #COVER_TITLE
+. rr #DOC_COVER_TITLE
+. rr #MISC
+. rr #COVER_MISC
+. rr #DOC_COVER_MISC
+. rr #COPYRIGHT
+. rr #COVER_COPYRIGHT
+. rr #DOC_COVER_COPYRIGHT
+. rr #COVER_AUTHOR
+. rr #DOC_COVER_AUTHOR
+. rm COVER_TEXT
+. rm DOC_COVER_TEXT
+. rm $COPYRIGHT
+. rm $COVER_COPYRIGHT
+. rm $DOC_COVER_COPYRIGHT
+. rr #END_QUOTE
. rr #PAGENUM_STYLE_SET
. rr #DOC_COVER
. rr #COVER
@@ -15889,23 +15874,23 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
\#
.MAC NUMBER_LINES END
. br
-. if \\n[#QUOTE] \{\
-. if \\n[#QUOTE]=1 .ds macro QUOTE
-. if \\n[#QUOTE]=2 .ds macro BLOCKQUOTE
-. tm1 "[mom]: \\$0 at line \\n[.c] may not be used inside \\*[macro].
-. tm1 " Please set NUMBER_LINES before \\*[macro], followed by
-. tm1 " NUMBER_\\*[macro]_LINES.
-. ab Aborting '\\n[.F]' at \\$0, line \\n[.c].
-. \}
. if '\\n[.z]'EPI_TEXT' .return
. if '\\$1'' \{\
. tm1 "[mom]: NUMBER_LINES at line \\n[.c] has no argument.
-. tm1 " Most likely, you have forgotten to give it a starting line
number.
-. ab Aborting '\\n[.F]' at \\$0, line \\n[.c].
+. tm1 " You have forgotten to give a starting line number or
'RESUME'.
+. ab [mom]: Aborting '\\n[.F]' at \\$0, line \\n[.c].
. \}
. if !\\n[#LINENUMBERS]=2 .nr #LINENUMBERS 1
.\" Test whether the first arg is a digit.
. if \B'\\$1' \{\
+. if \\n[#QUOTE] \{\
+. if \\n[#QUOTE]=1 .ds macro QUOTE
+. if \\n[#QUOTE]=2 .ds macro BLOCKQUOTE
+. tm1 "[mom]: \\$0 at line \\n[.c] may not be used inside \\*[macro].
+. tm1 " Please set NUMBER_LINES before \\*[macro], followed by
+. tm1 " NUMBER_\\*[macro]_LINES.
+. ab [mom]: Aborting '\\n[.F]' at \\$0, line \\n[.c].
+. \}
. nr #LN \\$1
. ds $LN_NUM \\$1
. if !'\\n[.z]'' .nr #RESTORE_LN_NUM 1
@@ -15926,8 +15911,9 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. \}
. el \{\
. nm
-.\" register ln is still set and may confuse preprocessors like tbl
-.\" still, resuming line numbering must be possible, so save ln in $LN_NUM
+.\" Register ln is still set and may confuse preprocessors like tbl.
+.\" Still, resuming line numbering must be possible, so save ln in
+.\" $LN_NUM
. ds $LN_NUM \\n[ln]
. if !\\n[#QUOTE] .nr ln 0
. if !\\n[#LINENUMBERS]=2 .rr #LINENUMBERS
@@ -15949,6 +15935,14 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
\# *Function:
\# LN_PARAMS sets parameters for line numbers.
\# RESTORE_PARAMS restores them after internal calls to .nm
+\# *Notes:
+\# It's not documented, but groff's linenumbering is processed
+\# in a unique environment reserved for the numbers, such that
+\# whatever style params were in effect prior to the invocation
+\# of .nm remain in effect for the numbers even if the running
+\# text has different params. Eg, If you set .gcolor to 'purple'
+\# before .nm then set it back to what it was, the numbers will be
+\# purple while the text remains at the default color.
\#
.MAC LN_PARAMS END
. ie d$LN_FAM .fam \\*[$LN_FAM]
@@ -15968,6 +15962,23 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. gcolor
.END
\#
+\# Whether, at COLLATE, to reset line number to 1.
+\#
+\# NUMBER LINES PER SECTION
+\# ------------------------
+\# *Argument:
+\# none
+\# *Function:
+\# Sets register that determines whether, at COLLATE, to reset
+\# line number to 1.
+\# *Notes:
+\# The default is to continue the line numbering from where it
+\# left off.
+\#
+.MAC NUMBER_LINES_PER_SECTION END
+. nr #PER_SECTION 1
+.END
+\#
\# NUMBER QUOTE AND BLOCKQUOTE LINES AS PART OF RUNNING TEXT
\# ---------------------------------------------------------
\# *Argument:
@@ -16526,7 +16537,7 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. if \\n[#INDENT_LEFT_ACTIVE] \{\
. in \\n[#L_INDENT]u
. if \\n[#QUOTE] \{\
-. in -\\n[#L_INDENT]u \"Because you added an indent in 2nd line of
macro
+. in -\\n[#L_INDENT]u \"Because we added an indent in 2nd line of
macro
. ll -\\n[#L_INDENT]u
. ta \\n[.l]u
. \}
@@ -16649,49 +16660,37 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
\#
\# +++DOCUMENT PROCESSING ALIASES+++
\#
-\# Aliases to make life easier for users: synonyms, short forms
+\# Create aliases to make life easier for users: synonyms, short forms
\# and alternate spellings.
\#
-.ALIAS BREAK_BLOCKQUOTE BREAK_QUOTE
-.ALIAS BREAK_CITATION BREAK_QUOTE
-.ALIAS BREAK_CITE BREAK_QUOTE
-.ALIAS BLOCKQUOTE_INDENT QUOTE_INDENT
-.ALIAS CITATION BLOCKQUOTE
-.ALIAS CITATION_FAMILY BLOCKQUOTE_FAMILY
-.ALIAS CITATION_FONT BLOCKQUOTE_FONT
-.ALIAS CITATION_SIZE BLOCKQUOTE_SIZE
-.ALIAS CITATION_COLOR BLOCKQUOTE_COLOR
-.ALIAS CITATION_QUAD BLOCKQUOTE_QUAD
-.ALIAS CITE BLOCKQUOTE
-.ALIAS CITE_FAMILY BLOCKQUOTE_FAMILY
-.ALIAS CITE_FONT BLOCKQUOTE_FONT
-.ALIAS CITE_SIZE BLOCKQUOTE_SIZE
-.ALIAS CITE_COLOR BLOCKQUOTE_COLOR
-.ALIAS CITE_QUAD BLOCKQUOTE_QUAD
-.ALIAS DOC_R_MARGIN DOC_RIGHT_MARGIN
-.ALIAS DOC_L_MARGIN DOC_LEFT_MARGIN
-.ALIAS DOC_L_LENGTH DOC_LINE_LENGTH
-.ALIAS DOC_RMARGIN DOC_RIGHT_MARGIN
-.ALIAS DOC_LMARGIN DOC_LEFT_MARGIN
-.ALIAS DOC_LLENGTH DOC_LINE_LENGTH
-.ALIAS DOC_FAM DOC_FAMILY
-.ALIAS DOC_LS DOC_LEAD
-.ALIAS DOC_PS DOC_PT_SIZE
-.ALIAS FILL QUAD
-.ALIAS PAGENUM PAGENUMBER
-.ALIAS PAGINATION PAGINATE
-.ALIAS PP_FT PP_FONT
-.ALIAS REF_INDENT INDENT_REFS
-.ALIAS TOC_PS TOC_PT_SIZE
+.ALIAS BREAK_BLOCKQUOTE BREAK_QUOTE
+.ALIAS BREAK_CITATION BREAK_QUOTE
+.ALIAS BREAK_CITE BREAK_QUOTE
+.ALIAS CITATION BLOCKQUOTE
+.ALIAS CITE BLOCKQUOTE
+.ALIAS DOC_R_MARGIN DOC_RIGHT_MARGIN
+.ALIAS DOC_L_MARGIN DOC_LEFT_MARGIN
+.ALIAS DOC_L_LENGTH DOC_LINE_LENGTH
+.ALIAS DOC_RMARGIN DOC_RIGHT_MARGIN
+.ALIAS DOC_LMARGIN DOC_LEFT_MARGIN
+.ALIAS DOC_LLENGTH DOC_LINE_LENGTH
+.ALIAS DOC_FAM DOC_FAMILY
+.ALIAS DOC_LS DOC_LEAD
+.ALIAS DOC_PS DOC_PT_SIZE
+.ALIAS FILL QUAD
+.ALIAS PAGENUM PAGENUMBER
+.ALIAS PAGINATION PAGINATE
+.ALIAS PP_FT PP_FONT
+.ALIAS REF_INDENT INDENT_REFS
+.ALIAS TOC_PS TOC_PT_SIZE
\#
\# HEADER and FOOTER macros
\# ------------------------
\# Because the type-style of headers and footers are managed
\# identically, and the type-style macros (_<type parameter>) all
\# require the correct name of the calling macro, it's necessary
-\# to create HEADER_ and FOOTER_ macros here. They're basically
-\# aliases of HDRFTR_, but required because you can't alias an
-\# alias.
+\# to create HEADER_ and FOOTER_ macros here that are basically
+\# aliases with an argument.
\#
.MAC FOOTER_CENTER_COLOR END
. HDRFTR_CENTER_COLOR \\$1
@@ -17001,244 +17000,273 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. HDRFTR_SIZE \\$1
.END
\#
-\# HEADER and FOOTER aliases for HDRFTR macros.
-\#
-.ALIAS BIBLIOGRAPHY_FOOTER_CENTER BIBLIOGRAPHY_HDRFTR_CENTER
-.ALIAS BIBLIOGRAPHY_FOOTER_CENTRE BIBLIOGRAPHY_HDRFTR_CENTRE
-.ALIAS BIBLIOGRAPHY_HEADER_CENTER BIBLIOGRAPHY_HDRFTR_CENTER
-.ALIAS BIBLIOGRAPHY_HEADER_CENTRE BIBLIOGRAPHY_HDRFTR_CENTRE
-.ALIAS ENDNOTES_FOOTER_CENTER ENDNOTES_HDRFTR_CENTER
-.ALIAS ENDNOTES_FOOTER_CENTRE ENDNOTES_HDRFTR_CENTRE
-.ALIAS ENDNOTES_HEADER_CENTER ENDNOTES_HDRFTR_CENTER
-.ALIAS ENDNOTES_HEADER_CENTRE ENDNOTES_HDRFTR_CENTRE
-.ALIAS FOOTER_CENTER_CAPS HDRFTR_CENTER_CAPS
-.ALIAS FOOTER_CENTER HDRFTR_CENTER
-.ALIAS FOOTER_CENTER_PAD HDRFTR_CENTER_PAD
-.ALIAS FOOTER_CENTRE HDRFTR_CENTER
-.ALIAS FOOTER_CENTRE_PAD HDRFTR_CENTER_PAD
-.ALIAS FOOTER_LEFT_CAPS HDRFTR_LEFT_CAPS
-.ALIAS FOOTER_LEFT HDRFTR_LEFT
-.ALIAS FOOTER_PLAIN HDRFTR_PLAIN
-.ALIAS FOOTER_RECTO HDRFTR_RECTO
-.ALIAS FOOTER_RIGHT_CAPS HDRFTR_RIGHT_CAPS
-.ALIAS FOOTER_RIGHT HDRFTR_RIGHT
-.ALIAS FOOTER_RULE_GAP HDRFTR_RULE_GAP
-.ALIAS FOOTER_RULE HDRFTR_RULE
-.ALIAS FOOTER_VERSO HDRFTR_VERSO
-.ALIAS HEADER_CENTER_CAPS HDRFTR_CENTER_CAPS
-.ALIAS HEADER_CENTER HDRFTR_CENTER
-.ALIAS HEADER_CENTER_PAD HDRFTR_CENTER_PAD
-.ALIAS HEADER_CENTRE_CAPS HDRFTR_CENTER_CAPS
-.ALIAS HEADER_CENTRE HDRFTR_CENTER
-.ALIAS HEADER_CENTRE_PAD HDRFTR_CENTER_PAD
-.ALIAS HEADER_LEFT_CAPS HDRFTR_LEFT_CAPS
-.ALIAS HEADER_LEFT HDRFTR_LEFT
-.ALIAS HEADER_PLAIN HDRFTR_PLAIN
-.ALIAS HEADER_RECTO HDRFTR_RECTO
-.ALIAS HEADER_RIGHT_CAPS HDRFTR_RIGHT_CAPS
-.ALIAS HEADER_RIGHT HDRFTR_RIGHT
-.ALIAS HEADER_RULE_GAP HDRFTR_RULE_GAP
-.ALIAS HEADER_RULE HDRFTR_RULE
-.ALIAS HEADER_VERSO HDRFTR_VERSO
-.ALIAS SWITCH_FOOTERS SWITCH_HDRFTR
-.ALIAS SWITCH_HEADERS SWITCH_HDRFTR
-\#
-\# Type-style aliases
-\#
-.ALIAS AUTHOR_FAMILY _FAMILY
-.ALIAS BIBLIOGRAPHY_FAMILY _FAMILY
-.ALIAS BIBLIOGRAPHY_STRING_FAMILY _FAMILY
-.ALIAS BLOCKQUOTE_FAMILY _FAMILY
-.ALIAS CHAPTER_TITLE_FAMILY _FAMILY
-.ALIAS COVER_AUTHOR_FAMILY _FAMILY
-.ALIAS COVER_CHAPTER_TITLE_FAMILY _FAMILY
-.ALIAS COVER_COPYRIGHT_FAMILY _FAMILY
-.ALIAS COVER_DOCTYPE_FAMILY _FAMILY
-.ALIAS COVER_FAMILY _FAMILY
-.ALIAS COVER_MISC_FAMILY _FAMILY
-.ALIAS COVER_SUBTITLE_FAMILY _FAMILY
-.ALIAS COVER_TITLE_FAMILY _FAMILY
-.ALIAS DOC_COVER_AUTHOR_FAMILY _FAMILY
-.ALIAS DOC_COVER_CHAPTER_TITLE_FAMILY _FAMILY
-.ALIAS DOC_COVER_COPYRIGHT_FAMILY _FAMILY
-.ALIAS DOC_COVER_DOCTYPE_FAMILY _FAMILY
-.ALIAS DOC_COVER_FAMILY _FAMILY
-.ALIAS DOC_COVER_MISC_FAMILY _FAMILY
-.ALIAS DOC_COVER_SUBTITLE_FAMILY _FAMILY
-.ALIAS DOC_COVER_TITLE_FAMILY _FAMILY
-.ALIAS DOCHEADER_FAMILY _FAMILY
-.ALIAS DOCTYPE_FAMILY _FAMILY
-.ALIAS ENDNOTE_FAMILY _FAMILY
-.ALIAS ENDNOTE_NUMBER_FAMILY _FAMILY
-.ALIAS ENDNOTE_LINENUMBER_FAMILY _FAMILY
-.ALIAS ENDNOTES_HEADER_FAMILY _FAMILY
-.ALIAS ENDNOTE_STRING_FAMILY _FAMILY
-.ALIAS ENDNOTE_TITLE_FAMILY _FAMILY
-.ALIAS EPIGRAPH_FAMILY _FAMILY
-.ALIAS FOOTNOTE_FAMILY _FAMILY
-.ALIAS HDRFTR_CENTER_FAMILY _FAMILY
-.ALIAS HDRFTR_FAMILY _FAMILY
-.ALIAS HDRFTR_LEFT_FAMILY _FAMILY
-.ALIAS HDRFTR_RIGHT_FAMILY _FAMILY
-.ALIAS LINENUMBER_FAMILY _FAMILY
-.ALIAS PAGENUM_FAMILY _FAMILY
-.ALIAS QUOTE_FAMILY _FAMILY
-.ALIAS SUBTITLE_FAMILY _FAMILY
-.ALIAS TITLE_FAMILY _FAMILY
-.ALIAS TOC_FAM _FAMILY
-.ALIAS TOC_FAMILY _FAMILY
-.ALIAS TOC_HEADER_FAMILY _FAMILY
-.ALIAS TOC_PN_FAMILY _FAMILY
-\#
-.ALIAS AUTHOR_FONT _FONT
-.ALIAS BIBLIOGRAPHY_STRING_FONT _FONT
-.ALIAS BIBLIOGRAPHY_FONT _FONT
-.ALIAS BLOCKQUOTE_FONT _FONT
-.ALIAS CHAPTER_TITLE_FONT _FONT
-.ALIAS COVER_AUTHOR_FONT _FONT
-.ALIAS COVER_CHAPTER_TITLE_FONT _FONT
-.ALIAS COVER_COPYRIGHT_FONT _FONT
-.ALIAS COVER_DOCTYPE_FONT _FONT
-.ALIAS COVER_MISC_FONT _FONT
-.ALIAS COVER_SUBTITLE_FONT _FONT
-.ALIAS COVER_TITLE_FONT _FONT
-.ALIAS DOC_COVER_AUTHOR_FONT _FONT
-.ALIAS DOC_COVER_CHAPTER_TITLE_FONT _FONT
-.ALIAS DOC_COVER_COPYRIGHT_FONT _FONT
-.ALIAS DOC_COVER_DOCTYPE_FONT _FONT
-.ALIAS DOC_COVER_MISC_FONT _FONT
-.ALIAS DOC_COVER_SUBTITLE_FONT _FONT
-.ALIAS DOC_COVER_TITLE_FONT _FONT
-.ALIAS DOCTYPE_FONT _FONT
-.ALIAS ENDNOTE_FONT _FONT
-.ALIAS ENDNOTE_NUMBER_FONT _FONT
-.ALIAS ENDNOTE_LINENUMBER_FONT _FONT
-.ALIAS ENDNOTES_HEADER_FONT _FONT
-.ALIAS ENDNOTE_STRING_FONT _FONT
-.ALIAS ENDNOTE_TITLE_FONT _FONT
-.ALIAS EPIGRAPH_FONT _FONT
-.ALIAS FOOTNOTE_FONT _FONT
-.ALIAS HDRFTR_CENTER_FONT _FONT
-.ALIAS HDRFTR_LEFT_FONT _FONT
-.ALIAS HDRFTR_RIGHT_FONT _FONT
-.ALIAS LINENUMBER_FONT _FONT
-.ALIAS PAGENUM_FONT _FONT
-.ALIAS QUOTE_FONT _FONT
-.ALIAS SUBTITLE_FONT _FONT
-.ALIAS TITLE_FONT _FONT
-.ALIAS TOC_HEADER_FONT _FONT
-.ALIAS TOC_PN_FONT _FONT
-\#
-.ALIAS AUTHOR_SIZE _SIZE
-.ALIAS BIBLIOGRAPHY_STRING_SIZE _SIZE
-.ALIAS BLOCKQUOTE_SIZE _SIZE
-.ALIAS CHAPTER_TITLE_SIZE _SIZE
-.ALIAS COVER_AUTHOR_SIZE _SIZE
-.ALIAS COVER_CHAPTER_TITLE_SIZE _SIZE
-.ALIAS COVER_COPYRIGHT_SIZE _SIZE
-.ALIAS COVER_DOCTYPE_SIZE _SIZE
-.ALIAS COVER_MISC_SIZE _SIZE
-.ALIAS COVER_SUBTITLE_SIZE _SIZE
-.ALIAS COVER_TITLE_SIZE _SIZE
-.ALIAS DOC_COVER_AUTHOR_SIZE _SIZE
-.ALIAS DOC_COVER_CHAPTER_TITLE_SIZE _SIZE
-.ALIAS DOC_COVER_COPYRIGHT_SIZE _SIZE
-.ALIAS DOC_COVER_DOCTYPE_SIZE _SIZE
-.ALIAS DOC_COVER_MISC_SIZE _SIZE
-.ALIAS DOC_COVER_SUBTITLE_SIZE _SIZE
-.ALIAS DOC_COVER_TITLE_SIZE _SIZE
-.ALIAS DOCTYPE_SIZE _SIZE
-.ALIAS ENDNOTE_NUMBER_SIZE _SIZE
-.ALIAS ENDNOTE_LINENUMBER_SIZE _SIZE
-.ALIAS ENDNOTES_HEADER_SIZE _SIZE
-.ALIAS ENDNOTE_STRING_SIZE _SIZE
-.ALIAS ENDNOTE_TITLE_SIZE _SIZE
-.ALIAS EPIGRAPH_SIZE _SIZE
-.ALIAS FOOTNOTE_SIZE _SIZE
-.ALIAS HDRFTR_CENTER_SIZE _SIZE
-.ALIAS HDRFTR_LEFT_SIZE _SIZE
-.ALIAS HDRFTR_RIGHT_SIZE _SIZE
-.ALIAS HDRFTR_SIZE _SIZE
-.ALIAS LINENUMBER_SIZE _SIZE
-.ALIAS PAGENUM_SIZE _SIZE
-.ALIAS QUOTE_SIZE _SIZE
-.ALIAS SUBTITLE_SIZE _SIZE
-.ALIAS TITLE_SIZE _SIZE
-.ALIAS TOC_HEADER_SIZE _SIZE
-.ALIAS TOC_PN_SIZE _SIZE
-\#
-.ALIAS ATTRIBUTE_COLOR _COLOR
-.ALIAS AUTHOR_COLOR _COLOR
-.ALIAS BLOCKQUOTE_COLOR _COLOR
-.ALIAS CHAPTER_TITLE_COLOR _COLOR
-.ALIAS CODE_COLOR _COLOR
-.ALIAS COVER_ATTRIBUTE_COLOR _COLOR
-.ALIAS COVER_AUTHOR_COLOR _COLOR
-.ALIAS COVER_CHAPTER_TITLE_COLOR _COLOR
-.ALIAS COVER_COLOR _COLOR
-.ALIAS COVER_COPYRIGHT_COLOR _COLOR
-.ALIAS COVER_DOCTYPE_COLOR _COLOR
-.ALIAS COVER_MISC_COLOR _COLOR
-.ALIAS COVER_SUBTITLE_COLOR _COLOR
-.ALIAS COVER_TITLE_COLOR _COLOR
-.ALIAS DOC_COVER_ATTRIBUTE_COLOR _COLOR
-.ALIAS DOC_COVER_AUTHOR_COLOR _COLOR
-.ALIAS DOC_COVER_CHAPTER_TITLE_COLOR _COLOR
-.ALIAS DOC_COVER_COLOR _COLOR
-.ALIAS DOC_COVER_COPYRIGHT_COLOR _COLOR
-.ALIAS DOC_COVER_DOCTYPE_COLOR _COLOR
-.ALIAS DOC_COVER_MISC_COLOR _COLOR
-.ALIAS DOC_COVER_SUBTITLE_COLOR _COLOR
-.ALIAS DOC_COVER_TITLE_COLOR _COLOR
-.ALIAS DOCHEADER_COLOR _COLOR
-.ALIAS DOCTYPE_COLOR _COLOR
-.ALIAS ENDNOTES_HEADER_COLOR _COLOR
-.ALIAS ENDNOTE_STRING_COLOR _COLOR
-.ALIAS EPIGRAPH_COLOR _COLOR
-.ALIAS FINIS_COLOR _COLOR
-.ALIAS FOOTNOTE_COLOR _COLOR
-.ALIAS HDRFTR_CENTER_COLOR _COLOR
-.ALIAS HDRFTR_COLOR _COLOR
-.ALIAS HDRFTR_LEFT_COLOR _COLOR
-.ALIAS HDRFTR_RIGHT_COLOR _COLOR
-.ALIAS HDRFTR_RULE_COLOR _COLOR
-.ALIAS LINEBREAK_COLOR _COLOR
-.ALIAS LINENUMBER_COLOR _COLOR
-.ALIAS PAGENUM_COLOR _COLOR
-.ALIAS QUOTE_COLOR _COLOR
-.ALIAS SECTION_COLOR _COLOR
-.ALIAS SUBTITLE_COLOR _COLOR
-.ALIAS TITLE_COLOR _COLOR
-.ALIAS TOC_HEADER_COLOR _COLOR
-\#
-.ALIAS BIBLIOGRAPHY_QUAD _QUAD
-.ALIAS BIBLIOGRAPHY_STRING_QUAD _QUAD
-.ALIAS BLOCKQUOTE_QUAD _QUAD
-.ALIAS COVER_COPYRIGHT_QUAD _QUAD
-.ALIAS COVER_MISC_QUAD _QUAD
-.ALIAS COVER_QUAD _QUAD
-.ALIAS DOC_COVER_COPYRIGHT_QUAD _QUAD
-.ALIAS DOC_COVER_MISC_QUAD _QUAD
-.ALIAS DOC_COVER_QUAD _QUAD
-.ALIAS DOCHEADER_QUAD _QUAD
-.ALIAS DOC_QUAD _QUAD
-.ALIAS ENDNOTE_QUAD _QUAD
-.ALIAS ENDNOTES_HEADER_QUAD _QUAD
-.ALIAS ENDNOTE_STRING_QUAD _QUAD
-.ALIAS ENDNOTE_TITLE_QUAD _QUAD
-.ALIAS EPIGRAPH_QUAD _QUAD
-.ALIAS FOOTNOTE_QUAD _QUAD
-.ALIAS TOC_HEADER_QUAD _QUAD
+\# Aliases for other HEADER and FOOTER macros.
+\#
+.ALIAS BIBLIOGRAPHY_FOOTER_CENTER BIBLIOGRAPHY_HDRFTR_CENTER
+.ALIAS BIBLIOGRAPHY_FOOTER_CENTRE BIBLIOGRAPHY_HDRFTR_CENTER
+.ALIAS BIBLIOGRAPHY_HEADER_CENTER BIBLIOGRAPHY_HDRFTR_CENTER
+.ALIAS BIBLIOGRAPHY_HEADER_CENTRE BIBLIOGRAPHY_HDRFTR_CENTER
+.
+.ALIAS ENDNOTES_FOOTER_CENTER ENDNOTES_HDRFTR_CENTER
+.ALIAS ENDNOTES_FOOTER_CENTRE ENDNOTES_HDRFTR_CENTER
+.ALIAS ENDNOTES_HEADER_CENTER ENDNOTES_HDRFTR_CENTER
+.ALIAS ENDNOTES_HEADER_CENTRE ENDNOTES_HDRFTR_CENTER
+.
+.ALIAS FOOTER_CENTER HDRFTR_CENTER
+.ALIAS FOOTER_CENTER_CAPS _HDRFTR_CAPS
+.ALIAS FOOTER_CENTER_PAD HDRFTR_CENTER_PAD
+.ALIAS FOOTER_CENTER_SMALLCAPS _HDRFTR_SMALLCAPS
+.ALIAS FOOTER_CENTRE HDRFTR_CENTER
+.ALIAS FOOTER_CENTRE_CAPS _HDRFTR_CAPS
+.ALIAS FOOTER_CENTRE_PAD HDRFTR_CENTER_PAD
+.ALIAS FOOTER_CENTRE_SMALLCAPS _HDRFTR_SMALLCAPS
+.ALIAS FOOTER_LEFT HDRFTR_LEFT
+.ALIAS FOOTER_LEFT_CAPS _HDRFTR_CAPS
+.ALIAS FOOTER_LEFT_SMALLCAPS _HDRFTR_SMALLCAPS
+.ALIAS FOOTER_PLAIN HDRFTR_PLAIN
+.ALIAS FOOTER_RECTO HDRFTR_RECTO
+.ALIAS FOOTER_RIGHT HDRFTR_RIGHT
+.ALIAS FOOTER_RIGHT_CAPS _HDRFTR_CAPS
+.ALIAS FOOTER_RIGHT_SMALLCAPS _HDRFTR_SMALLCAPS
+.ALIAS FOOTER_RULE HDRFTR_RULE
+.ALIAS FOOTER_RULE_GAP HDRFTR_RULE_GAP
+.ALIAS FOOTER_VERSO HDRFTR_VERSO
+.
+.ALIAS HEADER_CENTER HDRFTR_CENTER
+.ALIAS HEADER_CENTER_CAPS _HDRFTR_CAPS
+.ALIAS HEADER_CENTER_PAD HDRFTR_CENTER_PAD
+.ALIAS HEADER_CENTER_SMALLCAPS _HDRFTR_SMALLCAPS
+.ALIAS HEADER_CENTRE HDRFTR_CENTER
+.ALIAS HEADER_CENTRE_CAPS _HDRFTR_CAPS
+.ALIAS HEADER_CENTRE_PAD HDRFTR_CENTER_PAD
+.ALIAS HEADER_CENTRE_SMALLCAPS _HDRFTR_SMALLCAPS
+.ALIAS HEADER_LEFT HDRFTR_LEFT
+.ALIAS HEADER_LEFT_CAPS _HDRFTR_CAPS
+.ALIAS HEADER_LEFT_SMALLCAPS _HDRFTR_SMALLCAPS
+.ALIAS HEADER_PLAIN HDRFTR_PLAIN
+.ALIAS HEADER_RECTO HDRFTR_RECTO
+.ALIAS HEADER_RIGHT HDRFTR_RIGHT
+.ALIAS HEADER_RIGHT_CAPS _HDRFTR_CAPS
+.ALIAS HEADER_RIGHT_SMALLCAPS _HDRFTR_SMALLCAPS
+.ALIAS HEADER_RULE HDRFTR_RULE
+.ALIAS HEADER_RULE_GAP HDRFTR_RULE_GAP
+.ALIAS HEADER_VERSO HDRFTR_VERSO
+.
+.ALIAS SWITCH_FOOTERS SWITCH_HDRFTR
+.ALIAS SWITCH_HEADERS SWITCH_HDRFTR
+\#
+\# Create type-style aliases for tags, titles, and page elements
+\#
+\# These are used for creating aliases with while loops
+\#
+.ds ELEMENT_TYPE_1 BIBLIOGRAPHY_STRING
+.ds ELEMENT_TYPE_2 BIBLIOGRAPHY_HEADER
+.ds ELEMENT_TYPE_3 BLOCKQUOTE
+.ds ELEMENT_TYPE_4 CITATION
+.ds ELEMENT_TYPE_5 CITE
+.ds ELEMENT_TYPE_6 ENDNOTES_HEADER
+.ds ELEMENT_TYPE_7 ENDNOTE_STRING
+.ds ELEMENT_TYPE_8 EPIGRAPH
+.ds ELEMENT_TYPE_9 HDRFTR_CENTER
+.ds ELEMENT_TYPE_10 HDRFTR_LEFT
+.ds ELEMENT_TYPE_11 HDRFTR_RIGHT
+.ds ELEMENT_TYPE_12 LINENUMBER
+.ds ELEMENT_TYPE_13 PAGENUM
+.ds ELEMENT_TYPE_14 QUOTE
+.ds ELEMENT_TYPE_15 TOC_HEADER
+.ds ELEMENT_TYPE_16 CODE
+.ds ELEMENT_TYPE_17 FINIS
+.ds ELEMENT_TYPE_18 COPYRIGHT
+\#
+\# Create aliases for _FAMILY
+.ALIAS BIBLIOGRAPHY_FAMILY _FAMILY
+.ALIAS COVER_FAMILY _FAMILY
+.ALIAS DOCHEADER_FAMILY _FAMILY
+.ALIAS DOC_COVER_FAMILY _FAMILY
+.ALIAS ENDNOTE_FAMILY _FAMILY
+.ALIAS ENDNOTE_LINENUMBER_FAMILY _FAMILY
+.ALIAS ENDNOTE_NUMBER_FAMILY _FAMILY
+.ALIAS ENDNOTE_STRING_FAMILY _FAMILY
+.ALIAS ENDNOTE_TITLE_FAMILY _FAMILY
+.ALIAS FOOTNOTE_FAMILY _FAMILY
+.ALIAS HDRFTR_FAMILY _FAMILY
+.ALIAS PAGENUMBER_FAMILY _FAMILY
+.ALIAS TOC_FAMILY _FAMILY
+.ALIAS TOC_PAGENUMBER_FAMILY _FAMILY
+.ALIAS TOC_PN_FAMILY _FAMILY
+.ALIAS TOC_TITLE_FAMILY _FAMILY
+\#
+.nr #LOOP 0 1
+.while \n+[#LOOP]<=18 \{\
+. ALIAS \*[ELEMENT_TYPE_\n[#LOOP]]_FAMILY _FAMILY
+.\}
+\# Covers, docheader
+.nr #LOOP 0 1
+.while \n+[#LOOP]<=12 \{\
+. ALIAS \*[TITLE_TYPE_\n[#LOOP]]_FAMILY _FAMILY
+. ALIAS COVER_\*[TITLE_TYPE_\n[#LOOP]]_FAMILY _FAMILY
+. ALIAS DOC_COVER_\*[TITLE_TYPE_\n[#LOOP]]_FAMILY _FAMILY
+.\}
+\#
+\# Create aliases for _FONT
+.ALIAS BIBLIOGRAPHY_FONT _FONT
+.ALIAS ENDNOTE_FONT _FONT
+.ALIAS ENDNOTE_LINENUMBER_FONT _FONT
+.ALIAS ENDNOTE_NUMBER_FONT _FONT
+.ALIAS ENDNOTE_TITLE_FONT _FONT
+.ALIAS FOOTNOTE_FONT _FONT
+.ALIAS TOC_PN_FONT _FONT
+\#
+.nr #LOOP 0 1
+.while \n+[#LOOP]<=18 \{\
+. ALIAS \*[ELEMENT_TYPE_\n[#LOOP]]_FONT _FONT
+.\}
+\# Covers, docheader
+.nr #LOOP 0 1
+.while \n+[#LOOP]<=12 \{\
+. ALIAS \*[TITLE_TYPE_\n[#LOOP]]_FONT _FONT
+. ALIAS COVER_\*[TITLE_TYPE_\n[#LOOP]]_FONT _FONT
+. ALIAS DOC_COVER_\*[TITLE_TYPE_\n[#LOOP]]_FONT _FONT
+.\}
+\#
+\# Create aliases for _SIZE
+.ALIAS ENDNOTE_LINENUMBER_SIZE _SIZE
+.ALIAS ENDNOTE_NUMBER_SIZE _SIZE
+.ALIAS ENDNOTE_TITLE_SIZE _SIZE
+.ALIAS FOOTNOTE_SIZE _SIZE
+.ALIAS HDRFTR_SIZE _SIZE
+.ALIAS TOC_PN_SIZE _SIZE
+\#
+.nr #LOOP 0 1
+.while \n+[#LOOP]<=18 \{\
+. ALIAS \*[ELEMENT_TYPE_\n[#LOOP]]_SIZE _SIZE
+.\}
+\# Covers, docheader
+.nr #LOOP 0 1
+.while \n+[#LOOP]<=12 \{\
+. ALIAS \*[TITLE_TYPE_\n[#LOOP]]_SIZE _SIZE
+. ALIAS COVER_\*[TITLE_TYPE_\n[#LOOP]]_SIZE _SIZE
+. ALIAS DOC_COVER_\*[TITLE_TYPE_\n[#LOOP]]_SIZE _SIZE
+.\}
+\#
+\# Create aliases for TITLE_LEAD
+.nr #LOOP 0 1
+.while \n+[#LOOP]<=12 \{\
+. ALIAS \*[TITLE_TYPE_\n[#LOOP]]_LEAD TITLE_LEAD
+. ALIAS COVER_\*[TITLE_TYPE_\n[#LOOP]]_LEAD TITLE_LEAD
+. ALIAS DOC_COVER_\*[TITLE_TYPE_\n[#LOOP]]_LEAD TITLE_LEAD
+.\}
+\#
+\# Create aliases for _UNDERLINE
+.ALIAS BIBLIOGRAPHY_HEADER_UNDERLINE _UNDERLINE
+.ALIAS BIBLIOGRAPHY_HEADER_UNDERSCORE _UNDERLINE
+.ALIAS BIBLIOGRAPHY_STRING_UNDERLINE _UNDERLINE
+.ALIAS BIBLIOGRAPHY_STRING_UNDERSCORE _UNDERLINE
+.ALIAS BIB_STRING_UNDERLINE _UNDERLINE
+.ALIAS ENDNOTES_HEADER_UNDERLINE _UNDERLINE
+.ALIAS ENDNOTES_HEADER_UNDERSCORE _UNDERLINE
+.ALIAS ENDNOTES_STRING_UNDERLINE _UNDERLINE
+.ALIAS ENDNOTES_STRING_UNDERSCORE _UNDERLINE
+.ALIAS ENDNOTE_TITLE_UNDERLINE _UNDERLINE
+.ALIAS ENDNOTE_TITLE_UNDERSCORE _UNDERLINE
+.ALIAS EN_STRING_UNDERLINE _UNDERLINE
+.ALIAS EN_STRING_UNDERSCORE _UNDERLINE
+.ALIAS TOC_HEADER_UNDERLINE _UNDERLINE
+.ALIAS TOC_HEADER_UNDERSCORE _UNDERLINE
+\#
+.nr #LOOP 0 1
+.while \n+[#LOOP]<=12 \{\
+. ALIAS \*[TITLE_TYPE_\n[#LOOP]]_UNDERLINE _UNDERLINE
+. ALIAS \*[TITLE_TYPE_\n[#LOOP]]_UNDERSCORE _UNDERLINE
+. ALIAS COVER_\*[TITLE_TYPE_\n[#LOOP]]_UNDERLINE _UNDERLINE
+. ALIAS COVER_\*[TITLE_TYPE_\n[#LOOP]]_UNDERSCORE _UNDERLINE
+. ALIAS DOC_COVER_\*[TITLE_TYPE_\n[#LOOP]]_UNDERLINE _UNDERLINE
+. ALIAS DOC_COVER_\*[TITLE_TYPE_\n[#LOOP]]_UNDERSCORE _UNDERLINE
+.\}
+\#
+\# Create aliases for _COLOR
+.ALIAS BIBLIOGRAPHY_HEADER_COLOR _COLOR
+.ALIAS COVER_COLOR _COLOR
+.ALIAS DOCHEADER_COLOR _COLOR
+.ALIAS ENDNOTE_TITLE_COLOR _COLOR
+.ALIAS FINIS_COLOR _COLOR
+.ALIAS FOOTNOTE_COLOR _COLOR
+.ALIAS HDRFTR_COLOR _COLOR
+.ALIAS HDRFTR_RULE_COLOR _COLOR
+.ALIAS LINEBREAK_COLOR _COLOR
+.ALIAS SECTION_COLOR _COLOR
+\#
+.nr #LOOP 0 1
+.while \n+[#LOOP]<=18 \{\
+. ALIAS \*[ELEMENT_TYPE_\n[#LOOP]]_COLOR _COLOR
+.\}
+\# Covers, docheader
+.nr #LOOP 0 1
+.while \n+[#LOOP]<=12 \{\
+. ALIAS \*[TITLE_TYPE_\n[#LOOP]]_COLOR _COLOR
+. ALIAS COVER_\*[TITLE_TYPE_\n[#LOOP]]_COLOR _COLOR
+. ALIAS DOC_COVER_\*[TITLE_TYPE_\n[#LOOP]]_COLOR _COLOR
+.\}
+\#
+\# Create aliases for _CAPS
+.ALIAS BIBLIOGRAPHY_HEADER_CAPS _CAPS
+.ALIAS BIBLIOGRAPHY_STRING_CAPS _CAPS
+.ALIAS ENDNOTE_TITLE_CAPS _CAPS
+\#
+.nr #LOOP 0 1
+.while \n+[#LOOP]<=12 \{\
+. ALIAS \*[TITLE_TYPE_\n[#LOOP]]_CAPS _CAPS
+. ALIAS COVER_\*[TITLE_TYPE_\n[#LOOP]]_CAPS _CAPS
+. ALIAS DOC_COVER_\*[TITLE_TYPE_\n[#LOOP]]_CAPS _CAPS
+.\}
+\#
+\# Create aliases for _SMALLCAPS
+.ALIAS BIBLIOGRAPHY_HEADER_SMALLCAPS _SMALLCAPS
+.ALIAS BIBLIOGRAPHY_STRING_SMALLCAPS _SMALLCAPS
+.ALIAS ENDNOTE_TITLE_SMALLCAPS _SMALLCAPS
+.ALIAS HDRFTR_CENTER_SMALLCAPS _SMALLCAPS
+.ALIAS HDRFTR_LEFT_SMALLCAPS _SMALLCAPS
+.ALIAS HDRFTR_RIGHT_SMALLCAPS _SMALLCAPS
+\#
+.nr #LOOP 0 1
+.while \n+[#LOOP]<=12 \{\
+. ALIAS \*[TITLE_TYPE_\n[#LOOP]]_SMALLCAPS _SMALLCAPS
+. ALIAS COVER_\*[TITLE_TYPE_\n[#LOOP]]_SMALLCAPS _SMALLCAPS
+. ALIAS DOC_COVER_\*[TITLE_TYPE_\n[#LOOP]]_SMALLCAPS _SMALLCAPS
+.\}
+\#
+\# Create aliases for _QUAD
+.ALIAS BIBLIOGRAPHY_HEADER_QUAD _QUAD
+.ALIAS BIBLIOGRAPHY_QUAD _QUAD
+.ALIAS BIBLIOGRAPHY_STRING_QUAD _QUAD
+.ALIAS BLOCKQUOTE_QUAD _QUAD
+.ALIAS COPYRIGHT_QUAD _QUAD
+.ALIAS COVER_COPYRIGHT_QUAD _QUAD
+.ALIAS COVER_MISC_QUAD _QUAD
+.ALIAS COVER_QUAD _QUAD
+.ALIAS DOCHEADER_QUAD _QUAD
+.ALIAS DOC_COVER_COPYRIGHT_QUAD _QUAD
+.ALIAS DOC_COVER_MISC_QUAD _QUAD
+.ALIAS DOC_COVER_QUAD _QUAD
+.ALIAS DOC_QUAD _QUAD
+.ALIAS ENDNOTES_HEADER_QUAD _QUAD
+.ALIAS ENDNOTE_QUAD _QUAD
+.ALIAS ENDNOTE_STRING_QUAD _QUAD
+.ALIAS ENDNOTE_TITLE_QUAD _QUAD
+.ALIAS EPIGRAPH_QUAD _QUAD
+.ALIAS FOOTNOTE_QUAD _QUAD
+.ALIAS MISC_QUAD _QUAD
+.ALIAS TOC_HEADER_QUAD _QUAD
\#
\# Support aliases
\#
.ALIAS COL_BREAK COL_NEXT
-.ALIAS DOC_COVER_ADVANCE COVER_ADVANCE
.ALIAS DOC_COVER COVER
-.ALIAS DOC_COVER_COUNTS_PAGES COVER_COUNTS_PAGES
.ALIAS DOC_COVERS COVERS
-.ALIAS DOC_COVER_LEAD COVER_LEAD
.ALIAS DOC_COVERTITLE COVERTITLE
+.ALIAS DOC_COVER_COUNTS_PAGES COVER_COUNTS_PAGES
+.ALIAS DOC_COVER_LEAD COVER_LEAD
+.ALIAS DOC_DOC_COVERTITLE COVERTITLE
.ALIAS DO_DOC_COVER DO_COVER
.ALIAS PRINT_FOOTNOTE_RULE FOOTNOTE_RULE
\#
@@ -17267,7 +17295,6 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. \}
.END
\#
-\#
\# PREPROCESSOR SUPPORT
\# ====================
\#
@@ -17724,7 +17751,7 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. el .ds missing-arg PREFIX
. tm1 "[mom]: You must supply a \\*[missing-arg] argument to \\$0.
. tm1 " If you wish the \\*[missing-arg] to be blank, use
\\*[missing-arg] "".
-. ab Aborting '\\n[.F]' at \\$0, line \\n[.c].
+. ab [mom]: Aborting '\\n[.F]' at \\$0, line \\n[.c].
. \}
. if !\\n[\\*[label-type]-label-args] \{\
. rr \\*[label-type]*autolabel
@@ -17745,7 +17772,7 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. tm1 "[mom]: \\$1 cannot determine a chapter number.
. tm1 " Enter the current chapter number as a digit after the
. tm1 " PREFIX_CHAPTER argument at line \\n[.c].
-. ab Aborting '\\n[.F]', line \\n[.c].
+. ab [mom]: Aborting '\\n[.F]', line \\n[.c].
.END
\#
\# MLA STYLE
@@ -17772,7 +17799,7 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
\#
.MAC address@hidden END
. tm1 "[mom]: MLA style enabled, but \\$1 has no corresponding \\$2.
-. ab Aborting '\\$3' at \\$4, line \\$5.
+. ab [mom]: Aborting '\\$3' at \\$4, line \\$5.
.END
\#
\# LISTS_OF
@@ -17880,9 +17907,7 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. \}
. ie !'\\*[$LISTS_TITLE_QUAD]'' \
. DOCHEADER_QUAD \\*[$LISTS_TITLE_QUAD]
-. el .DOCHEADER_QUAD \\*[$TOC_HEADER_QUAD]
-. if '\\*[$LISTS_TITLE_QUAD]'' \
-. ds $LISTS_TITLE_QUAD \\*[$TOC_HEADER_QUAD]
+. el .DOC_HEADER_QUAD \\*[$TOC_HEADER_QUAD]
. if !'\\*[$LISTS_TITLE_FAM]'' \
. TITLE_FAMILY \\*[$LISTS_TITLE_FAM]
. if !'\\*[$LISTS_TITLE_FT]'' \
@@ -17891,6 +17916,17 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. TITLE_SIZE \\*[$LISTS_TITLE_SIZE]
. if !'\\*[$LISTS_TITLE_COLOR]'' \
. TITLE_COLOR \\*[$LISTS_TITLE_COLOR]
+. if \\n[#LISTS_TITLE_CAPS] \
+. TITLE_CAPS
+. if \\n[#LISTS_TITLE_SMALLCAPS] \
+. TITLE_SMALLCAPS
+. if \\n[#LISTS_TITLE_UNDERSCORE] \{\
+. TITLE_UNDERSCORE \
+\\*[DOUBLE] \
+\\*[$LISTS_OF_UL_WT] \
+\\*[$LISTS_OF_UL_GAP] \
+\\*[$LISTS_OF_RULE_GAP]
+. \}
. if '\\*[$LISTS_PN_FAM]'' \
. ds $LISTS_PN_FAM \\*[$TOC_PN_FAM]
. if '\\*[$LISTS_PN_FT]'' \
@@ -17947,20 +17983,25 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
\# LISTS-OF STYLE
\# --------------
\# *Arguments:
-\# FAMILY fam /
-\# FONT sty /
-\# PT_SIZE size /
-\# LEAD leading [ADJUST] /
-\# TITLE_FAMILY fam /
-\# TITLE_FONT sty /
-\# TITLE_SIZE +|-size /
-\# TITLE_QUAD LEFT | CENTER | RIGHT /
-\# TITLE_COLOR color /
-\# NO_PAGINATION /
-\# PAGENUM_STYLE format /
-\# PN_FAMILY fam /
-\# PN_FONT sty /
-\# PN_SIZE +|-size /
+\# FAMILY fam \
+\# FONT sty \
+\# PT_SIZE size \
+\# LEAD leading [ADJUST] \
+\# TITLE_FAMILY fam \
+\# TITLE_FONT sty \
+\# TITLE_SIZE +|-size \
+\# TITLE_QUAD LEFT | CENTER | RIGHT \
+\# TITLE_COLOR color \
+\# TITLE_CAPS \
+\# TITLE_NO_CAPS \
+\# TITLE_SMALLCAPS \
+\# TITLE_NO_SMALLCAPS \
+\# TITLE_UNDERSCORE [ DOUBLE] <wt> <gap> (dbl-rule-gap) \
+\# NO_PAGINATION \
+\# PAGENUM_STYLE format \
+\# PN_FAMILY fam \
+\# PN_FONT sty \
+\# PN_SIZE +|-size \
\# PN_PADDING n
\# *Function:
\# Allows setting of all style parameters for lists-of.
@@ -18000,6 +18041,100 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. ds $LISTS_TITLE_COLOR \\$2
. shift 2
. \}
+. if '\\$1'TITLE_CAPS' \{\
+. nr #LISTS_TITLE_CAPS 1
+. shift 1
+. \}
+. if '\\$1'TITLE_NO_CAPS' \{\
+. rr #LISTS_TITLE_CAPS
+. shift 1
+. \}
+. if '\\$1'TITLE_SMALLCAPS' \{\
+. nr #LISTS_TITLE_SMALLCAPS 1
+. shift 1
+. \}
+. if '\\$1'TITLE_NO_SMALLCAPS' \{\
+. rr #LISTS_TITLE_NO_SMALLCAPS
+. shift 1
+. \}
+.\" UNDERSCORE and UNDERLINE are identical, but we can't evaluate
+.\" the results of two string comparisons.
+. if '\\$1'TITLE_UNDERSCORE' \{\
+. nr #LISTS_TITLE_UNDERSCORE 1
+. shift
+. ie '\\$1'DOUBLE' \{\
+. ds DOUBLE DOUBLE
+. shift
+. if \B'\\$1' \{\
+. ds $LISTS_OF_UL_WT \\$1
+. shift
+. \}
+. if \B'\\$1' \{\
+. ds $LISTS_OF_UL_GAP \\$1
+. shift
+. \}
+. if \B'\\$1' \{\
+. ds $LISTS_OF_RULE_GAP \\$1
+. shift
+. \}
+. \}
+. el \{\
+. if \B'\\$1' \{\
+. ds $LISTS_OF_UL_WT \\$1
+. shift
+. \}
+. if \B'\\$1' \{\
+. ds $LISTS_OF_UL_GAP \\$1
+. shift
+. \}
+. \}
+. \}
+. if '\\$1'TITLE_UNDERLINE' \{\
+. nr #LISTS_TITLE_UNDERSCORE 1
+. shift
+. ie '\\$1'DOUBLE' \{\
+. ds DOUBLE DOUBLE
+. shift
+. if \B'\\$1' \{\
+. ds $LISTS_OF_UL_WT \\$1
+. shift
+. \}
+. if \B'\\$1' \{\
+. ds $LISTS_OF_UL_GAP \\$1
+. shift
+. \}
+. if \B'\\$1' \{\
+. ds $LISTS_OF_RULE_GAP \\$1
+. shift
+. \}
+. \}
+. el \{\
+. if \B'\\$1' \{\
+. ds $LISTS_OF_UL_WT \\$1
+. shift
+. \}
+. if \B'\\$1' \{\
+. ds $LISTS_OF_UL_GAP \\$1
+. shift
+. \}
+. \}
+. \}
+. if '\\$1'TITLE_NO_UNDERSCORE' \{\
+. rr #LISTS_TITLE_UNDERSCORE 1
+. rm DOUBLE
+. rm $LISTS_OF_UL_WT
+. rm $LISTS_OF_UL_GAP
+. rm $LISTS_OF_RULE_GAP
+. shift
+. \}
+. if '\\$1'TITLE_NO_UNDERLINE' \{\
+. rr #LISTS_TITLE_UNDERSCORE 1
+. rm DOUBLE
+. rm $LISTS_OF_UL_WT
+. rm $LISTS_OF_UL_GAP
+. rm $LISTS_OF_RULE_GAP
+. shift
+. \}
. if '\\$1'PT_SIZE' \{\
. nr #LISTS_PS (p;\\$2)
. shift 2
@@ -18129,7 +18264,7 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
\!. vpt
. da
.END
-\#
+.
.ALIAS TO_EQUATIONS LISTS_COLLECTOR
.ALIAS TO_FIGURES LISTS_COLLECTOR
.ALIAS TO_TABLES LISTS_COLLECTOR
@@ -18216,7 +18351,7 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. if !\\n[tbl*needs] .nr tbl*needs 1
. if !\\n[tbl*have-header] .nr tbl*no-header 1
. ds tbl*label-sffx-tmp \\*[tbl*label-sffx]
-. substring tbl*label-sffx-tmp -1
+. if !'\\*[tbl*label-sffx-tmp]'' .substring tbl*label-sffx-tmp -1
. if '\\*[tbl*label-sffx-tmp]'.' \
. if (\\n[tbl*caption-after-label]=0):(\\n[#MLA]=1) .chop tbl*label-sffx
. if \\n[tbl*caption-after-label] \{\
@@ -18357,6 +18492,7 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. rr tbl*no-header
. if !'\\n[.z]'FLOAT*DIV' \{\
. ie \\n[.t]<(\\n[.v]+(\\n[.v]/2u)) \{\
+. if \\n[tbl*have-label] \{\
. rm tbl*header-div
. nr tbl*no-top-hook 1
. nr pgnum \\n%+\\n[#PAGE_NUM_ADJ]
@@ -18368,6 +18504,7 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. nr tbl*skip-label 1
. ch FN_OVERFLOW_TRAP -\\n[#FN_OVERFLOW_TRAP_POS]u
. \}
+. \}
. el \{\
. if \\n[pre-tbl-vfp] \{\
. ch FOOTER 0+\\n[pre-tbl-vfp]u
@@ -18780,7 +18917,7 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
.MAC tbl*float-warning END
. tm1 "[mom]: Table in FLOAT, output page \\n[#PAGENUMBER], exceeds page
vertical limits.
. tm1 " Multipage boxed tables cannot be contained within floats.
-. ab Aborting '\\n[.F]'.
+. ab [mom]: Aborting '\\n[.F]'.
.END
\#
.MAC address@hidden END \" Move vertically until there is enough space for \$1
@@ -18923,7 +19060,7 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. el \{\
. tm1 "[mom]: Invalid argument \\$1 to \\$0.
. tm1 " Must be 'CONTINUED', 'CONT', or '...'
-. ab Aborting '\\n[.F]' at line \\n[.c].
+. ab [mom]: Aborting '\\n[.F]' at line \\n[.c].
. \}
. \}
. if \\n[dl]:\\n[eqn*have-label] \{\
@@ -19506,7 +19643,7 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. tm1 "[mom]: \\$1 has been removed from mom. See the mom documentation
'refer.html'
. tm1 " for instructions on parenthetical insertions of references
into text.
. ie '\\$1'REF_STYLE' .tm1 " Continuing to process '\\n[.F]' from
line \\n[.c].
-. el .ab Aborting '\\n[.F]' at \\$1, line \\n[.c].
+. el .ab [mom]: Aborting '\\n[.F]' at \\$1, line \\n[.c].
.END
\#
.MAC REF_BRACKETS_START END
@@ -20348,7 +20485,7 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. tm1 "[mom]: 1.x-style \\$0 detected, but you are using v2.x.
. tm1 " v2.x requires flags before arguments to \\$0.
. tm1 " Please read docelement.html#mn-init and update your file.
-. ab Aborting '\\n[.F]' at \\$0, line \\n[.c].
+. ab [mom]: Aborting '\\n[.F]' at \\$0, line \\n[.c].
. \}
. nr #ARGS 0 1
. nr #COUNT 9
@@ -20583,8 +20720,8 @@ E\\R'#CAP_HEIGHT \\n[.cht]'
. \}
.\}
. if !\\n[#MNinit]=1 \{\
-. tm [mom]: Macro MN: You must set parameters with MN_INIT before using MN.
-. ab Aborting '\\n[.F]' at MN, line \\n[.c].
+. tm1 "[mom]: Macro MN: You must set parameters with MN_INIT before using
MN.
+. ab [mom]: Aborting '\\n[.F]' at MN, line \\n[.c].
. \}
. ie !'\\$1'' \{\
. if \\n[MN-active] \{\
@@ -20881,7 +21018,7 @@ Macro MN: Warning: Right margin note #\\n[MN-curr] on
page \\n[#P] shifted down.
. nr PDF_LEV (\\n[LEVEL_REQ]*\\n[#PDF_BOOKMARKS_OPEN])
. ie '\\*[.T]'ps' \{\
. if !'\\*[PDF_NM]'' \{\
-. pdfhref M -N \\*[PDF_NM2] -- \\*[PDF_TX]
+. pdfhref M -N\\*[PDF_NM2] -- \\*[PDF_TX]
. if !dpdf:href.map .tm gropdf-info:href \\*[PDF_NM2] \\*[PDF_TX]
. \}
. pdfbookmark \\n[PDF_LEV] \\*[PDF_TX]
@@ -21042,7 +21179,7 @@ Macro MN: Warning: Right margin note #\\n[MN-curr] on
page \\n[#P] shifted down.
.MAC PDF_TARGET END
. ds ARG_1 \\$1
. shift
-. pdfhref M -N \\*[ARG_1] -E -- \\$*
+. pdfhref M -N\\*[ARG_1] -E -- \\$*
. if '\\*[.T]'ps' .if !dpdf:href.map .tm gropdf-info:href \\*[ARG_1] \\$*
.END
\#
@@ -21085,7 +21222,7 @@ Macro MN: Warning: Right margin note #\\n[MN-curr] on
page \\n[#P] shifted down.
. substring address@hidden -1 -3
. if !'address@hidden'pdf' \{\
. tm1 "[mom]: Image file '\\*[pdf-img:file]' at line \\n[.c] not found,
or not a PDF image.
-. ab Aborting '\\n[.F]' at \\$0, line \\n[.c].
+. ab [mom]: Aborting '\\n[.F]' at \\$0, line \\n[.c].
. \}
. nr pdf-img:width \\$2
. nr pdf-img:depth \\$3
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [groff] 01/04: Version 2.1,
Peter Schaffter <=