History log of /openbsd-current/regress/usr.bin/mandoc/man/Makefile
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 1.21 24-Oct-2023 schwarze

Implement the man(7) .MR macro, a 2023 GNU extension.
The syntax and semantics is almost identical to mdoc(7) .Xr.

This will be needed for reading the groff manual pages once our port
will be updated to 1.23, and the Linux Manual Pages Project is also
determined to start using it sooner or later. I did not advocate for
this new macro, but since we want to remain able to read all manual
pages found in the wild, there is little choice but to support it.
At least it is easy to do, they basically copied .Xr.


Revision tags: OPENBSD_7_2_BASE OPENBSD_7_3_BASE OPENBSD_7_4_BASE
# 1.20 27-Apr-2022 schwarze

The .AT, .DT, and .UC macros are allowed inside next-line scope
and never produce output at the place of their invocation.

Minibugs found while investigating unrelated afl(1) reports from tb@.


Revision tags: OPENBSD_6_5_BASE OPENBSD_6_6_BASE OPENBSD_6_7_BASE OPENBSD_6_8_BASE OPENBSD_6_9_BASE OPENBSD_7_0_BASE OPENBSD_7_1_BASE
# 1.19 05-Jan-2019 schwarze

In groff, when the .SY block macro occurs in no-fill mode,
the output line gets broken after the head. Do the same.


Revision tags: OPENBSD_6_2_BASE OPENBSD_6_3_BASE OPENBSD_6_4_BASE
# 1.18 25-Jun-2017 schwarze

test new MT macro


Revision tags: OPENBSD_5_8_BASE OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE
# 1.17 20-Mar-2015 schwarze

more tests regarding empty header lines


Revision tags: OPENBSD_5_7_BASE
# 1.16 06-Feb-2015 schwarze

better error reporting regarding .OP .RS .UR .TH arguments


# 1.15 14-Aug-2014 schwarze

new regression tests collected during recent work


Revision tags: OPENBSD_5_6_BASE
# 1.14 20-Jun-2014 schwarze

Infrastructure for regression tests of mandoc messages.
Even though messages are not going to be as stable as formatted output,
that is, even though the *.out_lint files are expected to change now and then,
from now on, i want to be able to catch unintended changes in messages.


Revision tags: OPENBSD_5_5_BASE
# 1.13 17-Oct-2013 schwarze

Implement the .UR/.UE block (uniform resource identifier) introduced in the
man-ext macros by Eric S. Raymond, enabled by default in groff_man(7).
Usual disclaimer: You don't write new man(7) code, so you are not going
to use these, either.
Improves e.g. the bzr(1) and etherape(1) manuals.
Thanks to naddy@ for bringing these to my attention.


Revision tags: OPENBSD_5_3_BASE OPENBSD_5_4_BASE
# 1.12 18-Nov-2012 schwarze

Test paragraph distance (.PD) implementation;
related to man_term.c rev. 1.88, man_validate.c rev. 1.56.


Revision tags: OPENBSD_5_2_BASE
# 1.11 18-Jul-2012 schwarze

enable more tests, some were forgotten along the way


# 1.10 14-Jul-2012 schwarze

Translate blank input lines to .sp just like in mdoc(7),
and ignore .sp after .PP. This fixes vertical spacing
for blank lines after .PP and for .sp after .PP.


# 1.9 10-Jul-2012 schwarze

multiple fixes to -Tascii .HP rendering:
* do not add an excessive blank line before the block
* in literal mode, start a new line after the tag

getting this to work requires some general (print_man_node) fixes:
* in literal mode, break the output line at the end of each
input line, not just after those input lines ending in text
* but don't break it when there was no output on the line
* and adjust the margins after the .HP tag

these general fixes require an adjustment to -Tascii .TP rendering:
* set up NOBREAK mode before the body, not after the head

finally, based on all this, implement -Tman .Bl -hang in terms of .HP


# 1.8 07-Jul-2012 schwarze

Add a test for RS breaking some other block.
Unfortunately, the code triggering the assert fixed in man_macro.c rev. 1.37
must be commented out because groff misformats the invalid input
so badly that imitating it really makes no sense.


# 1.7 02-Jun-2012 schwarze

Minimal implementation of .EX and .EE for GNU compatibility.
Do not use this, it is not portable and only defined in esr's man-ext.
For example, sox(1) wants these macros.


Revision tags: OPENBSD_5_1_BASE
# 1.6 17-Nov-2011 schwarze

Complete overhaul of the mandoc(1) test suite.
* Test the recently introduced -Tman output mode, too.
* Specify date and OS arguments in all tests.
* Remove the kludge of sed(1)ing away the page footer lines.
* New make(1) variables SKIP_TMAN, SKIP_GROFF.
* Drop obsolete, clumsy make(1) variable GROFF_TARGETS.
* Delete obsolete mdoc/Bl/E*.sh error reporting tests.
* Silence char/N/basic.
* New targets:
- ascii, ascii-clean - to run -Tascii tests only
- tman, tman-clean - to run the new -Tman tests only
- obj-clean - maintainer only, needed before groff-clean and groff
- groff-clean - maintainer only, affects checked-in files


Revision tags: OPENBSD_5_0_BASE
# 1.5 24-Jul-2011 schwarze

Theo reported that make cleandir deleted too much, triggering this cleanup:

Since quite some time, the groff output files are checked into CVS.
* thus, no longer provide a "groff-clean" target to delete them
* from official targets, no longer call the "groff" target generating them
* do not reimplement "clean" and "cleandir", simply use the official targets


Revision tags: OPENBSD_4_9_BASE
# 1.4 06-Feb-2011 schwarze

another test found in yet another tree;
no more working, but uncommitted tests lying around now


# 1.3 17-Jan-2011 schwarze

Refrain from throwing fatal errors for
* .br .sp .nf .fi .na with arguments - just skip the arguments
* .TH lacking arguments - use empty strings instead like groff
* .TH with excessive arguments - skip those
Reminded by Joerg Sonnenberger, ok kristaps@.


# 1.2 09-Jan-2011 schwarze

test font-alternating blocks in literal context;
related to usr.bin/mandoc/man_term.c rev. 1.51


# 1.1 04-Jan-2011 schwarze

Multiple man(7) .IP and .TP fixes started during p2k10:

Affecting both -Tascii and -Thtml:
* The .IP HEAD uses the second argument as the width, not the last one.
* Only print the first .IP HEAD argument, not all but the last.

Affecting only -Tascii:
* The .IP and .TP HEADs must be printed without literal mode,
but literal mode must be restored afterwards.
* After the .IP and .TP bodies, we only want term_newln(), not
term_flushln(), or we would get two blank lines in literal mode.
* The .TP HEAD does not use TWOSPACE, just like .IP doesn't either.
* In literal mode, clear NOLPAD after each line, or subsequent lines
would get no indentation whatsoever.

Affecting only -Thtml:
* Only print next-line .TP children, instead of all but the first.

OK kristaps@ on the -Tascii part; and:
"Can you work this into man_html.c, too?"


# 1.20 27-Apr-2022 schwarze

The .AT, .DT, and .UC macros are allowed inside next-line scope
and never produce output at the place of their invocation.

Minibugs found while investigating unrelated afl(1) reports from tb@.


Revision tags: OPENBSD_6_5_BASE OPENBSD_6_6_BASE OPENBSD_6_7_BASE OPENBSD_6_8_BASE OPENBSD_6_9_BASE OPENBSD_7_0_BASE OPENBSD_7_1_BASE
# 1.19 05-Jan-2019 schwarze

In groff, when the .SY block macro occurs in no-fill mode,
the output line gets broken after the head. Do the same.


Revision tags: OPENBSD_6_2_BASE OPENBSD_6_3_BASE OPENBSD_6_4_BASE
# 1.18 25-Jun-2017 schwarze

test new MT macro


Revision tags: OPENBSD_5_8_BASE OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE
# 1.17 20-Mar-2015 schwarze

more tests regarding empty header lines


Revision tags: OPENBSD_5_7_BASE
# 1.16 06-Feb-2015 schwarze

better error reporting regarding .OP .RS .UR .TH arguments


# 1.15 14-Aug-2014 schwarze

new regression tests collected during recent work


Revision tags: OPENBSD_5_6_BASE
# 1.14 20-Jun-2014 schwarze

Infrastructure for regression tests of mandoc messages.
Even though messages are not going to be as stable as formatted output,
that is, even though the *.out_lint files are expected to change now and then,
from now on, i want to be able to catch unintended changes in messages.


Revision tags: OPENBSD_5_5_BASE
# 1.13 17-Oct-2013 schwarze

Implement the .UR/.UE block (uniform resource identifier) introduced in the
man-ext macros by Eric S. Raymond, enabled by default in groff_man(7).
Usual disclaimer: You don't write new man(7) code, so you are not going
to use these, either.
Improves e.g. the bzr(1) and etherape(1) manuals.
Thanks to naddy@ for bringing these to my attention.


Revision tags: OPENBSD_5_3_BASE OPENBSD_5_4_BASE
# 1.12 18-Nov-2012 schwarze

Test paragraph distance (.PD) implementation;
related to man_term.c rev. 1.88, man_validate.c rev. 1.56.


Revision tags: OPENBSD_5_2_BASE
# 1.11 18-Jul-2012 schwarze

enable more tests, some were forgotten along the way


# 1.10 14-Jul-2012 schwarze

Translate blank input lines to .sp just like in mdoc(7),
and ignore .sp after .PP. This fixes vertical spacing
for blank lines after .PP and for .sp after .PP.


# 1.9 10-Jul-2012 schwarze

multiple fixes to -Tascii .HP rendering:
* do not add an excessive blank line before the block
* in literal mode, start a new line after the tag

getting this to work requires some general (print_man_node) fixes:
* in literal mode, break the output line at the end of each
input line, not just after those input lines ending in text
* but don't break it when there was no output on the line
* and adjust the margins after the .HP tag

these general fixes require an adjustment to -Tascii .TP rendering:
* set up NOBREAK mode before the body, not after the head

finally, based on all this, implement -Tman .Bl -hang in terms of .HP


# 1.8 07-Jul-2012 schwarze

Add a test for RS breaking some other block.
Unfortunately, the code triggering the assert fixed in man_macro.c rev. 1.37
must be commented out because groff misformats the invalid input
so badly that imitating it really makes no sense.


# 1.7 02-Jun-2012 schwarze

Minimal implementation of .EX and .EE for GNU compatibility.
Do not use this, it is not portable and only defined in esr's man-ext.
For example, sox(1) wants these macros.


Revision tags: OPENBSD_5_1_BASE
# 1.6 17-Nov-2011 schwarze

Complete overhaul of the mandoc(1) test suite.
* Test the recently introduced -Tman output mode, too.
* Specify date and OS arguments in all tests.
* Remove the kludge of sed(1)ing away the page footer lines.
* New make(1) variables SKIP_TMAN, SKIP_GROFF.
* Drop obsolete, clumsy make(1) variable GROFF_TARGETS.
* Delete obsolete mdoc/Bl/E*.sh error reporting tests.
* Silence char/N/basic.
* New targets:
- ascii, ascii-clean - to run -Tascii tests only
- tman, tman-clean - to run the new -Tman tests only
- obj-clean - maintainer only, needed before groff-clean and groff
- groff-clean - maintainer only, affects checked-in files


Revision tags: OPENBSD_5_0_BASE
# 1.5 24-Jul-2011 schwarze

Theo reported that make cleandir deleted too much, triggering this cleanup:

Since quite some time, the groff output files are checked into CVS.
* thus, no longer provide a "groff-clean" target to delete them
* from official targets, no longer call the "groff" target generating them
* do not reimplement "clean" and "cleandir", simply use the official targets


Revision tags: OPENBSD_4_9_BASE
# 1.4 06-Feb-2011 schwarze

another test found in yet another tree;
no more working, but uncommitted tests lying around now


# 1.3 17-Jan-2011 schwarze

Refrain from throwing fatal errors for
* .br .sp .nf .fi .na with arguments - just skip the arguments
* .TH lacking arguments - use empty strings instead like groff
* .TH with excessive arguments - skip those
Reminded by Joerg Sonnenberger, ok kristaps@.


# 1.2 09-Jan-2011 schwarze

test font-alternating blocks in literal context;
related to usr.bin/mandoc/man_term.c rev. 1.51


# 1.1 04-Jan-2011 schwarze

Multiple man(7) .IP and .TP fixes started during p2k10:

Affecting both -Tascii and -Thtml:
* The .IP HEAD uses the second argument as the width, not the last one.
* Only print the first .IP HEAD argument, not all but the last.

Affecting only -Tascii:
* The .IP and .TP HEADs must be printed without literal mode,
but literal mode must be restored afterwards.
* After the .IP and .TP bodies, we only want term_newln(), not
term_flushln(), or we would get two blank lines in literal mode.
* The .TP HEAD does not use TWOSPACE, just like .IP doesn't either.
* In literal mode, clear NOLPAD after each line, or subsequent lines
would get no indentation whatsoever.

Affecting only -Thtml:
* Only print next-line .TP children, instead of all but the first.

OK kristaps@ on the -Tascii part; and:
"Can you work this into man_html.c, too?"


# 1.19 05-Jan-2019 schwarze

In groff, when the .SY block macro occurs in no-fill mode,
the output line gets broken after the head. Do the same.


Revision tags: OPENBSD_6_2_BASE OPENBSD_6_3_BASE OPENBSD_6_4_BASE
# 1.18 25-Jun-2017 schwarze

test new MT macro


Revision tags: OPENBSD_5_8_BASE OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE
# 1.17 20-Mar-2015 schwarze

more tests regarding empty header lines


Revision tags: OPENBSD_5_7_BASE
# 1.16 06-Feb-2015 schwarze

better error reporting regarding .OP .RS .UR .TH arguments


# 1.15 14-Aug-2014 schwarze

new regression tests collected during recent work


Revision tags: OPENBSD_5_6_BASE
# 1.14 20-Jun-2014 schwarze

Infrastructure for regression tests of mandoc messages.
Even though messages are not going to be as stable as formatted output,
that is, even though the *.out_lint files are expected to change now and then,
from now on, i want to be able to catch unintended changes in messages.


Revision tags: OPENBSD_5_5_BASE
# 1.13 17-Oct-2013 schwarze

Implement the .UR/.UE block (uniform resource identifier) introduced in the
man-ext macros by Eric S. Raymond, enabled by default in groff_man(7).
Usual disclaimer: You don't write new man(7) code, so you are not going
to use these, either.
Improves e.g. the bzr(1) and etherape(1) manuals.
Thanks to naddy@ for bringing these to my attention.


Revision tags: OPENBSD_5_3_BASE OPENBSD_5_4_BASE
# 1.12 18-Nov-2012 schwarze

Test paragraph distance (.PD) implementation;
related to man_term.c rev. 1.88, man_validate.c rev. 1.56.


Revision tags: OPENBSD_5_2_BASE
# 1.11 18-Jul-2012 schwarze

enable more tests, some were forgotten along the way


# 1.10 14-Jul-2012 schwarze

Translate blank input lines to .sp just like in mdoc(7),
and ignore .sp after .PP. This fixes vertical spacing
for blank lines after .PP and for .sp after .PP.


# 1.9 10-Jul-2012 schwarze

multiple fixes to -Tascii .HP rendering:
* do not add an excessive blank line before the block
* in literal mode, start a new line after the tag

getting this to work requires some general (print_man_node) fixes:
* in literal mode, break the output line at the end of each
input line, not just after those input lines ending in text
* but don't break it when there was no output on the line
* and adjust the margins after the .HP tag

these general fixes require an adjustment to -Tascii .TP rendering:
* set up NOBREAK mode before the body, not after the head

finally, based on all this, implement -Tman .Bl -hang in terms of .HP


# 1.8 07-Jul-2012 schwarze

Add a test for RS breaking some other block.
Unfortunately, the code triggering the assert fixed in man_macro.c rev. 1.37
must be commented out because groff misformats the invalid input
so badly that imitating it really makes no sense.


# 1.7 02-Jun-2012 schwarze

Minimal implementation of .EX and .EE for GNU compatibility.
Do not use this, it is not portable and only defined in esr's man-ext.
For example, sox(1) wants these macros.


Revision tags: OPENBSD_5_1_BASE
# 1.6 17-Nov-2011 schwarze

Complete overhaul of the mandoc(1) test suite.
* Test the recently introduced -Tman output mode, too.
* Specify date and OS arguments in all tests.
* Remove the kludge of sed(1)ing away the page footer lines.
* New make(1) variables SKIP_TMAN, SKIP_GROFF.
* Drop obsolete, clumsy make(1) variable GROFF_TARGETS.
* Delete obsolete mdoc/Bl/E*.sh error reporting tests.
* Silence char/N/basic.
* New targets:
- ascii, ascii-clean - to run -Tascii tests only
- tman, tman-clean - to run the new -Tman tests only
- obj-clean - maintainer only, needed before groff-clean and groff
- groff-clean - maintainer only, affects checked-in files


Revision tags: OPENBSD_5_0_BASE
# 1.5 24-Jul-2011 schwarze

Theo reported that make cleandir deleted too much, triggering this cleanup:

Since quite some time, the groff output files are checked into CVS.
* thus, no longer provide a "groff-clean" target to delete them
* from official targets, no longer call the "groff" target generating them
* do not reimplement "clean" and "cleandir", simply use the official targets


Revision tags: OPENBSD_4_9_BASE
# 1.4 06-Feb-2011 schwarze

another test found in yet another tree;
no more working, but uncommitted tests lying around now


# 1.3 17-Jan-2011 schwarze

Refrain from throwing fatal errors for
* .br .sp .nf .fi .na with arguments - just skip the arguments
* .TH lacking arguments - use empty strings instead like groff
* .TH with excessive arguments - skip those
Reminded by Joerg Sonnenberger, ok kristaps@.


# 1.2 09-Jan-2011 schwarze

test font-alternating blocks in literal context;
related to usr.bin/mandoc/man_term.c rev. 1.51


# 1.1 04-Jan-2011 schwarze

Multiple man(7) .IP and .TP fixes started during p2k10:

Affecting both -Tascii and -Thtml:
* The .IP HEAD uses the second argument as the width, not the last one.
* Only print the first .IP HEAD argument, not all but the last.

Affecting only -Tascii:
* The .IP and .TP HEADs must be printed without literal mode,
but literal mode must be restored afterwards.
* After the .IP and .TP bodies, we only want term_newln(), not
term_flushln(), or we would get two blank lines in literal mode.
* The .TP HEAD does not use TWOSPACE, just like .IP doesn't either.
* In literal mode, clear NOLPAD after each line, or subsequent lines
would get no indentation whatsoever.

Affecting only -Thtml:
* Only print next-line .TP children, instead of all but the first.

OK kristaps@ on the -Tascii part; and:
"Can you work this into man_html.c, too?"


Revision tags: OPENBSD_6_2_BASE
# 1.18 25-Jun-2017 schwarze

test new MT macro


Revision tags: OPENBSD_5_8_BASE OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE
# 1.17 20-Mar-2015 schwarze

more tests regarding empty header lines


Revision tags: OPENBSD_5_7_BASE
# 1.16 06-Feb-2015 schwarze

better error reporting regarding .OP .RS .UR .TH arguments


# 1.15 14-Aug-2014 schwarze

new regression tests collected during recent work


Revision tags: OPENBSD_5_6_BASE
# 1.14 20-Jun-2014 schwarze

Infrastructure for regression tests of mandoc messages.
Even though messages are not going to be as stable as formatted output,
that is, even though the *.out_lint files are expected to change now and then,
from now on, i want to be able to catch unintended changes in messages.


Revision tags: OPENBSD_5_5_BASE
# 1.13 17-Oct-2013 schwarze

Implement the .UR/.UE block (uniform resource identifier) introduced in the
man-ext macros by Eric S. Raymond, enabled by default in groff_man(7).
Usual disclaimer: You don't write new man(7) code, so you are not going
to use these, either.
Improves e.g. the bzr(1) and etherape(1) manuals.
Thanks to naddy@ for bringing these to my attention.


Revision tags: OPENBSD_5_3_BASE OPENBSD_5_4_BASE
# 1.12 18-Nov-2012 schwarze

Test paragraph distance (.PD) implementation;
related to man_term.c rev. 1.88, man_validate.c rev. 1.56.


Revision tags: OPENBSD_5_2_BASE
# 1.11 18-Jul-2012 schwarze

enable more tests, some were forgotten along the way


# 1.10 14-Jul-2012 schwarze

Translate blank input lines to .sp just like in mdoc(7),
and ignore .sp after .PP. This fixes vertical spacing
for blank lines after .PP and for .sp after .PP.


# 1.9 10-Jul-2012 schwarze

multiple fixes to -Tascii .HP rendering:
* do not add an excessive blank line before the block
* in literal mode, start a new line after the tag

getting this to work requires some general (print_man_node) fixes:
* in literal mode, break the output line at the end of each
input line, not just after those input lines ending in text
* but don't break it when there was no output on the line
* and adjust the margins after the .HP tag

these general fixes require an adjustment to -Tascii .TP rendering:
* set up NOBREAK mode before the body, not after the head

finally, based on all this, implement -Tman .Bl -hang in terms of .HP


# 1.8 07-Jul-2012 schwarze

Add a test for RS breaking some other block.
Unfortunately, the code triggering the assert fixed in man_macro.c rev. 1.37
must be commented out because groff misformats the invalid input
so badly that imitating it really makes no sense.


# 1.7 02-Jun-2012 schwarze

Minimal implementation of .EX and .EE for GNU compatibility.
Do not use this, it is not portable and only defined in esr's man-ext.
For example, sox(1) wants these macros.


Revision tags: OPENBSD_5_1_BASE
# 1.6 17-Nov-2011 schwarze

Complete overhaul of the mandoc(1) test suite.
* Test the recently introduced -Tman output mode, too.
* Specify date and OS arguments in all tests.
* Remove the kludge of sed(1)ing away the page footer lines.
* New make(1) variables SKIP_TMAN, SKIP_GROFF.
* Drop obsolete, clumsy make(1) variable GROFF_TARGETS.
* Delete obsolete mdoc/Bl/E*.sh error reporting tests.
* Silence char/N/basic.
* New targets:
- ascii, ascii-clean - to run -Tascii tests only
- tman, tman-clean - to run the new -Tman tests only
- obj-clean - maintainer only, needed before groff-clean and groff
- groff-clean - maintainer only, affects checked-in files


Revision tags: OPENBSD_5_0_BASE
# 1.5 24-Jul-2011 schwarze

Theo reported that make cleandir deleted too much, triggering this cleanup:

Since quite some time, the groff output files are checked into CVS.
* thus, no longer provide a "groff-clean" target to delete them
* from official targets, no longer call the "groff" target generating them
* do not reimplement "clean" and "cleandir", simply use the official targets


Revision tags: OPENBSD_4_9_BASE
# 1.4 06-Feb-2011 schwarze

another test found in yet another tree;
no more working, but uncommitted tests lying around now


# 1.3 17-Jan-2011 schwarze

Refrain from throwing fatal errors for
* .br .sp .nf .fi .na with arguments - just skip the arguments
* .TH lacking arguments - use empty strings instead like groff
* .TH with excessive arguments - skip those
Reminded by Joerg Sonnenberger, ok kristaps@.


# 1.2 09-Jan-2011 schwarze

test font-alternating blocks in literal context;
related to usr.bin/mandoc/man_term.c rev. 1.51


# 1.1 04-Jan-2011 schwarze

Multiple man(7) .IP and .TP fixes started during p2k10:

Affecting both -Tascii and -Thtml:
* The .IP HEAD uses the second argument as the width, not the last one.
* Only print the first .IP HEAD argument, not all but the last.

Affecting only -Tascii:
* The .IP and .TP HEADs must be printed without literal mode,
but literal mode must be restored afterwards.
* After the .IP and .TP bodies, we only want term_newln(), not
term_flushln(), or we would get two blank lines in literal mode.
* The .TP HEAD does not use TWOSPACE, just like .IP doesn't either.
* In literal mode, clear NOLPAD after each line, or subsequent lines
would get no indentation whatsoever.

Affecting only -Thtml:
* Only print next-line .TP children, instead of all but the first.

OK kristaps@ on the -Tascii part; and:
"Can you work this into man_html.c, too?"