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