summaryrefslogtreecommitdiffstats
path: root/regress/mdoc
diff options
context:
space:
mode:
Diffstat (limited to 'regress/mdoc')
-rw-r--r--regress/mdoc/Ad/Makefile3
-rw-r--r--regress/mdoc/Ad/font.out_markdown13
-rw-r--r--regress/mdoc/Ad/noarg.out_markdown14
-rw-r--r--regress/mdoc/Ap/Makefile1
-rw-r--r--regress/mdoc/Ap/eos.out_markdown15
-rw-r--r--regress/mdoc/Ap/middle.out_markdown11
-rw-r--r--regress/mdoc/Aq/Makefile1
-rw-r--r--regress/mdoc/Aq/empty.out_markdown17
-rw-r--r--regress/mdoc/Ar/Makefile1
-rw-r--r--regress/mdoc/Ar/font.out_markdown13
-rw-r--r--regress/mdoc/Ar/punct.out_markdown42
-rw-r--r--regress/mdoc/At/Makefile1
-rw-r--r--regress/mdoc/At/invalid.out_markdown20
-rw-r--r--regress/mdoc/Bl/Makefile5
-rw-r--r--regress/mdoc/Bl/bareIt.out_markdown15
-rw-r--r--regress/mdoc/Bl/bareTa.out_markdown24
-rw-r--r--regress/mdoc/Bl/breakingTa.out_markdown15
-rw-r--r--regress/mdoc/Bl/bullet.out_markdown46
-rw-r--r--regress/mdoc/Bl/dash.out_markdown46
-rw-r--r--regress/mdoc/Bl/diag.out_markdown45
-rw-r--r--regress/mdoc/Bl/empty.out_markdown33
-rw-r--r--regress/mdoc/Bl/emptyitem.out_markdown41
-rw-r--r--regress/mdoc/Bl/enum.out_markdown46
-rw-r--r--regress/mdoc/Bl/item.out_markdown19
-rw-r--r--regress/mdoc/Bl/multitype.out_markdown11
-rw-r--r--regress/mdoc/Bl/notype.out_markdown23
-rw-r--r--regress/mdoc/Bl/ohang.out_markdown25
-rw-r--r--regress/mdoc/Bl/unclosed.out_markdown15
-rw-r--r--regress/mdoc/Brq/Makefile3
-rw-r--r--regress/mdoc/Brq/empty.out_markdown17
-rw-r--r--regress/mdoc/Bx/Makefile3
-rw-r--r--regress/mdoc/Bx/args.out_markdown29
-rw-r--r--regress/mdoc/Cd/Makefile1
-rw-r--r--regress/mdoc/Cd/eos.out_markdown13
-rw-r--r--regress/mdoc/Cd/font.out_markdown13
-rw-r--r--regress/mdoc/Cd/noarg.out_markdown14
-rw-r--r--regress/mdoc/Cm/Makefile1
-rw-r--r--regress/mdoc/Cm/basic.out_markdown15
-rw-r--r--regress/mdoc/Cm/font.out_markdown13
-rw-r--r--regress/mdoc/Cm/noarg.out_markdown15
-rw-r--r--regress/mdoc/Dd/Makefile1
-rw-r--r--regress/mdoc/Dd/badarg.out_markdown11
-rw-r--r--regress/mdoc/Dd/dupe.out_markdown12
-rw-r--r--regress/mdoc/Dd/late.out_markdown12
-rw-r--r--regress/mdoc/Dd/long.out_markdown11
-rw-r--r--regress/mdoc/Dd/manarg.out_markdown11
-rw-r--r--regress/mdoc/Dd/order.out_markdown11
-rw-r--r--regress/mdoc/Dl/Makefile1
-rw-r--r--regress/mdoc/Dl/spacing.out_markdown17
-rw-r--r--regress/mdoc/Dq/Makefile3
-rw-r--r--regress/mdoc/Dq/empty.out_markdown17
-rw-r--r--regress/mdoc/Dt/Makefile2
-rw-r--r--regress/mdoc/Dt/case.out_markdown11
-rw-r--r--regress/mdoc/Dt/dupe.out_markdown12
-rw-r--r--regress/mdoc/Dt/fourargs.out_markdown11
-rw-r--r--regress/mdoc/Dt/late.out_markdown12
-rw-r--r--regress/mdoc/Dt/missing.out_markdown11
-rw-r--r--regress/mdoc/Dt/noarg.out_markdown11
-rw-r--r--regress/mdoc/Dt/nobody.out_markdown3
-rw-r--r--regress/mdoc/Dt/nosec.out_markdown11
-rw-r--r--regress/mdoc/Dt/order.out_markdown11
-rw-r--r--regress/mdoc/Dv/Makefile1
-rw-r--r--regress/mdoc/Dv/font.out_markdown16
-rw-r--r--regress/mdoc/Dv/noarg.out_markdown14
-rw-r--r--regress/mdoc/Em/Makefile1
-rw-r--r--regress/mdoc/Em/font.out_markdown13
-rw-r--r--regress/mdoc/Em/noarg.out_markdown14
-rw-r--r--regress/mdoc/Em/punct.out_markdown85
-rw-r--r--regress/mdoc/Eo/Makefile1
-rw-r--r--regress/mdoc/Eo/break.out_markdown43
-rw-r--r--regress/mdoc/Eo/obsolete.out_markdown22
-rw-r--r--regress/mdoc/Eo/unclosed.out_markdown12
-rw-r--r--regress/mdoc/Er/Makefile1
-rw-r--r--regress/mdoc/Er/font.out_markdown13
-rw-r--r--regress/mdoc/Er/noarg.out_markdown14
-rw-r--r--regress/mdoc/Ev/Makefile1
-rw-r--r--regress/mdoc/Ev/font.out_markdown16
-rw-r--r--regress/mdoc/Ev/noarg.out_markdown14
-rw-r--r--regress/mdoc/Ex/Makefile1
-rw-r--r--regress/mdoc/Ex/args.out_markdown18
-rw-r--r--regress/mdoc/Ex/noname.out_markdown18
-rw-r--r--regress/mdoc/Ex/nostd.out_markdown18
-rw-r--r--regress/mdoc/Fd/Makefile1
-rw-r--r--regress/mdoc/Fd/break.out_markdown35
-rw-r--r--regress/mdoc/Fd/eos.out_markdown13
-rw-r--r--regress/mdoc/Fd/font.out_markdown13
-rw-r--r--regress/mdoc/Fl/Makefile1
-rw-r--r--regress/mdoc/Fl/font.out_markdown13
-rw-r--r--regress/mdoc/Fl/multiarg.out_markdown17
-rw-r--r--regress/mdoc/Fl/noarg.out_markdown22
-rw-r--r--regress/mdoc/Fl/punct.out_markdown42
-rw-r--r--regress/mdoc/Fo/Makefile2
-rw-r--r--regress/mdoc/Fo/basic.out_markdown22
-rw-r--r--regress/mdoc/Fo/break.out_markdown45
-rw-r--r--regress/mdoc/Fo/eos.out_markdown17
-rw-r--r--regress/mdoc/Fo/font.out_markdown18
-rw-r--r--regress/mdoc/Fo/noarg.out_markdown32
-rw-r--r--regress/mdoc/Fo/nohead.out_markdown13
-rw-r--r--regress/mdoc/Fo/obsolete.out_markdown15
-rw-r--r--regress/mdoc/Fo/punct.out_markdown12
-rw-r--r--regress/mdoc/Fo/section.out_markdown114
-rw-r--r--regress/mdoc/Fo/warn.out_markdown15
-rw-r--r--regress/mdoc/Ft/Makefile1
-rw-r--r--regress/mdoc/Ft/font.out_markdown13
-rw-r--r--regress/mdoc/Ic/Makefile1
-rw-r--r--regress/mdoc/Ic/font.out_markdown13
-rw-r--r--regress/mdoc/Ic/noarg.out_markdown14
-rw-r--r--regress/mdoc/In/Makefile1
-rw-r--r--regress/mdoc/In/eos.out_markdown13
-rw-r--r--regress/mdoc/In/font.out_markdown13
-rw-r--r--regress/mdoc/Lb/Makefile1
-rw-r--r--regress/mdoc/Lb/badargs.out_markdown12
-rw-r--r--regress/mdoc/Lb/break.out_markdown17
-rw-r--r--regress/mdoc/Lb/eos.out_markdown13
-rw-r--r--regress/mdoc/Li/Makefile1
-rw-r--r--regress/mdoc/Li/font.out_markdown13
-rw-r--r--regress/mdoc/Li/punct.out_markdown86
-rw-r--r--regress/mdoc/Lk/Makefile1
-rw-r--r--regress/mdoc/Lk/link.out_markdown21
-rw-r--r--regress/mdoc/Lk/noarg.out_markdown16
-rw-r--r--regress/mdoc/Ms/Makefile1
-rw-r--r--regress/mdoc/Ms/font.out_markdown13
-rw-r--r--regress/mdoc/Ms/noarg.out_markdown14
-rw-r--r--regress/mdoc/Mt/Makefile1
-rw-r--r--regress/mdoc/Mt/simple.out_markdown15
-rw-r--r--regress/mdoc/Nd/Makefile1
-rw-r--r--regress/mdoc/Nd/hyph.out_markdown13
-rw-r--r--regress/mdoc/Nd/noarg.out_markdown11
-rw-r--r--regress/mdoc/Nd/par.out_markdown17
-rw-r--r--regress/mdoc/Nm/Makefile3
-rw-r--r--regress/mdoc/Nm/break.out_markdown17
-rw-r--r--regress/mdoc/Nm/broken.out_markdown19
-rw-r--r--regress/mdoc/Nm/empty.out_markdown18
-rw-r--r--regress/mdoc/Nm/font.out_markdown13
-rw-r--r--regress/mdoc/Nm/long.out_markdown13
-rw-r--r--regress/mdoc/Nm/par.out_markdown14
-rw-r--r--regress/mdoc/Nm/parns.out_markdown22
-rw-r--r--regress/mdoc/Nm/punct.out_markdown42
-rw-r--r--regress/mdoc/No/Makefile1
-rw-r--r--regress/mdoc/No/punct.out_markdown86
-rw-r--r--regress/mdoc/No/spacing.out_markdown27
-rw-r--r--regress/mdoc/Ns/Makefile1
-rw-r--r--regress/mdoc/Ns/position.out_markdown29
-rw-r--r--regress/mdoc/Ns/punct.out_markdown16
-rw-r--r--regress/mdoc/Oo/Makefile3
-rw-r--r--regress/mdoc/Oo/punct.out_markdown23
-rw-r--r--regress/mdoc/Op/Makefile1
-rw-r--r--regress/mdoc/Op/break.out_markdown19
-rw-r--r--regress/mdoc/Op/broken.out_markdown19
-rw-r--r--regress/mdoc/Op/punct.out_markdown34
-rw-r--r--regress/mdoc/Os/Makefile2
-rw-r--r--regress/mdoc/Os/dupe.out_markdown12
-rw-r--r--regress/mdoc/Os/late.out_markdown12
-rw-r--r--regress/mdoc/Os/long.out_markdown11
-rw-r--r--regress/mdoc/Os/missing.out_markdown11
-rw-r--r--regress/mdoc/Ox/Makefile3
-rw-r--r--regress/mdoc/Ox/keep.out_markdown12
-rw-r--r--regress/mdoc/Pa/Makefile1
-rw-r--r--regress/mdoc/Pa/font.out_markdown13
-rw-r--r--regress/mdoc/Pa/punct.out_markdown42
-rw-r--r--regress/mdoc/Pf/Makefile1
-rw-r--r--regress/mdoc/Pf/spacing.out_markdown34
-rw-r--r--regress/mdoc/Pp/Makefile1
-rw-r--r--regress/mdoc/Pp/arg.out_markdown16
-rw-r--r--regress/mdoc/Qq/Makefile3
-rw-r--r--regress/mdoc/Qq/empty.out_markdown17
-rw-r--r--regress/mdoc/Rs/Makefile1
-rw-r--r--regress/mdoc/Rs/allch.out_markdown50
-rw-r--r--regress/mdoc/Rs/args.out_markdown19
-rw-r--r--regress/mdoc/Rs/break.out_markdown30
-rw-r--r--regress/mdoc/Rs/empty.out_markdown18
-rw-r--r--regress/mdoc/Rs/three_authors.out_markdown14
-rw-r--r--regress/mdoc/Rv/Makefile1
-rw-r--r--regress/mdoc/Rv/args.out_markdown18
-rw-r--r--regress/mdoc/Rv/nostd.out_markdown18
-rw-r--r--regress/mdoc/Sh/Makefile2
-rw-r--r--regress/mdoc/Sh/badNAME.out_markdown12
-rw-r--r--regress/mdoc/Sh/before.out_markdown17
-rw-r--r--regress/mdoc/Sh/empty.out_markdown15
-rw-r--r--regress/mdoc/Sh/emptyNAME.out_markdown9
-rw-r--r--regress/mdoc/Sh/first.out_markdown7
-rw-r--r--regress/mdoc/Sh/nohead.out_markdown13
-rw-r--r--regress/mdoc/Sh/order.out_markdown19
-rw-r--r--regress/mdoc/Sh/orderNAME.out_markdown15
-rw-r--r--regress/mdoc/Sh/punctNAME.out_markdown13
-rw-r--r--regress/mdoc/Sh/subbefore.out_markdown19
-rw-r--r--regress/mdoc/Sm/Makefile1
-rw-r--r--regress/mdoc/Sm/badarg.out_markdown14
-rw-r--r--regress/mdoc/Sm/noarg.out_markdown18
-rw-r--r--regress/mdoc/Sm/spacing-No.out_markdown47
-rw-r--r--regress/mdoc/Sm/spacing-Op.out_markdown49
-rw-r--r--regress/mdoc/Sm/twoarg.out_markdown19
-rw-r--r--regress/mdoc/Sq/Makefile3
-rw-r--r--regress/mdoc/Sq/empty.out_markdown17
-rw-r--r--regress/mdoc/St/Makefile1
-rw-r--r--regress/mdoc/St/badargs.out_markdown21
-rw-r--r--regress/mdoc/St/call.out_markdown17
-rw-r--r--regress/mdoc/Sx/Makefile1
-rw-r--r--regress/mdoc/Sx/font.out_markdown13
-rw-r--r--regress/mdoc/Sx/noarg.out_markdown14
-rw-r--r--regress/mdoc/Sy/Makefile1
-rw-r--r--regress/mdoc/Sy/font.out_markdown13
-rw-r--r--regress/mdoc/Sy/noarg.out_markdown14
-rw-r--r--regress/mdoc/Sy/punct.out_markdown85
-rw-r--r--regress/mdoc/Tn/Makefile1
-rw-r--r--regress/mdoc/Tn/font.out_markdown13
-rw-r--r--regress/mdoc/Tn/noarg.out_markdown14
-rw-r--r--regress/mdoc/Ud/Makefile1
-rw-r--r--regress/mdoc/Ud/arg.out_markdown22
-rw-r--r--regress/mdoc/Ux/Makefile1
-rw-r--r--regress/mdoc/Ux/eos.out_markdown25
-rw-r--r--regress/mdoc/Ux/spacing.out_markdown23
-rw-r--r--regress/mdoc/Va/Makefile1
-rw-r--r--regress/mdoc/Va/basic.out_markdown17
-rw-r--r--regress/mdoc/Va/font.out_markdown13
-rw-r--r--regress/mdoc/Va/noarg.out_markdown15
-rw-r--r--regress/mdoc/Vt/Makefile1
-rw-r--r--regress/mdoc/Vt/child.out_markdown20
-rw-r--r--regress/mdoc/Vt/font.out_markdown13
-rw-r--r--regress/mdoc/Vt/noarg.out_markdown14
-rw-r--r--regress/mdoc/Vt/spacing.out_markdown21
-rw-r--r--regress/mdoc/Xr/Makefile1
-rw-r--r--regress/mdoc/Xr/args.out_markdown28
-rw-r--r--regress/mdoc/blank/Makefile1
-rw-r--r--regress/mdoc/blank/comment.out_markdown16
-rw-r--r--regress/mdoc/blank/list.out_markdown50
-rw-r--r--regress/mdoc/break/Makefile1
-rw-r--r--regress/mdoc/break/brokenbreaker.out_markdown13
-rw-r--r--regress/mdoc/break/notopen.out_markdown14
-rw-r--r--regress/mdoc/break/twice.out_markdown35
-rw-r--r--regress/mdoc/break/two.out_markdown37
231 files changed, 3706 insertions, 8 deletions
diff --git a/regress/mdoc/Ad/Makefile b/regress/mdoc/Ad/Makefile
index 1be2a84a..667257a2 100644
--- a/regress/mdoc/Ad/Makefile
+++ b/regress/mdoc/Ad/Makefile
@@ -1,6 +1,7 @@
# $OpenBSD: Makefile,v 1.4 2014/07/02 20:18:42 schwarze Exp $
-REGRESS_TARGETS = noarg font
+REGRESS_TARGETS = noarg font
LINT_TARGETS = noarg
+MARKDOWN_TARGETS = noarg font
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Ad/font.out_markdown b/regress/mdoc/Ad/font.out_markdown
new file mode 100644
index 00000000..365add62
--- /dev/null
+++ b/regress/mdoc/Ad/font.out_markdown
@@ -0,0 +1,13 @@
+AD-FONT(1) - General Commands Manual
+
+# NAME
+
+**Ad-font** - changing fonts inside the address macro
+
+# DESCRIPTION
+
+normal text
+*emphasis**bold**back* | *after*: *punctuation*
+trailing text
+
+OpenBSD - November 20, 2014
diff --git a/regress/mdoc/Ad/noarg.out_markdown b/regress/mdoc/Ad/noarg.out_markdown
new file mode 100644
index 00000000..de7b6c64
--- /dev/null
+++ b/regress/mdoc/Ad/noarg.out_markdown
@@ -0,0 +1,14 @@
+AD-NOARG(1) - General Commands Manual
+
+# NAME
+
+**Ad-noarg** - address macro without an argument
+
+# DESCRIPTION
+
+with address:
+*0x3bc*
+no address:
+end of test document
+
+OpenBSD - January 19, 2011
diff --git a/regress/mdoc/Ap/Makefile b/regress/mdoc/Ap/Makefile
index 4ee49253..f82cf7df 100644
--- a/regress/mdoc/Ap/Makefile
+++ b/regress/mdoc/Ap/Makefile
@@ -1,5 +1,6 @@
# $OpenBSD: Makefile,v 1.2 2012/11/16 18:40:39 schwarze Exp $
REGRESS_TARGETS = middle eos
+MARKDOWN_TARGETS = middle eos
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Ap/eos.out_markdown b/regress/mdoc/Ap/eos.out_markdown
new file mode 100644
index 00000000..cefddcf1
--- /dev/null
+++ b/regress/mdoc/Ap/eos.out_markdown
@@ -0,0 +1,15 @@
+AP-EOS(1) - General Commands Manual
+
+# NAME
+
+**Ap-eos** - end of sentence handling after the apostrophe macro
+
+# DESCRIPTION
+
+The first sentence is
+Ingo's.
+The second is
+Kristaps'.
+No idea about the third.
+
+OpenBSD - November 16, 2012
diff --git a/regress/mdoc/Ap/middle.out_markdown b/regress/mdoc/Ap/middle.out_markdown
new file mode 100644
index 00000000..9600945b
--- /dev/null
+++ b/regress/mdoc/Ap/middle.out_markdown
@@ -0,0 +1,11 @@
+AP-MIDDLE(1) - General Commands Manual
+
+# NAME
+
+**Ap-middle** - apostrophe in the middle of a macro line
+
+# DESCRIPTION
+
+mandoc(1)'s
+
+OpenBSD - September 30, 2011
diff --git a/regress/mdoc/Aq/Makefile b/regress/mdoc/Aq/Makefile
index ae347ad3..ac59b314 100644
--- a/regress/mdoc/Aq/Makefile
+++ b/regress/mdoc/Aq/Makefile
@@ -2,5 +2,6 @@
REGRESS_TARGETS = author empty
UTF8_TARGETS = author empty
+MARKDOWN_TARGETS = empty
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Aq/empty.out_markdown b/regress/mdoc/Aq/empty.out_markdown
new file mode 100644
index 00000000..27039dd7
--- /dev/null
+++ b/regress/mdoc/Aq/empty.out_markdown
@@ -0,0 +1,17 @@
+AQ-EMPTY(1) - General Commands Manual
+
+# NAME
+
+**Aq-empty** - empty implicit enclosure macros
+
+# DESCRIPTION
+
+An empty
+&lt;&gt;
+and a full
+&lt;user@host&gt;
+return path.
+And another
+&lt;full&gt; one.
+
+OpenBSD - August 6, 2010
diff --git a/regress/mdoc/Ar/Makefile b/regress/mdoc/Ar/Makefile
index 2d1d895c..d7ea1681 100644
--- a/regress/mdoc/Ar/Makefile
+++ b/regress/mdoc/Ar/Makefile
@@ -1,5 +1,6 @@
# $OpenBSD: Makefile,v 1.3 2012/07/09 17:52:09 schwarze Exp $
REGRESS_TARGETS = punct font
+MARKDOWN_TARGETS = punct font
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Ar/font.out_markdown b/regress/mdoc/Ar/font.out_markdown
new file mode 100644
index 00000000..8ee329ef
--- /dev/null
+++ b/regress/mdoc/Ar/font.out_markdown
@@ -0,0 +1,13 @@
+AR-FONT(1) - General Commands Manual
+
+# NAME
+
+**Ar-font** - changing fonts inside the argument macro
+
+# DESCRIPTION
+
+normal text
+*emphasis**bold**back*
+trailing text
+
+OpenBSD - July 9, 2012
diff --git a/regress/mdoc/Ar/punct.out_markdown b/regress/mdoc/Ar/punct.out_markdown
new file mode 100644
index 00000000..b8e3eda6
--- /dev/null
+++ b/regress/mdoc/Ar/punct.out_markdown
@@ -0,0 +1,42 @@
+AR-PUNCT(1) - General Commands Manual
+
+# NAME
+
+**Ar-punct** - punctuation handling by the Ar macro
+
+# DESCRIPTION
+
+closing punctuation
+*a*)
+only one
+*file ...*)
+only more than one
+*file ...*))
+middle
+*a*) *z*
+start
+*file ...*) *z*
+dot
+*file ...*. *z*
+comma
+*file ...*, *z*
+semicolon
+*file ...*; *z*
+colon
+*file ...*: *z*
+quest
+*file ...*? *z*
+excl
+*file ...*! *z*
+paren
+*file ...*) *z*
+bracket
+*file ...*] *z*
+bar
+| *m*
+op paren
+(*a*
+op bracket
+\[*a*
+
+OpenBSD - August 21, 2014
diff --git a/regress/mdoc/At/Makefile b/regress/mdoc/At/Makefile
index 6c362995..14baff11 100644
--- a/regress/mdoc/At/Makefile
+++ b/regress/mdoc/At/Makefile
@@ -2,5 +2,6 @@
REGRESS_TARGETS = invalid
LINT_TARGETS = invalid
+MARKDOWN_TARGETS = invalid
.include <bsd.regress.mk>
diff --git a/regress/mdoc/At/invalid.out_markdown b/regress/mdoc/At/invalid.out_markdown
new file mode 100644
index 00000000..0b952558
--- /dev/null
+++ b/regress/mdoc/At/invalid.out_markdown
@@ -0,0 +1,20 @@
+AT-INVALID(1) - General Commands Manual
+
+# NAME
+
+**At-invalid** - handling of an invalid AT&T UNIX argument
+
+# DESCRIPTION
+
+no argument:
+AT&T UNIX
+
+valid argument:
+Version&#160;7 AT&T UNIX
+
+invalid argument:
+AT&T UNIX murks
+
+end of file
+
+OpenBSD - June 30, 2010
diff --git a/regress/mdoc/Bl/Makefile b/regress/mdoc/Bl/Makefile
index c8c9b3c9..bec6cdef 100644
--- a/regress/mdoc/Bl/Makefile
+++ b/regress/mdoc/Bl/Makefile
@@ -13,6 +13,11 @@ LINT_TARGETS = column notype badargs tag
LINT_TARGETS += empty noIt emptyhead emptytag emptyitem
LINT_TARGETS += bareIt bareTa break breakingIt broken
+MARKDOWN_TARGETS = item diag ohang bullet dash enum
+MARKDOWN_TARGETS += notype multitype
+MARKDOWN_TARGETS += empty emptyitem
+MARKDOWN_TARGETS += bareIt bareTa unclosed breakingTa
+
# groff-mandoc differences:
# - groff allows enclosures to span Ta, mandoc does not
diff --git a/regress/mdoc/Bl/bareIt.out_markdown b/regress/mdoc/Bl/bareIt.out_markdown
new file mode 100644
index 00000000..f1280770
--- /dev/null
+++ b/regress/mdoc/Bl/bareIt.out_markdown
@@ -0,0 +1,15 @@
+BL-BAREIT(1) - General Commands Manual
+
+# NAME
+
+**Bl-bareIt** - item macro outside list
+
+# DESCRIPTION
+
+initial text
+
+- item
+
+final text
+
+OpenBSD - August 16, 2014
diff --git a/regress/mdoc/Bl/bareTa.out_markdown b/regress/mdoc/Bl/bareTa.out_markdown
new file mode 100644
index 00000000..d2dd7129
--- /dev/null
+++ b/regress/mdoc/Bl/bareTa.out_markdown
@@ -0,0 +1,24 @@
+TA-BARE(1) - General Commands Manual
+
+# NAME
+
+**Ta-bare** - bare tabular column macro
+
+# DESCRIPTION
+
+initial text
+middle text
+
+indented text
+
+middle text
+
+- indented text
+
+middle text
+
+ a b
+
+final text
+
+OpenBSD - November 12, 2012
diff --git a/regress/mdoc/Bl/breakingTa.out_markdown b/regress/mdoc/Bl/breakingTa.out_markdown
new file mode 100644
index 00000000..64cdc72d
--- /dev/null
+++ b/regress/mdoc/Bl/breakingTa.out_markdown
@@ -0,0 +1,15 @@
+BL-BREAKINGTA(1) - General Commands Manual
+
+# NAME
+
+**Bl-breakingTa** - tab macro breaking a block
+
+# DESCRIPTION
+
+initial text
+
+ it <aq> ta [bo bc] (pq)
+
+final text
+
+OpenBSD - February 11, 2017
diff --git a/regress/mdoc/Bl/bullet.out_markdown b/regress/mdoc/Bl/bullet.out_markdown
new file mode 100644
index 00000000..25febb9b
--- /dev/null
+++ b/regress/mdoc/Bl/bullet.out_markdown
@@ -0,0 +1,46 @@
+BL-BULLET(1) - General Commands Manual
+
+# NAME
+
+**Bl-bullet** - bullet lists
+
+# DESCRIPTION
+
+* x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+* x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+* x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+* x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+* x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+* x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+* x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+* x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+* x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+* x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+* x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+* x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+* x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+* x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+* x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+* x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+* x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+* x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+* x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+* x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+* x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+* x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+* x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+* x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+OpenBSD - December 25, 2014
diff --git a/regress/mdoc/Bl/dash.out_markdown b/regress/mdoc/Bl/dash.out_markdown
new file mode 100644
index 00000000..f478e4aa
--- /dev/null
+++ b/regress/mdoc/Bl/dash.out_markdown
@@ -0,0 +1,46 @@
+BL-DASH(1) - General Commands Manual
+
+# NAME
+
+**Bl-dash** - dash and hyphen lists
+
+# DESCRIPTION
+
+- x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+- x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+- x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+- x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+- x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+- x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+- x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+- x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+- x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+- x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+- x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+- x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+- x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+- x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+- x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+- x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+- x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+- x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+- x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+- x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+- x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+- x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+- x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+- x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+OpenBSD - December 25, 2014
diff --git a/regress/mdoc/Bl/diag.out_markdown b/regress/mdoc/Bl/diag.out_markdown
new file mode 100644
index 00000000..dbde3cfe
--- /dev/null
+++ b/regress/mdoc/Bl/diag.out_markdown
@@ -0,0 +1,45 @@
+BL-DIAG(1) - General Commands Manual
+
+# NAME
+
+**Bl-diag** - section 4 diagnostic lists
+
+# DESCRIPTION
+
+tag
+x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+four
+x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+quint
+x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+indent
+x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+septime
+x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+achtacht
+x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+neun\_neun
+x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+zehn\_\_zehn
+x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+This is a very long text contained in the diag item head, it is so long that it overruns the line -
+and here comes the item body.
+
+Check that It is not parsed in Bl:
+
+Nx
+NetBSD
+Ox
+OpenBSD
+Fx
+FreeBSD
+
+OpenBSD - April 8, 2014
diff --git a/regress/mdoc/Bl/empty.out_markdown b/regress/mdoc/Bl/empty.out_markdown
new file mode 100644
index 00000000..048f61a0
--- /dev/null
+++ b/regress/mdoc/Bl/empty.out_markdown
@@ -0,0 +1,33 @@
+BL-EMPTY(1) - General Commands Manual
+
+# NAME
+
+**Bl-empty** - empty lists
+
+# DESCRIPTION
+
+bullet list:
+
+column list:
+
+dash list:
+
+diag list:
+
+enum list:
+
+hang list:
+
+hyphen list:
+
+inset list:
+
+item list:
+
+ohang list:
+
+tag list:
+
+end of test document
+
+OpenBSD - January 2, 2011
diff --git a/regress/mdoc/Bl/emptyitem.out_markdown b/regress/mdoc/Bl/emptyitem.out_markdown
new file mode 100644
index 00000000..b61ef858
--- /dev/null
+++ b/regress/mdoc/Bl/emptyitem.out_markdown
@@ -0,0 +1,41 @@
+BL-EMPTYITEM(1) - General Commands Manual
+
+# NAME
+
+**Bl-emptyitem** - lists with fixed heads and empty items
+
+# DESCRIPTION
+
+bullet list:
+
+* one
+
+*
+
+* three
+
+dash list:
+
+- one
+
+-
+
+- three
+
+enum list:
+
+1. one
+
+2.
+
+3. three
+
+hyphen list:
+
+- one
+
+-
+
+- three
+
+OpenBSD - August 10, 2016
diff --git a/regress/mdoc/Bl/enum.out_markdown b/regress/mdoc/Bl/enum.out_markdown
new file mode 100644
index 00000000..0c15d67a
--- /dev/null
+++ b/regress/mdoc/Bl/enum.out_markdown
@@ -0,0 +1,46 @@
+BL-ENUM(1) - General Commands Manual
+
+# NAME
+
+**Bl-enum** - enumerated lists
+
+# DESCRIPTION
+
+1. x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+1. x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+1. x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+1. x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+1. x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+1. x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+1. x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+1. x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+1. x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+1. x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+1. x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+1. x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+1. x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+2. x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+3. x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+4. x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+5. x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+6. x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+7. x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+8. x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+9. x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+10. x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+11. x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+12. x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
+
+OpenBSD - December 25, 2014
diff --git a/regress/mdoc/Bl/item.out_markdown b/regress/mdoc/Bl/item.out_markdown
new file mode 100644
index 00000000..cfceb8d5
--- /dev/null
+++ b/regress/mdoc/Bl/item.out_markdown
@@ -0,0 +1,19 @@
+BL-ITEM(1) - General Commands Manual
+
+# NAME
+
+**Bl-item** - itemized lists
+
+# DESCRIPTION
+
+first line
+
+second line
+
+third line
+
+first line
+second line
+third line
+
+OpenBSD - July 10, 2012
diff --git a/regress/mdoc/Bl/multitype.out_markdown b/regress/mdoc/Bl/multitype.out_markdown
new file mode 100644
index 00000000..8f7f058c
--- /dev/null
+++ b/regress/mdoc/Bl/multitype.out_markdown
@@ -0,0 +1,11 @@
+BL-MULTITYPE(1) - General Commands Manual
+
+# NAME
+
+**Bl-multitype** - list with multiple types
+
+# DESCRIPTION
+
+- Some text.
+
+OpenBSD - October 28, 2009
diff --git a/regress/mdoc/Bl/notype.out_markdown b/regress/mdoc/Bl/notype.out_markdown
new file mode 100644
index 00000000..739a91cd
--- /dev/null
+++ b/regress/mdoc/Bl/notype.out_markdown
@@ -0,0 +1,23 @@
+BL-NOTYPE(1) - General Commands Manual
+
+# NAME
+
+**Bl-notype** - lists with late or missing types
+
+# DESCRIPTION
+
+late type:
+
+* Some text.
+
+no type:
+
+Some text.
+
+no argument at all:
+
+Some text.
+
+final text
+
+OpenBSD - August 10, 2016
diff --git a/regress/mdoc/Bl/ohang.out_markdown b/regress/mdoc/Bl/ohang.out_markdown
new file mode 100644
index 00000000..7c599411
--- /dev/null
+++ b/regress/mdoc/Bl/ohang.out_markdown
@@ -0,0 +1,25 @@
+BL-OHANG(1) - General Commands Manual
+
+# NAME
+
+**Bl-ohang** - over-hanging lists
+
+# DESCRIPTION
+
+first tag
+first line
+
+second tag
+second line
+
+third tag
+third line
+
+first tag
+first line
+second tag
+second line
+third tag
+third line
+
+OpenBSD - July 10, 2012
diff --git a/regress/mdoc/Bl/unclosed.out_markdown b/regress/mdoc/Bl/unclosed.out_markdown
new file mode 100644
index 00000000..92b6fb74
--- /dev/null
+++ b/regress/mdoc/Bl/unclosed.out_markdown
@@ -0,0 +1,15 @@
+BL-UNCLOSED(1) - General Commands Manual
+
+# NAME
+
+**Bl-unclosed** - list lacking an end macro
+
+# DESCRIPTION
+
+item
+
+# SEE ALSO
+
+mdoc(7)
+
+OpenBSD - January 9, 2011
diff --git a/regress/mdoc/Brq/Makefile b/regress/mdoc/Brq/Makefile
index 24f19edf..d4c41e6e 100644
--- a/regress/mdoc/Brq/Makefile
+++ b/regress/mdoc/Brq/Makefile
@@ -1,5 +1,6 @@
# $OpenBSD: Makefile,v 1.1.1.1 2011/12/04 03:09:25 schwarze Exp $
-REGRESS_TARGETS=empty
+REGRESS_TARGETS = empty
+MARKDOWN_TARGETS = empty
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Brq/empty.out_markdown b/regress/mdoc/Brq/empty.out_markdown
new file mode 100644
index 00000000..f32edd8c
--- /dev/null
+++ b/regress/mdoc/Brq/empty.out_markdown
@@ -0,0 +1,17 @@
+BRQ-EMPTY(1) - General Commands Manual
+
+# NAME
+
+**Brq-empty** - empty implicit enclosure macros
+
+# DESCRIPTION
+
+An empty
+{}
+and a full
+{user@host}
+quotation.
+And another
+{full} one.
+
+OpenBSD - October 21, 2010
diff --git a/regress/mdoc/Bx/Makefile b/regress/mdoc/Bx/Makefile
index b27441d0..14c730dd 100644
--- a/regress/mdoc/Bx/Makefile
+++ b/regress/mdoc/Bx/Makefile
@@ -1,5 +1,6 @@
# $OpenBSD: Makefile,v 1.2 2011/11/17 16:28:45 schwarze Exp $
-REGRESS_TARGETS=args
+REGRESS_TARGETS = args
+MARKDOWN_TARGETS = args
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Bx/args.out_markdown b/regress/mdoc/Bx/args.out_markdown
new file mode 100644
index 00000000..1c9fc45d
--- /dev/null
+++ b/regress/mdoc/Bx/args.out_markdown
@@ -0,0 +1,29 @@
+BX-ARGS(1) - General Commands Manual
+
+# NAME
+
+**Bx-args** - arguments to the BSD macro
+
+# DESCRIPTION
+
+no arguments:
+BSD
+
+one standard argument:
+4\.4BSD
+
+one non-standard argument:
+nettBSD
+
+one semi-standard argument:
+4\.1cBSD
+
+two standard arguments:
+4\.3BSD-Reno
+
+more arguments:
+4\.3BSD-Tahoe and some additional words
+
+end of test document
+
+OpenBSD - January 30, 2011
diff --git a/regress/mdoc/Cd/Makefile b/regress/mdoc/Cd/Makefile
index 164e5964..0926221e 100644
--- a/regress/mdoc/Cd/Makefile
+++ b/regress/mdoc/Cd/Makefile
@@ -2,5 +2,6 @@
REGRESS_TARGETS = noarg font eos
LINT_TARGETS = noarg
+MARKDOWN_TARGETS = noarg font eos
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Cd/eos.out_markdown b/regress/mdoc/Cd/eos.out_markdown
new file mode 100644
index 00000000..625016a8
--- /dev/null
+++ b/regress/mdoc/Cd/eos.out_markdown
@@ -0,0 +1,13 @@
+CD-EOS(1) - General Commands Manual
+
+# NAME
+
+**Cd-eos** - end of sentence handling after the configuration directive macro
+
+# DESCRIPTION
+
+Do not use
+**options INSECURE**.
+It is insecure.
+
+OpenBSD - November 17, 2012
diff --git a/regress/mdoc/Cd/font.out_markdown b/regress/mdoc/Cd/font.out_markdown
new file mode 100644
index 00000000..48594b44
--- /dev/null
+++ b/regress/mdoc/Cd/font.out_markdown
@@ -0,0 +1,13 @@
+CD-FONT(1) - General Commands Manual
+
+# NAME
+
+**Cd-font** - changing fonts inside the configuration declaration macro
+
+# DESCRIPTION
+
+normal text
+**bold*emphasis*back**
+trailing text
+
+OpenBSD - July 9, 2012
diff --git a/regress/mdoc/Cd/noarg.out_markdown b/regress/mdoc/Cd/noarg.out_markdown
new file mode 100644
index 00000000..ce447da0
--- /dev/null
+++ b/regress/mdoc/Cd/noarg.out_markdown
@@ -0,0 +1,14 @@
+CD-NOARG(1) - General Commands Manual
+
+# NAME
+
+**Cd-noarg** - kernel configuration directive without arguments
+
+# DESCRIPTION
+
+with arguments:
+**wd\* at pciide?**
+without arguments:
+end of test document
+
+OpenBSD - January 19, 2011
diff --git a/regress/mdoc/Cm/Makefile b/regress/mdoc/Cm/Makefile
index e674e756..aa181eab 100644
--- a/regress/mdoc/Cm/Makefile
+++ b/regress/mdoc/Cm/Makefile
@@ -2,5 +2,6 @@
REGRESS_TARGETS = basic font noarg
LINT_TARGETS = noarg
+MARKDOWN_TARGETS = basic font noarg
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Cm/basic.out_markdown b/regress/mdoc/Cm/basic.out_markdown
new file mode 100644
index 00000000..0822c26a
--- /dev/null
+++ b/regress/mdoc/Cm/basic.out_markdown
@@ -0,0 +1,15 @@
+CM-BASIC(1) - General Commands Manual
+
+# NAME
+
+**Cm-basic** - basic usage of the Cm macro
+
+# DESCRIPTION
+
+end of line:
+**mt** **-f** *device* **rewind**
+
+middle of line:
+**ps** **-o** **pid**,**command**
+
+OpenBSD - July 6, 2012
diff --git a/regress/mdoc/Cm/font.out_markdown b/regress/mdoc/Cm/font.out_markdown
new file mode 100644
index 00000000..2f58f0c0
--- /dev/null
+++ b/regress/mdoc/Cm/font.out_markdown
@@ -0,0 +1,13 @@
+CM-FONT(1) - General Commands Manual
+
+# NAME
+
+**Cm-font** - changing fonts inside the command modifier macro
+
+# DESCRIPTION
+
+normal text
+**bold*emphasis*back**
+trailing text
+
+OpenBSD - July 9, 2012
diff --git a/regress/mdoc/Cm/noarg.out_markdown b/regress/mdoc/Cm/noarg.out_markdown
new file mode 100644
index 00000000..6aff6353
--- /dev/null
+++ b/regress/mdoc/Cm/noarg.out_markdown
@@ -0,0 +1,15 @@
+CM-NOARG(1) - General Commands Manual
+
+# NAME
+
+**Cm-noarg** - command modifier macro without arguments
+
+# DESCRIPTION
+
+end of line:
+**mt** **-f** *device*
+
+middle of line:
+**ps** **-x** **-o** **command**
+
+OpenBSD - July 2, 2014
diff --git a/regress/mdoc/Dd/Makefile b/regress/mdoc/Dd/Makefile
index e50e9b61..396b268d 100644
--- a/regress/mdoc/Dd/Makefile
+++ b/regress/mdoc/Dd/Makefile
@@ -2,6 +2,7 @@
REGRESS_TARGETS = badarg dupe late long manarg noarg order
LINT_TARGETS = badarg dupe late long manarg noarg order
+MARKDOWN_TARGETS = badarg dupe late long manarg order
# If groff finds exactly three arguments, it assumes they are month,
# day and year without further checking. If there are no arguments,
diff --git a/regress/mdoc/Dd/badarg.out_markdown b/regress/mdoc/Dd/badarg.out_markdown
new file mode 100644
index 00000000..1dae22ae
--- /dev/null
+++ b/regress/mdoc/Dd/badarg.out_markdown
@@ -0,0 +1,11 @@
+DD-BADARG(1) - General Commands Manual
+
+# NAME
+
+**Dd-badarg** - date cannot be parsed
+
+# DESCRIPTION
+
+some text
+
+OpenBSD - bad date
diff --git a/regress/mdoc/Dd/dupe.out_markdown b/regress/mdoc/Dd/dupe.out_markdown
new file mode 100644
index 00000000..f5a3b81b
--- /dev/null
+++ b/regress/mdoc/Dd/dupe.out_markdown
@@ -0,0 +1,12 @@
+DD-DUPE(1) - General Commands Manual
+
+# NAME
+
+**Dd-dupe** - duplicate date macro
+
+# DESCRIPTION
+
+initial text
+final text
+
+OpenBSD - August 5, 2014
diff --git a/regress/mdoc/Dd/late.out_markdown b/regress/mdoc/Dd/late.out_markdown
new file mode 100644
index 00000000..1989c845
--- /dev/null
+++ b/regress/mdoc/Dd/late.out_markdown
@@ -0,0 +1,12 @@
+DD-LATE(1) - General Commands Manual
+
+# NAME
+
+**Dd-late** - late date macro
+
+# DESCRIPTION
+
+initial text
+final text
+
+OpenBSD - August 5, 2014
diff --git a/regress/mdoc/Dd/long.out_markdown b/regress/mdoc/Dd/long.out_markdown
new file mode 100644
index 00000000..8b5ad963
--- /dev/null
+++ b/regress/mdoc/Dd/long.out_markdown
@@ -0,0 +1,11 @@
+DD-LONG(1) - General Commands Manual
+
+# NAME
+
+**Dd-long** - long date string
+
+# DESCRIPTION
+
+some text
+
+OpenBSD - 1234567890123456789012345678901234567890123456789012345678901234567890123456789
diff --git a/regress/mdoc/Dd/manarg.out_markdown b/regress/mdoc/Dd/manarg.out_markdown
new file mode 100644
index 00000000..c78bdc42
--- /dev/null
+++ b/regress/mdoc/Dd/manarg.out_markdown
@@ -0,0 +1,11 @@
+DD-MANARG(1) - General Commands Manual
+
+# NAME
+
+**Dd-manarg** - date in traditional man format
+
+# DESCRIPTION
+
+some text
+
+OpenBSD - 2014-08-07
diff --git a/regress/mdoc/Dd/order.out_markdown b/regress/mdoc/Dd/order.out_markdown
new file mode 100644
index 00000000..b5a28c33
--- /dev/null
+++ b/regress/mdoc/Dd/order.out_markdown
@@ -0,0 +1,11 @@
+DD-ORDER(1) - General Commands Manual
+
+# NAME
+
+**Dd-order** - date macro after title macro
+
+# DESCRIPTION
+
+some text
+
+OpenBSD - August 5, 2014
diff --git a/regress/mdoc/Dl/Makefile b/regress/mdoc/Dl/Makefile
index bed27d1b..047c39bd 100644
--- a/regress/mdoc/Dl/Makefile
+++ b/regress/mdoc/Dl/Makefile
@@ -2,5 +2,6 @@
REGRESS_TARGETS = spacing
LINT_TARGETS = spacing
+MARKDOWN_TARGETS = spacing
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Dl/spacing.out_markdown b/regress/mdoc/Dl/spacing.out_markdown
new file mode 100644
index 00000000..fb4cd5ce
--- /dev/null
+++ b/regress/mdoc/Dl/spacing.out_markdown
@@ -0,0 +1,17 @@
+DL-SPACING(1) - General Commands Manual
+
+# NAME
+
+**Dl-spacing** - spacing in and around one-line literal displays
+
+# DESCRIPTION
+
+preceding text
+
+ spacing in and around one-line literal displays
+
+empty display:
+
+following text
+
+OpenBSD - February 5, 2015
diff --git a/regress/mdoc/Dq/Makefile b/regress/mdoc/Dq/Makefile
index 24f19edf..d4c41e6e 100644
--- a/regress/mdoc/Dq/Makefile
+++ b/regress/mdoc/Dq/Makefile
@@ -1,5 +1,6 @@
# $OpenBSD: Makefile,v 1.1.1.1 2011/12/04 03:09:25 schwarze Exp $
-REGRESS_TARGETS=empty
+REGRESS_TARGETS = empty
+MARKDOWN_TARGETS = empty
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Dq/empty.out_markdown b/regress/mdoc/Dq/empty.out_markdown
new file mode 100644
index 00000000..6cba8746
--- /dev/null
+++ b/regress/mdoc/Dq/empty.out_markdown
@@ -0,0 +1,17 @@
+DQ-EMPTY(1) - General Commands Manual
+
+# NAME
+
+**Dq-empty** - empty implicit enclosure macros
+
+# DESCRIPTION
+
+An empty
+""
+and a full
+"user@host"
+quotation.
+And another
+"full" one.
+
+OpenBSD - October 21, 2010
diff --git a/regress/mdoc/Dt/Makefile b/regress/mdoc/Dt/Makefile
index b0d0b0a8..2c896aa3 100644
--- a/regress/mdoc/Dt/Makefile
+++ b/regress/mdoc/Dt/Makefile
@@ -4,6 +4,8 @@ REGRESS_TARGETS = badsec case dupe fourargs late
REGRESS_TARGETS += missing noarg nobody nosec order
LINT_TARGETS = badsec case dupe fourargs late
LINT_TARGETS += missing noarg nobody nosec order
+MARKDOWN_TARGETS = case dupe fourargs late
+MARKDOWN_TARGETS += missing noarg nobody nosec order
SKIP_GROFF = badsec nobody
SKIP_ASCII = badsec
diff --git a/regress/mdoc/Dt/case.out_markdown b/regress/mdoc/Dt/case.out_markdown
new file mode 100644
index 00000000..d6bc4c45
--- /dev/null
+++ b/regress/mdoc/Dt/case.out_markdown
@@ -0,0 +1,11 @@
+Dt-case(1) - General Commands Manual
+
+# NAME
+
+**Dt-case** - document title is not all caps
+
+# DESCRIPTION
+
+some text
+
+OpenBSD - June 13, 2014
diff --git a/regress/mdoc/Dt/dupe.out_markdown b/regress/mdoc/Dt/dupe.out_markdown
new file mode 100644
index 00000000..3dec7eca
--- /dev/null
+++ b/regress/mdoc/Dt/dupe.out_markdown
@@ -0,0 +1,12 @@
+DT-DUPE(1) - General Commands Manual
+
+# NAME
+
+**Dt-order** - duplicate prologue macro
+
+# DESCRIPTION
+
+inital text
+final text
+
+OpenBSD - August 5, 2014
diff --git a/regress/mdoc/Dt/fourargs.out_markdown b/regress/mdoc/Dt/fourargs.out_markdown
new file mode 100644
index 00000000..5d8a6f2f
--- /dev/null
+++ b/regress/mdoc/Dt/fourargs.out_markdown
@@ -0,0 +1,11 @@
+DT-FOURARGS(1) - General Commands Manual (amd64)
+
+# NAME
+
+**Dt-fourargs** - too many arguments after the Dt macro
+
+# DESCRIPTION
+
+some text
+
+OpenBSD - February 16, 2015
diff --git a/regress/mdoc/Dt/late.out_markdown b/regress/mdoc/Dt/late.out_markdown
new file mode 100644
index 00000000..262acf0d
--- /dev/null
+++ b/regress/mdoc/Dt/late.out_markdown
@@ -0,0 +1,12 @@
+UNTITLED - LOCAL
+
+# NAME
+
+**Dt-late** - late title macro
+
+# DESCRIPTION
+
+inital text
+final text
+
+OpenBSD - August 5, 2014
diff --git a/regress/mdoc/Dt/missing.out_markdown b/regress/mdoc/Dt/missing.out_markdown
new file mode 100644
index 00000000..792db2ad
--- /dev/null
+++ b/regress/mdoc/Dt/missing.out_markdown
@@ -0,0 +1,11 @@
+UNTITLED - LOCAL
+
+# NAME
+
+**Dt-missing** - no title macro at all
+
+# DESCRIPTION
+
+some text
+
+OpenBSD - August 5, 2014
diff --git a/regress/mdoc/Dt/noarg.out_markdown b/regress/mdoc/Dt/noarg.out_markdown
new file mode 100644
index 00000000..81c27a0f
--- /dev/null
+++ b/regress/mdoc/Dt/noarg.out_markdown
@@ -0,0 +1,11 @@
+UNTITLED - LOCAL
+
+# NAME
+
+**Dt-noarg** - title macro without arguments
+
+# DESCRIPTION
+
+some text
+
+OpenBSD - August 5, 2014
diff --git a/regress/mdoc/Dt/nobody.out_markdown b/regress/mdoc/Dt/nobody.out_markdown
new file mode 100644
index 00000000..5b86c64c
--- /dev/null
+++ b/regress/mdoc/Dt/nobody.out_markdown
@@ -0,0 +1,3 @@
+DT-NOBODY(1) - General Commands Manual
+
+OpenBSD - June 20, 2014
diff --git a/regress/mdoc/Dt/nosec.out_markdown b/regress/mdoc/Dt/nosec.out_markdown
new file mode 100644
index 00000000..cebe8e63
--- /dev/null
+++ b/regress/mdoc/Dt/nosec.out_markdown
@@ -0,0 +1,11 @@
+DT-NOSEC - LOCAL
+
+# NAME
+
+**Dt-nosec** - title macro without manual section
+
+# DESCRIPTION
+
+some text
+
+OpenBSD - August 5, 2014
diff --git a/regress/mdoc/Dt/order.out_markdown b/regress/mdoc/Dt/order.out_markdown
new file mode 100644
index 00000000..7d55fe99
--- /dev/null
+++ b/regress/mdoc/Dt/order.out_markdown
@@ -0,0 +1,11 @@
+DT-ORDER(1) - General Commands Manual
+
+# NAME
+
+**Dt-order** - prologue macros out of order
+
+# DESCRIPTION
+
+some text
+
+OpenBSD - June 13, 2014
diff --git a/regress/mdoc/Dv/Makefile b/regress/mdoc/Dv/Makefile
index cfe3ad0b..9fa35934 100644
--- a/regress/mdoc/Dv/Makefile
+++ b/regress/mdoc/Dv/Makefile
@@ -2,5 +2,6 @@
REGRESS_TARGETS = font noarg
LINT_TARGETS = noarg
+MARKDOWN_TARGETS = font noarg
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Dv/font.out_markdown b/regress/mdoc/Dv/font.out_markdown
new file mode 100644
index 00000000..f4104d1e
--- /dev/null
+++ b/regress/mdoc/Dv/font.out_markdown
@@ -0,0 +1,16 @@
+DV-FONT(1) - General Commands Manual
+
+# NAME
+
+**Dv-font** - formatting of defined variables
+
+# DESCRIPTION
+
+The
+`BUFSIZ`
+macro.
+
+And with
+`some *embedded* string`.
+
+OpenBSD - October 21, 2011
diff --git a/regress/mdoc/Dv/noarg.out_markdown b/regress/mdoc/Dv/noarg.out_markdown
new file mode 100644
index 00000000..7d1f29d1
--- /dev/null
+++ b/regress/mdoc/Dv/noarg.out_markdown
@@ -0,0 +1,14 @@
+DV-NOARG(1) - General Commands Manual
+
+# NAME
+
+**Dv-noarg** - defined variable macro without an argument
+
+# DESCRIPTION
+
+with variable:
+`NULL`
+no variable:
+end of test document
+
+OpenBSD - July 2, 2014
diff --git a/regress/mdoc/Em/Makefile b/regress/mdoc/Em/Makefile
index 13de4337..b10c9d95 100644
--- a/regress/mdoc/Em/Makefile
+++ b/regress/mdoc/Em/Makefile
@@ -2,5 +2,6 @@
REGRESS_TARGETS = font noarg punct
LINT_TARGETS = noarg punct
+MARKDOWN_TARGETS = font noarg punct
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Em/font.out_markdown b/regress/mdoc/Em/font.out_markdown
new file mode 100644
index 00000000..fc851fe4
--- /dev/null
+++ b/regress/mdoc/Em/font.out_markdown
@@ -0,0 +1,13 @@
+EM-FONT(1) - General Commands Manual
+
+# NAME
+
+**Em-font** - changing fonts inside the emphasis macro
+
+# DESCRIPTION
+
+normal text
+*emphasis**bold**back*
+trailing text
+
+OpenBSD - July 9, 2012
diff --git a/regress/mdoc/Em/noarg.out_markdown b/regress/mdoc/Em/noarg.out_markdown
new file mode 100644
index 00000000..7c3b984a
--- /dev/null
+++ b/regress/mdoc/Em/noarg.out_markdown
@@ -0,0 +1,14 @@
+EM-NOARG(1) - General Commands Manual
+
+# NAME
+
+**Em-noarg** - emphasis macro without arguments
+
+# DESCRIPTION
+
+with argument
+*arg*
+no argument
+end of test document
+
+OpenBSD - January 19, 2011
diff --git a/regress/mdoc/Em/punct.out_markdown b/regress/mdoc/Em/punct.out_markdown
new file mode 100644
index 00000000..5d3e8524
--- /dev/null
+++ b/regress/mdoc/Em/punct.out_markdown
@@ -0,0 +1,85 @@
+EM-PUNCT(1) - General Commands Manual
+
+# NAME
+
+**Em-punct** - punctuation following an emphasis macro
+
+# DESCRIPTION
+
+Leading punctuation:
+(*b*
+\[*b*
+| *b*
+. *b*
+, *b*
+; *b*
+: *b*
+? *b*
+! *b*
+) *b*
+] *b*
+
+Trailing punctuation:
+*a* (
+*a* \[
+*a* |
+*a*.
+*a*,
+*a*;
+*a*:
+*a*?
+*a*!
+*a*)
+*a*]
+
+Middle punctuation:
+*a* (*b*
+*a* \[*b*
+*a* | *b*
+*a*. *b*
+*a*, *b*
+*a*; *b*
+*a*: *b*
+*a*? *b*
+*a*! *b*
+*a*) *b*
+*a*] *b*
+
+Isolated punctuation:
+*a* (*b*
+*a* \[*b*
+*a* | *b*
+*a* . *b*
+*a* , *b*
+*a* ; *b*
+*a* : *b*
+*a* ? *b*
+*a* ! *b*
+*a* ) *b*
+*a* ] *b*
+
+Isolated trailing punctuation:
+*a* (
+*a* \[
+*a* |
+*a* .
+*a* ,
+*a* ;
+*a* :
+*a* ?
+*a* !
+*a* )
+*a* ]
+
+Multiple isolated punctuation:
+*a* (\[*b*
+*a* )] *b*
+
+Multiple punctuation:
+\[(*arg*)].
+
+Quoted:
+*a . b Nm*
+*. b Nm*
+
+OpenBSD - November 17, 2014
diff --git a/regress/mdoc/Eo/Makefile b/regress/mdoc/Eo/Makefile
index 0034e271..c1c13b35 100644
--- a/regress/mdoc/Eo/Makefile
+++ b/regress/mdoc/Eo/Makefile
@@ -2,6 +2,7 @@
REGRESS_TARGETS = break empty obsolete unclosed
LINT_TARGETS = break obsolete unclosed
+MARKDOWN_TARGETS = break obsolete unclosed
# groff-1.22.3 defect:
# - When .Ec is missing, groff prints no page footer.
diff --git a/regress/mdoc/Eo/break.out_markdown b/regress/mdoc/Eo/break.out_markdown
new file mode 100644
index 00000000..be1ea241
--- /dev/null
+++ b/regress/mdoc/Eo/break.out_markdown
@@ -0,0 +1,43 @@
+EO-BREAK(1) - General Commands Manual
+
+# NAME
+
+**Eo-break** - breaking a custom enclosure block
+
+# DESCRIPTION
+
+break
+&lt;&lt;eo
+\[bo
+ec&gt;&gt;
+bc]
+no closing
+&lt;&lt;eo
+\[bo
+ec
+bc]
+no content
+&lt;&lt;\[&gt;&gt;
+bc]
+opening only
+&lt;&lt;\[
+bc]
+broken
+\[bo
+&lt;&lt;eo
+bc]
+ec&gt;&gt;
+no content
+\[bo
+&lt;&lt;]&gt;&gt;
+no opening
+\[bo
+eo
+bc]
+ec&gt;&gt;
+closing only
+\[bo
+]&gt;&gt;
+final text
+
+OpenBSD - February 1, 2015
diff --git a/regress/mdoc/Eo/obsolete.out_markdown b/regress/mdoc/Eo/obsolete.out_markdown
new file mode 100644
index 00000000..21a3e690
--- /dev/null
+++ b/regress/mdoc/Eo/obsolete.out_markdown
@@ -0,0 +1,22 @@
+EO-OBSOLETE(1) - General Commands Manual
+
+# NAME
+
+**Eo-obsolete** - obsolete enclosure macros
+
+# DESCRIPTION
+
+no prior Es
+
+surplus
+initial text
+&lt;&lt;enclosed words with **-flags**&gt;&gt;
+middle text
+&lt;&lt;more enclosed words&gt;&gt;
+final text
+
+initial text
+after empty Es
+final text
+
+OpenBSD - July 2, 2014
diff --git a/regress/mdoc/Eo/unclosed.out_markdown b/regress/mdoc/Eo/unclosed.out_markdown
new file mode 100644
index 00000000..105f4dc3
--- /dev/null
+++ b/regress/mdoc/Eo/unclosed.out_markdown
@@ -0,0 +1,12 @@
+EO-UNCLOSED(1) - General Commands Manual
+
+# NAME
+
+**Eo-unclosed** - unclosed custom enclosure block
+
+# DESCRIPTION
+
+before block
+&lt;&lt;
+
+OpenBSD - February 11, 2015
diff --git a/regress/mdoc/Er/Makefile b/regress/mdoc/Er/Makefile
index 1be2a84a..e13130c1 100644
--- a/regress/mdoc/Er/Makefile
+++ b/regress/mdoc/Er/Makefile
@@ -2,5 +2,6 @@
REGRESS_TARGETS = noarg font
LINT_TARGETS = noarg
+MARKDOWN_TARGETS = noarg font
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Er/font.out_markdown b/regress/mdoc/Er/font.out_markdown
new file mode 100644
index 00000000..f792b749
--- /dev/null
+++ b/regress/mdoc/Er/font.out_markdown
@@ -0,0 +1,13 @@
+ER-FONT(1) - General Commands Manual
+
+# NAME
+
+**Er-font** - changing fonts inside the error code macro
+
+# DESCRIPTION
+
+normal text
+`EFONT*emphasis*EBACK`
+trailing text
+
+OpenBSD - July 9, 2012
diff --git a/regress/mdoc/Er/noarg.out_markdown b/regress/mdoc/Er/noarg.out_markdown
new file mode 100644
index 00000000..0bb4b979
--- /dev/null
+++ b/regress/mdoc/Er/noarg.out_markdown
@@ -0,0 +1,14 @@
+ER-NOARG(1) - General Commands Manual
+
+# NAME
+
+**Er-noarg** - error constant macro without an argument
+
+# DESCRIPTION
+
+with error:
+`ENOENT`
+no error:
+end of test document
+
+OpenBSD - January 19, 2011
diff --git a/regress/mdoc/Ev/Makefile b/regress/mdoc/Ev/Makefile
index cfe3ad0b..9fa35934 100644
--- a/regress/mdoc/Ev/Makefile
+++ b/regress/mdoc/Ev/Makefile
@@ -2,5 +2,6 @@
REGRESS_TARGETS = font noarg
LINT_TARGETS = noarg
+MARKDOWN_TARGETS = font noarg
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Ev/font.out_markdown b/regress/mdoc/Ev/font.out_markdown
new file mode 100644
index 00000000..99d33cdf
--- /dev/null
+++ b/regress/mdoc/Ev/font.out_markdown
@@ -0,0 +1,16 @@
+EV-FONT(1) - General Commands Manual
+
+# NAME
+
+**Ev-font** - formatting of environment variables
+
+# DESCRIPTION
+
+The
+`PATH`
+variable.
+
+And with
+`some *embedded* string`.
+
+OpenBSD - October 21, 2011
diff --git a/regress/mdoc/Ev/noarg.out_markdown b/regress/mdoc/Ev/noarg.out_markdown
new file mode 100644
index 00000000..fbba3683
--- /dev/null
+++ b/regress/mdoc/Ev/noarg.out_markdown
@@ -0,0 +1,14 @@
+EV-NOARG(1) - General Commands Manual
+
+# NAME
+
+**Ev-noarg** - environment variable macro without an argument
+
+# DESCRIPTION
+
+with variable:
+`HOME`
+no variable:
+end of test document
+
+OpenBSD - July 2, 2014
diff --git a/regress/mdoc/Ex/Makefile b/regress/mdoc/Ex/Makefile
index 8a714ce1..af31cf78 100644
--- a/regress/mdoc/Ex/Makefile
+++ b/regress/mdoc/Ex/Makefile
@@ -2,6 +2,7 @@
REGRESS_TARGETS = args noname nostd
LINT_TARGETS = noname nostd
+MARKDOWN_TARGETS = args noname nostd
# groff-1.22.2 defect:
# - .Ex without -std produces no output
diff --git a/regress/mdoc/Ex/args.out_markdown b/regress/mdoc/Ex/args.out_markdown
new file mode 100644
index 00000000..9c70152e
--- /dev/null
+++ b/regress/mdoc/Ex/args.out_markdown
@@ -0,0 +1,18 @@
+EX-ARGS(1) - General Commands Manual
+
+# NAME
+
+**Ex-args** - arguments to the exit value macro
+
+# EXIT STATUS
+
+no arguments:
+The **Ex-args** utility exits&#160;0 on success, and&#160;&gt;0 if an error occurs.
+
+one argument:
+The **one** utility exits&#160;0 on success, and&#160;&gt;0 if an error occurs.
+
+two arguments:
+The **one** and **two** utilities exit&#160;0 on success, and&#160;&gt;0 if an error occurs.
+
+OpenBSD - July 29, 2014
diff --git a/regress/mdoc/Ex/noname.out_markdown b/regress/mdoc/Ex/noname.out_markdown
new file mode 100644
index 00000000..4fad75bb
--- /dev/null
+++ b/regress/mdoc/Ex/noname.out_markdown
@@ -0,0 +1,18 @@
+EX-NONAME(1) - General Commands Manual
+
+# NAME
+
+**&zwnj;** - exit value macro without an available name
+
+# EXIT STATUS
+
+no arguments:
+The utility exits&#160;0 on success, and&#160;&gt;0 if an error occurs.
+
+one argument:
+The **one** utility exits&#160;0 on success, and&#160;&gt;0 if an error occurs.
+
+two arguments:
+The **one** and **two** utilities exit&#160;0 on success, and&#160;&gt;0 if an error occurs.
+
+OpenBSD - July 29, 2014
diff --git a/regress/mdoc/Ex/nostd.out_markdown b/regress/mdoc/Ex/nostd.out_markdown
new file mode 100644
index 00000000..c3020fcb
--- /dev/null
+++ b/regress/mdoc/Ex/nostd.out_markdown
@@ -0,0 +1,18 @@
+EX-NOSTD(1) - General Commands Manual
+
+# NAME
+
+**Ex-nostd** - exit value macros without -std arguments
+
+# EXIT STATUS
+
+no arguments:
+The **Ex-nostd** utility exits&#160;0 on success, and&#160;&gt;0 if an error occurs.
+
+one argument:
+The **one** utility exits&#160;0 on success, and&#160;&gt;0 if an error occurs.
+
+two arguments:
+The **one** and **two** utilities exit&#160;0 on success, and&#160;&gt;0 if an error occurs.
+
+OpenBSD - July 29, 2014
diff --git a/regress/mdoc/Fd/Makefile b/regress/mdoc/Fd/Makefile
index 7cd78c65..c1c6d5dd 100644
--- a/regress/mdoc/Fd/Makefile
+++ b/regress/mdoc/Fd/Makefile
@@ -3,5 +3,6 @@
REGRESS_TARGETS = break empty eos font
LINT_TARGETS = empty
SKIP_TMAN = eos
+MARKDOWN_TARGETS = break eos font
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Fd/break.out_markdown b/regress/mdoc/Fd/break.out_markdown
new file mode 100644
index 00000000..1d8459a1
--- /dev/null
+++ b/regress/mdoc/Fd/break.out_markdown
@@ -0,0 +1,35 @@
+FD-BREAK(2) - System Calls Manual
+
+# NAME
+
+**Fd-break** - line break before old-style header include file
+
+# SYNOPSIS
+
+**#include &lt;fcntl.h&gt;**
+
+*int*
+**open**(*const char \*path*, *int flags*, *mode\_t mode*);
+
+**#include &lt;sys/types.h&gt;**
+**#include &lt;unistd.h&gt;**
+
+*int*
+**dup**(*int oldd*);
+
+*ssize\_t*
+**write**(*int d*, *const void \*buf*, *size\_t nbytes*);
+
+# DESCRIPTION
+
+**#include &lt;fcntl.h&gt;**
+*int*
+**open**(*const char \*path*, *int flags*, *mode\_t mode*)
+**#include &lt;sys/types.h&gt;**
+**#include &lt;unistd.h&gt;**
+*int*
+**dup**(*int oldd*)
+*ssize\_t*
+**write**(*int d*, *const void \*buf*, *size\_t nbytes*)
+
+OpenBSD - June 9, 2010
diff --git a/regress/mdoc/Fd/eos.out_markdown b/regress/mdoc/Fd/eos.out_markdown
new file mode 100644
index 00000000..c415843d
--- /dev/null
+++ b/regress/mdoc/Fd/eos.out_markdown
@@ -0,0 +1,13 @@
+FD-EOS(1) - General Commands Manual
+
+# NAME
+
+**Fd-eos** - end of sentence handling after the legacy include macro
+
+# DESCRIPTION
+
+Let's use
+**string.h .**
+And then something else.
+
+OpenBSD - November 17, 2012
diff --git a/regress/mdoc/Fd/font.out_markdown b/regress/mdoc/Fd/font.out_markdown
new file mode 100644
index 00000000..d90fae68
--- /dev/null
+++ b/regress/mdoc/Fd/font.out_markdown
@@ -0,0 +1,13 @@
+FD-FONT(2) - System Calls Manual
+
+# NAME
+
+**Fd-font** - changing the font inside the old-style include macro
+
+# DESCRIPTION
+
+normal text
+**prefix*header*suffix**
+trailing text
+
+OpenBSD - July 9, 2012
diff --git a/regress/mdoc/Fl/Makefile b/regress/mdoc/Fl/Makefile
index e9e01a19..b024856e 100644
--- a/regress/mdoc/Fl/Makefile
+++ b/regress/mdoc/Fl/Makefile
@@ -1,5 +1,6 @@
# $OpenBSD: Makefile,v 1.8 2014/08/21 12:56:24 schwarze Exp $
REGRESS_TARGETS = noarg multiarg parsed punct font
+MARKDOWN_TARGETS = noarg multiarg punct font
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Fl/font.out_markdown b/regress/mdoc/Fl/font.out_markdown
new file mode 100644
index 00000000..cb48c802
--- /dev/null
+++ b/regress/mdoc/Fl/font.out_markdown
@@ -0,0 +1,13 @@
+FL-FONT(1) - General Commands Manual
+
+# NAME
+
+**Fl-font** - changing fonts inside the flag macro
+
+# DESCRIPTION
+
+normal text
+**-bold*emphasis*back**
+trailing text
+
+OpenBSD - July 9, 2012
diff --git a/regress/mdoc/Fl/multiarg.out_markdown b/regress/mdoc/Fl/multiarg.out_markdown
new file mode 100644
index 00000000..065c7742
--- /dev/null
+++ b/regress/mdoc/Fl/multiarg.out_markdown
@@ -0,0 +1,17 @@
+FL-MULTIARG(1) - General Commands Manual
+
+# NAME
+
+**Fl-multiarg** - multiple arguments to a Fl macro
+
+# DESCRIPTION
+
+Each group of flags in
+**-a** **-b** **-c** **-def**
+gets its own dash.
+
+Punctuation characters like in
+\[**-a** | **-b**]
+get no dash.
+
+OpenBSD - December 24, 2009
diff --git a/regress/mdoc/Fl/noarg.out_markdown b/regress/mdoc/Fl/noarg.out_markdown
new file mode 100644
index 00000000..9edc191d
--- /dev/null
+++ b/regress/mdoc/Fl/noarg.out_markdown
@@ -0,0 +1,22 @@
+FL-NOARG(1) - General Commands Manual
+
+# NAME
+
+**Fl-noarg** - Fl macro without arguments
+
+# DESCRIPTION
+
+Without an argument, it yields
+**-**
+a dash.
+
+This is true even before middle
+**-** | **-and**
+trailing punctuation
+**-**.
+
+Following macros
+**-** \[flag]
+follow without white space.
+
+OpenBSD - August 21, 2014
diff --git a/regress/mdoc/Fl/punct.out_markdown b/regress/mdoc/Fl/punct.out_markdown
new file mode 100644
index 00000000..aba7054d
--- /dev/null
+++ b/regress/mdoc/Fl/punct.out_markdown
@@ -0,0 +1,42 @@
+FL-PUNCT(1) - General Commands Manual
+
+# NAME
+
+**Fl-punct** - punctuation handling by the Fl macro
+
+# DESCRIPTION
+
+closing punctuation
+**-a**)
+only one
+**-**)
+only more than one
+**-**))
+middle
+**-a**) **-z**
+start
+**-**) **-z**
+dot
+**-**. **-z**
+comma
+**-**, **-z**
+semicolon
+**-**; **-z**
+colon
+**-**: **-z**
+quest
+**-**? **-z**
+excl
+**-**! **-z**
+paren
+**-**) **-z**
+bracket
+**-**] **-z**
+bar
+**-** | **-m**
+op paren
+(**-a**
+op bracket
+\[**-a**
+
+OpenBSD - August 21, 2014
diff --git a/regress/mdoc/Fo/Makefile b/regress/mdoc/Fo/Makefile
index 71242c8e..f4458b9c 100644
--- a/regress/mdoc/Fo/Makefile
+++ b/regress/mdoc/Fo/Makefile
@@ -3,6 +3,8 @@
REGRESS_TARGETS = basic break eos font noarg nohead
REGRESS_TARGETS += obsolete punct section warn
LINT_TARGETS = noarg nohead obsolete warn
+MARKDOWN_TARGETS = basic break eos font noarg nohead
+MARKDOWN_TARGETS += obsolete punct section warn
# groff-1.22.3 defects:
# - .Fo without an argument prints unbalanced parentheses
diff --git a/regress/mdoc/Fo/basic.out_markdown b/regress/mdoc/Fo/basic.out_markdown
new file mode 100644
index 00000000..9ac884d1
--- /dev/null
+++ b/regress/mdoc/Fo/basic.out_markdown
@@ -0,0 +1,22 @@
+FO-BASIC(1) - General Commands Manual
+
+# NAME
+
+**Fo-basic** - function blocks
+
+# SYNOPSIS
+
+*double*
+**sin**(*double x*);
+
+*double*
+**atan2**(*double y*, *double x*);
+
+# DESCRIPTION
+
+*double*
+**sin**(*double x*)
+*double*
+**atan2**(*double y*, *double x*)
+
+OpenBSD - July 7, 2012
diff --git a/regress/mdoc/Fo/break.out_markdown b/regress/mdoc/Fo/break.out_markdown
new file mode 100644
index 00000000..3a551bf8
--- /dev/null
+++ b/regress/mdoc/Fo/break.out_markdown
@@ -0,0 +1,45 @@
+FO-BREAK(1) - General Commands Manual
+
+# NAME
+
+**Fo-break** - line breaks in function blocks
+
+# SYNOPSIS
+
+**using Fn:**
+
+*my\_long\_return\_type \*&zwnj;*
+**my\_long\_function**(*my\_long\_type first\_argument*, *my\_long\_type second\_argument*);
+
+*void*
+**this function name is so ridiculously long that it will not fit on the line**(*my\_long\_type first\_argument*, *my\_long\_type second\_argument*, *my\_long\_type third\_argument*);
+
+**using Fo and single-argument Fa:**
+
+*my\_long\_return\_type \*&zwnj;*
+**my\_long\_function**(*my\_long\_type first\_argument*,
+*my\_long\_type second\_argument*);
+
+*void*
+**this function name is so ridiculously long that it will not fit on the line**(*my\_long\_type first\_argument*,
+*my\_long\_type second\_argument*,
+*my\_long\_type third\_argument*);
+
+**using Fo and multi-argument Fa:**
+
+*my\_long\_return\_type \*&zwnj;*
+**my\_long\_function**(*my\_long\_type first\_argument*, *my\_long\_type second\_argument*);
+
+# DESCRIPTION
+
+using Fn:
+**my\_long\_function**(*my\_long\_type first\_argument*, *my\_long\_type second\_argument*)
+
+using Fo and single-argument Fa:
+**my\_long\_function**(*my\_long\_type first\_argument*,
+*my\_long\_type second\_argument*)
+
+using Fo and multi-argument Fa:
+**my\_long\_function**(*my\_long\_type first\_argument*, *my\_long\_type second\_argument*)
+
+OpenBSD - April 8, 2014
diff --git a/regress/mdoc/Fo/eos.out_markdown b/regress/mdoc/Fo/eos.out_markdown
new file mode 100644
index 00000000..81e0a477
--- /dev/null
+++ b/regress/mdoc/Fo/eos.out_markdown
@@ -0,0 +1,17 @@
+FO-EOS(1) - General Commands Manual
+
+# NAME
+
+**Fo-eos** - end of sentence handling after a function block
+
+# DESCRIPTION
+
+As an example of a trigonometric function, let us consider
+**double sin**(*double x*).
+Or do you prefer
+*double*
+**cos**(*double*, *x*)
+.
+Either will do.
+
+OpenBSD - November 17, 2012
diff --git a/regress/mdoc/Fo/font.out_markdown b/regress/mdoc/Fo/font.out_markdown
new file mode 100644
index 00000000..d36e0b8a
--- /dev/null
+++ b/regress/mdoc/Fo/font.out_markdown
@@ -0,0 +1,18 @@
+FO-FONT(1) - General Commands Manual
+
+# NAME
+
+**Fo-font** - font nesting in function blocks
+
+# DESCRIPTION
+
+**prefix*name*suffix**(*type arg*)
+trailing text
+
+**prefix*name*suffix**(*type arg*)
+trailing text
+
+**function**(*prefix**bold**suffix*)
+trailing text
+
+OpenBSD - July 9, 2012
diff --git a/regress/mdoc/Fo/noarg.out_markdown b/regress/mdoc/Fo/noarg.out_markdown
new file mode 100644
index 00000000..36a83507
--- /dev/null
+++ b/regress/mdoc/Fo/noarg.out_markdown
@@ -0,0 +1,32 @@
+FN-NOARG(1) - General Commands Manual
+
+# NAME
+
+**Fn-noarg** - function name macro without arguments
+
+# DESCRIPTION
+
+with arguments:
+*int*
+**abs**(*int i*)
+*long*
+**labs**(*long i*)
+void function arguments:
+*int*
+**rand**()
+*long*
+**random**()
+*u\_int32\_t*
+**arc4random**()
+no name arguments:
+*int*
+no type arguments:
+**abs**(*int i*)
+no type and void function arguments:
+**rand**()
+**random**()
+**arc4random**()
+no arguments at all:
+end of test document
+
+OpenBSD - July 12, 2012
diff --git a/regress/mdoc/Fo/nohead.out_markdown b/regress/mdoc/Fo/nohead.out_markdown
new file mode 100644
index 00000000..28e9b7db
--- /dev/null
+++ b/regress/mdoc/Fo/nohead.out_markdown
@@ -0,0 +1,13 @@
+FO-NOHEAD(1) - General Commands Manual
+
+# NAME
+
+**Fo-nohead** - function block macro without head argument
+
+# DESCRIPTION
+
+initial text
+*int*(*int*)
+final text
+
+OpenBSD - February 5, 2015
diff --git a/regress/mdoc/Fo/obsolete.out_markdown b/regress/mdoc/Fo/obsolete.out_markdown
new file mode 100644
index 00000000..be3e7f13
--- /dev/null
+++ b/regress/mdoc/Fo/obsolete.out_markdown
@@ -0,0 +1,15 @@
+FO-OBSOLETE(1) - General Commands Manual
+
+# NAME
+
+**Fo-obsolete** - obsolete function macros
+
+# DESCRIPTION
+
+old function type
+*fortran*
+
+function return value
+*value*
+
+OpenBSD - July 2, 2014
diff --git a/regress/mdoc/Fo/punct.out_markdown b/regress/mdoc/Fo/punct.out_markdown
new file mode 100644
index 00000000..3128aeef
--- /dev/null
+++ b/regress/mdoc/Fo/punct.out_markdown
@@ -0,0 +1,12 @@
+FO-PUNCT(1) - General Commands Manual
+
+# NAME
+
+**Fo-punct** - punctuation on function name input lines
+
+# DESCRIPTION
+
+*double*
+**sin**(), cos
+
+OpenBSD - November 20, 2014
diff --git a/regress/mdoc/Fo/section.out_markdown b/regress/mdoc/Fo/section.out_markdown
new file mode 100644
index 00000000..10d3dbb9
--- /dev/null
+++ b/regress/mdoc/Fo/section.out_markdown
@@ -0,0 +1,114 @@
+FN-SECTION(3) - Library Functions Manual
+
+# NAME
+
+**Fn-section** - special handling of Fn in various sections
+
+# SYNOPSIS
+
+*int*
+**abs**(*int j*);
+
+*double*
+**sin**(*double x*);
+
+# DESCRIPTION
+
+*int*
+**abs**(*int j*)
+*double*
+**sin**(*double x*)
+
+# RETURN VALUES
+
+*int*
+**abs**(*int j*)
+*double*
+**sin**(*double x*)
+
+# ENVIRONMENT
+
+*int*
+**abs**(*int j*)
+*double*
+**sin**(*double x*)
+
+# FILES
+
+*int*
+**abs**(*int j*)
+*double*
+**sin**(*double x*)
+
+# EXAMPLES
+
+*int*
+**abs**(*int j*)
+*double*
+**sin**(*double x*)
+
+# DIAGNOSTICS
+
+*int*
+**abs**(*int j*)
+*double*
+**sin**(*double x*)
+
+# ERRORS
+
+*int*
+**abs**(*int j*)
+*double*
+**sin**(*double x*)
+
+# SEE ALSO
+
+*int*
+**abs**(*int j*)
+*double*
+**sin**(*double x*)
+
+# STANDARDS
+
+*int*
+**abs**(*int j*)
+*double*
+**sin**(*double x*)
+
+# HISTORY
+
+*int*
+**abs**(*int j*)
+*double*
+**sin**(*double x*)
+
+# AUTHORS
+
+*int*
+**abs**(*int j*)
+*double*
+**sin**(*double x*)
+
+# CAVEATS
+
+*int*
+**abs**(*int j*)
+*double*
+**sin**(*double x*)
+
+# BUGS
+
+*int*
+**abs**(*int j*)
+*double*
+**sin**(*double x*)
+
+# CUSTOM
+
+*int*
+**abs**(*int j*);
+
+*double*
+**sin**(*double x*);
+
+OpenBSD - April 7, 2010
diff --git a/regress/mdoc/Fo/warn.out_markdown b/regress/mdoc/Fo/warn.out_markdown
new file mode 100644
index 00000000..d27be5bc
--- /dev/null
+++ b/regress/mdoc/Fo/warn.out_markdown
@@ -0,0 +1,15 @@
+FO-WARN(1) - General Commands Manual
+
+# NAME
+
+**Fo-warn** - warnings related to function blocks
+
+# SYNOPSIS
+
+*double*
+**sin()**(*double x*);
+
+*double*
+**atan2**(*double y, double x*);
+
+OpenBSD - October 11, 2014
diff --git a/regress/mdoc/Ft/Makefile b/regress/mdoc/Ft/Makefile
index 915e456c..f1ebeedf 100644
--- a/regress/mdoc/Ft/Makefile
+++ b/regress/mdoc/Ft/Makefile
@@ -1,5 +1,6 @@
# $OpenBSD: Makefile,v 1.1 2012/07/09 17:52:09 schwarze Exp $
REGRESS_TARGETS = font
+MARKDOWN_TARGETS = font
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Ft/font.out_markdown b/regress/mdoc/Ft/font.out_markdown
new file mode 100644
index 00000000..658bf4f8
--- /dev/null
+++ b/regress/mdoc/Ft/font.out_markdown
@@ -0,0 +1,13 @@
+FT-FONT(1) - General Commands Manual
+
+# NAME
+
+**Ft-font** - changing fonts inside the function return type macro
+
+# DESCRIPTION
+
+normal text
+*emphasis**bold**back*
+trailing text
+
+OpenBSD - July 9, 2012
diff --git a/regress/mdoc/Ic/Makefile b/regress/mdoc/Ic/Makefile
index 1be2a84a..e13130c1 100644
--- a/regress/mdoc/Ic/Makefile
+++ b/regress/mdoc/Ic/Makefile
@@ -2,5 +2,6 @@
REGRESS_TARGETS = noarg font
LINT_TARGETS = noarg
+MARKDOWN_TARGETS = noarg font
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Ic/font.out_markdown b/regress/mdoc/Ic/font.out_markdown
new file mode 100644
index 00000000..d8e81013
--- /dev/null
+++ b/regress/mdoc/Ic/font.out_markdown
@@ -0,0 +1,13 @@
+IC-FONT(1) - General Commands Manual
+
+# NAME
+
+**Ic-font** - changing fonts inside the internal command macro
+
+# DESCRIPTION
+
+normal text
+**bold*emphasis*back**
+trailing text
+
+OpenBSD - July 9, 2012
diff --git a/regress/mdoc/Ic/noarg.out_markdown b/regress/mdoc/Ic/noarg.out_markdown
new file mode 100644
index 00000000..de7e6143
--- /dev/null
+++ b/regress/mdoc/Ic/noarg.out_markdown
@@ -0,0 +1,14 @@
+IC-NOARG(1) - General Commands Manual
+
+# NAME
+
+**Ic-noarg** - interactive command without an argument
+
+# DESCRIPTION
+
+with command:
+**ls**
+no command:
+end of test document
+
+OpenBSD - January 19, 2011
diff --git a/regress/mdoc/In/Makefile b/regress/mdoc/In/Makefile
index 790827bb..1c8a484f 100644
--- a/regress/mdoc/In/Makefile
+++ b/regress/mdoc/In/Makefile
@@ -2,5 +2,6 @@
REGRESS_TARGETS = break eos font noarg
LINT_TARGETS = noarg
+MARKDOWN_TARGETS = eos font
.include <bsd.regress.mk>
diff --git a/regress/mdoc/In/eos.out_markdown b/regress/mdoc/In/eos.out_markdown
new file mode 100644
index 00000000..0597be78
--- /dev/null
+++ b/regress/mdoc/In/eos.out_markdown
@@ -0,0 +1,13 @@
+IN-EOS(1) - General Commands Manual
+
+# NAME
+
+**In-eos** - end of sentence handling after the include macro
+
+# DESCRIPTION
+
+Let's use
+&lt;*string.h*>.
+And then something else.
+
+OpenBSD - November 16, 2012
diff --git a/regress/mdoc/In/font.out_markdown b/regress/mdoc/In/font.out_markdown
new file mode 100644
index 00000000..e007a019
--- /dev/null
+++ b/regress/mdoc/In/font.out_markdown
@@ -0,0 +1,13 @@
+IN-FONT(2) - System Calls Manual
+
+# NAME
+
+**In-font** - changing the font inside the include macro
+
+# DESCRIPTION
+
+normal text
+&lt;*prefix**header**suffix*>
+trailing text
+
+OpenBSD - July 9, 2012
diff --git a/regress/mdoc/Lb/Makefile b/regress/mdoc/Lb/Makefile
index 952e0881..4fae0494 100644
--- a/regress/mdoc/Lb/Makefile
+++ b/regress/mdoc/Lb/Makefile
@@ -2,5 +2,6 @@
REGRESS_TARGETS = break badargs eos
LINT_TARGETS = badargs
+MARKDOWN_TARGETS = break badargs eos
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Lb/badargs.out_markdown b/regress/mdoc/Lb/badargs.out_markdown
new file mode 100644
index 00000000..132b2f9f
--- /dev/null
+++ b/regress/mdoc/Lb/badargs.out_markdown
@@ -0,0 +1,12 @@
+LB-BADARGS(3) - Library Functions Manual
+
+# NAME
+
+**Lb-badargs** - bad arguments to the library macro
+
+# LIBRARY
+
+library &#8220;murks&#8221;
+library &#8220;mylib&#8221; another
+
+OpenBSD - January 2, 2011
diff --git a/regress/mdoc/Lb/break.out_markdown b/regress/mdoc/Lb/break.out_markdown
new file mode 100644
index 00000000..0eacb25f
--- /dev/null
+++ b/regress/mdoc/Lb/break.out_markdown
@@ -0,0 +1,17 @@
+LB-BREAK(3) - Library Functions Manual
+
+# NAME
+
+**Lb-break** - output line breaks after the library macro
+
+# LIBRARY
+
+library &#8220;mylib&#8221;
+text
+
+# DESCRIPTION
+
+library &#8220;mylib&#8221;
+text
+
+OpenBSD - June 30, 2010
diff --git a/regress/mdoc/Lb/eos.out_markdown b/regress/mdoc/Lb/eos.out_markdown
new file mode 100644
index 00000000..6ee5b086
--- /dev/null
+++ b/regress/mdoc/Lb/eos.out_markdown
@@ -0,0 +1,13 @@
+LB-EOS(1) - General Commands Manual
+
+# NAME
+
+**Lb-eos** - end of sentence handling after the library macro
+
+# DESCRIPTION
+
+Let's use the
+library &#8220;mylib&#8221;.
+And some other libraries.
+
+OpenBSD - November 17, 2012
diff --git a/regress/mdoc/Li/Makefile b/regress/mdoc/Li/Makefile
index f5afd199..1e1a4b93 100644
--- a/regress/mdoc/Li/Makefile
+++ b/regress/mdoc/Li/Makefile
@@ -2,5 +2,6 @@
REGRESS_TARGETS = punct font
LINT_TARGETS = punct
+MARKDOWN_TARGETS = punct font
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Li/font.out_markdown b/regress/mdoc/Li/font.out_markdown
new file mode 100644
index 00000000..d0ce39d0
--- /dev/null
+++ b/regress/mdoc/Li/font.out_markdown
@@ -0,0 +1,13 @@
+LI-FONT(1) - General Commands Manual
+
+# NAME
+
+**Li-font** - changing fonts inside the literal in-line macro
+
+# DESCRIPTION
+
+normal text
+`literal*emphasis*back`
+trailing text
+
+OpenBSD - July 9, 2012
diff --git a/regress/mdoc/Li/punct.out_markdown b/regress/mdoc/Li/punct.out_markdown
new file mode 100644
index 00000000..fcfc83b3
--- /dev/null
+++ b/regress/mdoc/Li/punct.out_markdown
@@ -0,0 +1,86 @@
+LI-PUNCT(1) - General Commands Manual
+
+# NAME
+
+**Li-punct** - punctuation following a literal macro
+
+# DESCRIPTION
+
+Leading punctuation:
+(`b`
+\[`b`
+| `b`
+. `b`
+, `b`
+; `b`
+: `b`
+? `b`
+! `b`
+) `b`
+] `b`
+
+Trailing punctuation:
+`a` (
+`a` \[
+`a` |
+`a`.
+`a`,
+`a`;
+`a`:
+`a`?
+`a`!
+`a`)
+`a`]
+
+Middle punctuation:
+`a` (`b`
+`a` \[`b`
+`a` | `b`
+`a`. `b`
+`a`, `b`
+`a`; `b`
+`a`: `b`
+`a`? `b`
+`a`! `b`
+`a`) `b`
+`a`] `b`
+
+Isolated punctuation:
+`a` (`b`
+`a` \[`b`
+`a` | `b`
+`a` . `b`
+`a` , `b`
+`a` ; `b`
+`a` : `b`
+`a` ? `b`
+`a` ! `b`
+`a` ) `b`
+`a` ] `b`
+
+Isolated trailing punctuation:
+`a` (
+`a` \[
+`a` |
+`a` .
+`a` ,
+`a` ;
+`a` :
+`a` ?
+`a` !
+`a` )
+`a` ]
+
+Multiple isolated punctuation:
+`a` (\[`b`
+`a` )] `b`
+
+Multiple punctuation:
+\[(`arg`)].
+
+Quoted:
+`a . b Nm`
+`. b Nm`
+`.`
+
+OpenBSD - November 17, 2014
diff --git a/regress/mdoc/Lk/Makefile b/regress/mdoc/Lk/Makefile
index d9cbbe95..cb4ead51 100644
--- a/regress/mdoc/Lk/Makefile
+++ b/regress/mdoc/Lk/Makefile
@@ -2,5 +2,6 @@
REGRESS_TARGETS = link noarg font
LINT_TARGETS = noarg
+MARKDOWN_TARGETS = link noarg
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Lk/link.out_markdown b/regress/mdoc/Lk/link.out_markdown
new file mode 100644
index 00000000..05a01564
--- /dev/null
+++ b/regress/mdoc/Lk/link.out_markdown
@@ -0,0 +1,21 @@
+LK-LINK(1) - General Commands Manual
+
+# NAME
+
+**Lk-link** - formatting of hyperlinks
+
+# DESCRIPTION
+
+Here are some web sites of BSD operating systems:
+[FreeBSD](http://www.freebsd.org/)
+[NetBSD](http://www.netbsd.org/)
+[OpenBSD](http://www.openbsd.org/)
+
+# SEE ALSO
+
+Here are some web sites of BSD operating systems:
+[FreeBSD](http://www.freebsd.org/)
+[NetBSD](http://www.netbsd.org/)
+[OpenBSD](http://www.openbsd.org/)
+
+OpenBSD - August 8, 2010
diff --git a/regress/mdoc/Lk/noarg.out_markdown b/regress/mdoc/Lk/noarg.out_markdown
new file mode 100644
index 00000000..f27e0895
--- /dev/null
+++ b/regress/mdoc/Lk/noarg.out_markdown
@@ -0,0 +1,16 @@
+LK-NOARG(1) - General Commands Manual
+
+# NAME
+
+**Lk-noarg** - hyperlink macro without arguments
+
+# DESCRIPTION
+
+two arguments
+[mandoc](http://mdocml.bsd.lv/)
+one argument
+<http://www.openbsd.org/>
+no argument
+end of test document
+
+OpenBSD - January 19, 2011
diff --git a/regress/mdoc/Ms/Makefile b/regress/mdoc/Ms/Makefile
index 1be2a84a..e13130c1 100644
--- a/regress/mdoc/Ms/Makefile
+++ b/regress/mdoc/Ms/Makefile
@@ -2,5 +2,6 @@
REGRESS_TARGETS = noarg font
LINT_TARGETS = noarg
+MARKDOWN_TARGETS = noarg font
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Ms/font.out_markdown b/regress/mdoc/Ms/font.out_markdown
new file mode 100644
index 00000000..7b04400b
--- /dev/null
+++ b/regress/mdoc/Ms/font.out_markdown
@@ -0,0 +1,13 @@
+MS-FONT(1) - General Commands Manual
+
+# NAME
+
+**Ms-font** - changing fonts inside the mathematical symbol macro
+
+# DESCRIPTION
+
+normal text
+**bold*emphasis*back** | **after**: **punctuation**
+trailing text
+
+OpenBSD - November 20, 2014
diff --git a/regress/mdoc/Ms/noarg.out_markdown b/regress/mdoc/Ms/noarg.out_markdown
new file mode 100644
index 00000000..5146653e
--- /dev/null
+++ b/regress/mdoc/Ms/noarg.out_markdown
@@ -0,0 +1,14 @@
+MS-NOARG(1) - General Commands Manual
+
+# NAME
+
+**Ms-noarg** - mathematical symbol without an argument
+
+# DESCRIPTION
+
+with command:
+**alpha**
+no command:
+end of test document
+
+OpenBSD - January 19, 2011
diff --git a/regress/mdoc/Mt/Makefile b/regress/mdoc/Mt/Makefile
index 34cbbe19..b1dfaa90 100644
--- a/regress/mdoc/Mt/Makefile
+++ b/regress/mdoc/Mt/Makefile
@@ -1,5 +1,6 @@
# $OpenBSD: Makefile,v 1.5 2012/07/09 17:52:09 schwarze Exp $
REGRESS_TARGETS = simple font
+MARKDOWN_TARGETS = simple
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Mt/simple.out_markdown b/regress/mdoc/Mt/simple.out_markdown
new file mode 100644
index 00000000..0b85b45d
--- /dev/null
+++ b/regress/mdoc/Mt/simple.out_markdown
@@ -0,0 +1,15 @@
+MT-SIMPLE(1) - General Commands Manual
+
+# NAME
+
+**Mt-simple** - mailto
+
+# DESCRIPTION
+
+Please send mail to
+<schwarze@openbsd.org>.
+
+Do not send mail to
+<~>.
+
+OpenBSD - February 17, 2010
diff --git a/regress/mdoc/Nd/Makefile b/regress/mdoc/Nd/Makefile
index d67804c4..d2f6e4b8 100644
--- a/regress/mdoc/Nd/Makefile
+++ b/regress/mdoc/Nd/Makefile
@@ -2,5 +2,6 @@
REGRESS_TARGETS = broken hyph noarg par
LINT_TARGETS = broken noarg
+MARKDOWN_TARGETS = hyph noarg par
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Nd/hyph.out_markdown b/regress/mdoc/Nd/hyph.out_markdown
new file mode 100644
index 00000000..c3153de2
--- /dev/null
+++ b/regress/mdoc/Nd/hyph.out_markdown
@@ -0,0 +1,13 @@
+ND-HYPH(1) - General Commands Manual
+
+# NAME
+
+**Nd-hyph** - when there is already a hyphen within the the word, line-breaking is permitted at that place
+
+# DESCRIPTION
+
+Even in the document description line in the
+*NAME*
+section.
+
+OpenBSD - October 5, 2013
diff --git a/regress/mdoc/Nd/noarg.out_markdown b/regress/mdoc/Nd/noarg.out_markdown
new file mode 100644
index 00000000..567b7c4d
--- /dev/null
+++ b/regress/mdoc/Nd/noarg.out_markdown
@@ -0,0 +1,11 @@
+ND-ARG0(1) - General Commands Manual
+
+# NAME
+
+**Nd-arg0** -
+
+# DESCRIPTION
+
+empty description line
+
+OpenBSD - January 2, 2011
diff --git a/regress/mdoc/Nd/par.out_markdown b/regress/mdoc/Nd/par.out_markdown
new file mode 100644
index 00000000..e6a25425
--- /dev/null
+++ b/regress/mdoc/Nd/par.out_markdown
@@ -0,0 +1,17 @@
+ND-PAR(1) - General Commands Manual
+
+# NAME
+
+**Nd-par** - paragraph macro
+after one-line description
+
+Usually, there shouldn't be additional text in the NAME section.
+
+# DESCRIPTION
+
+The text belongs here. - stray
+description macro
+
+Back to normal state.
+
+OpenBSD - February 3, 2015
diff --git a/regress/mdoc/Nm/Makefile b/regress/mdoc/Nm/Makefile
index 2b5a5b83..515f9e5d 100644
--- a/regress/mdoc/Nm/Makefile
+++ b/regress/mdoc/Nm/Makefile
@@ -6,6 +6,9 @@ REGRESS_TARGETS += font long par parns punct
LINT_TARGETS = badNAME badNAMEuse break broken
+MARKDOWN_TARGETS = break broken empty
+MARKDOWN_TARGETS += font long par parns punct
+
# groff-1.22.3/mandoc differences:
# - When the head of an Nm block in the SYNOPSIS is broken by an
# explicit block end macro on the same line, formatting differs,
diff --git a/regress/mdoc/Nm/break.out_markdown b/regress/mdoc/Nm/break.out_markdown
new file mode 100644
index 00000000..686c234f
--- /dev/null
+++ b/regress/mdoc/Nm/break.out_markdown
@@ -0,0 +1,17 @@
+NM-BREAK(1) - General Commands Manual
+
+# NAME
+
+**Nm-break** - name block head breaking another block
+
+# SYNOPSIS
+
+**before&nbsp;\[within]**
+
+# DESCRIPTION
+
+initial text
+**Nm-break**
+final text
+
+OpenBSD - August 17, 2014
diff --git a/regress/mdoc/Nm/broken.out_markdown b/regress/mdoc/Nm/broken.out_markdown
new file mode 100644
index 00000000..cb674648
--- /dev/null
+++ b/regress/mdoc/Nm/broken.out_markdown
@@ -0,0 +1,19 @@
+NM-BROKEN(1) - General Commands Manual
+
+# NAME
+
+**Nm-broken** - broken synapsis name block
+
+# SYNOPSIS
+
+*int*
+**function**(**name**);
+
+tail
+\[oo
+**nm**
+oc]
+
+- item
+
+OpenBSD - February 11, 2017
diff --git a/regress/mdoc/Nm/empty.out_markdown b/regress/mdoc/Nm/empty.out_markdown
new file mode 100644
index 00000000..102b16c3
--- /dev/null
+++ b/regress/mdoc/Nm/empty.out_markdown
@@ -0,0 +1,18 @@
+NM-EMPTY(2) - System Calls Manual
+
+# NAME
+
+**Nm-empty** - handling of empty name macros
+
+# SYNOPSIS
+
+**Nm-empty**
+**Nm-empty**
+
+# DESCRIPTION
+
+The
+**Nm-empty**
+utility ...
+
+OpenBSD - June 30, 2010
diff --git a/regress/mdoc/Nm/font.out_markdown b/regress/mdoc/Nm/font.out_markdown
new file mode 100644
index 00000000..1425fb5b
--- /dev/null
+++ b/regress/mdoc/Nm/font.out_markdown
@@ -0,0 +1,13 @@
+NM-FONT(1) - General Commands Manual
+
+# NAME
+
+**Nm-font** - changing fonts inside the name macro
+
+# DESCRIPTION
+
+normal text
+**bold*emphasis*back**
+trailing text
+
+OpenBSD - July 9, 2012
diff --git a/regress/mdoc/Nm/long.out_markdown b/regress/mdoc/Nm/long.out_markdown
new file mode 100644
index 00000000..a421f068
--- /dev/null
+++ b/regress/mdoc/Nm/long.out_markdown
@@ -0,0 +1,13 @@
+NM-LONG(1) - General Commands Manual
+
+# NAME
+
+**Nm-long** - long Nm in the SYNOPSIS
+
+# SYNOPSIS
+
+**This is a terribly long name, it is so long that it does not fit one one single line -**
+**-o**
+*file&nbsp;...*
+
+OpenBSD - April 4, 2014
diff --git a/regress/mdoc/Nm/par.out_markdown b/regress/mdoc/Nm/par.out_markdown
new file mode 100644
index 00000000..c2a355d6
--- /dev/null
+++ b/regress/mdoc/Nm/par.out_markdown
@@ -0,0 +1,14 @@
+NM-PAR(1) - General Commands Manual
+
+# NAME
+
+**Nm-par** - paragraph macro in a synopsis name block
+
+# SYNOPSIS
+
+**Nm-par**
+**-a**
+
+**-b**
+
+OpenBSD - February 3, 2015
diff --git a/regress/mdoc/Nm/parns.out_markdown b/regress/mdoc/Nm/parns.out_markdown
new file mode 100644
index 00000000..43b96597
--- /dev/null
+++ b/regress/mdoc/Nm/parns.out_markdown
@@ -0,0 +1,22 @@
+NM-PAR(1) - General Commands Manual
+
+# NAME
+
+**Nm-par** - paragraph macro in a name block
+
+# DESCRIPTION
+
+**Nm-par**
+**-a**
+
+**-b**
+**Nm-par**
+**-a**
+
+**-b**
+**Nm-par**
+\[**-a**
+
+**-b**]
+
+OpenBSD - February 3, 2015
diff --git a/regress/mdoc/Nm/punct.out_markdown b/regress/mdoc/Nm/punct.out_markdown
new file mode 100644
index 00000000..ad848240
--- /dev/null
+++ b/regress/mdoc/Nm/punct.out_markdown
@@ -0,0 +1,42 @@
+NM-PUNCT(1) - General Commands Manual
+
+# NAME
+
+**Nm-punct** - punctuation handling by the Nm macro
+
+# DESCRIPTION
+
+closing punctuation
+**a**)
+only one
+**Nm-punct**)
+only more than one
+**Nm-punct**))
+middle
+**a**) **z**
+start
+**Nm-punct**) z
+dot
+**Nm-punct**. z
+comma
+**Nm-punct**, z
+semicolon
+**Nm-punct**; z
+colon
+**Nm-punct**: z
+quest
+**Nm-punct**? z
+excl
+**Nm-punct**! z
+paren
+**Nm-punct**) z
+bracket
+**Nm-punct**] z
+bar
+| **m**
+op paren
+(**a**
+op bracket
+\[**a**
+
+OpenBSD - August 21, 2014
diff --git a/regress/mdoc/No/Makefile b/regress/mdoc/No/Makefile
index 3110bf2b..88613079 100644
--- a/regress/mdoc/No/Makefile
+++ b/regress/mdoc/No/Makefile
@@ -2,5 +2,6 @@
REGRESS_TARGETS = punct spacing
LINT_TARGETS = punct
+MARKDOWN_TARGETS = punct spacing
.include <bsd.regress.mk>
diff --git a/regress/mdoc/No/punct.out_markdown b/regress/mdoc/No/punct.out_markdown
new file mode 100644
index 00000000..6861d214
--- /dev/null
+++ b/regress/mdoc/No/punct.out_markdown
@@ -0,0 +1,86 @@
+NO-PUNCT(1) - General Commands Manual
+
+# NAME
+
+**No-punct** - punctuation after the normal macro
+
+# DESCRIPTION
+
+Leading punctuation:
+(b
+\[b
+| b
+. b
+, b
+; b
+: b
+? b
+! b
+) b
+] b
+
+Trailing punctuation:
+a (
+a \[
+a |
+a.
+a,
+a;
+a:
+a?
+a!
+a)
+a]
+
+Middle punctuation:
+a (b
+a \[b
+a | b
+a. b
+a, b
+a; b
+a: b
+a? b
+a! b
+a) b
+a] b
+
+Isolated punctuation:
+a (b
+a \[b
+a | b
+a . b
+a , b
+a ; b
+a : b
+a ? b
+a ! b
+a ) b
+a ] b
+
+Isolated trailing punctuation:
+a (
+a \[
+a |
+a .
+a ,
+a ;
+a :
+a ?
+a !
+a )
+a ]
+
+Multiple isolated punctuation:
+a (\[b
+a )] b
+
+Multiple punctuation:
+\[(arg)].
+
+Quoted:
+a . b Nm
+. b Nm
+.
+
+OpenBSD - November 17, 2014
diff --git a/regress/mdoc/No/spacing.out_markdown b/regress/mdoc/No/spacing.out_markdown
new file mode 100644
index 00000000..442a054f
--- /dev/null
+++ b/regress/mdoc/No/spacing.out_markdown
@@ -0,0 +1,27 @@
+NO-SPACING(1) - General Commands Manual
+
+# NAME
+
+**No-spacing** - spacing around the normal macro
+
+# DESCRIPTION
+
+Text before
+and
+after the macro.
+Macros on the line
+\[before]
+and
+\[after]
+the macro.
+Macros
+*before* and *after*
+the macro on the same line.
+Punctuation before (
+and
+) after the macro.
+The macro
+\[in]
+an enclosure.
+
+OpenBSD - October 1, 2010
diff --git a/regress/mdoc/Ns/Makefile b/regress/mdoc/Ns/Makefile
index 45db66cc..ea798c05 100644
--- a/regress/mdoc/Ns/Makefile
+++ b/regress/mdoc/Ns/Makefile
@@ -2,5 +2,6 @@
REGRESS_TARGETS = position punct
LINT_TARGETS = position
+MARKDOWN_TARGETS = position punct
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Ns/position.out_markdown b/regress/mdoc/Ns/position.out_markdown
new file mode 100644
index 00000000..14414a3e
--- /dev/null
+++ b/regress/mdoc/Ns/position.out_markdown
@@ -0,0 +1,29 @@
+NS-POSITION(1) - General Commands Manual
+
+# NAME
+
+**Ns-position** - effect of the position of the no space macro on the line
+
+# DESCRIPTION
+
+At the beginning of a macro line:
+\[before]
+\[after]
+
+After just a block closing macro:
+\[before]\[after]
+
+After some macro and a block closing:
+\[before
+still before]\[after]
+
+In the middle of a macro line:
+\[before]\[after]
+
+At the end of a macro line:
+\[before]\[after]
+
+At the end of partial implicit:
+\[before]\[after]
+
+OpenBSD - September 15, 2013
diff --git a/regress/mdoc/Ns/punct.out_markdown b/regress/mdoc/Ns/punct.out_markdown
new file mode 100644
index 00000000..92a02c26
--- /dev/null
+++ b/regress/mdoc/Ns/punct.out_markdown
@@ -0,0 +1,16 @@
+NS-PUNCT(1) - General Commands Manual
+
+# NAME
+
+**Ns-punct** - punctuation after the no space macro
+
+# DESCRIPTION
+
+Normal words:
+nons no
+Opening punctuation:
+no(ns no
+Closing punctuation:
+nons) no
+
+OpenBSD - October 1, 2010
diff --git a/regress/mdoc/Oo/Makefile b/regress/mdoc/Oo/Makefile
index 086f9bdf..06f0dec8 100644
--- a/regress/mdoc/Oo/Makefile
+++ b/regress/mdoc/Oo/Makefile
@@ -1,5 +1,6 @@
# $OpenBSD: Makefile,v 1.1 2012/07/07 14:10:55 schwarze Exp $
-REGRESS_TARGETS=punct
+REGRESS_TARGETS = punct
+MARKDOWN_TARGETS = punct
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Oo/punct.out_markdown b/regress/mdoc/Oo/punct.out_markdown
new file mode 100644
index 00000000..befa71f3
--- /dev/null
+++ b/regress/mdoc/Oo/punct.out_markdown
@@ -0,0 +1,23 @@
+OO-PUNCT(1) - General Commands Manual
+
+# NAME
+
+**Oo-punct** - punctuation handling by the Oo macro
+
+# DESCRIPTION
+
+at the beginning:
+(\[z
+\[| z
+\[. z]]]
+
+in the middle:
+\[a (z
+\[a | z
+\[a. z]]]
+
+at the end:
+\[\[a (]
+|]
+
+OpenBSD - July 6, 2012
diff --git a/regress/mdoc/Op/Makefile b/regress/mdoc/Op/Makefile
index ab934a4e..2f3eeafb 100644
--- a/regress/mdoc/Op/Makefile
+++ b/regress/mdoc/Op/Makefile
@@ -2,6 +2,7 @@
REGRESS_TARGETS = break broken punct
LINT_TARGETS = break broken
+MARKDOWN_TARGETS = break broken punct
SKIP_GROFF = break
SKIP_ASCII = break
diff --git a/regress/mdoc/Op/break.out_markdown b/regress/mdoc/Op/break.out_markdown
new file mode 100644
index 00000000..edf3435e
--- /dev/null
+++ b/regress/mdoc/Op/break.out_markdown
@@ -0,0 +1,19 @@
+OP-BREAK(1) - General Commands Manual
+
+# NAME
+
+**Op-break** - partial explicit block broken by partial implicit block
+
+# DESCRIPTION
+
+before both
+\[inside first "inside both]
+inside second"
+after both
+
+0
+\[1 \[12 "123]]
+3"
+0
+
+OpenBSD - July 2, 2014
diff --git a/regress/mdoc/Op/broken.out_markdown b/regress/mdoc/Op/broken.out_markdown
new file mode 100644
index 00000000..13a50141
--- /dev/null
+++ b/regress/mdoc/Op/broken.out_markdown
@@ -0,0 +1,19 @@
+OP-BROKEN(1) - General Commands Manual
+
+# NAME
+
+**Op-broken** - partial implicit block broken by partial explicit block
+
+# DESCRIPTION
+
+before both
+"inside first
+\[inside both" inside second]
+after both
+
+0
+"1
+\[12 \[123" 23]]
+0
+
+OpenBSD - July 2, 2014
diff --git a/regress/mdoc/Op/punct.out_markdown b/regress/mdoc/Op/punct.out_markdown
new file mode 100644
index 00000000..114bd7af
--- /dev/null
+++ b/regress/mdoc/Op/punct.out_markdown
@@ -0,0 +1,34 @@
+OP-PUNCT(1) - General Commands Manual
+
+# NAME
+
+**Op-punct** - punctuation handling by the Op macro
+
+# DESCRIPTION
+
+at the beginning:
+(\[z]
+\[| z]
+\[. z]
+
+in the middle:
+\[a (z]
+\[a | z]
+\[a. z]
+
+at the end:
+\[a (]
+\[a |]
+\[a].
+
+punctuation only:
+(\[]
+\[|]
+\[].
+
+more than one:
+((\[]
+\[| |]
+\[]..
+
+OpenBSD - June 24, 2011
diff --git a/regress/mdoc/Os/Makefile b/regress/mdoc/Os/Makefile
index d228b09d..bef971bf 100644
--- a/regress/mdoc/Os/Makefile
+++ b/regress/mdoc/Os/Makefile
@@ -2,6 +2,8 @@
REGRESS_TARGETS = dupe late long missing
LINT_TARGETS = dupe late missing
+MARKDOWN_TARGETS = dupe late long missing
+
SKIP_GROFF = long
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Os/dupe.out_markdown b/regress/mdoc/Os/dupe.out_markdown
new file mode 100644
index 00000000..48556e30
--- /dev/null
+++ b/regress/mdoc/Os/dupe.out_markdown
@@ -0,0 +1,12 @@
+OS-DUPE(1) - General Commands Manual
+
+# NAME
+
+**Os-dupe** - repeated operating system macros
+
+# DESCRIPTION
+
+initial text
+final text
+
+OpenBSD - June 18, 2014
diff --git a/regress/mdoc/Os/late.out_markdown b/regress/mdoc/Os/late.out_markdown
new file mode 100644
index 00000000..593a8384
--- /dev/null
+++ b/regress/mdoc/Os/late.out_markdown
@@ -0,0 +1,12 @@
+OS-LATE(1) - General Commands Manual
+
+# NAME
+
+**Os-late** - late operating system macro
+
+# DESCRIPTION
+
+initial text
+final text
+
+OpenBSD - August 5, 2014
diff --git a/regress/mdoc/Os/long.out_markdown b/regress/mdoc/Os/long.out_markdown
new file mode 100644
index 00000000..0f144930
--- /dev/null
+++ b/regress/mdoc/Os/long.out_markdown
@@ -0,0 +1,11 @@
+OS-LONG(1) - General Commands Manual
+
+# NAME
+
+**Os-long** - long operating system string
+
+# DESCRIPTION
+
+some text
+
+1234567890123456789012345678901234567890123456789012345678901234567890123456789 - November 20, 2014
diff --git a/regress/mdoc/Os/missing.out_markdown b/regress/mdoc/Os/missing.out_markdown
new file mode 100644
index 00000000..ae2ee490
--- /dev/null
+++ b/regress/mdoc/Os/missing.out_markdown
@@ -0,0 +1,11 @@
+OS-MISSING(1) - General Commands Manual
+
+# NAME
+
+**Os-missing** - operating system macro missing in prologue
+
+# DESCRIPTION
+
+some text
+
+ \- August 5, 2014
diff --git a/regress/mdoc/Ox/Makefile b/regress/mdoc/Ox/Makefile
index 7f532eb1..44c7d855 100644
--- a/regress/mdoc/Ox/Makefile
+++ b/regress/mdoc/Ox/Makefile
@@ -1,5 +1,6 @@
# $OpenBSD: Makefile,v 1.3 2012/07/18 16:55:54 schwarze Exp $
-REGRESS_TARGETS = keep
+REGRESS_TARGETS = keep
+MARKDOWN_TARGETS = keep
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Ox/keep.out_markdown b/regress/mdoc/Ox/keep.out_markdown
new file mode 100644
index 00000000..52e7c2b1
--- /dev/null
+++ b/regress/mdoc/Ox/keep.out_markdown
@@ -0,0 +1,12 @@
+OX-KEEP(1) - General Commands Manual
+
+# NAME
+
+**Ox-keep** - interaction of unix variant macros and word keeps
+
+# DESCRIPTION
+
+Because we use a keep,
+OpenBSD&nbsp;4.9&nbsp;must&nbsp;be&nbsp;at&nbsp;the&nbsp;beginning&nbsp;of&nbsp;a&nbsp;new&nbsp;line.
+
+OpenBSD - January 30, 2011
diff --git a/regress/mdoc/Pa/Makefile b/regress/mdoc/Pa/Makefile
index 5f939fd3..1c9cadc7 100644
--- a/regress/mdoc/Pa/Makefile
+++ b/regress/mdoc/Pa/Makefile
@@ -1,6 +1,7 @@
# $OpenBSD: Makefile,v 1.4 2014/08/21 12:56:24 schwarze Exp $
REGRESS_TARGETS = font punct
+MARKDOWN_TARGETS = font punct
# XXX The FILES target doesn't currently work.
diff --git a/regress/mdoc/Pa/font.out_markdown b/regress/mdoc/Pa/font.out_markdown
new file mode 100644
index 00000000..0278fd99
--- /dev/null
+++ b/regress/mdoc/Pa/font.out_markdown
@@ -0,0 +1,13 @@
+PA-FONT(1) - General Commands Manual
+
+# NAME
+
+**Pa-font** - changing fonts inside the path macro
+
+# DESCRIPTION
+
+normal text
+*emphasis**bold**back*
+trailing text
+
+OpenBSD - July 9, 2012
diff --git a/regress/mdoc/Pa/punct.out_markdown b/regress/mdoc/Pa/punct.out_markdown
new file mode 100644
index 00000000..e7b05033
--- /dev/null
+++ b/regress/mdoc/Pa/punct.out_markdown
@@ -0,0 +1,42 @@
+PA-PUNCT(1) - General Commands Manual
+
+# NAME
+
+**Pa-punct** - punctuation handling by the Pa macro
+
+# DESCRIPTION
+
+closing punctuation
+*a*)
+only one
+*~*)
+only more than one
+*~*))
+middle
+*a*) *z*
+start
+*~*) *z*
+dot
+*~*. *z*
+comma
+*~*, *z*
+semicolon
+*~*; *z*
+colon
+*~*: *z*
+quest
+*~*? *z*
+excl
+*~*! *z*
+paren
+*~*) *z*
+bracket
+*~*] *z*
+bar
+| *m*
+op paren
+(*a*
+op bracket
+\[*a*
+
+OpenBSD - August 21, 2014
diff --git a/regress/mdoc/Pf/Makefile b/regress/mdoc/Pf/Makefile
index c222abf1..7a9c9218 100644
--- a/regress/mdoc/Pf/Makefile
+++ b/regress/mdoc/Pf/Makefile
@@ -2,5 +2,6 @@
REGRESS_TARGETS = spacing
LINT_TARGETS = spacing
+MARKDOWN_TARGETS = spacing
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Pf/spacing.out_markdown b/regress/mdoc/Pf/spacing.out_markdown
new file mode 100644
index 00000000..52349715
--- /dev/null
+++ b/regress/mdoc/Pf/spacing.out_markdown
@@ -0,0 +1,34 @@
+PF-SPACING(1) - General Commands Manual
+
+# NAME
+
+**Pf-spacing** - spacing around the prefix macro
+
+# DESCRIPTION
+
+Closing punctuation goes
+.right.
+But
+.. double
+prefixes don't work.
+Opening punctuation goes
+(left.
+But again, prefix
+() pairs
+don't work.
+Even normal text gets
+prefixed.
+The first
+Argument
+is not parsed.
+Nothing can be
+prefixed
+to the next line.
+Trailing punctuation still counts as
+*eos* .
+(But it does not fall out of enclosures .)
+
+It makes no sense at the very
+*end*
+
+OpenBSD - November 30, 2014
diff --git a/regress/mdoc/Pp/Makefile b/regress/mdoc/Pp/Makefile
index 04e1bc3b..c51ed473 100644
--- a/regress/mdoc/Pp/Makefile
+++ b/regress/mdoc/Pp/Makefile
@@ -2,5 +2,6 @@
REGRESS_TARGETS = arg
LINT_TARGETS = arg
+MARKDOWN_TARGETS = arg
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Pp/arg.out_markdown b/regress/mdoc/Pp/arg.out_markdown
new file mode 100644
index 00000000..290c3e0c
--- /dev/null
+++ b/regress/mdoc/Pp/arg.out_markdown
@@ -0,0 +1,16 @@
+PP-ARG(1) - General Commands Manual
+
+# NAME
+
+**Pp-arg** - paragraph macro with arguments
+
+# DESCRIPTION
+
+line 1
+
+line 2
+line 3
+
+line 4
+
+OpenBSD - February 4, 2015
diff --git a/regress/mdoc/Qq/Makefile b/regress/mdoc/Qq/Makefile
index 24f19edf..9068940e 100644
--- a/regress/mdoc/Qq/Makefile
+++ b/regress/mdoc/Qq/Makefile
@@ -1,5 +1,6 @@
# $OpenBSD: Makefile,v 1.1.1.1 2011/12/04 03:09:25 schwarze Exp $
-REGRESS_TARGETS=empty
+REGRESS_TARGETS = empty
+MARKDOWN_TARGETS = empty
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Qq/empty.out_markdown b/regress/mdoc/Qq/empty.out_markdown
new file mode 100644
index 00000000..262ae04d
--- /dev/null
+++ b/regress/mdoc/Qq/empty.out_markdown
@@ -0,0 +1,17 @@
+QQ-EMPTY(1) - General Commands Manual
+
+# NAME
+
+**Qq-empty** - empty implicit enclosure macros
+
+# DESCRIPTION
+
+An empty
+""
+and a full
+"user@host"
+quotation.
+And another
+"full" one.
+
+OpenBSD - October 21, 2010
diff --git a/regress/mdoc/Rs/Makefile b/regress/mdoc/Rs/Makefile
index 3732dc0a..374b386a 100644
--- a/regress/mdoc/Rs/Makefile
+++ b/regress/mdoc/Rs/Makefile
@@ -3,6 +3,7 @@
REGRESS_TARGETS = allch args break empty three_authors
UTF8_TARGETS = allch break empty three_authors
LINT_TARGETS = allch args empty
+MARKDOWN_TARGETS = allch args break empty three_authors
# groff-1.22.3 defect:
# - arguments after .Rs cause the macro to be ignored
diff --git a/regress/mdoc/Rs/allch.out_markdown b/regress/mdoc/Rs/allch.out_markdown
new file mode 100644
index 00000000..7faac2a3
--- /dev/null
+++ b/regress/mdoc/Rs/allch.out_markdown
@@ -0,0 +1,50 @@
+RS-ALLCH(1) - General Commands Manual
+
+# NAME
+
+**Rs-allch** - reference block using all supported child macros
+
+# DESCRIPTION
+
+reference on the same line:
+some
+*bogus*
+text
+author name,
+"title of article",
+*book title*,
+*issuer name*,
+*journal name*,
+report name,
+number of journal,
+volume number,
+uniform resource locator,
+page number,
+institutional author,
+city name,
+date of publication,
+optional information.
+
+# SEE ALSO
+
+reference after a blank line:
+
+some
+*bogus*
+text
+author name,
+"title of article",
+*book title*,
+*issuer name*,
+*journal name*,
+report name,
+number of journal,
+volume number,
+uniform resource locator,
+page number,
+institutional author,
+city name,
+date of publication,
+optional information.
+
+OpenBSD - July 7, 2014
diff --git a/regress/mdoc/Rs/args.out_markdown b/regress/mdoc/Rs/args.out_markdown
new file mode 100644
index 00000000..a9416b34
--- /dev/null
+++ b/regress/mdoc/Rs/args.out_markdown
@@ -0,0 +1,19 @@
+RS-ARGS(1) - General Commands Manual
+
+# NAME
+
+**Rs-args** - arguments on a reference block header line
+
+# SEE ALSO
+
+initial text
+
+author name,
+*book title*.
+middle text
+
+author name,
+*book title*.
+final text
+
+OpenBSD - February 4, 2015
diff --git a/regress/mdoc/Rs/break.out_markdown b/regress/mdoc/Rs/break.out_markdown
new file mode 100644
index 00000000..361f5bf0
--- /dev/null
+++ b/regress/mdoc/Rs/break.out_markdown
@@ -0,0 +1,30 @@
+RS-BREAK(1) - General Commands Manual
+
+# NAME
+
+**Rs-break** - line break before reference start
+
+# DESCRIPTION
+
+reference on the same line:
+author,
+*journal*,
+42\.
+
+# SEE ALSO
+
+reference after a blank line:
+
+author,
+*journal*,
+42\.
+
+# SEE *ALSO*
+
+reference after a blank line:
+
+author,
+*journal*,
+42\.
+
+OpenBSD - April 15, 2014
diff --git a/regress/mdoc/Rs/empty.out_markdown b/regress/mdoc/Rs/empty.out_markdown
new file mode 100644
index 00000000..9c8ff4a1
--- /dev/null
+++ b/regress/mdoc/Rs/empty.out_markdown
@@ -0,0 +1,18 @@
+RS-EMPTY(1) - General Commands Manual
+
+# NAME
+
+**Rs-empty** - empty reference blocks
+
+# DESCRIPTION
+
+initial text
+final text
+
+# SEE ALSO
+
+initial text
+
+final text
+
+OpenBSD - February 4, 2015
diff --git a/regress/mdoc/Rs/three_authors.out_markdown b/regress/mdoc/Rs/three_authors.out_markdown
new file mode 100644
index 00000000..66456f37
--- /dev/null
+++ b/regress/mdoc/Rs/three_authors.out_markdown
@@ -0,0 +1,14 @@
+RS-THREE\_AUTHORS(1) - General Commands Manual
+
+# NAME
+
+**Rs-three\_authors** - listing three authors in a reference block
+
+# AUTHORS
+
+kristaps,
+joerg, and
+ingo,
+*mandoc*.
+
+OpenBSD - May 1, 2009
diff --git a/regress/mdoc/Rv/Makefile b/regress/mdoc/Rv/Makefile
index 238982a3..60fb1de7 100644
--- a/regress/mdoc/Rv/Makefile
+++ b/regress/mdoc/Rv/Makefile
@@ -2,6 +2,7 @@
REGRESS_TARGETS = args noname nostd
LINT_TARGETS = noname nostd
+MARKDOWN_TARGETS = args nostd
# groff-1.22.2 defect:
# - .Rv without -std produces no output
diff --git a/regress/mdoc/Rv/args.out_markdown b/regress/mdoc/Rv/args.out_markdown
new file mode 100644
index 00000000..017f9b6d
--- /dev/null
+++ b/regress/mdoc/Rv/args.out_markdown
@@ -0,0 +1,18 @@
+RV-ARGS(3) - Library Functions Manual
+
+# NAME
+
+**Rv-args** - arguments to the return value macro
+
+# RETURN VALUES
+
+no arguments:
+Upon successful completion, the value&#160;0 is returned; otherwise the value&#160;&#45;1 is returned and the global variable *errno* is set to indicate the error.
+
+one argument:
+The **one**() function returns the value&#160;0 if successful; otherwise the value&#160;&#45;1 is returned and the global variable *errno* is set to indicate the error.
+
+two arguments:
+The **one**() and **two**() functions return the value&#160;0 if successful; otherwise the value&#160;&#45;1 is returned and the global variable *errno* is set to indicate the error.
+
+OpenBSD - July 29, 2014
diff --git a/regress/mdoc/Rv/nostd.out_markdown b/regress/mdoc/Rv/nostd.out_markdown
new file mode 100644
index 00000000..5600556d
--- /dev/null
+++ b/regress/mdoc/Rv/nostd.out_markdown
@@ -0,0 +1,18 @@
+RV-NOSTD(3) - Library Functions Manual
+
+# NAME
+
+**Rv-nostd** - return value macros without -std arguments
+
+# RETURN VALUES
+
+no arguments:
+Upon successful completion, the value&#160;0 is returned; otherwise the value&#160;&#45;1 is returned and the global variable *errno* is set to indicate the error.
+
+one argument:
+The **one**() function returns the value&#160;0 if successful; otherwise the value&#160;&#45;1 is returned and the global variable *errno* is set to indicate the error.
+
+two arguments:
+The **one**() and **two**() functions return the value&#160;0 if successful; otherwise the value&#160;&#45;1 is returned and the global variable *errno* is set to indicate the error.
+
+OpenBSD - July 29, 2014
diff --git a/regress/mdoc/Sh/Makefile b/regress/mdoc/Sh/Makefile
index a1db1161..e6070870 100644
--- a/regress/mdoc/Sh/Makefile
+++ b/regress/mdoc/Sh/Makefile
@@ -4,6 +4,8 @@ REGRESS_TARGETS = badNAME before empty emptyNAME first nohead order
REGRESS_TARGETS += orderNAME punctNAME subbefore
LINT_TARGETS = badNAME before empty emptyNAME first nohead order
LINT_TARGETS += orderNAME punctNAME subbefore
+MARKDOWN_TARGETS = badNAME before empty emptyNAME first nohead order
+MARKDOWN_TARGETS += orderNAME punctNAME subbefore
SKIP_GROFF = subbefore first empty
SKIP_ASCII = first
diff --git a/regress/mdoc/Sh/badNAME.out_markdown b/regress/mdoc/Sh/badNAME.out_markdown
new file mode 100644
index 00000000..449636c0
--- /dev/null
+++ b/regress/mdoc/Sh/badNAME.out_markdown
@@ -0,0 +1,12 @@
+SH-BADNAME(1) - General Commands Manual
+
+# NAME
+
+*bad NAME section*
+**Sh-badNAME**
+
+# DESCRIPTION
+
+The description appears before the name and is not marked up with Nd.
+
+OpenBSD - July 1, 2014
diff --git a/regress/mdoc/Sh/before.out_markdown b/regress/mdoc/Sh/before.out_markdown
new file mode 100644
index 00000000..261ebbde
--- /dev/null
+++ b/regress/mdoc/Sh/before.out_markdown
@@ -0,0 +1,17 @@
+SH-BEFORE(1) - General Commands Manual
+
+Can
+mandoc(1)
+on
+OpenBSD
+handle this?
+
+# NAME
+
+**Sh-before** - content before the first section header
+
+# DESCRIPTION
+
+some text
+
+OpenBSD - July 7, 2014
diff --git a/regress/mdoc/Sh/empty.out_markdown b/regress/mdoc/Sh/empty.out_markdown
new file mode 100644
index 00000000..b71fbfa6
--- /dev/null
+++ b/regress/mdoc/Sh/empty.out_markdown
@@ -0,0 +1,15 @@
+SH-EMPTY(1) - General Commands Manual
+
+# NAME
+
+**Sh-empty** - empty sections
+
+# SYNOPSIS
+
+# DESCRIPTION
+
+# BUGS
+
+Quite some.
+
+OpenBSD - November 21, 2014
diff --git a/regress/mdoc/Sh/emptyNAME.out_markdown b/regress/mdoc/Sh/emptyNAME.out_markdown
new file mode 100644
index 00000000..b5cf38a5
--- /dev/null
+++ b/regress/mdoc/Sh/emptyNAME.out_markdown
@@ -0,0 +1,9 @@
+SH-EMPTYNAME(1) - General Commands Manual
+
+# NAME
+
+# DESCRIPTION
+
+The NAME section is empty.
+
+OpenBSD - July 1, 2014
diff --git a/regress/mdoc/Sh/first.out_markdown b/regress/mdoc/Sh/first.out_markdown
new file mode 100644
index 00000000..be7ee5a6
--- /dev/null
+++ b/regress/mdoc/Sh/first.out_markdown
@@ -0,0 +1,7 @@
+SH-FIRST(1) - General Commands Manual
+
+# DESCRIPTION
+
+The first section is not a NAME section.
+
+OpenBSD - July 1, 2014
diff --git a/regress/mdoc/Sh/nohead.out_markdown b/regress/mdoc/Sh/nohead.out_markdown
new file mode 100644
index 00000000..4ec6aa8e
--- /dev/null
+++ b/regress/mdoc/Sh/nohead.out_markdown
@@ -0,0 +1,13 @@
+SH-NOHEAD(1) - General Commands Manual
+
+# NAME
+
+**Sh-nohead** - sections without header lines
+
+# DESCRIPTION
+
+empty section header:
+empty subsection header:
+text
+
+OpenBSD - February 5, 2015
diff --git a/regress/mdoc/Sh/order.out_markdown b/regress/mdoc/Sh/order.out_markdown
new file mode 100644
index 00000000..4e3abd1f
--- /dev/null
+++ b/regress/mdoc/Sh/order.out_markdown
@@ -0,0 +1,19 @@
+SH-ORDER(1) - General Commands Manual
+
+# NAME
+
+**Sh-order** - sections out of conventional order
+
+# DESCRIPTION
+
+some text
+
+# SYNOPSIS
+
+# SYNOPSIS
+
+# ERRORS
+
+*int errno*
+
+OpenBSD - July 1, 2014
diff --git a/regress/mdoc/Sh/orderNAME.out_markdown b/regress/mdoc/Sh/orderNAME.out_markdown
new file mode 100644
index 00000000..967edbe9
--- /dev/null
+++ b/regress/mdoc/Sh/orderNAME.out_markdown
@@ -0,0 +1,15 @@
+SH-ORDERNAME(1) - General Commands Manual
+
+# NAME
+
+\- name after description in NAME section
+
+## subsection
+
+**Sh-orderNAME**
+
+# DESCRIPTION
+
+The order of Nm and Nd is wrong in the NAME section.
+
+OpenBSD - January 7, 2017
diff --git a/regress/mdoc/Sh/punctNAME.out_markdown b/regress/mdoc/Sh/punctNAME.out_markdown
new file mode 100644
index 00000000..823868cd
--- /dev/null
+++ b/regress/mdoc/Sh/punctNAME.out_markdown
@@ -0,0 +1,13 @@
+SH-PUNCTNAME(1) - General Commands Manual
+
+# NAME
+
+**Sh-punctNAME**
+**second\_name**;
+**third\_name**, - wrong punctuation in the NAME section
+
+# DESCRIPTION
+
+One comma is missing, and one is misplaced.
+
+OpenBSD - January 7, 2017
diff --git a/regress/mdoc/Sh/subbefore.out_markdown b/regress/mdoc/Sh/subbefore.out_markdown
new file mode 100644
index 00000000..8c196b3f
--- /dev/null
+++ b/regress/mdoc/Sh/subbefore.out_markdown
@@ -0,0 +1,19 @@
+SH-SUBBEFORE(1) - General Commands Manual
+
+## Subsection
+
+Can
+mandoc(1)
+on
+OpenBSD
+handle this?
+
+# NAME
+
+**Sh-subbefore** - subsection before the first section header
+
+# DESCRIPTION
+
+some text
+
+OpenBSD - July 30, 2014
diff --git a/regress/mdoc/Sm/Makefile b/regress/mdoc/Sm/Makefile
index 197b1d74..a79ee73b 100644
--- a/regress/mdoc/Sm/Makefile
+++ b/regress/mdoc/Sm/Makefile
@@ -2,6 +2,7 @@
REGRESS_TARGETS = noarg badarg scope spacing-No spacing-Op twoarg
LINT_TARGETS = badarg twoarg
+MARKDOWN_TARGETS = noarg badarg spacing-No spacing-Op twoarg
SKIP_TMAN ?= scope
diff --git a/regress/mdoc/Sm/badarg.out_markdown b/regress/mdoc/Sm/badarg.out_markdown
new file mode 100644
index 00000000..86c8cd6f
--- /dev/null
+++ b/regress/mdoc/Sm/badarg.out_markdown
@@ -0,0 +1,14 @@
+SM-BADARG(1) - General Commands Manual
+
+# NAME
+
+**Sm-badarg** - spacing macro with invalid arguments
+
+# DESCRIPTION
+
+**-f** *on*
+**-f**&zwnj;*off* bad
+**-f** *bad* (on)
+bad**-f**&zwnj;*bad*(off)
+
+OpenBSD-July 3, 2014
diff --git a/regress/mdoc/Sm/noarg.out_markdown b/regress/mdoc/Sm/noarg.out_markdown
new file mode 100644
index 00000000..3b0d089b
--- /dev/null
+++ b/regress/mdoc/Sm/noarg.out_markdown
@@ -0,0 +1,18 @@
+SM-NOARG(1) - General Commands Manual
+
+# NAME
+
+**Sm-noarg** - spacing macro without arguments
+
+# DESCRIPTION
+
+**-f** *on*
+**-f**&zwnj;*off*
+**-f** *toggle* (now on)
+**-f** *on*
+**-f**&zwnj;*toggle*(nowoff)
+
+**-f** *on*
+on a new line
+
+OpenBSD - July 2, 2014
diff --git a/regress/mdoc/Sm/spacing-No.out_markdown b/regress/mdoc/Sm/spacing-No.out_markdown
new file mode 100644
index 00000000..b2487962
--- /dev/null
+++ b/regress/mdoc/Sm/spacing-No.out_markdown
@@ -0,0 +1,47 @@
+SM-SPACING(1) - General Commands Manual
+
+# NAME
+
+**Sm-spacing** - basic tests of spacing mode
+
+# SYNOPSIS
+
+**mandoc**
+**-T**&zwnj;*mode*
+*file&nbsp;...*
+
+# DESCRIPTION
+
+text1
+text2 text3
+text4
+
+text1
+text2 text3
+macro4
+
+text1
+macro2macro3
+text4
+
+text1
+macro2macro3
+macro4
+
+macro1
+text2 text3
+text4
+
+macro1
+text2 text3
+macro4
+
+macro1
+macro2macro3
+text4
+
+macro1
+macro2macro3
+macro4
+
+OpenBSD - July 4, 2010
diff --git a/regress/mdoc/Sm/spacing-Op.out_markdown b/regress/mdoc/Sm/spacing-Op.out_markdown
new file mode 100644
index 00000000..9f4f15ae
--- /dev/null
+++ b/regress/mdoc/Sm/spacing-Op.out_markdown
@@ -0,0 +1,49 @@
+SM-SPACING-OP(1) - General Commands Manual
+
+# NAME
+
+**Sm-spacing-Op** - spacing mode, demonstrated using the .Op macro
+
+# SYNOPSIS
+
+**mandoc**
+**-T**&zwnj;*mode*
+*file&nbsp;...*
+
+# DESCRIPTION
+
+text1
+text2 text3
+text4
+
+text1
+text2 text3
+\[macro4]
+
+text1
+\[macro2macro3]
+text4
+
+text1
+\[macro2\[macro3]]
+\[macro4]
+
+\[macro1]
+text2 text3
+text4
+
+\[macro1]
+text2 text3
+\[macro4]
+
+\[macro1]
+\[macro2\[macro3]]
+text4
+
+\[macro1]
+\[macro2\[macro3]]
+\[macro4]
+
+\[macro1]
+
+OpenBSD - July 4, 2010
diff --git a/regress/mdoc/Sm/twoarg.out_markdown b/regress/mdoc/Sm/twoarg.out_markdown
new file mode 100644
index 00000000..0951e672
--- /dev/null
+++ b/regress/mdoc/Sm/twoarg.out_markdown
@@ -0,0 +1,19 @@
+SM-TWOARG(1) - General Commands Manual
+
+# NAME
+
+**Sm-twoarg** - spacing macro with multiple arguments
+
+# DESCRIPTION
+
+**default**:
+**-f** *on*
+**off two**:
+two**-f**&zwnj;*off*
+**badtwo**: bad two
+**-f** *off*
+**on two**:
+two
+**-f** *on*
+
+OpenBSD - November 26, 2014
diff --git a/regress/mdoc/Sq/Makefile b/regress/mdoc/Sq/Makefile
index 24f19edf..d4c41e6e 100644
--- a/regress/mdoc/Sq/Makefile
+++ b/regress/mdoc/Sq/Makefile
@@ -1,5 +1,6 @@
# $OpenBSD: Makefile,v 1.1.1.1 2011/12/04 03:09:25 schwarze Exp $
-REGRESS_TARGETS=empty
+REGRESS_TARGETS = empty
+MARKDOWN_TARGETS = empty
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Sq/empty.out_markdown b/regress/mdoc/Sq/empty.out_markdown
new file mode 100644
index 00000000..34a3fcbf
--- /dev/null
+++ b/regress/mdoc/Sq/empty.out_markdown
@@ -0,0 +1,17 @@
+SQ-EMPTY(1) - General Commands Manual
+
+# NAME
+
+**Sq-empty** - empty implicit enclosure macros
+
+# DESCRIPTION
+
+An empty
+''
+and a full
+'user@host'
+quotation.
+And another
+'full' one.
+
+OpenBSD - October 21, 2010
diff --git a/regress/mdoc/St/Makefile b/regress/mdoc/St/Makefile
index a1bde7e1..488467de 100644
--- a/regress/mdoc/St/Makefile
+++ b/regress/mdoc/St/Makefile
@@ -2,6 +2,7 @@
REGRESS_TARGETS = badargs call
LINT_TARGETS = badargs call
+MARKDOWN_TARGETS = badargs call
# groff-1.22.3 defect:
# - If the first argument of .St is the name of another macro,
diff --git a/regress/mdoc/St/badargs.out_markdown b/regress/mdoc/St/badargs.out_markdown
new file mode 100644
index 00000000..12e4785f
--- /dev/null
+++ b/regress/mdoc/St/badargs.out_markdown
@@ -0,0 +1,21 @@
+ST-INVALID(1) - General Commands Manual
+
+# NAME
+
+**St-invalid** - handling of invalid standard argument
+
+# STANDARDS
+
+valid argument:
+IEEE Std 1003.1-2004 (&#8220;POSIX.1&#8221;)
+
+invalid argument:
+
+no arguments:
+
+two arguments:
+IEEE Std 1003.1-2004 (&#8220;POSIX.1&#8221;) murks
+
+end of file
+
+OpenBSD - June 30, 2010
diff --git a/regress/mdoc/St/call.out_markdown b/regress/mdoc/St/call.out_markdown
new file mode 100644
index 00000000..4fb19ce3
--- /dev/null
+++ b/regress/mdoc/St/call.out_markdown
@@ -0,0 +1,17 @@
+ST-CALL(1) - General Commands Manual
+
+# NAME
+
+**St-call** - the standard macro calling other macros
+
+# STANDARDS
+
+calling another macro:
+**-called**
+
+valid argument:
+IEEE Std 1003.1-2004 (&#8220;POSIX.1&#8221;)
+
+end of file
+
+OpenBSD - February 10, 2015
diff --git a/regress/mdoc/Sx/Makefile b/regress/mdoc/Sx/Makefile
index 1be2a84a..e13130c1 100644
--- a/regress/mdoc/Sx/Makefile
+++ b/regress/mdoc/Sx/Makefile
@@ -2,5 +2,6 @@
REGRESS_TARGETS = noarg font
LINT_TARGETS = noarg
+MARKDOWN_TARGETS = noarg font
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Sx/font.out_markdown b/regress/mdoc/Sx/font.out_markdown
new file mode 100644
index 00000000..333cdb04
--- /dev/null
+++ b/regress/mdoc/Sx/font.out_markdown
@@ -0,0 +1,13 @@
+SX-FONT(1) - General Commands Manual
+
+# NAME
+
+**Sx-font** - changing fonts inside the cross reference macro
+
+# DESCRIPTION
+
+normal text
+*emphasis**bold**back*
+trailing text
+
+OpenBSD - July 9, 2012
diff --git a/regress/mdoc/Sx/noarg.out_markdown b/regress/mdoc/Sx/noarg.out_markdown
new file mode 100644
index 00000000..0271546f
--- /dev/null
+++ b/regress/mdoc/Sx/noarg.out_markdown
@@ -0,0 +1,14 @@
+SX-NOARG(1) - General Commands Manual
+
+# NAME
+
+**Sx-noarg** - internal cross reference without a target
+
+# DESCRIPTION
+
+with target:
+*DESCRIPTION*
+no target:
+end of test document
+
+OpenBSD - January 19, 2011
diff --git a/regress/mdoc/Sy/Makefile b/regress/mdoc/Sy/Makefile
index 36c1859b..6448fb44 100644
--- a/regress/mdoc/Sy/Makefile
+++ b/regress/mdoc/Sy/Makefile
@@ -2,5 +2,6 @@
REGRESS_TARGETS = noarg font punct
LINT_TARGETS = noarg punct
+MARKDOWN_TARGETS = noarg font punct
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Sy/font.out_markdown b/regress/mdoc/Sy/font.out_markdown
new file mode 100644
index 00000000..d0af7d2c
--- /dev/null
+++ b/regress/mdoc/Sy/font.out_markdown
@@ -0,0 +1,13 @@
+SY-FONT(1) - General Commands Manual
+
+# NAME
+
+**Sy-font** - changing fonts inside the symbolic font macro
+
+# DESCRIPTION
+
+normal text
+**bold*emphasis*back**
+trailing text
+
+OpenBSD - July 9, 2012
diff --git a/regress/mdoc/Sy/noarg.out_markdown b/regress/mdoc/Sy/noarg.out_markdown
new file mode 100644
index 00000000..e3e1c014
--- /dev/null
+++ b/regress/mdoc/Sy/noarg.out_markdown
@@ -0,0 +1,14 @@
+SY-NOARG(1) - General Commands Manual
+
+# NAME
+
+**Sy-noarg** - symbolic macro without arguments
+
+# DESCRIPTION
+
+with argument
+**arg**
+no argument
+end of test document
+
+OpenBSD - January 19, 2011
diff --git a/regress/mdoc/Sy/punct.out_markdown b/regress/mdoc/Sy/punct.out_markdown
new file mode 100644
index 00000000..8d91555d
--- /dev/null
+++ b/regress/mdoc/Sy/punct.out_markdown
@@ -0,0 +1,85 @@
+SY-PUNCT(1) - General Commands Manual
+
+# NAME
+
+**Sy-punct** - punctuation following a symbolic macro
+
+# DESCRIPTION
+
+Leading punctuation:
+(**b**
+\[**b**
+| **b**
+. **b**
+, **b**
+; **b**
+: **b**
+? **b**
+! **b**
+) **b**
+] **b**
+
+Trailing punctuation:
+**a** (
+**a** \[
+**a** |
+**a**.
+**a**,
+**a**;
+**a**:
+**a**?
+**a**!
+**a**)
+**a**]
+
+Middle punctuation:
+**a** (**b**
+**a** \[**b**
+**a** | **b**
+**a**. **b**
+**a**, **b**
+**a**; **b**
+**a**: **b**
+**a**? **b**
+**a**! **b**
+**a**) **b**
+**a**] **b**
+
+Isolated punctuation:
+**a** (**b**
+**a** \[**b**
+**a** | **b**
+**a** . **b**
+**a** , **b**
+**a** ; **b**
+**a** : **b**
+**a** ? **b**
+**a** ! **b**
+**a** ) **b**
+**a** ] **b**
+
+Isolated trailing punctuation:
+**a** (
+**a** \[
+**a** |
+**a** .
+**a** ,
+**a** ;
+**a** :
+**a** ?
+**a** !
+**a** )
+**a** ]
+
+Multiple isolated punctuation:
+**a** (\[**b**
+**a** )] **b**
+
+Multiple punctuation:
+\[(**arg**)].
+
+Quoted:
+**a . b Nm**
+**. b Nm**
+
+OpenBSD - November 17, 2014
diff --git a/regress/mdoc/Tn/Makefile b/regress/mdoc/Tn/Makefile
index 1be2a84a..e13130c1 100644
--- a/regress/mdoc/Tn/Makefile
+++ b/regress/mdoc/Tn/Makefile
@@ -2,5 +2,6 @@
REGRESS_TARGETS = noarg font
LINT_TARGETS = noarg
+MARKDOWN_TARGETS = noarg font
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Tn/font.out_markdown b/regress/mdoc/Tn/font.out_markdown
new file mode 100644
index 00000000..d84b4618
--- /dev/null
+++ b/regress/mdoc/Tn/font.out_markdown
@@ -0,0 +1,13 @@
+TN-FONT(1) - General Commands Manual
+
+# NAME
+
+**Tn-font** - changing fonts inside the trade name macro
+
+# DESCRIPTION
+
+normal text
+`literal*emphasis*back`
+trailing text
+
+OpenBSD - July 9, 2012
diff --git a/regress/mdoc/Tn/noarg.out_markdown b/regress/mdoc/Tn/noarg.out_markdown
new file mode 100644
index 00000000..64641d63
--- /dev/null
+++ b/regress/mdoc/Tn/noarg.out_markdown
@@ -0,0 +1,14 @@
+TN-NOARG(1) - General Commands Manual
+
+# NAME
+
+**Tn-noarg** - trade name macro without argument
+
+# DESCRIPTION
+
+with argument
+`IBM`
+no argument
+end of test document
+
+OpenBSD - January 19, 2011
diff --git a/regress/mdoc/Ud/Makefile b/regress/mdoc/Ud/Makefile
index 9bc871ee..741a6326 100644
--- a/regress/mdoc/Ud/Makefile
+++ b/regress/mdoc/Ud/Makefile
@@ -2,5 +2,6 @@
REGRESS_TARGETS = arg
LINT_TARGETS = arg
+MARKDOWN_TARGETS = arg
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Ud/arg.out_markdown b/regress/mdoc/Ud/arg.out_markdown
new file mode 100644
index 00000000..aaf0f70d
--- /dev/null
+++ b/regress/mdoc/Ud/arg.out_markdown
@@ -0,0 +1,22 @@
+UD-ARG(1) - General Commands Manual
+
+# NAME
+
+**Ud-arg** - obsolete text production macros
+
+# DESCRIPTION
+
+The newest branch is
+currently under development.
+The stable branch
+is currently in beta test.
+It will be released shortly.
+
+With arg:
+currently under development.
+is currently in beta test.
+currently under development.
+is currently in beta test.
+end
+
+OpenBSD - January 11, 2017
diff --git a/regress/mdoc/Ux/Makefile b/regress/mdoc/Ux/Makefile
index c945b5e6..05a3316d 100644
--- a/regress/mdoc/Ux/Makefile
+++ b/regress/mdoc/Ux/Makefile
@@ -1,5 +1,6 @@
# $OpenBSD: Makefile,v 1.2 2013/12/22 14:06:29 schwarze Exp $
REGRESS_TARGETS = spacing eos
+MARKDOWN_TARGETS = spacing eos
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Ux/eos.out_markdown b/regress/mdoc/Ux/eos.out_markdown
new file mode 100644
index 00000000..49f3a9ce
--- /dev/null
+++ b/regress/mdoc/Ux/eos.out_markdown
@@ -0,0 +1,25 @@
+UX-EOS(1) - General Commands Manual
+
+# NAME
+
+**Ux-eos** - end of sentence spacing after Unix macros
+
+# DESCRIPTION
+
+In the beginning Ken and Dennis wrote
+UNIX.
+The CSRG rewrote it to become
+BSD.
+When it dissolved, people started
+BSD/OS.
+And
+NetBSD.
+And
+FreeBSD.
+And
+OpenBSD.
+And
+DragonFly.
+By now, it's free for everyone.
+
+OpenBSD - December 22, 2013
diff --git a/regress/mdoc/Ux/spacing.out_markdown b/regress/mdoc/Ux/spacing.out_markdown
new file mode 100644
index 00000000..528bee43
--- /dev/null
+++ b/regress/mdoc/Ux/spacing.out_markdown
@@ -0,0 +1,23 @@
+UX-SPACING(1) - General Commands Manual
+
+# NAME
+
+**Ux-spacing** - spacing around the Unix macro
+
+# DESCRIPTION
+
+The
+UNIX
+family of operating systems, including
+NetBSD,
+OpenBSD,
+FreeBSD,
+DragonFly
+and
+BSD/OS.
+The system is
+currently under development.
+The system
+is currently in beta test.
+
+OpenBSD - October 20, 2011
diff --git a/regress/mdoc/Va/Makefile b/regress/mdoc/Va/Makefile
index 3d426934..a45efa7b 100644
--- a/regress/mdoc/Va/Makefile
+++ b/regress/mdoc/Va/Makefile
@@ -2,5 +2,6 @@
REGRESS_TARGETS = basic font noarg
LINT_TARGETS = noarg
+MARKDOWN_TARGETS = basic font noarg
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Va/basic.out_markdown b/regress/mdoc/Va/basic.out_markdown
new file mode 100644
index 00000000..ec819cd5
--- /dev/null
+++ b/regress/mdoc/Va/basic.out_markdown
@@ -0,0 +1,17 @@
+VA-BASIC(1) - General Commands Manual
+
+# NAME
+
+**Va-basic** - basic usage of the variable name macro
+
+# DESCRIPTION
+
+Both
+*char \*&zwnj;*
+*malloc\_options*
+and
+*int*
+*errno*
+are typical examples of global variables.
+
+OpenBSD - July 8, 2012
diff --git a/regress/mdoc/Va/font.out_markdown b/regress/mdoc/Va/font.out_markdown
new file mode 100644
index 00000000..b58aecd4
--- /dev/null
+++ b/regress/mdoc/Va/font.out_markdown
@@ -0,0 +1,13 @@
+VA-FONT(1) - General Commands Manual
+
+# NAME
+
+**Va-font** - changing fonts inside the variable name macro
+
+# DESCRIPTION
+
+normal text
+*emphasis**bold**back*
+trailing text
+
+OpenBSD - July 9, 2012
diff --git a/regress/mdoc/Va/noarg.out_markdown b/regress/mdoc/Va/noarg.out_markdown
new file mode 100644
index 00000000..323c5e2f
--- /dev/null
+++ b/regress/mdoc/Va/noarg.out_markdown
@@ -0,0 +1,15 @@
+VA-NOARG(1) - General Commands Manual
+
+# NAME
+
+**Va-noarg** - variable name macro without arguments
+
+# DESCRIPTION
+
+with arguments
+*int*
+*errno*
+no arguments
+end of test document
+
+OpenBSD - January 20, 2011
diff --git a/regress/mdoc/Vt/Makefile b/regress/mdoc/Vt/Makefile
index d1f0a9bd..b6d9f2b2 100644
--- a/regress/mdoc/Vt/Makefile
+++ b/regress/mdoc/Vt/Makefile
@@ -2,5 +2,6 @@
REGRESS_TARGETS = noarg spacing font child
LINT_TARGETS = noarg
+MARKDOWN_TARGETS = noarg spacing font child
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Vt/child.out_markdown b/regress/mdoc/Vt/child.out_markdown
new file mode 100644
index 00000000..49d984e1
--- /dev/null
+++ b/regress/mdoc/Vt/child.out_markdown
@@ -0,0 +1,20 @@
+VT-CHILD(1) - General Commands Manual
+
+# NAME
+
+**Vt-child** - the variable type macro does not want children
+
+# SYNOPSIS
+
+*extern **int** `errno`*
+
+# DESCRIPTION
+
+various types, for example
+*unsigned* **int**,
+*long* `int`
+and
+*float*,
+*double*
+
+OpenBSD - July 2, 2014
diff --git a/regress/mdoc/Vt/font.out_markdown b/regress/mdoc/Vt/font.out_markdown
new file mode 100644
index 00000000..c210b5ba
--- /dev/null
+++ b/regress/mdoc/Vt/font.out_markdown
@@ -0,0 +1,13 @@
+VT-FONT(1) - General Commands Manual
+
+# NAME
+
+**Vt-font** - changing fonts inside the variable type macro
+
+# DESCRIPTION
+
+normal text
+*emphasis**bold**back*
+trailing text
+
+OpenBSD - July 9, 2012
diff --git a/regress/mdoc/Vt/noarg.out_markdown b/regress/mdoc/Vt/noarg.out_markdown
new file mode 100644
index 00000000..4ed95290
--- /dev/null
+++ b/regress/mdoc/Vt/noarg.out_markdown
@@ -0,0 +1,14 @@
+VT-NOARG(1) - General Commands Manual
+
+# NAME
+
+**Vt-noarg** - variable type macro without arguments
+
+# DESCRIPTION
+
+with arguments
+*signed int*
+no arguments
+end of test document
+
+OpenBSD - January 20, 2011
diff --git a/regress/mdoc/Vt/spacing.out_markdown b/regress/mdoc/Vt/spacing.out_markdown
new file mode 100644
index 00000000..58bb771d
--- /dev/null
+++ b/regress/mdoc/Vt/spacing.out_markdown
@@ -0,0 +1,21 @@
+VT-SPACING(1) - General Commands Manual
+
+# NAME
+
+**Vt-spacing** - spacing around the variable type macro
+
+# SYNOPSIS
+
+*extern char \*\*environ*
+*extern int errno*
+
+# DESCRIPTION
+
+various types, for example
+*unsigned int*,
+*long int*
+and
+*float*,
+*double*
+
+OpenBSD - July 8, 2012
diff --git a/regress/mdoc/Xr/Makefile b/regress/mdoc/Xr/Makefile
index 98887f84..618081f2 100644
--- a/regress/mdoc/Xr/Makefile
+++ b/regress/mdoc/Xr/Makefile
@@ -2,5 +2,6 @@
REGRESS_TARGETS = args
LINT_TARGETS = args
+MARKDOWN_TARGETS = args
.include <bsd.regress.mk>
diff --git a/regress/mdoc/Xr/args.out_markdown b/regress/mdoc/Xr/args.out_markdown
new file mode 100644
index 00000000..bc102f58
--- /dev/null
+++ b/regress/mdoc/Xr/args.out_markdown
@@ -0,0 +1,28 @@
+XR-ARGS(1) - General Commands Manual
+
+# NAME
+
+**Xr-args** - additional arguments to cross references
+
+# DESCRIPTION
+
+One single
+echo(1)
+is fine, and so is an
+echo(1) followed by something else.
+
+But listen for multiple
+echo(1)s.
+
+A call, an
+echo(1), and
+another
+echo(1).
+
+Finally, half an
+echo,
+no echo
+and no
+echo at all.
+
+OpenBSD - December 3, 2011
diff --git a/regress/mdoc/blank/Makefile b/regress/mdoc/blank/Makefile
index e51424c9..8a43c0c8 100644
--- a/regress/mdoc/blank/Makefile
+++ b/regress/mdoc/blank/Makefile
@@ -2,6 +2,7 @@
REGRESS_TARGETS = line comment list
LINT_TARGETS = line comment list
+MARKDOWN_TARGETS = comment list
SKIP_TMAN = list
diff --git a/regress/mdoc/blank/comment.out_markdown b/regress/mdoc/blank/comment.out_markdown
new file mode 100644
index 00000000..906a0c0b
--- /dev/null
+++ b/regress/mdoc/blank/comment.out_markdown
@@ -0,0 +1,16 @@
+BLANK-COMMENT(1) - General Commands Manual
+
+# NAME
+
+**blank-comment** - normal and bogus comments
+
+# DESCRIPTION
+
+normal comment
+bogus comment
+end of text
+
+text
+text
+
+OpenBSD - February 17, 2010
diff --git a/regress/mdoc/blank/list.out_markdown b/regress/mdoc/blank/list.out_markdown
new file mode 100644
index 00000000..8d92f60f
--- /dev/null
+++ b/regress/mdoc/blank/list.out_markdown
@@ -0,0 +1,50 @@
+BLANK-LIST(1) - General Commands Manual
+
+# NAME
+
+**blank-list** - handling of blank lines in lists
+
+# DESCRIPTION
+
+normal list:
+
+first item
+
+second item
+
+list with paragraphs:
+
+first item
+
+second item
+
+list with final paragraph:
+
+item
+
+list with double paragraph:
+
+item
+
+normal compact list:
+
+first item
+second item
+
+compact list with paragraphs:
+
+first item
+
+second item
+
+compact list with final paragraph:
+
+item
+
+compact list with double paragraph:
+
+item
+
+End.
+
+OpenBSD - July 17, 2012
diff --git a/regress/mdoc/break/Makefile b/regress/mdoc/break/Makefile
index b4c3b219..23898a59 100644
--- a/regress/mdoc/break/Makefile
+++ b/regress/mdoc/break/Makefile
@@ -2,6 +2,7 @@
REGRESS_TARGETS = brokenbreaker twice tail two notopen
LINT_TARGETS = brokenbreaker twice tail two notopen
+MARKDOWN_TARGETS = brokenbreaker twice two notopen
# It's hard to keep stuff together in next-line scope.
diff --git a/regress/mdoc/break/brokenbreaker.out_markdown b/regress/mdoc/break/brokenbreaker.out_markdown
new file mode 100644
index 00000000..ed5868d2
--- /dev/null
+++ b/regress/mdoc/break/brokenbreaker.out_markdown
@@ -0,0 +1,13 @@
+BREAK-BROKENBREAKER(1) - General Commands Manual
+
+# NAME
+
+**break-brokenbreaker** - a broken block breaking another block
+
+# DESCRIPTION
+
+(po
+&lt;ao pc)
+\[bo pc ac&gt; bc]
+
+OpenBSD - December 23, 2014
diff --git a/regress/mdoc/break/notopen.out_markdown b/regress/mdoc/break/notopen.out_markdown
new file mode 100644
index 00000000..61b8185d
--- /dev/null
+++ b/regress/mdoc/break/notopen.out_markdown
@@ -0,0 +1,14 @@
+BREAK-NOTOPEN(1) - General Commands Manual
+
+# NAME
+
+**break-notopen** - mismatching end macro inside two open blocks
+
+# DESCRIPTION
+
+&lt;ao
+\[bo pc bc]
+ac&gt;
+tail
+
+OpenBSD - August 20, 2016
diff --git a/regress/mdoc/break/twice.out_markdown b/regress/mdoc/break/twice.out_markdown
new file mode 100644
index 00000000..18bf1634
--- /dev/null
+++ b/regress/mdoc/break/twice.out_markdown
@@ -0,0 +1,35 @@
+BREAK-TWICE(1) - General Commands Manual
+
+# NAME
+
+**break-twice** - breaking the same block twice
+
+# DESCRIPTION
+
+Standard case, fully explicit:
+\[bo
+{bro
+&lt;ao brc} bc] ac&gt;
+
+Standard case, implicit broken block:
+\[bo
+{bro
+&lt;aq brc} bc] eol&gt;
+
+Two of the same kind, fully explicit:
+\[bo
+\[bo
+&lt;ao bc] bc] ac&gt;
+
+Two of the same kind, implicit broken block:
+\[bo
+\[bo
+&lt;aq bc] bc] eol&gt;
+
+Two implicit breakers:
+&lt;aq \[bq (po]&gt;
+pc)
+
+- it
+
+OpenBSD - February 16, 2017
diff --git a/regress/mdoc/break/two.out_markdown b/regress/mdoc/break/two.out_markdown
new file mode 100644
index 00000000..ab0aea2e
--- /dev/null
+++ b/regress/mdoc/break/two.out_markdown
@@ -0,0 +1,37 @@
+BREAK-TWO(1) - General Commands Manual
+
+# NAME
+
+**break-two** - the same block breaking two other blocks
+
+# DESCRIPTION
+
+Standard case, explicit:
+&lt;ao
+\[bo
+{bro ac&gt; brc}
+bc]
+
+Standard case, implicit:
+&lt;aq \[bo {bro eol&gt;}
+bc]
+
+Reverse closing, explicit:
+&lt;ao
+\[bo
+{bro ac&gt; bc] brc}
+
+Reverse closing, implicit:
+&lt;aq \[bo {bro eol&gt;] brc}
+
+Two of the same kind, explicit:
+&lt;ao
+\[bo
+\[bo ac&gt; bc]
+bc]
+
+Two of the same kind, implicit:
+&lt;aq \[bo \[bo eol&gt;]
+bc]
+
+OpenBSD - February 12, 2015