o Added a .bp after .if \\n[#START]=1 in FOOTER. Without it,
[s-roff.git] / contrib / mom / ChangeLog
blob3ad4f0c4fac3e88cb8047fa51c52adde0c590c58
1 *Fri Jul 25 2003
3 o Added a .bp after .if \\n[#START]=1 in FOOTER.  Without it,
4   in document processing mode, documents that use *none* of the
5   docprocessing tags (yes, there are times when users want to do
6   this) ignored the footer trap.
8 *Fri Jun 6 2003
10 o Changed register #DOCHEADER_LEAD_ADJ to string
12 *Wed May 21 2003
14 o DOC_TITLE changed to be used exclusively with DOCTYPE DEFAULT
16 o Fixed problem with restoration of previous doc pagenum
17   style when endnotes use a different pagenum style (set with
18   ENDNOTES_PAGENUM_STYLE)
20 o Fixed handling of headers/footers with respect to endnotes.  Now,
21   when either headers or footers are on, mom picks up the correct
22   page header/footer on the last page prior to ENDNOTES, gets the
23   pageheaders correct for endnotes pages *including the last one*,
24   and picks up correct page headers/footers for the subsequent docs
25   after COLLATE
27 *Sat May 17 2003
29 o Added TOC (finally) and a nearly complete set of associated
30   control macros
32 o Added new control macros to endnotes:
34   ENDNOTES_STRING_CAPS       - capitalize the endnotes string
35   ENDNOTES_NO_COLUMNS        - allows docs in columns and endnotes not
36   ENDNOTES_PAGENUM_STYLE     - set page numbering style for endnotes
37   ENDNOTES_FIRST_PAGENUMBER  - set first pagenumber for endnotes
38   ENDNOTES_ALLOWS_HEADERS    - page headers on endnotes pages off or on
39   ENDNOTES_NO_FIRST_PAGENUM  - allows non-printing first page number when page footers are being used instead of headers
40   ENDNOTES_SINGLE_SPACE      - for TYPEWRITE, if doc double-spaced
41   SUSPEND/RESTORE_PAGINATION - turns page numbering off for endnotes
43 o Added an ADJUST option to ENDNOTE_LEAD
45 o Added DOC_TITLE (like TITLE, but sets document-wide title for collated docs)
47 o Added HDRFTR_CENTER_PAD, to allow adjustments to placement of
48   HDRFTR_CENTER_STRING
50 o Added BLANKPAGE macro, to output blank pages (silently numbered)
52 o Extensive changes to DEFAULTS, START, COLLATE, HEAD, SUBHEAD and
53   PARAHEAD because of new TOC and extended flexibility of ENDNOTES
54   page design
56 o Fixed DOCHEADER OFF (distance), FINIS
58 -----------------------------------------------------------------------
60 *Sat Feb 22 2003
62 o (Re)-fixed handling of post epigraph spacing after #START for
63   TYPEWRITE double-spaced.
65 ------------------------------------------------------------------------
67 *Sun Feb 16 2003
69 o Added James Ramsey's proposed CHAPTER_TITLE macro, along with his
70   rewritten START macro and his utility macros to make START easier
71   to read.
73 o Expanded handling of CHAPTER_TITLE to encompass TYPEWRITE, as well as
74   plugging it into the docheaders.  Made CHAPTER_TITLE backwardly
75   compatible so that pre-1.1.5 docs using CHAPTER_STRING to create a
76   chapter title remain unaffected when groffed with 1.1.5.
78 o Created control macros for CHAPTER_TITLE FAMILY, FONT and SIZE.
79   Added defaults for handling of CHAPTER title to DEFAULTS.  Documented
80   CHAPTER_TITLE and everything that goes along with it.
82 o Fixed broken draft and revision in headers/footers.
84 o Fixed \*[RULE] so that it behaves properly with indents and justified
85   copy.
87 o Fixed/tweaked handling of epigraph spacing in TYPEWRITE.
89 o Fixed broken spacing of docheaders in TYPEWRITE.
91 *Mon Feb 3 2003
93 o Fixed an oversight in CLOSING for DOCTYPE LETTER (closing wasn't
94   being set flush left)
96 *Sun Sep 29 2002
98 o Changed .ne in .HEAD when PRINTSTYLE TYPESET from 5 to 4.  With 5,
99   heads required at least 2 lines of text underneath or they'd be
100   defered to the next page, which created too much whitespace at the
101   end of the page.  Heads will now be processed on the same page if the
102   head plus at least one line of text underneath fits.  I figure it's
103   easier for the user to break to a new page manually if this behaviour
104   is unsatisfactory than to massage the page to fix the excess
105   whitespace.
107 *Sun Aug 25 2002
109 o Changed .IX to .IQ.  The older form still works, but emits a message
110   advising the user to update to the newer.  (The macro in om.tmac
111   still remains IX; IQ is an alias.)  Docs updated to reflect the
112   change.
114 *Tue Aug 20 2002
116 o Added new (better) way to handle inline kerning.  \*[BU #] and
117   \*[FU #] allow passing an argument to the inline string.  The older
118   forms \*[BU#] and \*[FU#] still work, though.
120 o Changed handling of inline horizontal and vertical movements.
121   Horizontal movements are now done with \*[BCK #<unit>] and
122   \*[FWD #<unit>]; verticals with \*[UP #<unit>] and \*[DOWN #<unit>].
123   The older forms \*[FP#] and \*[BP#] still work (horizontals), as do
124   \*[ALD#] and \*[RLD#] (verticals).
126 ------------------------------------------------------------------------
128 *Mon Aug 19 2002
130 o Fixed ENDNOTES so footnotes output properly when ENDNOTES is called
132 o Added ENDNOTES_HDRFTR_CENTER so that default no-print of header
133   center string on endnotes page(s) when DOCTYPE is CHAPTER can
134   be disabled (i.e. header center will be printed).
136 *Sat Aug 10 2002
138 o Added .nf to top of PAD, with a test beforehand for current fill
139   mode.  If fill mode was on, it's restored after PAD completes
140   processing.  Updated reserved.html to include number register
141   #FILL_MODE.
143 *Fri Jul 12 2002
145 o More fixes to underlining.
147 *Fri Jul 5 2002
149 o Added capability of endnotes and pertinent control macros to om.tmac.
151 o Added document entries pertaining to endnote macros.
153 o Incorporated endnote macros into elvis_syntax.
155 o Small doc fixes.
157 o Tidied up indenting of om.tmac.
159 o Fixed handling of underlining of italics in PRINTSTYLE TYPEWRITE
160   (there was a problem with footnotes getting underlined when they
161   shouldn't have been).
163 o Removed ENDNOTES from TODO
165 o Fixed the character translations for UNDERLINE so they work properly
166   with digraphs.
168 *Mon Jul 1 2002
170 o Expanded docprocessing.html entry "Special Note on Chapters".  Tidied
171   up html a bit.
173 *Sat Jun 15 2002
175 o Small fix to PAD to make the use of inlines within the pad string
176   more intuitive.
178 o Added \*[RULE] ( = \l'\n(.lu' ) so that full measure rules (either to
179   full line length or within tabs) are easier to set.
181 *Sat Jun 8 2002
183 o Macro .PS renamed to .PT_SIZE.  Alias .TS removed.
185 o .tr bits in .CAPS rewritten in the form .tr é\[`E].
187 o General cleanup of docs to reflect changes
189 o Small changes/additions to elvis_syn
191 *Thu Jun 6 2002
193 o In DOCTYPE, in .if '\\$1'LETTER', added .FOOTER_RIGHT_SIZE +0.
194   Without it, the suite page was printing at the default
195   FOOTER_RIGHT_SIZE of -.5, which didn't look good.
197 *Wed Jun  5 2002
199 o Makefile.sub (TFLAG): Add `$(top_builddir)/tmac'.
201 *Tue Jun  4 2002
203 o Makefile.sub (groff_bin_dirs): Fix typo (forgotten `src' element).
205 *Mon Jun  3 2002
207 o Makefile.sub (uninstall_sub): Don't use `momdocdir' but `htmldocdir'.
208   Add missing backslash.
210 *Sat Jun  1 2002
212 o Makefile.in (prepare_make_examples): Test for `penguin.ps', not
213   `examples/penguin.ps'.
215 *Wed May 29 2002
217 o Rewrote portions of PAGENUM_STYLE and COPYSTYLE so that PAGENUM_STYLE
218   behaves as advertised.
220 *Fri May 24 2002
222 o /Makefile.sub (momdocdir): Removed.
223   (HTMLDOCFILES): Prepend `momdoc/'.
224   (EXTRAEXAMPLEFILES): Removed.  Added entries to...
225   (EXAMPLEFILES): This.
226   (.SUFFIXES, .mom.ps): New.
227   (prepare_make_examples): Updated.
228   (examples/*.ps): Removed; .mom.ps will handle this.
229   (install_data): Updated.  
231 *Thu May 23 2002
233 o Applied two small bug fixes to om.tmac (patches 1.1.1a and 1.1.1b).
235 o mom is now part of groff.
237 o Some renaming to avoid problems with 8+3 filesystems:
239     examples/docprocessing_typeset.mom   -> examples/typeset.mom
240     examples/docprocessing_typewrite.mom -> examples/typewrite.mom
241     examples/typesetting_macros.mom      -> examples/macros.mom
242     examples/penguin_small2_bw.ps        -> examples/penguin.ps
244 o Removed `INSTALL' and `README' since groff takes care of installation
245   now.
247 o Added Makefile.sub.
249 o Added mom.tmac (which simply calls om.tmac).
251 o Added groff_mom.man for orthogonality; it simply points to the HTML
252   documentation.
254 *Thu May 16 2002
256 o Added macro DRAFT_WITH_PAGENUMBER so user can have draft/revision
257   info attached to the pagenumber in COPYSTYLE DRAFT, instead of having
258   it HEADER center.  Always having it HEADER center was creating problems
259   with long doc titles, esp. with PRINTSTYLE TYPEWRITE (which is when
260   COPYSTYLE DRAFT is most likely to be used).  Now user has the choice,
261   in these circumstances, either to reduce HEADER_SIZE, or to displace
262   the draft/revision info.  Also rewrote portions of COPYSTYLE so that
263   if no revision number is given in the reference macros, "Rev. #"
264   doesn't appear when COPYSTYLE DRAFT.
266 *Fri May 10 2002
268 o Added capability of user-defined, single string recto/verso
269   headers/footers.
271 o Added new entries to docs about the above.  Made some additional
272   small changes to toc.html, rectoverso.html, and headfootpage.html
273   to supplement the new entries.
275 o Small fix to handling of footer separator rule -- was 1 point too low
276   owing to fuzziness of #CAP_HEIGHT as returned by SIZESPECS.
278 o Added some more useful stuff to elvis_syntax.
280 *Sun May 05 2002
282 o Fix to DEFAULTS so that L_MARGIN and R_MARGIN are reprocessed if
283   DOCTYPE LETTER.  R_MARGIN, as set by DOCTYPE LETTER had no preceding
284   PAGEWIDTH or PAPER from which to get #PAGE_WIDTH for figuring out
285   line length.
287 o Additional fix to DEFAULTS in handling DOCTYPE LETTER so that if user
288   sets line length prior to START, no reprocessing of R_MARGIN occurs.
289   This necessitated adding a new number register: #USER_SET_L_LENGTH
291 *Sat May 04 23:48:05 EDT 2002
293 o Added .cflags 4 /\(en -- was driving me nuts that lines wouldn't
294   break after these characters; I'm assuming others feel the same way
296 * Fri May 03 2002
298 o Made some small fixes to space handling around quotes, mostly to do
299   with quotes immediately after START and quotes after (sub)heads.
301 * Wed May 01 2002
303 o Fixed a small bug that was causing the first .PP after START to begin
304   at the top margin of the page regardless of any type that preceded
305   .PP when docheaders were off.
307 o Fixed HEADER so that when HEADERS are off the first line of type on
308   pages after the first falls properly at the top margin
310 *Sat Apr 27 2002
312 o Renamed docprocessing_macros.mom in /examples to
313   docprocessing_typeset.mom.  Added docprocessing_typewrite.mom, as
314   well as a README file.
316 o Fixed UNDERLINE_QUOTES (for PRINTSTYLE TYPEWRITE) so they really are
317   on by default as the docs say.
319 o Changes to doc entry on COLLATE:
321     - removed bit about using COLLATE after a cover page (I wrote the
322       entry *before* I wrote the macro!).  Cover pages should be
323       followed by NEWPAGE, not COLLATE.
325     - added caution about mixing PRINTSTYLEs
327     - added caution about using DOC_FAMILY to change family of all
328       document elements after COLLATE
330 o Made HEADER_SIZE (and, by extension, FOOTER_SIZE) available to
331   PRINTSTYLE TYPEWRITE.  Changed appropriate doc entries to reflect
332   this.
334 *Wed Apr 24 2002
336 o Small change to DO_QUOTE to correct a problem with quotes and
337   blockquotes that fall in the middle of paragraphs (i.e. text after
338   the quote is not a new para).  Basically, added a bit that stores the
339   current para indent, sets para indent to 0, invokes a PP, then
340   restores the original para indent.
342 o Added new macro, BREAK_QUOTE, to deal with the problem of
343   footnotes in quotes and blockquotes that cross pages or columns.
345   Quotes and blockquotes are read into diversions, which means they
346   get their footnote information from the page/column on which they
347   were started.  If a footnoted quote crosses a page/column, what
348   sometimes happens is that the footnote itself is output at the
349   bottom of page/column where the quote started, whereas the text
350   marker for the footnote appears on the next page/column where the
351   quote ends.  Furthermore, the text marker is the one appropriate
352   to the previous page.  BREAK_QUOTE is a workaround.
354 o Added directory /examples to archive.
356 o Added typesetting_macros.mom, docprocessing_macros.mom, elvis_syntax
357   and penguin_small2_bw.ps to /examples.
359 o Added BREAK_QUOTE to docs, made some additions to reserved words
360   list, and corrected a few little doc errors.
362 *Mon Apr 22 2002
364 o Added default .L_MARGIN 1i and .R_MARGIN 1i to PAPER, PAGE, and
365   PAGEWIDTH.  L_MARGIN is essential otherwise left indents and tabs
366   don't have a register #L_MARGIN to work with.  The default right
367   margin is a convenience only.  Updated the doc entries for L_MARGIN
368   and R_MARGIN to reflect the change.
370 *Sun Apr 21 2002
372 o Changes to COLLATE:
374     - added some "resets" (LL, LS, QUAD)
375     - added a check for whether pagination is at page top (either
376       because FOOTERS are on or because PAGENUM_POS was user set).
377       If pagination is on, and PAGENUM_POS is TOP, it's turned off
378       for next page (start of next collated document) and restored
379       for subsequent pages unless PAGENUM_ON_FIRST_PAGE is on, in
380       which case the page number appears at page top.
382 o The macro TRAPS is always invoked at the end of DEFAULTS (which is
383   called by START).  Formerly, TRAPS was only invoked at the start
384   of a doc, not after COLLATE.  Now runs after COLLATE as well.
386 o Distance from $DOC_TYPE in DOCTYPE NAMED "<string>" to start of
387   running text was one linespace too deep.  Fixed (in START).
389 o When 1st arg to PAGENUM_POS was user set to TOP, running text was
390   printing 1 linespace too high, even when PAGINATION was OFF.  Same
391   problem when HEADERS were OFF (i.e. nothing in the header margin at
392   all).  Fixed by removing -\\n[#DOC_LEAD]u from all .sp |\\n[#T_MARGIN]u
393   calls of .el portion after .ie \\n[#HEADERS_ON].
395 o Added new macro: PAGENUM_ON_FIRST_PAGE.  Normally, when FOOTERS are
396   being used instead of HEADERS, mom doesn't print the page number at
397   the top of the first page of a doc, or the first page of collated
398   docs.  New macro allows user to get mom to put the page number on
399   "first" pages if that's desired.  Updated docs to include the macro.
401 o More little fixes to docs.
403 *Thu Apr 18 2002
405 o Fixed TI (temporary indent) so that it continues to work as expected,
406   even when called while another type of indent is in effect.
408 *Tue Apr 16 2002
410 o String tabs weren't working as advertised when set from within
411   a tab.  Fixed.  Two new registers added: #ST_OFFSET and #IN_TAB.
412   String tabs now behave poperly and intuitively when set within tabs.
414 o Added a note to docs about surrounding \w'...' escape with double-
415   quotes when it's used as an argument to macros
417 o Added a note to docs that SILENT does not deposit a .br
419 *Mon Apr 15  2002
421 o Added new macro BR_AT_LINE_KERN if user wants mom to deposit .br's
422   before .RW and/or .EW.
424 o Added 1/4 points to inline escapes \*[ALD] and \*[RLD].
426 o Added 1/4 points to inline escapes \*[FP] and \*[BP]
428 o Updated docs to reflect the above changes.
430 *Fri Apr 12 2002
432 o Fixed .RW and .EW which weren't working because of a missing \ in
433   \\n(.f register.  Also made it so that .RW and .EW affect all fonts
434   in positions 1, 2, 3, and 4 at once, hence line kerning now affects
435   all fonts that appear after it, not just the font that was current at
436   the time of the macros' invocation.
438 o .SS and .WS now working properly.  .WS no longer has any effect on
439   .SS, which remains constant regardless of .WS.  Furthermore, .SS no
440   longer gets its value by adding \*[$SS_VAR] + \n[.ss].  Instead,
441   it remains constant.  Don't know what I was thinking when I wrote
442   the routine in the first place.
444 o Updated and rewrote doc entry pertaining to SS
446 *Wed Apr 10 2002
448 o Renamed tmac.om to om.tmac to bring macro file's name into line
449   with current groff policy
451 o Added more standard paper sizes to PAPER.
453 o Fixed T_MARGIN, LS, and AUTOLEAD so that if T_MARGIN is set before LS
454   or AUTOLEAD at the top of a file, the first line of type falls
455   properly on the baseline set by T_MARGIN.  Previously, LS and
456   AUTOLEAD automatically advanced by the value passed to them before
457   setting the first line of type, meaning that the first line of type
458   fell at T_MARGINu+1v instead of T_MARGIN.
460 o Updated docs to reflect changes.
462 o Removed #TEST_FOR_NUMERIC from list of reserved words.
464 o Added "t" and #T_MARGIN_SET to list of reserved words.
466 *Sat Apr 6 2002
468 o Added FACTOR arg to AUTOLEAD, so if user wants autolead to be a factor
469   of point size, instead of being the sum of pointsize + autolead, s/he
470   has the choice.  Incorporated appropriate changes to PS and LS.
472 o Added new register #AUTOLEAD_FACTOR to reserved words.  Modified
473   comments for AUTOLEAD, PS, and LS to reflect changes.  Also
474   corrected an error where #AUTOLEAD_VALUE had mistakenly been written
475   $AUTOLEAD_VALUE in comments in the macro file, and removed erroneous
476   | <anything>.  Updated AUTOLEAD entry in momdoc/typesetting.html
477   to reflect the changes.
479 *Wed Apr 3 2002
481 o Cleaned up html errors in the docs.
483 o Added "Next," "Prev" and "Top" links to top and bottom of doc files.
485 o Fixed some typos in the docs.