1 Release 1.3 2 ----------- 3 4 Added line numbering capabilities, with controls. 5 6 Footnotes and endnotes can now be referenced by line number. 7 8 Added ability to adjust vertical position of the title that appears 9 on the first endnotes page. 10 11 Footnotes can run on when being referenced by line number. 12 13 Footnotes now have a post-footnote spacing option, for adding 14 a little space between footnotes. 15 16 Extended LIST so it accepts alpha, ROMAN and roman enumerators. 17 18 Added margin notes capability. 19 20 Added refer support. 21 22 Added bibliography page support. 23 24 Added QUOTE_AUTOLEAD and BLOCKQUOTE_AUTOLEAD, so user can have 25 quotes and blockquotes leaded differently from running text. 26 27 Change: the input line immediately after FOOTNOTE OFF must be 28 entered as a literal continuation of the line prior to FOOTNOTE, 29 including any initial spaces or punctuation marks. This allows 30 for hassle-free placing of footnote markers in running text either 31 before or after punctuation marks. 32 33 Release 1.2-f 34 ------------- 35 36 Added ADD_SPACE, to permit users to insert space at the top of 37 running text (after the first page) when using the docprocessing 38 macros. 39 40 Releases 1.2-a and 1.2-b 41 ------------------------ 42 43 My personal email address has changed. 1.2-a and -b have been 44 updated to reflect that. Additionally, I made some small changes 45 to the documentation. 46 47 Release 1.2 48 ----------- 49 50 As of 1.2, the recommended version of groff to use with mom has 51 been bumped up from groff, 1.18 to groff, 1.19.2. Although mom will 52 continue to work with groff, 1.18, her handling of .FAM(ILY) and .FT 53 is now slightly different, therefore users of groff 1.18 may have to 54 update documents created with mom so that every .FAM(ILY) request is 55 followed by a .FT request before any text is input, otherwise mom 56 will set the text after .FAM(ILY) in Courier (until she encounters a 57 .FT request). People running groff, >= 1.19.2 don't have to worry 58 about this, but I recommend that, regardless of which version you're 59 running, you have a look at the document entries for FAMILY and FT 60 in order to see how mom will be handling .FAMILY and .FT from now 61 on. 62 63 When used with groff >=1.19.2, mom now emits warnings if a style 64 hasn't been registered, or if a font style doesn't exist in the 65 current family. Invalid .FAM(ILY) calls now use a "fallback" font" 66 (although no warning is issued). The fallback is user-settable. 67 68 Mom's macro file, om.tmac, now sets up a fairly extensive list of 69 font "styles," thus expanding the range of arguments that can be 70 passed to .FT (formerly, just R, I, B and BI, unless users had 71 already rolled their own solution to the problem of extensive type 72 families containing fonts like condensed, demibold, black, light, etc). 73 Users are advised to read the documentation sections on FAM(ILY), 74 FT and FALLBACK_FONT, as well as the new appendix section, "Adding 75 PostScript fonts to groff", for information on using mom's style 76 extensions (and how to disable them, should they conflict with a 77 user's present groff site-font/devps setup). 78 79 A new macro, FALLBACK_FONT, has been added. It controls not only 80 the fallback font for invalid .FAMILY calls, but also whether mom 81 aborts on invalid .FT calls after issuing a warning, or continues 82 processing using the fallback. 83 84 Release 1.1.9 85 ------------- 86 87 Added the (optional) generation of cover pages and document cover 88 pages, plus a full suite of control macros for all cover page 89 elements. 90 91 Added new reference macros that apply to covers: COVERTITLE, 92 DOC_COVERTITLE, COPYRIGHT and MISC. 93 94 The need for TRAP OFF/TRAP to deal with ELs and TNs that fall at 95 the bottom page has been obsoleted. However, both EL and TN, when 96 invoked in any "nofill" mode (LEFT, RIGHT, CENTER, or the L | R | C 97 arguments to TAB_SET or ST when no QUAD argument is given), must now 98 have the input line preceding the EL or TN terminated by \c. Fill 99 modes do not have this requirement, i.e. no \c is required. 100 101 Footnotes that occur inside quotes, blockquotes and epigraphs now 102 work just like regular footnotes, with no user intervention 103 required. This obsoletes the macro BREAK_QUOTE. 104 105 Removed all aliases that used the word COLOUR. Users must use 106 COLOR wherever COLOR is needed. COLOUR, as a replacement/alias, is 107 no longer supported. 108 109 NEWPAGE, which used to be an alias of .bp, is now its own macro. 110 111 Release 1.1.8 112 ------------- 113 114 Added text color support. Users can now define or initialize a color, 115 and afterwards change text color with an inline of the form 116 \*[<colorname>], or with the macro .COLOR. In document processing, 117 the docelement tag control macros have been expanded to include 118 _COLOR, e.g. .HEAD_COLOR <predefined colorname> will colorize 119 heads, PAGENUM_COLOR <predefined colorname) will colorize page 120 numbering, etc. 121 122 Adjusted vertical placement of hyphens around page numbering when 123 PAGENUM_STYLE is DIGIT, ROMAN or ALPHA so that the hyphens appear 124 properly centered on the page numbering character. 125 126 Changed tab handling in document processing so that tab structures 127 are preserved from page to page and column to column. 128 129 Release 1.1.7-a 130 --------------- 131 132 Increased the flexibility of SMARTQUOTES so that they handle quoting 133 styles by language, entered as a 2-digit language code argument to 134 SMARTQUOTES. See docs. 135 136 Re-wrote the DOCTYPE LETTER macros so that DATE, TO and FROM can be 137 entered in any order the user wishes, with output that matches 138 input. (Should have done this in the first place.) 139 140 Release 1.1.7 141 ------------- 142 143 Finally got around to writing "list" macros. See the docs. 144 145 Added German-style lowered double quotes and two styles of 146 guillemets to SMARTQUOTES. 147 148 Added macro SIZE, intended to be called inline as \*[SIZE <n>]. 149 This brings mom's inline size change syntax into line with her other 150 inlines. \*S[<n>] can still be used for the same thing. 151 152 The file elvis_syntax (for elvis prior to 2.2h) is no longer being 153 maintained. It was getting messy and long in the tooth. The 154 official elvis syntax file is elvis_syntax.new, which works for 155 2.2h of elvis (and higher, one hopes). elvis users are encouraged 156 to update to 2.2h or higher. 157 158 Release 1.1.6-e 159 --------------- 160 161 Extended handling of draft and revision numbers and strings in 162 headers/footers for increased flexibility. It's possible now to 163 have just about any combo of DRAFT_STRING, DRAFT, REVISION_STRING 164 and REVISION, and have them come out in headers/footers as one 165 intuitively expects/wants. 166 167 Also added a new set of syntax highlighting rules for the vi clone, 168 elvis. Version 2-2h-beta of elvis finally made possible the 169 highlighting of \*[...] inline escapes, whether or not they're 170 separated from surrounding text by spaces. This is a terrific 171 improvement in elvis, and makes for greatly improved readability of 172 mom files. 173 174 Release 1.1.6-b - 1.1.6d 175 ------------------------ 176 177 Trivial changes to documentation and some cleanups of the main 178 om.tmac file, including: 179 180 Added a .bp after .if \\n[#START]=1 in FOOTER. Without it, 181 in document processing mode, documents that use *none* of the 182 docprocessing tags (yes, there are times when users want to do 183 this) ignored the footer trap. 184 185 Changed register #DOCHEADER_LEAD_ADJ to string 186 $DOCHEADER_LEAD_ADJ. This means that .DOCHEADER_LEAD no longer 187 requires a unit of measure; points is assumed. 188 189 Release 1.1.6-b 190 --------------- 191 192 Added a SHIM macro that calculates and moves to the next "legal" 193 baseline during document processing (useful if user starts playing 194 around with spacing/leading on a page and needs to get the leading 195 back on track). 196 197 Fixed handling of DOCHEADER OFF <distance> so that the first line of 198 running text falls on a "legal" baseline when <distance> is given. 199 200 Release 1.1.6-a 201 --------------- 202 203 Problem with groff 1.19.1 fixed by Werner (.return handled arguments 204 incorrectly). 205 206 Fixed handling of page numbering style restoration in endnotes, so 207 that (collated) docs have the correct page numbering style when the 208 style has been changed for endnotes (with ENDNOTES_PAGENUM_STYLE). 209 210 DOC_TITLE has been made for use exclusively with DOCTYPE DEFAULT. 211 212 Fixed handling of headers/footers with respect to endnotes. Now, 213 when either headers or footers are on, mom picks up the correct 214 page header/footer on the last page prior to ENDNOTES, gets the 215 pageheaders correct for endnotes pages *including the last one*, and 216 picks up correct page headers/footers for the subsequent docs after 217 COLLATE. 218 219 220 Release 1.1.6 221 ------------- 222 223 BAD NEWS: mom appears to be crippled in some areas when run with 224 groff 1.19.1. Pending a solution, mom must be run with groff 1.18 225 226 ***NEW*** 227 228 Added TOC capabilities. 229 230 Extended range of endnotes control macros. See the documentation 231 on endnotes control macros. 232 233 Added a new DOC_TITLE macro, to deal with collated documents that 234 have an overall title, while each doc has its own separate doc 235 title (from TITLE). 236 237 238 Release 1.1.5 239 ------------- 240 241 ***NEW*** 242 243 Added James Ramsey's CHAPTER_TITLE macro as well as control macros to 244 go with it. Thanks James. Also from James came a patch to handle 245 START differenty which has been incorporated into om.tmac. Thanks 246 again, James. 247 248 Some bits and pieces of the docs have been tweaked, but nothing 249 changed. Hopefully, the changes will make parts of the docs easier to 250 read and navigate. 251 252 ***FIXES*** 253 254 o \*[RULE] 255 256 o broken draft and revision in docheaders 257 258 o post-epigraph spacing in TYPEWRITE 259 260 o header spacing in TYPEWRITE 261 262 ------------------------------------------------------------------------ 263 264 Release 1.1.4 265 ------------- 266 267 ***SIGNIFICANT CHANGE*** 268 .IX is now deprecated, although it will continue to work as before. 269 The new form is .IQ (Indent Quit). Groff will emit a message advising 270 users to update their docs. 271 272 ***NEW*** 273 Four new inlines to deal with horizontal and vertical movements: 274 275 o \*[FWD n] 276 o \*[BCK n] 277 o \*[UP n] 278 o \*[DOWN n] 279 280 All four require a unit of measure after n. These inlines are similar 281 to the older \*[FPn], \*[BPn], \*[ALDn] and \*[RLDn], however they're 282 not restricted to points, and any value can be entered for n (the older 283 forms -- which still work -- were restricted to 1 - 36). 284 285 ***CHANGED*** 286 Inline kerning can now be accomplished with \*[BU n] and \*[FU n], where 287 n, after the space, is the desired number of kern units. The older 288 forms \*[BUn] and \*[FUn] still work, up to 36 units. 289 290 ------------------------------------------------------------------------ 291 292 Release 1.1.3c 293 -------------- 294 295 ***NEW*** 296 A new macro -- ENDNOTES_HDRFTR_CENTER -- added so that mom's default 297 behaviour of not printing the header center string when DOCTYPE is 298 CHAPTER can be disabled (i.e. she will print the center string). The 299 macro is user-called with ENDNOTES_HEADER_CENTER or 300 ENDNOTES_FOOTER_CENTER. 301 302 ***FIXES*** 303 PAD now works as advertised when fill mode is on. 304 305 ENDNOTES no longer disables printing of footnotes on last page of 306 document body. 307 308 Release 1.1.3 309 ------------- 310 311 ***SIGNIFICANT CHANGE -- PLEASE TAKE NOTE*** 312 As of 1.1.3, groff must be >= 1.18. 313 314 ***NEW*** 315 Added endnotes functionality to mom, along with a slew of macros to 316 control how mom prints endnotes pages. See the html documentation. 317 318 ***NEW*** 319 Added inline \*[RULE], which draws a rule to the full measure of the 320 current line length ( to be used in place of \h'\n(.lu' ). Weight of the 321 rule is dependent on the point size of type when \#[RULE] is called. 322 323 ***FIXES*** 324 PAD -- works more intuitively now when the pad string contains inline 325 escapes for font, point size, etc. 326 327 UNDERLINE -- fixed character translations of digraphs so they get 328 underlined properly. Also fixed a bug that was causing some footnotes 329 to get underlined when UNDERLINE was on in the body of the document. 330 331 ***UPDATES*** 332 Html documentation 333 elvis_syn 334 335 Release 1.1.2a 336 -------------- 337 338 ***SIGNIFICANT CHANGE -- PLEASE TAKE NOTE*** 339 In order to help mom toward full groffship, the macro .PS has been 340 renamed to .PT_SIZE, and the alias .TS (for .TAB_SET) has been removed. 341 .PS and .TS are keywords used by pic and tbl respectively, and the mom 342 macros of the same name were in conflict. 343 344 Release 1.1.2 345 ------------- 346 347 ***IT'S OFFICIAL!*** 348 mom is now an official part of the groff. New releases will be 349 incorporated into the groff package. I'll still be posting each new 350 release on the mom homepage, so there's no need to download all of the 351 most recent version of groff just to get a newer mom. :) 352 353 ***CHANGES*** 354 Fixed default footer separator rule adjustment so that it's closer to 355 the advertised "4 points above the tallest ascender in the footer." 356 357 Added more stuff to the elvis_syn file. Still wouldn't mind someone 358 contributing some vim/emacs syntax highlighting. 359 360 Added .cflags 4 /\(em to om.tmac. By default, mom now obligingly 361 breaks after / and \(en. 362 363 ***NEW*** 364 Macro(s): HEADER_RECTO 365 HEADER_VERSO 366 With these macros, users can now define single-string recto/verso 367 headers/footers. HEADER_RECTO (or FOOTER_RECTO) can be used to create 368 a one-part header/footer (instead of mom's default three-parters) that 369 appears on every page if RECTO_VERSO is OFF or, if RECTO_VERSO is on, if 370 no HEADER_VERSO (or FOOTER_VERSO) has been defined. If a HEADER_VERSO 371 (or FOOTER_VERSO) is defined and RECTO_VERSO is on, _RECTO prints on 372 even pages and _VERSO on odd pages. 373 374 Added macro DRAFT_WITH_PAGENUMBER so user can have draft/revision 375 info attached to the pagenumber in COPYSTYLE DRAFT, instead of having 376 it HEADER center. Always having it HEADER center was creating problems 377 with long doc titles, esp. with PRINTSTYLE TYPEWRITE (which is when 378 COPYSTYLE DRAFT is most likely to be used). 379 380 ***FIXES*** 381 No more "can't break line" warnings in DOCTYPE LETTER. 382 383 If no REVISION number is given, Rev. 0 no longer appears HEADER_CENTER 384 in COPYSTYLE DRAFT 385 386 PAGENUM_STYLE now works as advertised. 387 388 Release 1.1.1 389 ------------- 390 391 ***CHANGES*** 392 Main macro file renamed to om.tmac, in keeping with current groff 393 policy. 394 395 Now okay to use groff mailing list for mom-related posts 396 397 ***NEW*** 398 Toggle macro -- BR_AT_LINE_KERN. When on, automatically deposits 399 a break whenever .RW or .EW are invoked. Very useful when kerning 400 whole lines of rag copy. 401 402 ***NEW*** 403 Toggle macro -- PAGENUM_ON_FIRST_PAGE. Normally, when FOOTERS are 404 being used instead of HEADERS, mom doesn't print the page number at 405 the top of the first page of a doc, or the first page of collated docs. 406 PAGENUM_ON_FIRST_PAGE allows user to get mom to put the page number on 407 "first" pages if that's desired. 408 409 ***NEW*** 410 Macro -- BREAK_QUOTE -- to deal with problem of footnoted quotes and 411 blockquotes that cross a page or column. 412 413 ***NEW*** 414 New argument to AUTOLEAD -- FACTOR. With FACTOR, you can, if you 415 wish, enter a factor by which AUTOLEAD multiplies the point size when 416 calculating lead automatically. 417 418 Improvements 419 ------------ 420 421 PAPER now has a much larger selection of common paper sizes. 422 423 \*[ALD], \*[RLD], \*[FP] and \*[BP] now accept increments of quarter 424 points (expressed as decimal fractions). \*[RLD1.75], for example, 425 reverses 1-3/4 points up on the line. 426 427 HEADER_SIZE now available to PRINTSTYLE TYPEWRITE. This was necessary 428 to deal with the problem of excessively long HEADER_LEFT, _CENTER or 429 _RIGHT strings. 430 431 Fixes 432 ----- 433 434 T_MARGIN -- can be set before or after LS or AUTOLEAD 435 SS -- remains constant regardless of WS 436 WS -- no longer affects SS 437 TI -- now works as expected even when called while another indent 438 type is in effect 439 COLLATE -- small fixes 440 441 Broken .RW and .EW fixed. 442 443 String tabs now behave properly when set from within tabs. 444 445 UNDERLINE_QUOTES (for PRINTSTYLE TYPEWRITE) are now, in fact, on by 446 default as the docs state. 447