1151497SruRelease 1.3 2151497Sru----------- 3151497Sru 4151497SruAdded line numbering capabilities, with controls. 5151497Sru 6151497SruFootnotes and endnotes can now be referenced by line number. 7151497Sru 8151497SruAdded ability to adjust vertical position of the title that appears 9151497Sruon the first endnotes page. 10151497Sru 11151497SruFootnotes can run on when being referenced by line number. 12151497Sru 13151497SruFootnotes now have a post-footnote spacing option, for adding 14151497Srua little space between footnotes. 15151497Sru 16151497SruExtended LIST so it accepts alpha, ROMAN and roman enumerators. 17151497Sru 18151497SruAdded margin notes capability. 19151497Sru 20151497SruAdded refer support. 21151497Sru 22151497SruAdded bibliography page support. 23151497Sru 24151497SruAdded QUOTE_AUTOLEAD and BLOCKQUOTE_AUTOLEAD, so user can have 25151497Sruquotes and blockquotes leaded differently from running text. 26151497Sru 27151497SruChange: the input line immediately after FOOTNOTE OFF must be 28151497Sruentered as a literal continuation of the line prior to FOOTNOTE, 29151497Sruincluding any initial spaces or punctuation marks. This allows 30151497Srufor hassle-free placing of footnote markers in running text either 31151497Srubefore or after punctuation marks. 32151497Sru 33151497SruRelease 1.2-f 34151497Sru------------- 35151497Sru 36151497SruAdded ADD_SPACE, to permit users to insert space at the top of 37151497Srurunning text (after the first page) when using the docprocessing 38151497Srumacros. 39151497Sru 40151497SruReleases 1.2-a and 1.2-b 41151497Sru------------------------ 42151497Sru 43151497SruMy personal email address has changed. 1.2-a and -b have been 44151497Sruupdated to reflect that. Additionally, I made some small changes 45151497Sruto the documentation. 46151497Sru 47151497SruRelease 1.2 48151497Sru----------- 49151497Sru 50151497SruAs of 1.2, the recommended version of groff to use with mom has 51151497Srubeen bumped up from groff, 1.18 to groff, 1.19.2. Although mom will 52151497Srucontinue to work with groff, 1.18, her handling of .FAM(ILY) and .FT 53151497Sruis now slightly different, therefore users of groff 1.18 may have to 54151497Sruupdate documents created with mom so that every .FAM(ILY) request is 55151497Srufollowed by a .FT request before any text is input, otherwise mom 56151497Sruwill set the text after .FAM(ILY) in Courier (until she encounters a 57151497Sru.FT request). People running groff, >= 1.19.2 don't have to worry 58151497Sruabout this, but I recommend that, regardless of which version you're 59151497Srurunning, you have a look at the document entries for FAMILY and FT 60151497Sruin order to see how mom will be handling .FAMILY and .FT from now 61151497Sruon. 62151497Sru 63151497SruWhen used with groff >=1.19.2, mom now emits warnings if a style 64151497Sruhasn't been registered, or if a font style doesn't exist in the 65151497Srucurrent family. Invalid .FAM(ILY) calls now use a "fallback" font" 66151497Sru(although no warning is issued). The fallback is user-settable. 67151497Sru 68151497SruMom's macro file, om.tmac, now sets up a fairly extensive list of 69151497Srufont "styles," thus expanding the range of arguments that can be 70151497Srupassed to .FT (formerly, just R, I, B and BI, unless users had 71151497Srualready rolled their own solution to the problem of extensive type 72151497Srufamilies containing fonts like condensed, demibold, black, light, etc). 73151497SruUsers are advised to read the documentation sections on FAM(ILY), 74151497SruFT and FALLBACK_FONT, as well as the new appendix section, "Adding 75151497SruPostScript fonts to groff", for information on using mom's style 76151497Sruextensions (and how to disable them, should they conflict with a 77151497Sruuser's present groff site-font/devps setup). 78151497Sru 79151497SruA new macro, FALLBACK_FONT, has been added. It controls not only 80151497Sruthe fallback font for invalid .FAMILY calls, but also whether mom 81151497Sruaborts on invalid .FT calls after issuing a warning, or continues 82151497Sruprocessing using the fallback. 83151497Sru 84151497SruRelease 1.1.9 85151497Sru------------- 86151497Sru 87151497SruAdded the (optional) generation of cover pages and document cover 88151497Srupages, plus a full suite of control macros for all cover page 89151497Sruelements. 90151497Sru 91151497SruAdded new reference macros that apply to covers: COVERTITLE, 92151497SruDOC_COVERTITLE, COPYRIGHT and MISC. 93151497Sru 94151497SruThe need for TRAP OFF/TRAP to deal with ELs and TNs that fall at 95151497Sruthe bottom page has been obsoleted. However, both EL and TN, when 96151497Sruinvoked in any "nofill" mode (LEFT, RIGHT, CENTER, or the L | R | C 97151497Sruarguments to TAB_SET or ST when no QUAD argument is given), must now 98151497Sruhave the input line preceding the EL or TN terminated by \c. Fill 99151497Srumodes do not have this requirement, i.e. no \c is required. 100151497Sru 101151497SruFootnotes that occur inside quotes, blockquotes and epigraphs now 102151497Sruwork just like regular footnotes, with no user intervention 103151497Srurequired. This obsoletes the macro BREAK_QUOTE. 104151497Sru 105151497SruRemoved all aliases that used the word COLOUR. Users must use 106151497SruCOLOR wherever COLOR is needed. COLOUR, as a replacement/alias, is 107151497Sruno longer supported. 108151497Sru 109151497SruNEWPAGE, which used to be an alias of .bp, is now its own macro. 110151497Sru 111151497SruRelease 1.1.8 112151497Sru------------- 113151497Sru 114151497SruAdded text color support. Users can now define or initialize a color, 115151497Sruand afterwards change text color with an inline of the form 116151497Sru\*[<colorname>], or with the macro .COLOR. In document processing, 117151497Sruthe docelement tag control macros have been expanded to include 118151497Sru_COLOR, e.g. .HEAD_COLOR <predefined colorname> will colorize 119151497Sruheads, PAGENUM_COLOR <predefined colorname) will colorize page 120151497Srunumbering, etc. 121151497Sru 122151497SruAdjusted vertical placement of hyphens around page numbering when 123151497SruPAGENUM_STYLE is DIGIT, ROMAN or ALPHA so that the hyphens appear 124151497Sruproperly centered on the page numbering character. 125151497Sru 126151497SruChanged tab handling in document processing so that tab structures 127151497Sruare preserved from page to page and column to column. 128151497Sru 129151497SruRelease 1.1.7-a 130151497Sru--------------- 131151497Sru 132151497SruIncreased the flexibility of SMARTQUOTES so that they handle quoting 133151497Srustyles by language, entered as a 2-digit language code argument to 134151497SruSMARTQUOTES. See docs. 135151497Sru 136151497SruRe-wrote the DOCTYPE LETTER macros so that DATE, TO and FROM can be 137151497Sruentered in any order the user wishes, with output that matches 138151497Sruinput. (Should have done this in the first place.) 139151497Sru 140151497SruRelease 1.1.7 141151497Sru------------- 142151497Sru 143151497SruFinally got around to writing "list" macros. See the docs. 144151497Sru 145151497SruAdded German-style lowered double quotes and two styles of 146151497Sruguillemets to SMARTQUOTES. 147151497Sru 148151497SruAdded macro SIZE, intended to be called inline as \*[SIZE <n>]. 149151497SruThis brings mom's inline size change syntax into line with her other 150151497Sruinlines. \*S[<n>] can still be used for the same thing. 151151497Sru 152151497SruThe file elvis_syntax (for elvis prior to 2.2h) is no longer being 153151497Srumaintained. It was getting messy and long in the tooth. The 154151497Sruofficial elvis syntax file is elvis_syntax.new, which works for 155151497Sru2.2h of elvis (and higher, one hopes). elvis users are encouraged 156151497Sruto update to 2.2h or higher. 157151497Sru 158151497SruRelease 1.1.6-e 159151497Sru--------------- 160151497Sru 161151497SruExtended handling of draft and revision numbers and strings in 162151497Sruheaders/footers for increased flexibility. It's possible now to 163151497Sruhave just about any combo of DRAFT_STRING, DRAFT, REVISION_STRING 164151497Sruand REVISION, and have them come out in headers/footers as one 165151497Sruintuitively expects/wants. 166151497Sru 167151497SruAlso added a new set of syntax highlighting rules for the vi clone, 168151497Sruelvis. Version 2-2h-beta of elvis finally made possible the 169151497Sruhighlighting of \*[...] inline escapes, whether or not they're 170151497Sruseparated from surrounding text by spaces. This is a terrific 171151497Sruimprovement in elvis, and makes for greatly improved readability of 172151497Srumom files. 173151497Sru 174151497SruRelease 1.1.6-b - 1.1.6d 175151497Sru------------------------ 176151497Sru 177151497SruTrivial changes to documentation and some cleanups of the main 178151497Sruom.tmac file, including: 179151497Sru 180151497SruAdded a .bp after .if \\n[#START]=1 in FOOTER. Without it, 181151497Sruin document processing mode, documents that use *none* of the 182151497Srudocprocessing tags (yes, there are times when users want to do 183151497Sruthis) ignored the footer trap. 184151497Sru 185151497SruChanged register #DOCHEADER_LEAD_ADJ to string 186151497Sru$DOCHEADER_LEAD_ADJ. This means that .DOCHEADER_LEAD no longer 187151497Srurequires a unit of measure; points is assumed. 188151497Sru 189151497SruRelease 1.1.6-b 190151497Sru--------------- 191151497Sru 192151497SruAdded a SHIM macro that calculates and moves to the next "legal" 193151497Srubaseline during document processing (useful if user starts playing 194151497Sruaround with spacing/leading on a page and needs to get the leading 195151497Sruback on track). 196151497Sru 197151497SruFixed handling of DOCHEADER OFF <distance> so that the first line of 198151497Srurunning text falls on a "legal" baseline when <distance> is given. 199151497Sru 200151497SruRelease 1.1.6-a 201151497Sru--------------- 202151497Sru 203151497SruProblem with groff 1.19.1 fixed by Werner (.return handled arguments 204151497Sruincorrectly). 205151497Sru 206151497SruFixed handling of page numbering style restoration in endnotes, so 207151497Sruthat (collated) docs have the correct page numbering style when the 208151497Srustyle has been changed for endnotes (with ENDNOTES_PAGENUM_STYLE). 209151497Sru 210151497SruDOC_TITLE has been made for use exclusively with DOCTYPE DEFAULT. 211151497Sru 212151497SruFixed handling of headers/footers with respect to endnotes. Now, 213151497Sruwhen either headers or footers are on, mom picks up the correct 214151497Srupage header/footer on the last page prior to ENDNOTES, gets the 215151497Srupageheaders correct for endnotes pages *including the last one*, and 216151497Srupicks up correct page headers/footers for the subsequent docs after 217151497SruCOLLATE. 218151497Sru 219151497Sru 220151497SruRelease 1.1.6 221151497Sru------------- 222151497Sru 223151497SruBAD NEWS: mom appears to be crippled in some areas when run with 224151497Srugroff 1.19.1. Pending a solution, mom must be run with groff 1.18 225151497Sru 226151497Sru***NEW*** 227151497Sru 228151497SruAdded TOC capabilities. 229151497Sru 230151497SruExtended range of endnotes control macros. See the documentation 231151497Sruon endnotes control macros. 232151497Sru 233151497SruAdded a new DOC_TITLE macro, to deal with collated documents that 234151497Sruhave an overall title, while each doc has its own separate doc 235151497Srutitle (from TITLE). 236151497Sru 237151497Sru 238114402SruRelease 1.1.5 239114402Sru------------- 240114402Sru 241114402Sru***NEW*** 242114402Sru 243114402SruAdded James Ramsey's CHAPTER_TITLE macro as well as control macros to 244114402Srugo with it. Thanks James. Also from James came a patch to handle 245114402SruSTART differenty which has been incorporated into om.tmac. Thanks 246114402Sruagain, James. 247114402Sru 248114402SruSome bits and pieces of the docs have been tweaked, but nothing 249114402Sruchanged. Hopefully, the changes will make parts of the docs easier to 250114402Sruread and navigate. 251114402Sru 252114402Sru***FIXES*** 253114402Sru 254114402Sruo \*[RULE] 255114402Sru 256114402Sruo broken draft and revision in docheaders 257114402Sru 258114402Sruo post-epigraph spacing in TYPEWRITE 259114402Sru 260114402Sruo header spacing in TYPEWRITE 261114402Sru 262114402Sru------------------------------------------------------------------------ 263114402Sru 264104862SruRelease 1.1.4 265104862Sru------------- 266104862Sru 267104862Sru***SIGNIFICANT CHANGE*** 268104862Sru.IX is now deprecated, although it will continue to work as before. 269104862SruThe new form is .IQ (Indent Quit). Groff will emit a message advising 270104862Sruusers to update their docs. 271104862Sru 272104862Sru***NEW*** 273104862SruFour new inlines to deal with horizontal and vertical movements: 274104862Sru 275104862Sru o \*[FWD n] 276104862Sru o \*[BCK n] 277104862Sru o \*[UP n] 278104862Sru o \*[DOWN n] 279104862Sru 280104862SruAll four require a unit of measure after n. These inlines are similar 281104862Sruto the older \*[FPn], \*[BPn], \*[ALDn] and \*[RLDn], however they're 282104862Srunot restricted to points, and any value can be entered for n (the older 283104862Sruforms -- which still work -- were restricted to 1 - 36). 284104862Sru 285104862Sru***CHANGED*** 286104862SruInline kerning can now be accomplished with \*[BU n] and \*[FU n], where 287104862Srun, after the space, is the desired number of kern units. The older 288104862Sruforms \*[BUn] and \*[FUn] still work, up to 36 units. 289104862Sru 290104862Sru------------------------------------------------------------------------ 291104862Sru 292104862SruRelease 1.1.3c 293104862Sru-------------- 294104862Sru 295104862Sru***NEW*** 296104862SruA new macro -- ENDNOTES_HDRFTR_CENTER -- added so that mom's default 297104862Srubehaviour of not printing the header center string when DOCTYPE is 298104862SruCHAPTER can be disabled (i.e. she will print the center string). The 299104862Srumacro is user-called with ENDNOTES_HEADER_CENTER or 300104862SruENDNOTES_FOOTER_CENTER. 301104862Sru 302104862Sru***FIXES*** 303104862SruPAD now works as advertised when fill mode is on. 304104862Sru 305104862SruENDNOTES no longer disables printing of footnotes on last page of 306104862Srudocument body. 307104862Sru 308104862SruRelease 1.1.3 309104862Sru------------- 310104862Sru 311104862Sru***SIGNIFICANT CHANGE -- PLEASE TAKE NOTE*** 312104862SruAs of 1.1.3, groff must be >= 1.18. 313104862Sru 314104862Sru***NEW*** 315104862SruAdded endnotes functionality to mom, along with a slew of macros to 316104862Srucontrol how mom prints endnotes pages. See the html documentation. 317104862Sru 318104862Sru***NEW*** 319104862SruAdded inline \*[RULE], which draws a rule to the full measure of the 320104862Srucurrent line length ( to be used in place of \h'\n(.lu' ). Weight of the 321104862Srurule is dependent on the point size of type when \#[RULE] is called. 322104862Sru 323104862Sru***FIXES*** 324104862SruPAD -- works more intuitively now when the pad string contains inline 325104862Sruescapes for font, point size, etc. 326104862Sru 327104862SruUNDERLINE -- fixed character translations of digraphs so they get 328104862Sruunderlined properly. Also fixed a bug that was causing some footnotes 329104862Sruto get underlined when UNDERLINE was on in the body of the document. 330104862Sru 331104862Sru***UPDATES*** 332104862SruHtml documentation 333104862Sruelvis_syn 334104862Sru 335104862SruRelease 1.1.2a 336104862Sru-------------- 337104862Sru 338104862Sru***SIGNIFICANT CHANGE -- PLEASE TAKE NOTE*** 339104862SruIn order to help mom toward full groffship, the macro .PS has been 340104862Srurenamed to .PT_SIZE, and the alias .TS (for .TAB_SET) has been removed. 341104862Sru.PS and .TS are keywords used by pic and tbl respectively, and the mom 342104862Srumacros of the same name were in conflict. 343104862Sru 344104862SruRelease 1.1.2 345104862Sru------------- 346104862Sru 347104862Sru***IT'S OFFICIAL!*** 348104862Srumom is now an official part of the groff. New releases will be 349104862Sruincorporated into the groff package. I'll still be posting each new 350104862Srurelease on the mom homepage, so there's no need to download all of the 351104862Srumost recent version of groff just to get a newer mom. :) 352104862Sru 353104862Sru***CHANGES*** 354104862SruFixed default footer separator rule adjustment so that it's closer to 355104862Sruthe advertised "4 points above the tallest ascender in the footer." 356104862Sru 357104862SruAdded more stuff to the elvis_syn file. Still wouldn't mind someone 358104862Srucontributing some vim/emacs syntax highlighting. 359104862Sru 360104862SruAdded .cflags 4 /\(em to om.tmac. By default, mom now obligingly 361104862Srubreaks after / and \(en. 362104862Sru 363104862Sru***NEW*** 364104862SruMacro(s): HEADER_RECTO 365104862Sru HEADER_VERSO 366104862SruWith these macros, users can now define single-string recto/verso 367104862Sruheaders/footers. HEADER_RECTO (or FOOTER_RECTO) can be used to create 368104862Srua one-part header/footer (instead of mom's default three-parters) that 369104862Sruappears on every page if RECTO_VERSO is OFF or, if RECTO_VERSO is on, if 370104862Sruno HEADER_VERSO (or FOOTER_VERSO) has been defined. If a HEADER_VERSO 371104862Sru(or FOOTER_VERSO) is defined and RECTO_VERSO is on, _RECTO prints on 372104862Srueven pages and _VERSO on odd pages. 373104862Sru 374104862SruAdded macro DRAFT_WITH_PAGENUMBER so user can have draft/revision 375104862Sruinfo attached to the pagenumber in COPYSTYLE DRAFT, instead of having 376104862Sruit HEADER center. Always having it HEADER center was creating problems 377104862Sruwith long doc titles, esp. with PRINTSTYLE TYPEWRITE (which is when 378104862SruCOPYSTYLE DRAFT is most likely to be used). 379104862Sru 380104862Sru***FIXES*** 381104862SruNo more "can't break line" warnings in DOCTYPE LETTER. 382104862Sru 383104862SruIf no REVISION number is given, Rev. 0 no longer appears HEADER_CENTER 384104862Sruin COPYSTYLE DRAFT 385104862Sru 386104862SruPAGENUM_STYLE now works as advertised. 387104862Sru 388104862SruRelease 1.1.1 389104862Sru------------- 390104862Sru 391104862Sru***CHANGES*** 392104862SruMain macro file renamed to om.tmac, in keeping with current groff 393104862Srupolicy. 394104862Sru 395104862SruNow okay to use groff mailing list for mom-related posts 396104862Sru 397104862Sru***NEW*** 398104862SruToggle macro -- BR_AT_LINE_KERN. When on, automatically deposits 399104862Srua break whenever .RW or .EW are invoked. Very useful when kerning 400104862Sruwhole lines of rag copy. 401104862Sru 402104862Sru***NEW*** 403104862SruToggle macro -- PAGENUM_ON_FIRST_PAGE. Normally, when FOOTERS are 404104862Srubeing used instead of HEADERS, mom doesn't print the page number at 405104862Sruthe top of the first page of a doc, or the first page of collated docs. 406104862SruPAGENUM_ON_FIRST_PAGE allows user to get mom to put the page number on 407104862Sru"first" pages if that's desired. 408104862Sru 409104862Sru***NEW*** 410104862SruMacro -- BREAK_QUOTE -- to deal with problem of footnoted quotes and 411104862Srublockquotes that cross a page or column. 412104862Sru 413104862Sru***NEW*** 414104862SruNew argument to AUTOLEAD -- FACTOR. With FACTOR, you can, if you 415104862Sruwish, enter a factor by which AUTOLEAD multiplies the point size when 416104862Srucalculating lead automatically. 417104862Sru 418104862SruImprovements 419104862Sru------------ 420104862Sru 421104862SruPAPER now has a much larger selection of common paper sizes. 422104862Sru 423104862Sru\*[ALD], \*[RLD], \*[FP] and \*[BP] now accept increments of quarter 424104862Srupoints (expressed as decimal fractions). \*[RLD1.75], for example, 425104862Srureverses 1-3/4 points up on the line. 426104862Sru 427104862SruHEADER_SIZE now available to PRINTSTYLE TYPEWRITE. This was necessary 428104862Sruto deal with the problem of excessively long HEADER_LEFT, _CENTER or 429104862Sru_RIGHT strings. 430104862Sru 431104862SruFixes 432104862Sru----- 433104862Sru 434104862SruT_MARGIN -- can be set before or after LS or AUTOLEAD 435104862SruSS -- remains constant regardless of WS 436104862SruWS -- no longer affects SS 437104862SruTI -- now works as expected even when called while another indent 438104862Sru type is in effect 439104862SruCOLLATE -- small fixes 440104862Sru 441104862SruBroken .RW and .EW fixed. 442104862Sru 443104862SruString tabs now behave properly when set from within tabs. 444104862Sru 445104862SruUNDERLINE_QUOTES (for PRINTSTYLE TYPEWRITE) are now, in fact, on by 446104862Srudefault as the docs state. 447