CVSROOT:        /cvs
Module name:    src
Changes by:     schwa...@cvs.openbsd.org        2015/10/16 18:19:58

Modified files:
        usr.bin/mandoc : libmdoc.h mdoc_argv.c mdoc_macro.c roff.h 
        regress/usr.bin/mandoc/mdoc/Bl: column.in column.out_ascii 
                                        column.out_lint 

Log message:
Very tricky diff to fix macro interpretation and spacing around tabs
in .Bl -column; it took me more than a day to get this right.
Triggered by a loosely related bug report from tim@.

The lesson for you is:  Use .Ta macros in .Bl -column, avoid tabs,
or you are in for surprises:  The last word before a tab is not
interpreted as a macro (unless there is a blank in between), the
first word after a tab isn't either (unless there is a blank in
between), and a blank after a tab causes a leading blank in the
respective output cell.  Yes, "blank", "tab", "blank tab" and "tab
blank" all have different semantics; if you write code relying on
that, good luck maintaining it afterwards...

Reply via email to