summaryrefslogtreecommitdiffstats
path: root/t/fmt/asciidoc
diff options
context:
space:
mode:
Diffstat (limited to 't/fmt/asciidoc')
-rw-r--r--t/fmt/asciidoc/Attributes.adoc36
-rw-r--r--t/fmt/asciidoc/Attributes.norm32
-rw-r--r--t/fmt/asciidoc/Attributes.po72
-rw-r--r--t/fmt/asciidoc/Attributes.pot67
-rw-r--r--t/fmt/asciidoc/Attributes.trans32
-rw-r--r--t/fmt/asciidoc/BlockId.adoc11
-rw-r--r--t/fmt/asciidoc/BlockId.norm10
-rw-r--r--t/fmt/asciidoc/BlockId.po52
-rw-r--r--t/fmt/asciidoc/BlockId.pot48
-rw-r--r--t/fmt/asciidoc/BlockId.trans10
-rw-r--r--t/fmt/asciidoc/BlockTitles.adoc14
-rw-r--r--t/fmt/asciidoc/BlockTitles.norm12
-rw-r--r--t/fmt/asciidoc/BlockTitles.po54
-rw-r--r--t/fmt/asciidoc/BlockTitles.pot52
-rw-r--r--t/fmt/asciidoc/BlockTitles.trans12
-rw-r--r--t/fmt/asciidoc/Callouts.adoc42
-rw-r--r--t/fmt/asciidoc/Callouts.norm42
-rw-r--r--t/fmt/asciidoc/Callouts.po119
-rw-r--r--t/fmt/asciidoc/Callouts.pot95
-rw-r--r--t/fmt/asciidoc/Callouts.trans42
-rw-r--r--t/fmt/asciidoc/CleanSpaces.adoc20
-rw-r--r--t/fmt/asciidoc/CleanSpaces.norm16
-rw-r--r--t/fmt/asciidoc/CleanSpaces.po61
-rw-r--r--t/fmt/asciidoc/CleanSpaces.pot56
-rw-r--r--t/fmt/asciidoc/CleanSpaces.trans16
-rw-r--r--t/fmt/asciidoc/Comments.adoc27
-rw-r--r--t/fmt/asciidoc/Comments.norm23
-rw-r--r--t/fmt/asciidoc/Comments.po82
-rw-r--r--t/fmt/asciidoc/Comments.pot75
-rw-r--r--t/fmt/asciidoc/Comments.trans23
-rw-r--r--t/fmt/asciidoc/DelimitedBlocks.adoc184
-rw-r--r--t/fmt/asciidoc/DelimitedBlocks.norm173
-rw-r--r--t/fmt/asciidoc/DelimitedBlocks.po341
-rw-r--r--t/fmt/asciidoc/DelimitedBlocks.pot305
-rw-r--r--t/fmt/asciidoc/DelimitedBlocks.trans173
-rw-r--r--t/fmt/asciidoc/Footnotes.adoc5
-rw-r--r--t/fmt/asciidoc/Footnotes.norm5
-rw-r--r--t/fmt/asciidoc/Footnotes.po28
-rw-r--r--t/fmt/asciidoc/Footnotes.pot28
-rw-r--r--t/fmt/asciidoc/Footnotes.trans5
-rw-r--r--t/fmt/asciidoc/IndexEntries.adoc18
-rw-r--r--t/fmt/asciidoc/IndexEntries.norm14
-rw-r--r--t/fmt/asciidoc/IndexEntries.po92
-rw-r--r--t/fmt/asciidoc/IndexEntries.pot93
-rw-r--r--t/fmt/asciidoc/IndexEntries.trans14
-rw-r--r--t/fmt/asciidoc/LineBreak.adoc37
-rw-r--r--t/fmt/asciidoc/LineBreak.norm34
-rw-r--r--t/fmt/asciidoc/LineBreak.po112
-rw-r--r--t/fmt/asciidoc/LineBreak.pot97
-rw-r--r--t/fmt/asciidoc/LineBreak.trans34
-rw-r--r--t/fmt/asciidoc/Lists.adoc252
-rw-r--r--t/fmt/asciidoc/Lists.norm230
-rw-r--r--t/fmt/asciidoc/Lists.norm.stderr1
-rw-r--r--t/fmt/asciidoc/Lists.po669
-rw-r--r--t/fmt/asciidoc/Lists.pot624
-rw-r--r--t/fmt/asciidoc/Lists.trans230
-rw-r--r--t/fmt/asciidoc/Lists.trans.stderr1
-rw-r--r--t/fmt/asciidoc/MacroIncludesHugo.adoc31
-rw-r--r--t/fmt/asciidoc/MacroIncludesHugo.norm31
-rw-r--r--t/fmt/asciidoc/MacroIncludesHugo.po119
-rw-r--r--t/fmt/asciidoc/MacroIncludesHugo.pot119
-rw-r--r--t/fmt/asciidoc/MacroIncludesHugo.trans31
-rw-r--r--t/fmt/asciidoc/NoImageTarget.adoc19
-rw-r--r--t/fmt/asciidoc/NoImageTarget.norm19
-rw-r--r--t/fmt/asciidoc/NoImageTarget.po49
-rw-r--r--t/fmt/asciidoc/NoImageTarget.pot49
-rw-r--r--t/fmt/asciidoc/NoImageTarget.trans19
-rw-r--r--t/fmt/asciidoc/Paragraphs.adoc69
-rw-r--r--t/fmt/asciidoc/Paragraphs.norm61
-rw-r--r--t/fmt/asciidoc/Paragraphs.po140
-rw-r--r--t/fmt/asciidoc/Paragraphs.pot134
-rw-r--r--t/fmt/asciidoc/Paragraphs.trans61
-rw-r--r--t/fmt/asciidoc/StrictDelimitedBlocks.adoc194
-rw-r--r--t/fmt/asciidoc/StrictDelimitedBlocks.norm183
-rw-r--r--t/fmt/asciidoc/StrictDelimitedBlocks.po352
-rw-r--r--t/fmt/asciidoc/StrictDelimitedBlocks.pot317
-rw-r--r--t/fmt/asciidoc/StrictDelimitedBlocks.trans183
-rw-r--r--t/fmt/asciidoc/StyleMacro.adoc59
-rw-r--r--t/fmt/asciidoc/StyleMacro.norm52
-rw-r--r--t/fmt/asciidoc/StyleMacro.po194
-rw-r--r--t/fmt/asciidoc/StyleMacro.pot178
-rw-r--r--t/fmt/asciidoc/StyleMacro.trans52
-rw-r--r--t/fmt/asciidoc/Tables.adoc78
-rw-r--r--t/fmt/asciidoc/Tables.norm78
-rw-r--r--t/fmt/asciidoc/Tables.po175
-rw-r--r--t/fmt/asciidoc/Tables.pot156
-rw-r--r--t/fmt/asciidoc/Tables.trans78
-rw-r--r--t/fmt/asciidoc/TablesCells.adoc161
-rw-r--r--t/fmt/asciidoc/TablesCells.norm161
-rw-r--r--t/fmt/asciidoc/TablesCells.norm.stderr1
-rw-r--r--t/fmt/asciidoc/TablesCells.po428
-rw-r--r--t/fmt/asciidoc/TablesCells.pot393
-rw-r--r--t/fmt/asciidoc/TablesCells.trans161
-rw-r--r--t/fmt/asciidoc/TablesCells.trans.stderr1
-rw-r--r--t/fmt/asciidoc/TablesImageText.adoc12
-rw-r--r--t/fmt/asciidoc/TablesImageText.norm12
-rw-r--r--t/fmt/asciidoc/TablesImageText.po63
-rw-r--r--t/fmt/asciidoc/TablesImageText.pot60
-rw-r--r--t/fmt/asciidoc/TablesImageText.trans12
-rw-r--r--t/fmt/asciidoc/Titles.adoc30
-rw-r--r--t/fmt/asciidoc/Titles.norm30
-rw-r--r--t/fmt/asciidoc/Titles.norm.stderr2
-rw-r--r--t/fmt/asciidoc/Titles.po89
-rw-r--r--t/fmt/asciidoc/Titles.pot89
-rw-r--r--t/fmt/asciidoc/Titles.trans30
-rw-r--r--t/fmt/asciidoc/Titles.trans.stderr2
-rw-r--r--t/fmt/asciidoc/YamlFrontMatter.adoc39
-rw-r--r--t/fmt/asciidoc/YamlFrontMatter.norm33
-rw-r--r--t/fmt/asciidoc/YamlFrontMatter.po129
-rw-r--r--t/fmt/asciidoc/YamlFrontMatter.pot126
-rw-r--r--t/fmt/asciidoc/YamlFrontMatter.trans33
-rw-r--r--t/fmt/asciidoc/YamlFrontMatter_KeysPaths.adoc35
-rw-r--r--t/fmt/asciidoc/YamlFrontMatter_KeysPaths.norm34
-rw-r--r--t/fmt/asciidoc/YamlFrontMatter_KeysPaths.po51
-rw-r--r--t/fmt/asciidoc/YamlFrontMatter_KeysPaths.pot51
-rw-r--r--t/fmt/asciidoc/YamlFrontMatter_KeysPaths.trans34
-rw-r--r--t/fmt/asciidoc/YamlFrontMatter_Option.adoc35
-rw-r--r--t/fmt/asciidoc/YamlFrontMatter_Option.norm34
-rw-r--r--t/fmt/asciidoc/YamlFrontMatter_Option.po57
-rw-r--r--t/fmt/asciidoc/YamlFrontMatter_Option.pot57
-rw-r--r--t/fmt/asciidoc/YamlFrontMatter_Option.trans34
121 files changed, 10851 insertions, 0 deletions
diff --git a/t/fmt/asciidoc/Attributes.adoc b/t/fmt/asciidoc/Attributes.adoc
new file mode 100644
index 0000000..3a6cac3
--- /dev/null
+++ b/t/fmt/asciidoc/Attributes.adoc
@@ -0,0 +1,36 @@
+//po4a: entry Author
+//po4a: entry Email
+//po4a: entry Date
+//po4a: entry Revision
+//po4a: entry Key words
+//po4a: entry Revision history
+Test Attributes
+===============
+:Author: Stuart Rackham
+:Email: srackham@gmail.com
+:Date: April 23, 2004
+:Revision: 5.1.1
+:Key words: linux, ralink, debian, wireless
+:Revision history:
+//po4a: entry soft wrap 1
+//po4a: entry soft wrap 2
+//po4a: entry hard wrap
+:soft wrap 1: a first part \
+concatenated with a second one \
+followed by a third one
+:soft wrap 2: an old style part +
+concatenated with a second one +
+followed by a third one
+:hard wrap: a first line + \
+concatenated with a second one + \
+followed by a third one
+
+:soft wrap 1 unregistered: a first part \
+concatenated with a second one \
+followed by a third one unregistered
+:soft wrap 2 unregistered: an old style part +
+concatenated with a second one +
+followed by a third one unregistered
+:hard wrap unregistered: a first line + \
+concatenated with a second one + \
+followed by a third one unregistered
diff --git a/t/fmt/asciidoc/Attributes.norm b/t/fmt/asciidoc/Attributes.norm
new file mode 100644
index 0000000..3e5a51d
--- /dev/null
+++ b/t/fmt/asciidoc/Attributes.norm
@@ -0,0 +1,32 @@
+//po4a: entry Author
+//po4a: entry Email
+//po4a: entry Date
+//po4a: entry Revision
+//po4a: entry Key words
+//po4a: entry Revision history
+Test Attributes
+===============
+:Author: Stuart Rackham
+:Email: srackham@gmail.com
+:Date: April 23, 2004
+:Revision: 5.1.1
+:Key words: linux, ralink, debian, wireless
+:Revision history:
+//po4a: entry soft wrap 1
+//po4a: entry soft wrap 2
+//po4a: entry hard wrap
+:soft wrap 1: a first part concatenated with a second one followed by a third one
+:soft wrap 2: an old style part concatenated with a second one followed by a third one
+:hard wrap: a first line + \
+concatenated with a second one + \
+followed by a third one
+
+:soft wrap 1 unregistered: a first part \
+concatenated with a second one \
+followed by a third one unregistered
+:soft wrap 2 unregistered: an old style part +
+concatenated with a second one +
+followed by a third one unregistered
+:hard wrap unregistered: a first line + \
+concatenated with a second one + \
+followed by a third one unregistered
diff --git a/t/fmt/asciidoc/Attributes.po b/t/fmt/asciidoc/Attributes.po
new file mode 100644
index 0000000..9d1bd03
--- /dev/null
+++ b/t/fmt/asciidoc/Attributes.po
@@ -0,0 +1,72 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2012-10-09 01:30+0300\n"
+"PO-Revision-Date: 2023-05-19 16:54+0200\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@LI.ORG>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: TEXT/PLAIN; CHARSET=UTF-8\n"
+"Content-Transfer-Encoding: 8BIT\n"
+
+#. type: Title =
+#: Attributes.adoc:8
+#, no-wrap
+msgid "Test Attributes"
+msgstr "TEST ATTRIBUTES"
+
+#. type: Attribute :Author:
+#: Attributes.adoc:9
+msgid "Stuart Rackham"
+msgstr "STUART RACKHAM"
+
+#. type: Attribute :Email:
+#: Attributes.adoc:10
+msgid "srackham@gmail.com"
+msgstr "SRACKHAM@GMAIL.COM"
+
+#. type: Attribute :Date:
+#: Attributes.adoc:11
+msgid "April 23, 2004"
+msgstr "APRIL 23, 2004"
+
+#. type: Attribute :Revision:
+#: Attributes.adoc:12
+msgid "5.1.1"
+msgstr "5.1.1"
+
+#. type: Attribute :Key words:
+#: Attributes.adoc:13
+msgid "linux, ralink, debian, wireless"
+msgstr "LINUX, RALINK, DEBIAN, WIRELESS"
+
+#. type: Attribute :soft wrap 1:
+#: Attributes.adoc:18
+msgid "a first part concatenated with a second one followed by a third one"
+msgstr "A FIRST PART CONCATENATED WITH A SECOND ONE FOLLOWED BY A THIRD ONE"
+
+#. type: Attribute :soft wrap 2:
+#: Attributes.adoc:21
+msgid ""
+"an old style part concatenated with a second one followed by a third one"
+msgstr ""
+"AN OLD STYLE PART CONCATENATED WITH A SECOND ONE FOLLOWED BY A THIRD ONE"
+
+#. type: Attribute :hard wrap:
+#: Attributes.adoc:24
+#, no-wrap
+msgid ""
+"a first line\n"
+"concatenated with a second one\n"
+"followed by a third one"
+msgstr ""
+"A FIRST LINE\n"
+"CONCATENATED WITH A SECOND ONE\n"
+"FOLLOWED BY A THIRD ONE"
diff --git a/t/fmt/asciidoc/Attributes.pot b/t/fmt/asciidoc/Attributes.pot
new file mode 100644
index 0000000..2939193
--- /dev/null
+++ b/t/fmt/asciidoc/Attributes.pot
@@ -0,0 +1,67 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2012-10-09 01:30+0300\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Title =
+#: Attributes.adoc:8
+#, no-wrap
+msgid "Test Attributes"
+msgstr ""
+
+#. type: Attribute :Author:
+#: Attributes.adoc:9
+msgid "Stuart Rackham"
+msgstr ""
+
+#. type: Attribute :Email:
+#: Attributes.adoc:10
+msgid "srackham@gmail.com"
+msgstr ""
+
+#. type: Attribute :Date:
+#: Attributes.adoc:11
+msgid "April 23, 2004"
+msgstr ""
+
+#. type: Attribute :Revision:
+#: Attributes.adoc:12
+msgid "5.1.1"
+msgstr ""
+
+#. type: Attribute :Key words:
+#: Attributes.adoc:13
+msgid "linux, ralink, debian, wireless"
+msgstr ""
+
+#. type: Attribute :soft wrap 1:
+#: Attributes.adoc:18
+msgid "a first part concatenated with a second one followed by a third one"
+msgstr ""
+
+#. type: Attribute :soft wrap 2:
+#: Attributes.adoc:21
+msgid "an old style part concatenated with a second one followed by a third one"
+msgstr ""
+
+#. type: Attribute :hard wrap:
+#: Attributes.adoc:24
+#, no-wrap
+msgid ""
+"a first line\n"
+"concatenated with a second one\n"
+"followed by a third one"
+msgstr ""
diff --git a/t/fmt/asciidoc/Attributes.trans b/t/fmt/asciidoc/Attributes.trans
new file mode 100644
index 0000000..99fab33
--- /dev/null
+++ b/t/fmt/asciidoc/Attributes.trans
@@ -0,0 +1,32 @@
+//po4a: entry Author
+//po4a: entry Email
+//po4a: entry Date
+//po4a: entry Revision
+//po4a: entry Key words
+//po4a: entry Revision history
+TEST ATTRIBUTES
+===============
+:Author: STUART RACKHAM
+:Email: SRACKHAM@GMAIL.COM
+:Date: APRIL 23, 2004
+:Revision: 5.1.1
+:Key words: LINUX, RALINK, DEBIAN, WIRELESS
+:Revision history:
+//po4a: entry soft wrap 1
+//po4a: entry soft wrap 2
+//po4a: entry hard wrap
+:soft wrap 1: A FIRST PART CONCATENATED WITH A SECOND ONE FOLLOWED BY A THIRD ONE
+:soft wrap 2: AN OLD STYLE PART CONCATENATED WITH A SECOND ONE FOLLOWED BY A THIRD ONE
+:hard wrap: A FIRST LINE + \
+CONCATENATED WITH A SECOND ONE + \
+FOLLOWED BY A THIRD ONE
+
+:soft wrap 1 unregistered: a first part \
+concatenated with a second one \
+followed by a third one unregistered
+:soft wrap 2 unregistered: an old style part +
+concatenated with a second one +
+followed by a third one unregistered
+:hard wrap unregistered: a first line + \
+concatenated with a second one + \
+followed by a third one unregistered
diff --git a/t/fmt/asciidoc/BlockId.adoc b/t/fmt/asciidoc/BlockId.adoc
new file mode 100644
index 0000000..302e9cc
--- /dev/null
+++ b/t/fmt/asciidoc/BlockId.adoc
@@ -0,0 +1,11 @@
+Test BlockId Element
+====================
+
+[[lorem-ipsum]]
+Some paragraph text. Some paragraph text. Some paragraph text.
+Some paragraph text. Some paragraph text. Some paragraph text.
+
+[[ipsum-quia,Second Paragraph]]
+Reference to <<lorem-ipsum, Lorem Ipsum>>.
+
+[[ipsum]] Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor: [[dolor]]
diff --git a/t/fmt/asciidoc/BlockId.norm b/t/fmt/asciidoc/BlockId.norm
new file mode 100644
index 0000000..733ef33
--- /dev/null
+++ b/t/fmt/asciidoc/BlockId.norm
@@ -0,0 +1,10 @@
+Test BlockId Element
+====================
+
+[[lorem-ipsum]]
+Some paragraph text. Some paragraph text. Some paragraph text. Some paragraph text. Some paragraph text. Some paragraph text.
+
+[[ipsum-quia,Second Paragraph]]
+Reference to <<lorem-ipsum, Lorem Ipsum>>.
+
+[[ipsum]] Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor: [[dolor]]
diff --git a/t/fmt/asciidoc/BlockId.po b/t/fmt/asciidoc/BlockId.po
new file mode 100644
index 0000000..a0056d2
--- /dev/null
+++ b/t/fmt/asciidoc/BlockId.po
@@ -0,0 +1,52 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2020-04-27 23:05+0200\n"
+"PO-Revision-Date: 2008-10-12 22:03+0200\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Title =
+#: BlockId.adoc:2
+#, no-wrap
+msgid "Test BlockId Element"
+msgstr "TEST BLOCKID ELEMENT"
+
+#. type: Plain text
+#: BlockId.adoc:7
+msgid ""
+"Some paragraph text. Some paragraph text. Some paragraph text. Some "
+"paragraph text. Some paragraph text. Some paragraph text."
+msgstr ""
+"SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME "
+"PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT."
+
+#. type: Plain text
+#: BlockId.adoc:8
+#, no-wrap
+msgid "Second Paragraph"
+msgstr "SECOND PARAGRAPH"
+
+#. type: Plain text
+#: BlockId.adoc:10
+msgid "Reference to <<lorem-ipsum, Lorem Ipsum>>."
+msgstr "REFERENCE TO <<lorem-ipsum, LOREM IPSUM>>."
+
+#. type: Plain text
+#: BlockId.adoc:11
+msgid ""
+"[[ipsum]] Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean "
+"commodo ligula eget dolor: [[dolor]]"
+msgstr ""
+"[[ipsum]] LOREM IPSUM DOLOR SIT AMET, CONSECTETUER ADIPISCING ELIT. AENEAN "
+"COMMODO LIGULA EGET DOLOR: [[dolor]]"
diff --git a/t/fmt/asciidoc/BlockId.pot b/t/fmt/asciidoc/BlockId.pot
new file mode 100644
index 0000000..754f914
--- /dev/null
+++ b/t/fmt/asciidoc/BlockId.pot
@@ -0,0 +1,48 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2020-04-27 23:05+0200\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Title =
+#: BlockId.adoc:2
+#, no-wrap
+msgid "Test BlockId Element"
+msgstr ""
+
+#. type: Plain text
+#: BlockId.adoc:7
+msgid ""
+"Some paragraph text. Some paragraph text. Some paragraph text. Some "
+"paragraph text. Some paragraph text. Some paragraph text."
+msgstr ""
+
+#. type: Plain text
+#: BlockId.adoc:8
+#, no-wrap
+msgid "Second Paragraph"
+msgstr ""
+
+#. type: Plain text
+#: BlockId.adoc:10
+msgid "Reference to <<lorem-ipsum, Lorem Ipsum>>."
+msgstr ""
+
+#. type: Plain text
+#: BlockId.adoc:11
+msgid ""
+"[[ipsum]] Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean "
+"commodo ligula eget dolor: [[dolor]]"
+msgstr ""
diff --git a/t/fmt/asciidoc/BlockId.trans b/t/fmt/asciidoc/BlockId.trans
new file mode 100644
index 0000000..c1a6595
--- /dev/null
+++ b/t/fmt/asciidoc/BlockId.trans
@@ -0,0 +1,10 @@
+TEST BLOCKID ELEMENT
+====================
+
+[[lorem-ipsum]]
+SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT.
+
+[[ipsum-quia,SECOND PARAGRAPH]]
+REFERENCE TO <<lorem-ipsum, LOREM IPSUM>>.
+
+[[ipsum]] LOREM IPSUM DOLOR SIT AMET, CONSECTETUER ADIPISCING ELIT. AENEAN COMMODO LIGULA EGET DOLOR: [[dolor]]
diff --git a/t/fmt/asciidoc/BlockTitles.adoc b/t/fmt/asciidoc/BlockTitles.adoc
new file mode 100644
index 0000000..7194d0a
--- /dev/null
+++ b/t/fmt/asciidoc/BlockTitles.adoc
@@ -0,0 +1,14 @@
+Test BlockTitles
+================
+
+.Notes
+- Note 1.
+- Note 2.
+
+
+.Lorem ipsum
+Some paragraph text. Some paragraph text. Some paragraph text.
+Some paragraph text. Some paragraph text. Some paragraph text.
+
+Some paragraph text. Some paragraph text. Some paragraph text.
+Some paragraph text. Some paragraph text. Some paragraph text.
diff --git a/t/fmt/asciidoc/BlockTitles.norm b/t/fmt/asciidoc/BlockTitles.norm
new file mode 100644
index 0000000..6e7f803
--- /dev/null
+++ b/t/fmt/asciidoc/BlockTitles.norm
@@ -0,0 +1,12 @@
+Test BlockTitles
+================
+
+.Notes
+- Note 1.
+- Note 2.
+
+
+.Lorem ipsum
+Some paragraph text. Some paragraph text. Some paragraph text. Some paragraph text. Some paragraph text. Some paragraph text.
+
+Some paragraph text. Some paragraph text. Some paragraph text. Some paragraph text. Some paragraph text. Some paragraph text.
diff --git a/t/fmt/asciidoc/BlockTitles.po b/t/fmt/asciidoc/BlockTitles.po
new file mode 100644
index 0000000..3418fe6
--- /dev/null
+++ b/t/fmt/asciidoc/BlockTitles.po
@@ -0,0 +1,54 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2020-04-27 22:58+0200\n"
+"PO-Revision-Date: 2008-10-12 22:03+0200\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Title =
+#: BlockTitles.adoc:2
+#, no-wrap
+msgid "Test BlockTitles"
+msgstr "TEST BLOCKTITLES"
+
+#. type: Block title
+#: BlockTitles.adoc:4
+#, no-wrap
+msgid "Notes"
+msgstr "NOTES"
+
+#. type: Plain text
+#: BlockTitles.adoc:6
+msgid "Note 1."
+msgstr "NOTE 1."
+
+#. type: Plain text
+#: BlockTitles.adoc:7
+msgid "Note 2."
+msgstr "NOTE 2."
+
+#. type: Block title
+#: BlockTitles.adoc:9
+#, no-wrap
+msgid "Lorem ipsum"
+msgstr "LOREM IPSUM"
+
+#. type: Plain text
+#: BlockTitles.adoc:12 BlockTitles.adoc:14
+msgid ""
+"Some paragraph text. Some paragraph text. Some paragraph text. Some "
+"paragraph text. Some paragraph text. Some paragraph text."
+msgstr ""
+"SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME "
+"PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT."
diff --git a/t/fmt/asciidoc/BlockTitles.pot b/t/fmt/asciidoc/BlockTitles.pot
new file mode 100644
index 0000000..e151605
--- /dev/null
+++ b/t/fmt/asciidoc/BlockTitles.pot
@@ -0,0 +1,52 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2020-04-27 22:58+0200\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Title =
+#: BlockTitles.adoc:2
+#, no-wrap
+msgid "Test BlockTitles"
+msgstr ""
+
+#. type: Block title
+#: BlockTitles.adoc:4
+#, no-wrap
+msgid "Notes"
+msgstr ""
+
+#. type: Plain text
+#: BlockTitles.adoc:6
+msgid "Note 1."
+msgstr ""
+
+#. type: Plain text
+#: BlockTitles.adoc:7
+msgid "Note 2."
+msgstr ""
+
+#. type: Block title
+#: BlockTitles.adoc:9
+#, no-wrap
+msgid "Lorem ipsum"
+msgstr ""
+
+#. type: Plain text
+#: BlockTitles.adoc:12 BlockTitles.adoc:14
+msgid ""
+"Some paragraph text. Some paragraph text. Some paragraph text. Some "
+"paragraph text. Some paragraph text. Some paragraph text."
+msgstr ""
diff --git a/t/fmt/asciidoc/BlockTitles.trans b/t/fmt/asciidoc/BlockTitles.trans
new file mode 100644
index 0000000..54012a3
--- /dev/null
+++ b/t/fmt/asciidoc/BlockTitles.trans
@@ -0,0 +1,12 @@
+TEST BLOCKTITLES
+================
+
+.NOTES
+- NOTE 1.
+- NOTE 2.
+
+
+.LOREM IPSUM
+SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT.
+
+SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT.
diff --git a/t/fmt/asciidoc/Callouts.adoc b/t/fmt/asciidoc/Callouts.adoc
new file mode 100644
index 0000000..6545ea4
--- /dev/null
+++ b/t/fmt/asciidoc/Callouts.adoc
@@ -0,0 +1,42 @@
+Test Callouts
+=============
+
+.MS-DOS directory listing
+.....................................................
+10/17/97 9:04 <DIR> bin
+10/16/97 14:11 <DIR> DOS <1>
+10/16/97 14:40 <DIR> Program Files
+10/16/97 14:46 <DIR> TEMP
+10/17/97 9:04 <DIR> tmp
+10/16/97 14:37 <DIR> WINNT
+10/16/97 14:25 119 AUTOEXEC.BAT <2>
+ 2/13/94 6:21 54,619 COMMAND.COM <2>
+10/16/97 14:25 115 CONFIG.SYS <2>
+11/16/97 17:17 61,865,984 pagefile.sys
+ 2/13/94 6:21 9,349 WINA20.386 <3>
+.....................................................
+
+<1> This directory holds MS-DOS.
+<2> System startup code for DOS.
+<3> Some sort of Windows 3.1 hack.
+
+
+[source,shell]
+....
+# Generate the FreeBSD website
+#
+# Copyright (c) 2020-2021, The FreeBSD Documentation Project <.>
+#
+# Targets intended for use on the command line <.>
+#
+# all (default) - generate the releases.toml and compile all the website
+# run - serves the built website for local browsing
+#
+# The run target uses hugo's built-in webserver to make the built website
+# available for local browsing. The website should have been built prior
+# to attempting to use the `run` target. By default, hugo will start its
+# webserver on port 1313. <.>
+....
+<.> Callout 1.
+<.> Callout 2.
+<.> Callout 3.
diff --git a/t/fmt/asciidoc/Callouts.norm b/t/fmt/asciidoc/Callouts.norm
new file mode 100644
index 0000000..9bf1864
--- /dev/null
+++ b/t/fmt/asciidoc/Callouts.norm
@@ -0,0 +1,42 @@
+Test Callouts
+=============
+
+.MS-DOS directory listing
+.....................................................
+10/17/97 9:04 <DIR> bin
+10/16/97 14:11 <DIR> DOS <1>
+10/16/97 14:40 <DIR> Program Files
+10/16/97 14:46 <DIR> TEMP
+10/17/97 9:04 <DIR> tmp
+10/16/97 14:37 <DIR> WINNT
+10/16/97 14:25 119 AUTOEXEC.BAT <2>
+ 2/13/94 6:21 54,619 COMMAND.COM <2>
+10/16/97 14:25 115 CONFIG.SYS <2>
+11/16/97 17:17 61,865,984 pagefile.sys
+ 2/13/94 6:21 9,349 WINA20.386 <3>
+.....................................................
+
+<1> This directory holds MS-DOS.
+<2> System startup code for DOS.
+<3> Some sort of Windows 3.1 hack.
+
+
+[source, shell]
+....
+# Generate the FreeBSD website
+#
+# Copyright (c) 2020-2021, The FreeBSD Documentation Project <.>
+#
+# Targets intended for use on the command line <.>
+#
+# all (default) - generate the releases.toml and compile all the website
+# run - serves the built website for local browsing
+#
+# The run target uses hugo's built-in webserver to make the built website
+# available for local browsing. The website should have been built prior
+# to attempting to use the `run` target. By default, hugo will start its
+# webserver on port 1313. <.>
+....
+<.> Callout 1.
+<.> Callout 2.
+<.> Callout 3.
diff --git a/t/fmt/asciidoc/Callouts.po b/t/fmt/asciidoc/Callouts.po
new file mode 100644
index 0000000..39b695b
--- /dev/null
+++ b/t/fmt/asciidoc/Callouts.po
@@ -0,0 +1,119 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2008-10-12 19:36+0300\n"
+"PO-Revision-Date: 2008-10-12 22:52+0200\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@LI.ORG>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: TEXT/PLAIN; CHARSET=UTF-8\n"
+"Content-Transfer-Encoding: 8BIT\n"
+
+#. type: Title =
+#: Callouts.adoc:2
+#, no-wrap
+msgid "Test Callouts"
+msgstr "TEST CALLOUTS"
+
+#. type: Block title
+#: Callouts.adoc:4
+#, no-wrap
+msgid "MS-DOS directory listing"
+msgstr "MS-DOS DIRECTORY LISTING"
+
+#. type: delimited block .
+#: Callouts.adoc:17
+#, no-wrap
+msgid ""
+"10/17/97 9:04 <DIR> bin\n"
+"10/16/97 14:11 <DIR> DOS <1>\n"
+"10/16/97 14:40 <DIR> Program Files\n"
+"10/16/97 14:46 <DIR> TEMP\n"
+"10/17/97 9:04 <DIR> tmp\n"
+"10/16/97 14:37 <DIR> WINNT\n"
+"10/16/97 14:25 119 AUTOEXEC.BAT <2>\n"
+" 2/13/94 6:21 54,619 COMMAND.COM <2>\n"
+"10/16/97 14:25 115 CONFIG.SYS <2>\n"
+"11/16/97 17:17 61,865,984 pagefile.sys\n"
+" 2/13/94 6:21 9,349 WINA20.386 <3>\n"
+msgstr ""
+"10/17/97 9:04 <DIR> BIN\n"
+"10/16/97 14:11 <DIR> DOS <1>\n"
+"10/16/97 14:40 <DIR> PROGRAM FILES\n"
+"10/16/97 14:46 <DIR> TEMP\n"
+"10/17/97 9:04 <DIR> TMP\n"
+"10/16/97 14:37 <DIR> WINNT\n"
+"10/16/97 14:25 119 AUTOEXEC.BAT <2>\n"
+" 2/13/94 6:21 54,619 COMMAND.COM <2>\n"
+"10/16/97 14:25 115 CONFIG.SYS <2>\n"
+"11/16/97 17:17 61,865,984 PAGEFILE.SYS\n"
+" 2/13/94 6:21 9,349 WINA20.386 <3>\n"
+
+#. type: Plain text
+#: Callouts.adoc:20
+msgid "This directory holds MS-DOS."
+msgstr "THIS DIRECTORY HOLDS MS-DOS."
+
+#. type: Plain text
+#: Callouts.adoc:21
+msgid "System startup code for DOS."
+msgstr "SYSTEM STARTUP CODE FOR DOS."
+
+#. type: Plain text
+#: Callouts.adoc:22
+msgid "Some sort of Windows 3.1 hack."
+msgstr "SOME SORT OF WINDOWS 3.1 HACK."
+
+#. type: delimited block .
+#: Callouts.adoc:39
+#, no-wrap
+msgid ""
+"# Generate the FreeBSD website\n"
+"#\n"
+"# Copyright (c) 2020-2021, The FreeBSD Documentation Project <.>\n"
+"#\n"
+"# Targets intended for use on the command line <.>\n"
+"#\n"
+"# all (default)\t-\tgenerate the releases.toml and compile all the website\n"
+"# run\t-\t\t\tserves the built website for local browsing\n"
+"#\n"
+"# The run target uses hugo's built-in webserver to make the built website\n"
+"# available for local browsing. The website should have been built prior\n"
+"# to attempting to use the `run` target. By default, hugo will start its\n"
+"# webserver on port 1313. <.>\n"
+msgstr ""
+"# GENERATE THE FREEBSD WEBSITE\n"
+"#\n"
+"# COPYRIGHT (C) 2020-2021, THE FREEBSD DOCUMENTATION PROJECT <.>\n"
+"#\n"
+"# TARGETS INTENDED FOR USE ON THE COMMAND LINE <.>\n"
+"#\n"
+"# ALL (DEFAULT)\t-\tGENERATE THE RELEASES.TOML AND COMPILE ALL THE WEBSITE\n"
+"# RUN\t-\t\t\tSERVES THE BUILT WEBSITE FOR LOCAL BROWSING\n"
+"#\n"
+"# THE RUN TARGET USES HUGO'S BUILT-IN WEBSERVER TO MAKE THE BUILT WEBSITE\n"
+"# AVAILABLE FOR LOCAL BROWSING. THE WEBSITE SHOULD HAVE BEEN BUILT PRIOR\n"
+"# TO ATTEMPTING TO USE THE `RUN` TARGET. BY DEFAULT, HUGO WILL START ITS\n"
+"# WEBSERVER ON PORT 1313. <.>\n"
+
+#. type: Plain text
+#: Callouts.adoc:41
+msgid "Callout 1."
+msgstr "CALLOUT 1."
+
+#. type: Plain text
+#: Callouts.adoc:42
+msgid "Callout 2."
+msgstr "CALLOUT 2."
+
+#. type: Plain text
+#: Callouts.adoc:42
+msgid "Callout 3."
+msgstr "CALLOUT 3."
diff --git a/t/fmt/asciidoc/Callouts.pot b/t/fmt/asciidoc/Callouts.pot
new file mode 100644
index 0000000..bf6539e
--- /dev/null
+++ b/t/fmt/asciidoc/Callouts.pot
@@ -0,0 +1,95 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2008-10-12 19:36+0300\n"
+"PO-Revision-Date: 2008-10-12 22:52+0200\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Title =
+#: Callouts.adoc:2
+#, no-wrap
+msgid "Test Callouts"
+msgstr ""
+
+#. type: Block title
+#: Callouts.adoc:4
+#, no-wrap
+msgid "MS-DOS directory listing"
+msgstr ""
+
+#. type: delimited block .
+#: Callouts.adoc:17
+#, no-wrap
+msgid ""
+"10/17/97 9:04 <DIR> bin\n"
+"10/16/97 14:11 <DIR> DOS <1>\n"
+"10/16/97 14:40 <DIR> Program Files\n"
+"10/16/97 14:46 <DIR> TEMP\n"
+"10/17/97 9:04 <DIR> tmp\n"
+"10/16/97 14:37 <DIR> WINNT\n"
+"10/16/97 14:25 119 AUTOEXEC.BAT <2>\n"
+" 2/13/94 6:21 54,619 COMMAND.COM <2>\n"
+"10/16/97 14:25 115 CONFIG.SYS <2>\n"
+"11/16/97 17:17 61,865,984 pagefile.sys\n"
+" 2/13/94 6:21 9,349 WINA20.386 <3>\n"
+msgstr ""
+
+#. type: Plain text
+#: Callouts.adoc:20
+msgid "This directory holds MS-DOS."
+msgstr ""
+
+#. type: Plain text
+#: Callouts.adoc:21
+msgid "System startup code for DOS."
+msgstr ""
+
+#. type: Plain text
+#: Callouts.adoc:22
+msgid "Some sort of Windows 3.1 hack."
+msgstr ""
+
+#. type: delimited block .
+#: Callouts.adoc:39
+#, no-wrap
+msgid ""
+"# Generate the FreeBSD website\n"
+"#\n"
+"# Copyright (c) 2020-2021, The FreeBSD Documentation Project <.>\n"
+"#\n"
+"# Targets intended for use on the command line <.>\n"
+"#\n"
+"# all (default)\t-\tgenerate the releases.toml and compile all the website\n"
+"# run\t-\t\t\tserves the built website for local browsing\n"
+"#\n"
+"# The run target uses hugo's built-in webserver to make the built website\n"
+"# available for local browsing. The website should have been built prior\n"
+"# to attempting to use the `run` target. By default, hugo will start its\n"
+"# webserver on port 1313. <.>\n"
+msgstr ""
+
+#. type: Plain text
+#: Callouts.adoc:41
+msgid "Callout 1."
+msgstr ""
+
+#. type: Plain text
+#: Callouts.adoc:42
+msgid "Callout 2."
+msgstr ""
+
+#. type: Plain text
+#: Callouts.adoc:42
+msgid "Callout 3."
+msgstr ""
diff --git a/t/fmt/asciidoc/Callouts.trans b/t/fmt/asciidoc/Callouts.trans
new file mode 100644
index 0000000..57d382c
--- /dev/null
+++ b/t/fmt/asciidoc/Callouts.trans
@@ -0,0 +1,42 @@
+TEST CALLOUTS
+=============
+
+.MS-DOS DIRECTORY LISTING
+.....................................................
+10/17/97 9:04 <DIR> BIN
+10/16/97 14:11 <DIR> DOS <1>
+10/16/97 14:40 <DIR> PROGRAM FILES
+10/16/97 14:46 <DIR> TEMP
+10/17/97 9:04 <DIR> TMP
+10/16/97 14:37 <DIR> WINNT
+10/16/97 14:25 119 AUTOEXEC.BAT <2>
+ 2/13/94 6:21 54,619 COMMAND.COM <2>
+10/16/97 14:25 115 CONFIG.SYS <2>
+11/16/97 17:17 61,865,984 PAGEFILE.SYS
+ 2/13/94 6:21 9,349 WINA20.386 <3>
+.....................................................
+
+<1> THIS DIRECTORY HOLDS MS-DOS.
+<2> SYSTEM STARTUP CODE FOR DOS.
+<3> SOME SORT OF WINDOWS 3.1 HACK.
+
+
+[source, shell]
+....
+# GENERATE THE FREEBSD WEBSITE
+#
+# COPYRIGHT (C) 2020-2021, THE FREEBSD DOCUMENTATION PROJECT <.>
+#
+# TARGETS INTENDED FOR USE ON THE COMMAND LINE <.>
+#
+# ALL (DEFAULT) - GENERATE THE RELEASES.TOML AND COMPILE ALL THE WEBSITE
+# RUN - SERVES THE BUILT WEBSITE FOR LOCAL BROWSING
+#
+# THE RUN TARGET USES HUGO'S BUILT-IN WEBSERVER TO MAKE THE BUILT WEBSITE
+# AVAILABLE FOR LOCAL BROWSING. THE WEBSITE SHOULD HAVE BEEN BUILT PRIOR
+# TO ATTEMPTING TO USE THE `RUN` TARGET. BY DEFAULT, HUGO WILL START ITS
+# WEBSERVER ON PORT 1313. <.>
+....
+<.> CALLOUT 1.
+<.> CALLOUT 2.
+<.> CALLOUT 3.
diff --git a/t/fmt/asciidoc/CleanSpaces.adoc b/t/fmt/asciidoc/CleanSpaces.adoc
new file mode 100644
index 0000000..99283bf
--- /dev/null
+++ b/t/fmt/asciidoc/CleanSpaces.adoc
@@ -0,0 +1,20 @@
+Test Clean Spaces
+=================
+
+**************************
+This is a Sidebar block.
+This is a Sidebar block.
+
+ This is a Sidebar block.
+ This is a Sidebar block.
+
+ - This is a Sidebar block.
+ This is a Sidebar block.
+**************************
+
+<pathspec>...::
+ Files to add content from. Fileglobs (e.g. `*.c`) can
+ be given to add all matching files.
+
+Some paragraph text. Some paragraph text. Some paragraph text.
+Some paragraph text. Some paragraph text. Some paragraph text.
diff --git a/t/fmt/asciidoc/CleanSpaces.norm b/t/fmt/asciidoc/CleanSpaces.norm
new file mode 100644
index 0000000..c8a25f3
--- /dev/null
+++ b/t/fmt/asciidoc/CleanSpaces.norm
@@ -0,0 +1,16 @@
+Test Clean Spaces
+=================
+
+**************************
+This is a Sidebar block. This is a Sidebar block.
+
+ This is a Sidebar block.
+ This is a Sidebar block.
+
+ - This is a Sidebar block. This is a Sidebar block.
+**************************
+
+<pathspec>...::
+ Files to add content from. Fileglobs (e.g. `*.c`) can be given to add all matching files.
+
+Some paragraph text. Some paragraph text. Some paragraph text. Some paragraph text. Some paragraph text. Some paragraph text.
diff --git a/t/fmt/asciidoc/CleanSpaces.po b/t/fmt/asciidoc/CleanSpaces.po
new file mode 100644
index 0000000..b7e163e
--- /dev/null
+++ b/t/fmt/asciidoc/CleanSpaces.po
@@ -0,0 +1,61 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2024-02-28 21:46+0100\n"
+"PO-Revision-Date: 2024-02-28 21:47+0100\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Title =
+#: CleanSpaces.adoc:2
+#, no-wrap
+msgid "Test Clean Spaces"
+msgstr "TEST CLEAN SPACES"
+
+#. type: delimited block *
+#: CleanSpaces.adoc:7 CleanSpaces.adoc:13
+msgid "This is a Sidebar block. This is a Sidebar block."
+msgstr "THIS IS A SIDEBAR BLOCK. THIS IS A SIDEBAR BLOCK."
+
+#. type: delimited block *
+#: CleanSpaces.adoc:10
+#, no-wrap
+msgid ""
+" This is a Sidebar block.\n"
+" This is a Sidebar block.\n"
+msgstr ""
+" THIS IS A SIDEBAR BLOCK.\n"
+" THIS IS A SIDEBAR BLOCK.\n"
+
+#. type: Labeled list
+#: CleanSpaces.adoc:15
+#, no-wrap
+msgid "<pathspec>..."
+msgstr "<PATHSPEC>..."
+
+#. type: Plain text
+#: CleanSpaces.adoc:18
+msgid ""
+"Files to add content from. Fileglobs (e.g. `*.c`) can be given to add all "
+"matching files."
+msgstr ""
+"FILES TO ADD CONTENT FROM. FILEGLOBS (E.G. `*.C`) CAN BE GIVEN TO ADD ALL "
+"MATCHING FILES."
+
+#. type: Plain text
+#: CleanSpaces.adoc:20
+msgid ""
+"Some paragraph text. Some paragraph text. Some paragraph text. Some "
+"paragraph text. Some paragraph text. Some paragraph text."
+msgstr ""
+"SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME "
+"PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT."
diff --git a/t/fmt/asciidoc/CleanSpaces.pot b/t/fmt/asciidoc/CleanSpaces.pot
new file mode 100644
index 0000000..2646fec
--- /dev/null
+++ b/t/fmt/asciidoc/CleanSpaces.pot
@@ -0,0 +1,56 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2024-02-28 21:46+0100\n"
+"PO-Revision-Date: 2024-02-28 21:48+0100\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Title =
+#: CleanSpaces.adoc:2
+#, no-wrap
+msgid "Test Clean Spaces"
+msgstr ""
+
+#. type: delimited block *
+#: CleanSpaces.adoc:7 CleanSpaces.adoc:13
+msgid "This is a Sidebar block. This is a Sidebar block."
+msgstr ""
+
+#. type: delimited block *
+#: CleanSpaces.adoc:10
+#, no-wrap
+msgid ""
+" This is a Sidebar block.\n"
+" This is a Sidebar block.\n"
+msgstr ""
+
+#. type: Labeled list
+#: CleanSpaces.adoc:15
+#, no-wrap
+msgid "<pathspec>..."
+msgstr ""
+
+#. type: Plain text
+#: CleanSpaces.adoc:18
+msgid ""
+"Files to add content from. Fileglobs (e.g. `*.c`) can be given to add all "
+"matching files."
+msgstr ""
+
+#. type: Plain text
+#: CleanSpaces.adoc:20
+msgid ""
+"Some paragraph text. Some paragraph text. Some paragraph text. Some "
+"paragraph text. Some paragraph text. Some paragraph text."
+msgstr ""
diff --git a/t/fmt/asciidoc/CleanSpaces.trans b/t/fmt/asciidoc/CleanSpaces.trans
new file mode 100644
index 0000000..0068748
--- /dev/null
+++ b/t/fmt/asciidoc/CleanSpaces.trans
@@ -0,0 +1,16 @@
+TEST CLEAN SPACES
+=================
+
+**************************
+THIS IS A SIDEBAR BLOCK. THIS IS A SIDEBAR BLOCK.
+
+ THIS IS A SIDEBAR BLOCK.
+ THIS IS A SIDEBAR BLOCK.
+
+ - THIS IS A SIDEBAR BLOCK. THIS IS A SIDEBAR BLOCK.
+**************************
+
+<PATHSPEC>...::
+ FILES TO ADD CONTENT FROM. FILEGLOBS (E.G. `*.C`) CAN BE GIVEN TO ADD ALL MATCHING FILES.
+
+SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT.
diff --git a/t/fmt/asciidoc/Comments.adoc b/t/fmt/asciidoc/Comments.adoc
new file mode 100644
index 0000000..df2be1d
--- /dev/null
+++ b/t/fmt/asciidoc/Comments.adoc
@@ -0,0 +1,27 @@
+// This comment apppears
+// on two lines
+Test BlockTitles
+================
+
+.Notes
+- Note 1.
+// This commment is about item 1!
+- Note 2.
+// This commment is about item 2!
+
+
+// A comment before BlockTitle
+.Lorem ipsum
+Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
+tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
+// And another comment within the paragraph
+quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
+consequat.
+
+/////////////////////////////////////////////////////////////
+With a
+block comment
+/////////////////////////////////////////////////////////////
+Duis aute irure dolor in reprehenderit in voluptate velit esse cillum
+dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
+proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
diff --git a/t/fmt/asciidoc/Comments.norm b/t/fmt/asciidoc/Comments.norm
new file mode 100644
index 0000000..691fed1
--- /dev/null
+++ b/t/fmt/asciidoc/Comments.norm
@@ -0,0 +1,23 @@
+// This comment apppears
+// on two lines
+Test BlockTitles
+================
+
+.Notes
+- Note 1.
+// This commment is about item 1!
+- Note 2.
+// This commment is about item 2!
+
+
+// A comment before BlockTitle
+.Lorem ipsum
+Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
+// And another comment within the paragraph
+quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
+
+/////////////////////////////////////////////////////////////
+With a
+block comment
+/////////////////////////////////////////////////////////////
+Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
diff --git a/t/fmt/asciidoc/Comments.po b/t/fmt/asciidoc/Comments.po
new file mode 100644
index 0000000..47627c7
--- /dev/null
+++ b/t/fmt/asciidoc/Comments.po
@@ -0,0 +1,82 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2012-10-04 00:29+0300\n"
+"PO-Revision-Date: 2021-09-14 22:37+0200\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@LI.ORG>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: TEXT/PLAIN; CHARSET=UTF-8\n"
+"Content-Transfer-Encoding: 8BIT\n"
+
+#. This comment apppears
+#. on two lines
+#. type: Title =
+#: Comments.adoc:4
+#, no-wrap
+msgid "Test BlockTitles"
+msgstr "TEST BLOCKTITLES"
+
+#. type: Block title
+#: Comments.adoc:6
+#, no-wrap
+msgid "Notes"
+msgstr "NOTES"
+
+#. This commment is about item 1!
+#. type: Plain text
+#: Comments.adoc:8
+msgid "Note 1."
+msgstr "NOTE 1."
+
+#. This commment is about item 2!
+#. type: Plain text
+#: Comments.adoc:10
+msgid "Note 2."
+msgstr "NOTE 2."
+
+#. A comment before BlockTitle
+#. type: Block title
+#: Comments.adoc:14
+#, no-wrap
+msgid "Lorem ipsum"
+msgstr "LOREM IPSUM"
+
+#. And another comment within the paragraph
+#. type: Plain text
+#: Comments.adoc:17
+msgid ""
+"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod "
+"tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,"
+msgstr ""
+"LOREM IPSUM DOLOR SIT AMET, CONSECTETUR ADIPISICING ELIT, SED DO EIUSMOD "
+"TEMPOR INCIDIDUNT UT LABORE ET DOLORE MAGNA ALIQUA. UT ENIM AD MINIM VENIAM,"
+
+#. type: Plain text
+#: Comments.adoc:20
+msgid ""
+"quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo "
+"consequat."
+msgstr ""
+"QUIS NOSTRUD EXERCITATION ULLAMCO LABORIS NISI UT ALIQUIP EX EA COMMODO "
+"CONSEQUAT."
+
+#. With a
+#. block comment
+#. type: Plain text
+#: Comments.adoc:27
+msgid ""
+"Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore "
+"eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, "
+"sunt in culpa qui officia deserunt mollit anim id est laborum."
+msgstr ""
+"DUIS AUTE IRURE DOLOR IN REPREHENDERIT IN VOLUPTATE VELIT ESSE CILLUM DOLORE "
+"EU FUGIAT NULLA PARIATUR. EXCEPTEUR SINT OCCAECAT CUPIDATAT NON PROIDENT, "
+"SUNT IN CULPA QUI OFFICIA DESERUNT MOLLIT ANIM ID EST LABORUM."
diff --git a/t/fmt/asciidoc/Comments.pot b/t/fmt/asciidoc/Comments.pot
new file mode 100644
index 0000000..706aa66
--- /dev/null
+++ b/t/fmt/asciidoc/Comments.pot
@@ -0,0 +1,75 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2012-10-04 00:29+0300\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. This comment apppears
+#. on two lines
+#. type: Title =
+#: Comments.adoc:4
+#, no-wrap
+msgid "Test BlockTitles"
+msgstr ""
+
+#. type: Block title
+#: Comments.adoc:6
+#, no-wrap
+msgid "Notes"
+msgstr ""
+
+#. This commment is about item 1!
+#. type: Plain text
+#: Comments.adoc:8
+msgid "Note 1."
+msgstr ""
+
+#. This commment is about item 2!
+#. type: Plain text
+#: Comments.adoc:10
+msgid "Note 2."
+msgstr ""
+
+#. A comment before BlockTitle
+#. type: Block title
+#: Comments.adoc:14
+#, no-wrap
+msgid "Lorem ipsum"
+msgstr ""
+
+#. And another comment within the paragraph
+#. type: Plain text
+#: Comments.adoc:17
+msgid ""
+"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod "
+"tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,"
+msgstr ""
+
+#. type: Plain text
+#: Comments.adoc:20
+msgid ""
+"quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo "
+"consequat."
+msgstr ""
+
+#. With a
+#. block comment
+#. type: Plain text
+#: Comments.adoc:27
+msgid ""
+"Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore "
+"eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, "
+"sunt in culpa qui officia deserunt mollit anim id est laborum."
+msgstr ""
diff --git a/t/fmt/asciidoc/Comments.trans b/t/fmt/asciidoc/Comments.trans
new file mode 100644
index 0000000..e5aad78
--- /dev/null
+++ b/t/fmt/asciidoc/Comments.trans
@@ -0,0 +1,23 @@
+// This comment apppears
+// on two lines
+TEST BLOCKTITLES
+================
+
+.NOTES
+- NOTE 1.
+// This commment is about item 1!
+- NOTE 2.
+// This commment is about item 2!
+
+
+// A comment before BlockTitle
+.LOREM IPSUM
+LOREM IPSUM DOLOR SIT AMET, CONSECTETUR ADIPISICING ELIT, SED DO EIUSMOD TEMPOR INCIDIDUNT UT LABORE ET DOLORE MAGNA ALIQUA. UT ENIM AD MINIM VENIAM,
+// And another comment within the paragraph
+QUIS NOSTRUD EXERCITATION ULLAMCO LABORIS NISI UT ALIQUIP EX EA COMMODO CONSEQUAT.
+
+/////////////////////////////////////////////////////////////
+With a
+block comment
+/////////////////////////////////////////////////////////////
+DUIS AUTE IRURE DOLOR IN REPREHENDERIT IN VOLUPTATE VELIT ESSE CILLUM DOLORE EU FUGIAT NULLA PARIATUR. EXCEPTEUR SINT OCCAECAT CUPIDATAT NON PROIDENT, SUNT IN CULPA QUI OFFICIA DESERUNT MOLLIT ANIM ID EST LABORUM.
diff --git a/t/fmt/asciidoc/DelimitedBlocks.adoc b/t/fmt/asciidoc/DelimitedBlocks.adoc
new file mode 100644
index 0000000..697c2d7
--- /dev/null
+++ b/t/fmt/asciidoc/DelimitedBlocks.adoc
@@ -0,0 +1,184 @@
+//po4a: style[,caption]
+Test Delimited Blocks
+=====================
+
+Predefined Delimited Blocks
+---------------------------
+
+CommentBlock
+
+//////////////////////////
+This is a Comment block.
+This is a Comment block.
+
+ This is a Comment block.
+ This is a Comment block.
+
+ - This is a Comment block.
+ This is a Comment block.
+//////////////////////////
+
+PassthroughBlock
+
+++++++++++++++++++++++++++
+This is a Passthrough block.
+This is a Passthrough block.
+
+ This is a Passthrough block.
+ This is a Passthrough block.
+
+ - This is a Passthrough block.
+ This is a Passthrough block.
+++++++++++++++++++++++++++
+
+ListingBlock
+
+--------------------------
+This is a Listing block.
+This is a Listing block.
+
+ This is a Listing block.
+ This is a Listing block.
+
+ - This is a Listing block.
+ This is a Listing block.
+--------------------------
+
+LiteralBlock
+
+..........................
+This is a Literal block.
+This is a Literal block.
+
+ This is a Literal block.
+ This is a Literal block.
+
+ - This is a Literal block.
+ This is a Literal block.
+..........................
+
+SidebarBlock
+
+**************************
+This is a Sidebar block.
+This is a Sidebar block.
+
+ This is a Sidebar block.
+ This is a Sidebar block.
+
+ - This is a Sidebar block.
+ This is a Sidebar block.
+**************************
+
+QuoteBlock
+
+__________________________
+This is a Quote block.
+This is a Quote block.
+
+ This is a Quote block.
+ This is a Quote block.
+
+ - This is a Quote block.
+ This is a Quote block.
+__________________________
+
+
+[quote, Bertrand Russell, The World of Mathematics (1956)]
+____________________________________________________________________
+A good notation has subtlety and suggestiveness which at times makes
+it almost seem like a live teacher.
+____________________________________________________________________
+
+[verse, William Blake, from Auguries of Innocence]
+__________________________________________________
+To see a world in a grain of sand,
+And a heaven in a wild flower,
+Hold infinity in the palm of your hand,
+And eternity in an hour.
+__________________________________________________
+
+ExampleBlock
+
+==========================
+This is a Example block.
+This is a Example block.
+
+ This is a Example block.
+ This is a Example block.
+
+ - This is a Example block.
+ This is a Example block.
+==========================
+
+.An example
+=====================================================================
+Qui in magna commodo, est labitur dolorum an. Est ne magna primis
+adolescens.
+=====================================================================
+
+[caption="Example 1: "]
+.An example with a custom caption
+=====================================================================
+Qui in magna commodo, est labitur dolorum an. Est ne magna primis
+adolescens.
+=====================================================================
+
+[NOTE]
+.A NOTE block
+=====================================================================
+Qui in magna commodo, est labitur dolorum an. Est ne magna primis
+adolescens.
+
+. Fusce euismod commodo velit.
+. Vivamus fringilla mi eu lacus.
+ .. Fusce euismod commodo velit.
+ .. Vivamus fringilla mi eu lacus.
+. Donec eget arcu bibendum
+ nunc consequat lobortis.
+=====================================================================
+
+Filter blocks
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~
+This is a Filter block.
+This is a Filter block.
+
+ This is a Filter block.
+ This is a Filter block.
+
+ - This is a Filter block.
+ This is a Filter block.
+~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+
+
+//////////////////////////
+test
+
+--------------------------
+Listing inside Comment
+--------------------------
+
+end of test
+//////////////////////////
+
+++++++++++++++++++++++++++
+test
+
+--------------------------
+Listing inside Passthrough
+--------------------------
+
+end of test
+++++++++++++++++++++++++++
+
+--------------------------
+test
+
+__________________________
+QuoteBlock inside Listing
+__________________________
+
+end of test
+--------------------------
diff --git a/t/fmt/asciidoc/DelimitedBlocks.norm b/t/fmt/asciidoc/DelimitedBlocks.norm
new file mode 100644
index 0000000..d3e8de8
--- /dev/null
+++ b/t/fmt/asciidoc/DelimitedBlocks.norm
@@ -0,0 +1,173 @@
+//po4a: style[,caption]
+Test Delimited Blocks
+=====================
+
+Predefined Delimited Blocks
+---------------------------
+
+CommentBlock
+
+//////////////////////////
+This is a Comment block.
+This is a Comment block.
+
+ This is a Comment block.
+ This is a Comment block.
+
+ - This is a Comment block.
+ This is a Comment block.
+//////////////////////////
+
+PassthroughBlock
+
+++++++++++++++++++++++++++
+This is a Passthrough block.
+This is a Passthrough block.
+
+ This is a Passthrough block.
+ This is a Passthrough block.
+
+ - This is a Passthrough block.
+ This is a Passthrough block.
+++++++++++++++++++++++++++
+
+ListingBlock
+
+--------------------------
+This is a Listing block.
+This is a Listing block.
+
+ This is a Listing block.
+ This is a Listing block.
+
+ - This is a Listing block.
+ This is a Listing block.
+--------------------------
+
+LiteralBlock
+
+..........................
+This is a Literal block.
+This is a Literal block.
+
+ This is a Literal block.
+ This is a Literal block.
+
+ - This is a Literal block.
+ This is a Literal block.
+..........................
+
+SidebarBlock
+
+**************************
+This is a Sidebar block. This is a Sidebar block.
+
+ This is a Sidebar block.
+ This is a Sidebar block.
+
+ - This is a Sidebar block. This is a Sidebar block.
+**************************
+
+QuoteBlock
+
+__________________________
+This is a Quote block. This is a Quote block.
+
+ This is a Quote block.
+ This is a Quote block.
+
+ - This is a Quote block. This is a Quote block.
+__________________________
+
+
+[quote, "Bertrand Russell", "The World of Mathematics (1956)"]
+____________________________________________________________________
+A good notation has subtlety and suggestiveness which at times makes it almost seem like a live teacher.
+____________________________________________________________________
+
+[verse, "William Blake", "from Auguries of Innocence"]
+__________________________________________________
+To see a world in a grain of sand,
+And a heaven in a wild flower,
+Hold infinity in the palm of your hand,
+And eternity in an hour.
+__________________________________________________
+
+ExampleBlock
+
+==========================
+This is a Example block. This is a Example block.
+
+ This is a Example block.
+ This is a Example block.
+
+ - This is a Example block. This is a Example block.
+==========================
+
+.An example
+=====================================================================
+Qui in magna commodo, est labitur dolorum an. Est ne magna primis adolescens.
+=====================================================================
+
+[caption="Example 1: "]
+.An example with a custom caption
+=====================================================================
+Qui in magna commodo, est labitur dolorum an. Est ne magna primis adolescens.
+=====================================================================
+
+[NOTE]
+.A NOTE block
+=====================================================================
+Qui in magna commodo, est labitur dolorum an. Est ne magna primis adolescens.
+
+. Fusce euismod commodo velit.
+. Vivamus fringilla mi eu lacus.
+ .. Fusce euismod commodo velit.
+ .. Vivamus fringilla mi eu lacus.
+. Donec eget arcu bibendum nunc consequat lobortis.
+=====================================================================
+
+Filter blocks
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~
+This is a Filter block.
+This is a Filter block.
+
+ This is a Filter block.
+ This is a Filter block.
+
+ - This is a Filter block.
+ This is a Filter block.
+~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+
+
+//////////////////////////
+test
+
+--------------------------
+Listing inside Comment
+--------------------------
+
+end of test
+//////////////////////////
+
+++++++++++++++++++++++++++
+test
+
+--------------------------
+Listing inside Passthrough
+--------------------------
+
+end of test
+++++++++++++++++++++++++++
+
+--------------------------
+test
+
+__________________________
+QuoteBlock inside Listing
+__________________________
+
+end of test
+--------------------------
diff --git a/t/fmt/asciidoc/DelimitedBlocks.po b/t/fmt/asciidoc/DelimitedBlocks.po
new file mode 100644
index 0000000..203bd37
--- /dev/null
+++ b/t/fmt/asciidoc/DelimitedBlocks.po
@@ -0,0 +1,341 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2012-10-09 09:04+0300\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@LI.ORG>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: TEXT/PLAIN; CHARSET=UTF-8\n"
+"Content-Transfer-Encoding: 8BIT\n"
+
+#. type: Title =
+#: DelimitedBlocks.adoc:3
+#, no-wrap
+msgid "Test Delimited Blocks"
+msgstr "TEST DELIMITED BLOCKS"
+
+#. type: Title -
+#: DelimitedBlocks.adoc:6
+#, no-wrap
+msgid "Predefined Delimited Blocks"
+msgstr "PREDEFINED DELIMITED BLOCKS"
+
+#. type: Plain text
+#: DelimitedBlocks.adoc:9
+msgid "CommentBlock"
+msgstr "COMMENTBLOCK"
+
+#
+#
+#. This is a Comment block.
+#. This is a Comment block.
+#. This is a Comment block.
+#. This is a Comment block.
+#. - This is a Comment block.
+#. This is a Comment block.
+#. type: Plain text
+#: DelimitedBlocks.adoc:22
+msgid "PassthroughBlock"
+msgstr "PASSTHROUGHBLOCK"
+
+#. type: delimited block +
+#: DelimitedBlocks.adoc:26
+#, no-wrap
+msgid ""
+"This is a Passthrough block.\n"
+"This is a Passthrough block.\n"
+msgstr ""
+"THIS IS A PASSTHROUGH BLOCK.\n"
+"THIS IS A PASSTHROUGH BLOCK.\n"
+
+#. type: delimited block +
+#: DelimitedBlocks.adoc:29
+#, no-wrap
+msgid ""
+" This is a Passthrough block.\n"
+" This is a Passthrough block.\n"
+msgstr ""
+" THIS IS A PASSTHROUGH BLOCK.\n"
+" THIS IS A PASSTHROUGH BLOCK.\n"
+
+#. type: delimited block +
+#: DelimitedBlocks.adoc:32
+#, no-wrap
+msgid ""
+" - This is a Passthrough block.\n"
+" This is a Passthrough block.\n"
+msgstr ""
+" - THIS IS A PASSTHROUGH BLOCK.\n"
+" THIS IS A PASSTHROUGH BLOCK.\n"
+
+#. type: Plain text
+#: DelimitedBlocks.adoc:35
+msgid "ListingBlock"
+msgstr "LISTINGBLOCK"
+
+#. type: delimited block -
+#: DelimitedBlocks.adoc:39
+#, no-wrap
+msgid ""
+"This is a Listing block.\n"
+"This is a Listing block.\n"
+msgstr ""
+"THIS IS A LISTING BLOCK.\n"
+"THIS IS A LISTING BLOCK.\n"
+
+#. type: delimited block -
+#: DelimitedBlocks.adoc:42
+#, no-wrap
+msgid ""
+" This is a Listing block.\n"
+" This is a Listing block.\n"
+msgstr ""
+" THIS IS A LISTING BLOCK.\n"
+" THIS IS A LISTING BLOCK.\n"
+
+#. type: delimited block -
+#: DelimitedBlocks.adoc:45
+#, no-wrap
+msgid ""
+" - This is a Listing block.\n"
+" This is a Listing block.\n"
+msgstr ""
+" - THIS IS A LISTING BLOCK.\n"
+" THIS IS A LISTING BLOCK.\n"
+
+#. type: Plain text
+#: DelimitedBlocks.adoc:48
+msgid "LiteralBlock"
+msgstr "LITERALBLOCK"
+
+#. type: delimited block .
+#: DelimitedBlocks.adoc:52
+#, no-wrap
+msgid ""
+"This is a Literal block.\n"
+"This is a Literal block.\n"
+msgstr ""
+"THIS IS A LITERAL BLOCK.\n"
+"THIS IS A LITERAL BLOCK.\n"
+
+#. type: delimited block .
+#: DelimitedBlocks.adoc:55
+#, no-wrap
+msgid ""
+" This is a Literal block.\n"
+" This is a Literal block.\n"
+msgstr ""
+" THIS IS A LITERAL BLOCK.\n"
+" THIS IS A LITERAL BLOCK.\n"
+
+#. type: delimited block .
+#: DelimitedBlocks.adoc:58
+#, no-wrap
+msgid ""
+" - This is a Literal block.\n"
+" This is a Literal block.\n"
+msgstr ""
+" - THIS IS A LITERAL BLOCK.\n"
+" THIS IS A LITERAL BLOCK.\n"
+
+#. type: Plain text
+#: DelimitedBlocks.adoc:61
+msgid "SidebarBlock"
+msgstr "SIDEBARBLOCK"
+
+#. type: delimited block *
+#: DelimitedBlocks.adoc:65 DelimitedBlocks.adoc:71
+msgid "This is a Sidebar block. This is a Sidebar block."
+msgstr "THIS IS A SIDEBAR BLOCK. THIS IS A SIDEBAR BLOCK."
+
+#. type: delimited block *
+#: DelimitedBlocks.adoc:68
+#, no-wrap
+msgid ""
+" This is a Sidebar block.\n"
+" This is a Sidebar block.\n"
+msgstr ""
+" THIS IS A SIDEBAR BLOCK.\n"
+" THIS IS A SIDEBAR BLOCK.\n"
+
+#. type: Plain text
+#: DelimitedBlocks.adoc:74
+msgid "QuoteBlock"
+msgstr "QUOTEBLOCK"
+
+#. type: delimited block _
+#: DelimitedBlocks.adoc:78 DelimitedBlocks.adoc:84
+msgid "This is a Quote block. This is a Quote block."
+msgstr "THIS IS A QUOTE BLOCK. THIS IS A QUOTE BLOCK."
+
+#. type: delimited block _
+#: DelimitedBlocks.adoc:81
+#, no-wrap
+msgid ""
+" This is a Quote block.\n"
+" This is a Quote block.\n"
+msgstr ""
+" THIS IS A QUOTE BLOCK.\n"
+" THIS IS A QUOTE BLOCK.\n"
+
+#. type: Positional ($2) AttributeList argument for style 'quote'
+#: DelimitedBlocks.adoc:87
+#, no-wrap
+msgid "Bertrand Russell"
+msgstr "BERTRAND RUSSELL"
+
+#. type: Positional ($3) AttributeList argument for style 'quote'
+#: DelimitedBlocks.adoc:87
+#, no-wrap
+msgid "The World of Mathematics (1956)"
+msgstr "THE WORLD OF MATHEMATICS (1956)"
+
+#. type: delimited block _
+#: DelimitedBlocks.adoc:91
+msgid ""
+"A good notation has subtlety and suggestiveness which at times makes it "
+"almost seem like a live teacher."
+msgstr ""
+"A GOOD NOTATION HAS SUBTLETY AND SUGGESTIVENESS WHICH AT TIMES MAKES IT "
+"ALMOST SEEM LIKE A LIVE TEACHER."
+
+#. type: Positional ($2) AttributeList argument for style 'verse'
+#: DelimitedBlocks.adoc:93
+#, no-wrap
+msgid "William Blake"
+msgstr "WILLIAM BLAKE"
+
+#. type: Positional ($3) AttributeList argument for style 'verse'
+#: DelimitedBlocks.adoc:93
+#, no-wrap
+msgid "from Auguries of Innocence"
+msgstr "FROM AUGURIES OF INNOCENCE"
+
+#. type: delimited block _
+#: DelimitedBlocks.adoc:99
+#, no-wrap
+msgid ""
+"To see a world in a grain of sand,\n"
+"And a heaven in a wild flower,\n"
+"Hold infinity in the palm of your hand,\n"
+"And eternity in an hour.\n"
+msgstr ""
+"TO SEE A WORLD IN A GRAIN OF SAND,\n"
+"AND A HEAVEN IN A WILD FLOWER,\n"
+"HOLD INFINITY IN THE PALM OF YOUR HAND,\n"
+"AND ETERNITY IN AN HOUR.\n"
+
+#. type: Plain text
+#: DelimitedBlocks.adoc:102
+msgid "ExampleBlock"
+msgstr "EXAMPLEBLOCK"
+
+#. type: delimited block =
+#: DelimitedBlocks.adoc:106 DelimitedBlocks.adoc:112
+msgid "This is a Example block. This is a Example block."
+msgstr "THIS IS A EXAMPLE BLOCK. THIS IS A EXAMPLE BLOCK."
+
+#. type: delimited block =
+#: DelimitedBlocks.adoc:109
+#, no-wrap
+msgid ""
+" This is a Example block.\n"
+" This is a Example block.\n"
+msgstr ""
+" THIS IS A EXAMPLE BLOCK.\n"
+" THIS IS A EXAMPLE BLOCK.\n"
+
+#. type: Block title
+#: DelimitedBlocks.adoc:114
+#, no-wrap
+msgid "An example"
+msgstr "AN EXAMPLE"
+
+#. type: delimited block =
+#: DelimitedBlocks.adoc:118 DelimitedBlocks.adoc:125 DelimitedBlocks.adoc:132
+msgid ""
+"Qui in magna commodo, est labitur dolorum an. Est ne magna primis adolescens."
+msgstr ""
+"QUI IN MAGNA COMMODO, EST LABITUR DOLORUM AN. EST NE MAGNA PRIMIS ADOLESCENS."
+
+#. type: Named 'caption' AttributeList argument for style 'caption'
+#: DelimitedBlocks.adoc:120
+#, no-wrap
+msgid "Example 1: "
+msgstr "EXAMPLE 1: "
+
+#. type: Block title
+#: DelimitedBlocks.adoc:121
+#, no-wrap
+msgid "An example with a custom caption"
+msgstr "AN EXAMPLE WITH A CUSTOM CAPTION"
+
+#. type: Block title
+#: DelimitedBlocks.adoc:128
+#, no-wrap
+msgid "A NOTE block"
+msgstr "A NOTE BLOCK"
+
+#. type: delimited block =
+#: DelimitedBlocks.adoc:134 DelimitedBlocks.adoc:136
+msgid "Fusce euismod commodo velit."
+msgstr "FUSCE EUISMOD COMMODO VELIT."
+
+#. type: delimited block =
+#: DelimitedBlocks.adoc:135 DelimitedBlocks.adoc:137
+msgid "Vivamus fringilla mi eu lacus."
+msgstr "VIVAMUS FRINGILLA MI EU LACUS."
+
+#. type: delimited block =
+#: DelimitedBlocks.adoc:139
+msgid "Donec eget arcu bibendum nunc consequat lobortis."
+msgstr "DONEC EGET ARCU BIBENDUM NUNC CONSEQUAT LOBORTIS."
+
+#. type: Plain text
+#: DelimitedBlocks.adoc:142
+msgid "Filter blocks"
+msgstr "FILTER BLOCKS"
+
+#. type: delimited block -
+#: DelimitedBlocks.adoc:168 DelimitedBlocks.adoc:178
+#, no-wrap
+msgid "test\n"
+msgstr "TEST\n"
+
+#. type: delimited block +
+#: DelimitedBlocks.adoc:172
+#, no-wrap
+msgid ""
+"--------------------------\n"
+"Listing inside Passthrough\n"
+"--------------------------\n"
+msgstr ""
+"--------------------------\n"
+"LISTING INSIDE PASSTHROUGH\n"
+"--------------------------\n"
+
+#. type: delimited block -
+#: DelimitedBlocks.adoc:174 DelimitedBlocks.adoc:184
+#, no-wrap
+msgid "end of test\n"
+msgstr "END OF TEST\n"
+
+#. type: delimited block -
+#: DelimitedBlocks.adoc:182
+#, no-wrap
+msgid ""
+"__________________________\n"
+"QuoteBlock inside Listing\n"
+"__________________________\n"
+msgstr ""
+"__________________________\n"
+"QUOTEBLOCK INSIDE LISTING\n"
+"__________________________\n"
diff --git a/t/fmt/asciidoc/DelimitedBlocks.pot b/t/fmt/asciidoc/DelimitedBlocks.pot
new file mode 100644
index 0000000..2efe635
--- /dev/null
+++ b/t/fmt/asciidoc/DelimitedBlocks.pot
@@ -0,0 +1,305 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2012-10-09 09:04+0300\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Title =
+#: DelimitedBlocks.adoc:3
+#, no-wrap
+msgid "Test Delimited Blocks"
+msgstr ""
+
+#. type: Title -
+#: DelimitedBlocks.adoc:6
+#, no-wrap
+msgid "Predefined Delimited Blocks"
+msgstr ""
+
+#. type: Plain text
+#: DelimitedBlocks.adoc:9
+msgid "CommentBlock"
+msgstr ""
+
+#. This is a Comment block.
+#. This is a Comment block.
+#
+#. This is a Comment block.
+#. This is a Comment block.
+#
+#. - This is a Comment block.
+#. This is a Comment block.
+#. type: Plain text
+#: DelimitedBlocks.adoc:22
+msgid "PassthroughBlock"
+msgstr ""
+
+#. type: delimited block +
+#: DelimitedBlocks.adoc:26
+#, no-wrap
+msgid ""
+"This is a Passthrough block.\n"
+"This is a Passthrough block.\n"
+msgstr ""
+
+#. type: delimited block +
+#: DelimitedBlocks.adoc:29
+#, no-wrap
+msgid ""
+" This is a Passthrough block.\n"
+" This is a Passthrough block.\n"
+msgstr ""
+
+#. type: delimited block +
+#: DelimitedBlocks.adoc:32
+#, no-wrap
+msgid ""
+" - This is a Passthrough block.\n"
+" This is a Passthrough block.\n"
+msgstr ""
+
+#. type: Plain text
+#: DelimitedBlocks.adoc:35
+msgid "ListingBlock"
+msgstr ""
+
+#. type: delimited block -
+#: DelimitedBlocks.adoc:39
+#, no-wrap
+msgid ""
+"This is a Listing block.\n"
+"This is a Listing block.\n"
+msgstr ""
+
+#. type: delimited block -
+#: DelimitedBlocks.adoc:42
+#, no-wrap
+msgid ""
+" This is a Listing block.\n"
+" This is a Listing block.\n"
+msgstr ""
+
+#. type: delimited block -
+#: DelimitedBlocks.adoc:45
+#, no-wrap
+msgid ""
+" - This is a Listing block.\n"
+" This is a Listing block.\n"
+msgstr ""
+
+#. type: Plain text
+#: DelimitedBlocks.adoc:48
+msgid "LiteralBlock"
+msgstr ""
+
+#. type: delimited block .
+#: DelimitedBlocks.adoc:52
+#, no-wrap
+msgid ""
+"This is a Literal block.\n"
+"This is a Literal block.\n"
+msgstr ""
+
+#. type: delimited block .
+#: DelimitedBlocks.adoc:55
+#, no-wrap
+msgid ""
+" This is a Literal block.\n"
+" This is a Literal block.\n"
+msgstr ""
+
+#. type: delimited block .
+#: DelimitedBlocks.adoc:58
+#, no-wrap
+msgid ""
+" - This is a Literal block.\n"
+" This is a Literal block.\n"
+msgstr ""
+
+#. type: Plain text
+#: DelimitedBlocks.adoc:61
+msgid "SidebarBlock"
+msgstr ""
+
+#. type: delimited block *
+#: DelimitedBlocks.adoc:65 DelimitedBlocks.adoc:71
+msgid "This is a Sidebar block. This is a Sidebar block."
+msgstr ""
+
+#. type: delimited block *
+#: DelimitedBlocks.adoc:68
+#, no-wrap
+msgid ""
+" This is a Sidebar block.\n"
+" This is a Sidebar block.\n"
+msgstr ""
+
+#. type: Plain text
+#: DelimitedBlocks.adoc:74
+msgid "QuoteBlock"
+msgstr ""
+
+#. type: delimited block _
+#: DelimitedBlocks.adoc:78 DelimitedBlocks.adoc:84
+msgid "This is a Quote block. This is a Quote block."
+msgstr ""
+
+#. type: delimited block _
+#: DelimitedBlocks.adoc:81
+#, no-wrap
+msgid ""
+" This is a Quote block.\n"
+" This is a Quote block.\n"
+msgstr ""
+
+#. type: Positional ($2) AttributeList argument for style 'quote'
+#: DelimitedBlocks.adoc:87
+#, no-wrap
+msgid "Bertrand Russell"
+msgstr ""
+
+#. type: Positional ($3) AttributeList argument for style 'quote'
+#: DelimitedBlocks.adoc:87
+#, no-wrap
+msgid "The World of Mathematics (1956)"
+msgstr ""
+
+#. type: delimited block _
+#: DelimitedBlocks.adoc:91
+msgid ""
+"A good notation has subtlety and suggestiveness which at times makes it "
+"almost seem like a live teacher."
+msgstr ""
+
+#. type: Positional ($2) AttributeList argument for style 'verse'
+#: DelimitedBlocks.adoc:93
+#, no-wrap
+msgid "William Blake"
+msgstr ""
+
+#. type: Positional ($3) AttributeList argument for style 'verse'
+#: DelimitedBlocks.adoc:93
+#, no-wrap
+msgid "from Auguries of Innocence"
+msgstr ""
+
+#. type: delimited block _
+#: DelimitedBlocks.adoc:99
+#, no-wrap
+msgid ""
+"To see a world in a grain of sand,\n"
+"And a heaven in a wild flower,\n"
+"Hold infinity in the palm of your hand,\n"
+"And eternity in an hour.\n"
+msgstr ""
+
+#. type: Plain text
+#: DelimitedBlocks.adoc:102
+msgid "ExampleBlock"
+msgstr ""
+
+#. type: delimited block =
+#: DelimitedBlocks.adoc:106 DelimitedBlocks.adoc:112
+msgid "This is a Example block. This is a Example block."
+msgstr ""
+
+#. type: delimited block =
+#: DelimitedBlocks.adoc:109
+#, no-wrap
+msgid ""
+" This is a Example block.\n"
+" This is a Example block.\n"
+msgstr ""
+
+#. type: Block title
+#: DelimitedBlocks.adoc:114
+#, no-wrap
+msgid "An example"
+msgstr ""
+
+#. type: delimited block =
+#: DelimitedBlocks.adoc:118 DelimitedBlocks.adoc:125 DelimitedBlocks.adoc:132
+msgid ""
+"Qui in magna commodo, est labitur dolorum an. Est ne magna primis "
+"adolescens."
+msgstr ""
+
+#. type: Named 'caption' AttributeList argument for style 'caption'
+#: DelimitedBlocks.adoc:120
+#, no-wrap
+msgid "Example 1: "
+msgstr ""
+
+#. type: Block title
+#: DelimitedBlocks.adoc:121
+#, no-wrap
+msgid "An example with a custom caption"
+msgstr ""
+
+#. type: Block title
+#: DelimitedBlocks.adoc:128
+#, no-wrap
+msgid "A NOTE block"
+msgstr ""
+
+#. type: delimited block =
+#: DelimitedBlocks.adoc:134 DelimitedBlocks.adoc:136
+msgid "Fusce euismod commodo velit."
+msgstr ""
+
+#. type: delimited block =
+#: DelimitedBlocks.adoc:135 DelimitedBlocks.adoc:137
+msgid "Vivamus fringilla mi eu lacus."
+msgstr ""
+
+#. type: delimited block =
+#: DelimitedBlocks.adoc:139
+msgid "Donec eget arcu bibendum nunc consequat lobortis."
+msgstr ""
+
+#. type: Plain text
+#: DelimitedBlocks.adoc:142
+msgid "Filter blocks"
+msgstr ""
+
+#. type: delimited block -
+#: DelimitedBlocks.adoc:168 DelimitedBlocks.adoc:178
+#, no-wrap
+msgid "test\n"
+msgstr ""
+
+#. type: delimited block +
+#: DelimitedBlocks.adoc:172
+#, no-wrap
+msgid ""
+"--------------------------\n"
+"Listing inside Passthrough\n"
+"--------------------------\n"
+msgstr ""
+
+#. type: delimited block -
+#: DelimitedBlocks.adoc:174 DelimitedBlocks.adoc:184
+#, no-wrap
+msgid "end of test\n"
+msgstr ""
+
+#. type: delimited block -
+#: DelimitedBlocks.adoc:182
+#, no-wrap
+msgid ""
+"__________________________\n"
+"QuoteBlock inside Listing\n"
+"__________________________\n"
+msgstr ""
diff --git a/t/fmt/asciidoc/DelimitedBlocks.trans b/t/fmt/asciidoc/DelimitedBlocks.trans
new file mode 100644
index 0000000..2529d89
--- /dev/null
+++ b/t/fmt/asciidoc/DelimitedBlocks.trans
@@ -0,0 +1,173 @@
+//po4a: style[,caption]
+TEST DELIMITED BLOCKS
+=====================
+
+PREDEFINED DELIMITED BLOCKS
+---------------------------
+
+COMMENTBLOCK
+
+//////////////////////////
+This is a Comment block.
+This is a Comment block.
+
+ This is a Comment block.
+ This is a Comment block.
+
+ - This is a Comment block.
+ This is a Comment block.
+//////////////////////////
+
+PASSTHROUGHBLOCK
+
+++++++++++++++++++++++++++
+THIS IS A PASSTHROUGH BLOCK.
+THIS IS A PASSTHROUGH BLOCK.
+
+ THIS IS A PASSTHROUGH BLOCK.
+ THIS IS A PASSTHROUGH BLOCK.
+
+ - THIS IS A PASSTHROUGH BLOCK.
+ THIS IS A PASSTHROUGH BLOCK.
+++++++++++++++++++++++++++
+
+LISTINGBLOCK
+
+--------------------------
+THIS IS A LISTING BLOCK.
+THIS IS A LISTING BLOCK.
+
+ THIS IS A LISTING BLOCK.
+ THIS IS A LISTING BLOCK.
+
+ - THIS IS A LISTING BLOCK.
+ THIS IS A LISTING BLOCK.
+--------------------------
+
+LITERALBLOCK
+
+..........................
+THIS IS A LITERAL BLOCK.
+THIS IS A LITERAL BLOCK.
+
+ THIS IS A LITERAL BLOCK.
+ THIS IS A LITERAL BLOCK.
+
+ - THIS IS A LITERAL BLOCK.
+ THIS IS A LITERAL BLOCK.
+..........................
+
+SIDEBARBLOCK
+
+**************************
+THIS IS A SIDEBAR BLOCK. THIS IS A SIDEBAR BLOCK.
+
+ THIS IS A SIDEBAR BLOCK.
+ THIS IS A SIDEBAR BLOCK.
+
+ - THIS IS A SIDEBAR BLOCK. THIS IS A SIDEBAR BLOCK.
+**************************
+
+QUOTEBLOCK
+
+__________________________
+THIS IS A QUOTE BLOCK. THIS IS A QUOTE BLOCK.
+
+ THIS IS A QUOTE BLOCK.
+ THIS IS A QUOTE BLOCK.
+
+ - THIS IS A QUOTE BLOCK. THIS IS A QUOTE BLOCK.
+__________________________
+
+
+[quote, "BERTRAND RUSSELL", "THE WORLD OF MATHEMATICS (1956)"]
+____________________________________________________________________
+A GOOD NOTATION HAS SUBTLETY AND SUGGESTIVENESS WHICH AT TIMES MAKES IT ALMOST SEEM LIKE A LIVE TEACHER.
+____________________________________________________________________
+
+[verse, "WILLIAM BLAKE", "FROM AUGURIES OF INNOCENCE"]
+__________________________________________________
+TO SEE A WORLD IN A GRAIN OF SAND,
+AND A HEAVEN IN A WILD FLOWER,
+HOLD INFINITY IN THE PALM OF YOUR HAND,
+AND ETERNITY IN AN HOUR.
+__________________________________________________
+
+EXAMPLEBLOCK
+
+==========================
+THIS IS A EXAMPLE BLOCK. THIS IS A EXAMPLE BLOCK.
+
+ THIS IS A EXAMPLE BLOCK.
+ THIS IS A EXAMPLE BLOCK.
+
+ - THIS IS A EXAMPLE BLOCK. THIS IS A EXAMPLE BLOCK.
+==========================
+
+.AN EXAMPLE
+=====================================================================
+QUI IN MAGNA COMMODO, EST LABITUR DOLORUM AN. EST NE MAGNA PRIMIS ADOLESCENS.
+=====================================================================
+
+[caption="EXAMPLE 1: "]
+.AN EXAMPLE WITH A CUSTOM CAPTION
+=====================================================================
+QUI IN MAGNA COMMODO, EST LABITUR DOLORUM AN. EST NE MAGNA PRIMIS ADOLESCENS.
+=====================================================================
+
+[NOTE]
+.A NOTE BLOCK
+=====================================================================
+QUI IN MAGNA COMMODO, EST LABITUR DOLORUM AN. EST NE MAGNA PRIMIS ADOLESCENS.
+
+. FUSCE EUISMOD COMMODO VELIT.
+. VIVAMUS FRINGILLA MI EU LACUS.
+ .. FUSCE EUISMOD COMMODO VELIT.
+ .. VIVAMUS FRINGILLA MI EU LACUS.
+. DONEC EGET ARCU BIBENDUM NUNC CONSEQUAT LOBORTIS.
+=====================================================================
+
+FILTER BLOCKS
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~
+This is a Filter block.
+This is a Filter block.
+
+ This is a Filter block.
+ This is a Filter block.
+
+ - This is a Filter block.
+ This is a Filter block.
+~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+
+
+//////////////////////////
+test
+
+--------------------------
+Listing inside Comment
+--------------------------
+
+end of test
+//////////////////////////
+
+++++++++++++++++++++++++++
+TEST
+
+--------------------------
+LISTING INSIDE PASSTHROUGH
+--------------------------
+
+END OF TEST
+++++++++++++++++++++++++++
+
+--------------------------
+TEST
+
+__________________________
+QUOTEBLOCK INSIDE LISTING
+__________________________
+
+END OF TEST
+--------------------------
diff --git a/t/fmt/asciidoc/Footnotes.adoc b/t/fmt/asciidoc/Footnotes.adoc
new file mode 100644
index 0000000..aecfee0
--- /dev/null
+++ b/t/fmt/asciidoc/Footnotes.adoc
@@ -0,0 +1,5 @@
+Test Footnotes
+==============
+
+A footnote footnote:[An example footnote.]
+
diff --git a/t/fmt/asciidoc/Footnotes.norm b/t/fmt/asciidoc/Footnotes.norm
new file mode 100644
index 0000000..aecfee0
--- /dev/null
+++ b/t/fmt/asciidoc/Footnotes.norm
@@ -0,0 +1,5 @@
+Test Footnotes
+==============
+
+A footnote footnote:[An example footnote.]
+
diff --git a/t/fmt/asciidoc/Footnotes.po b/t/fmt/asciidoc/Footnotes.po
new file mode 100644
index 0000000..85452e7
--- /dev/null
+++ b/t/fmt/asciidoc/Footnotes.po
@@ -0,0 +1,28 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2008-10-12 19:55+0300\n"
+"PO-Revision-Date: 2008-10-12 22:04+0200\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@LI.ORG>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: TEXT/PLAIN; CHARSET=UTF-8\n"
+"Content-Transfer-Encoding: 8BIT\n"
+
+#. type: Title =
+#: Footnotes.adoc:2
+#, no-wrap
+msgid "Test Footnotes"
+msgstr "TEST FOOTNOTES"
+
+#. type: Plain text
+#: Footnotes.adoc:5
+msgid "A footnote footnote:[An example footnote.]"
+msgstr "A FOOTNOTE FOOTNOTE:[AN EXAMPLE FOOTNOTE.]"
diff --git a/t/fmt/asciidoc/Footnotes.pot b/t/fmt/asciidoc/Footnotes.pot
new file mode 100644
index 0000000..e21fb89
--- /dev/null
+++ b/t/fmt/asciidoc/Footnotes.pot
@@ -0,0 +1,28 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2008-10-12 19:55+0300\n"
+"PO-Revision-Date: 2008-10-12 22:04+0200\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Title =
+#: Footnotes.adoc:2
+#, no-wrap
+msgid "Test Footnotes"
+msgstr ""
+
+#. type: Plain text
+#: Footnotes.adoc:5
+msgid "A footnote footnote:[An example footnote.]"
+msgstr ""
diff --git a/t/fmt/asciidoc/Footnotes.trans b/t/fmt/asciidoc/Footnotes.trans
new file mode 100644
index 0000000..89077ed
--- /dev/null
+++ b/t/fmt/asciidoc/Footnotes.trans
@@ -0,0 +1,5 @@
+TEST FOOTNOTES
+==============
+
+A FOOTNOTE FOOTNOTE:[AN EXAMPLE FOOTNOTE.]
+
diff --git a/t/fmt/asciidoc/IndexEntries.adoc b/t/fmt/asciidoc/IndexEntries.adoc
new file mode 100644
index 0000000..94059af
--- /dev/null
+++ b/t/fmt/asciidoc/IndexEntries.adoc
@@ -0,0 +1,18 @@
+== (((index entry 1)))a title
+
+(((index entry 1)))
+a paragraph preceded by an entry in the index
+
+a paragraph followed by an entry in the index(((index entry 2)))
+
+(((index entry 3)))(((index {entry} 4)))
+a paragraph preceded by two entries in the index
+
+(((index entry 3,subentry 1)))((("index entry 5","subentry 2, with comma")))
+a paragraph with entry and subentry
+
+indexterm:[index entry 1,subentry 1]
+a paragraph with other version of entry and subentry.
+
+* (((index {entry} 4)))A list item with an index entry
+ * A subitem with an index entry(((index entry 5)))
diff --git a/t/fmt/asciidoc/IndexEntries.norm b/t/fmt/asciidoc/IndexEntries.norm
new file mode 100644
index 0000000..e444551
--- /dev/null
+++ b/t/fmt/asciidoc/IndexEntries.norm
@@ -0,0 +1,14 @@
+== (((index entry 1)))a title
+
+(((index entry 1)))a paragraph preceded by an entry in the index
+
+(((index entry 2)))a paragraph followed by an entry in the index
+
+(((index entry 3)))(((index {entry} 4)))a paragraph preceded by two entries in the index
+
+(((index entry 3,subentry 1)))((("index entry 5","subentry 2, with comma")))a paragraph with entry and subentry
+
+(((index entry 1,subentry 1)))a paragraph with other version of entry and subentry.
+
+* (((index {entry} 4)))A list item with an index entry
+ * (((index entry 5)))A subitem with an index entry
diff --git a/t/fmt/asciidoc/IndexEntries.po b/t/fmt/asciidoc/IndexEntries.po
new file mode 100644
index 0000000..062cf53
--- /dev/null
+++ b/t/fmt/asciidoc/IndexEntries.po
@@ -0,0 +1,92 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2023-06-07 21:17+0200\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Index entry
+#: IndexEntries.adoc:1 IndexEntries.adoc:5 IndexEntries.adoc:16
+msgid "index entry 1"
+msgstr "INDEX ENTRY 1"
+
+#. type: Title ==
+#: IndexEntries.adoc:1
+#, no-wrap
+msgid "a title"
+msgstr "A TITLE"
+
+#. type: Plain text
+#: IndexEntries.adoc:5
+msgid "a paragraph preceded by an entry in the index"
+msgstr "A PARAGRAPH PRECEDED BY AN ENTRY IN THE INDEX"
+
+#. type: Index entry
+#: IndexEntries.adoc:7
+msgid "index entry 2"
+msgstr "INDEX ENTRY 2"
+
+#. type: Plain text
+#: IndexEntries.adoc:7
+msgid "a paragraph followed by an entry in the index"
+msgstr "A PARAGRAPH FOLLOWED BY AN ENTRY IN THE INDEX"
+
+#. type: Index entry
+#: IndexEntries.adoc:10 IndexEntries.adoc:13
+msgid "index entry 3"
+msgstr "INDEX ENTRY 3"
+
+#. type: Index entry
+#: IndexEntries.adoc:10 IndexEntries.adoc:18
+msgid "index {entry} 4"
+msgstr "INDEX {ENTRY} 4"
+
+#. type: Plain text
+#: IndexEntries.adoc:10
+msgid "a paragraph preceded by two entries in the index"
+msgstr "A PARAGRAPH PRECEDED BY TWO ENTRIES IN THE INDEX"
+
+#. type: Index entry
+#: IndexEntries.adoc:13 IndexEntries.adoc:16
+msgid "subentry 1"
+msgstr "SUBENTRY 1"
+
+#. type: Index entry
+#: IndexEntries.adoc:13 IndexEntries.adoc:18
+msgid "index entry 5"
+msgstr "INDEX ENTRY 5"
+
+#. type: Index entry
+#: IndexEntries.adoc:13
+msgid "subentry 2, with comma"
+msgstr "SUBENTRY 2, WITH COMMA"
+
+#. type: Plain text
+#: IndexEntries.adoc:13
+msgid "a paragraph with entry and subentry"
+msgstr "A PARAGRAPH WITH ENTRY AND SUBENTRY"
+
+#. type: Plain text
+#: IndexEntries.adoc:16
+msgid "a paragraph with other version of entry and subentry."
+msgstr "A PARAGRAPH WITH OTHER VERSION OF ENTRY AND SUBENTRY."
+
+#. type: Plain text
+#: IndexEntries.adoc:18
+msgid "A list item with an index entry"
+msgstr "A LIST ITEM WITH AN INDEX ENTRY"
+
+#. type: Plain text
+#: IndexEntries.adoc:18
+msgid "A subitem with an index entry"
+msgstr "A SUBITEM WITH AN INDEX ENTRY"
diff --git a/t/fmt/asciidoc/IndexEntries.pot b/t/fmt/asciidoc/IndexEntries.pot
new file mode 100644
index 0000000..6cc00cb
--- /dev/null
+++ b/t/fmt/asciidoc/IndexEntries.pot
@@ -0,0 +1,93 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2023-06-07 21:17+0200\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Index entry
+#: IndexEntries.adoc:1 IndexEntries.adoc:5 IndexEntries.adoc:16
+msgid "index entry 1"
+msgstr ""
+
+#. type: Title ==
+#: IndexEntries.adoc:1
+#, no-wrap
+msgid "a title"
+msgstr ""
+
+#. type: Plain text
+#: IndexEntries.adoc:5
+msgid "a paragraph preceded by an entry in the index"
+msgstr ""
+
+#. type: Index entry
+#: IndexEntries.adoc:7
+msgid "index entry 2"
+msgstr ""
+
+#. type: Plain text
+#: IndexEntries.adoc:7
+msgid "a paragraph followed by an entry in the index"
+msgstr ""
+
+#. type: Index entry
+#: IndexEntries.adoc:10 IndexEntries.adoc:13
+msgid "index entry 3"
+msgstr ""
+
+#. type: Index entry
+#: IndexEntries.adoc:10 IndexEntries.adoc:18
+msgid "index {entry} 4"
+msgstr ""
+
+#. type: Plain text
+#: IndexEntries.adoc:10
+msgid "a paragraph preceded by two entries in the index"
+msgstr ""
+
+#. type: Index entry
+#: IndexEntries.adoc:13 IndexEntries.adoc:16
+msgid "subentry 1"
+msgstr ""
+
+#. type: Index entry
+#: IndexEntries.adoc:13 IndexEntries.adoc:18
+msgid "index entry 5"
+msgstr ""
+
+#. type: Index entry
+#: IndexEntries.adoc:13
+msgid "subentry 2, with comma"
+msgstr ""
+
+#. type: Plain text
+#: IndexEntries.adoc:13
+msgid "a paragraph with entry and subentry"
+msgstr ""
+
+#. type: Plain text
+#: IndexEntries.adoc:16
+msgid "a paragraph with other version of entry and subentry."
+msgstr ""
+
+#. type: Plain text
+#: IndexEntries.adoc:18
+msgid "A list item with an index entry"
+msgstr ""
+
+#. type: Plain text
+#: IndexEntries.adoc:18
+msgid "A subitem with an index entry"
+msgstr ""
diff --git a/t/fmt/asciidoc/IndexEntries.trans b/t/fmt/asciidoc/IndexEntries.trans
new file mode 100644
index 0000000..64ef38b
--- /dev/null
+++ b/t/fmt/asciidoc/IndexEntries.trans
@@ -0,0 +1,14 @@
+== (((INDEX ENTRY 1)))A TITLE
+
+(((INDEX ENTRY 1)))A PARAGRAPH PRECEDED BY AN ENTRY IN THE INDEX
+
+(((INDEX ENTRY 2)))A PARAGRAPH FOLLOWED BY AN ENTRY IN THE INDEX
+
+(((INDEX ENTRY 3)))(((INDEX {ENTRY} 4)))A PARAGRAPH PRECEDED BY TWO ENTRIES IN THE INDEX
+
+(((INDEX ENTRY 3,SUBENTRY 1)))((("INDEX ENTRY 5","SUBENTRY 2, WITH COMMA")))A PARAGRAPH WITH ENTRY AND SUBENTRY
+
+(((INDEX ENTRY 1,SUBENTRY 1)))A PARAGRAPH WITH OTHER VERSION OF ENTRY AND SUBENTRY.
+
+* (((INDEX {ENTRY} 4)))A LIST ITEM WITH AN INDEX ENTRY
+ * (((INDEX ENTRY 5)))A SUBITEM WITH AN INDEX ENTRY
diff --git a/t/fmt/asciidoc/LineBreak.adoc b/t/fmt/asciidoc/LineBreak.adoc
new file mode 100644
index 0000000..e8856ff
--- /dev/null
+++ b/t/fmt/asciidoc/LineBreak.adoc
@@ -0,0 +1,37 @@
+= Linebreaks
+
+This is a paragraph with a linebreak,
+where the linebreak occurs on second line +
+The second part of the paragraph is on
+a second line.
+
+* We can do the same with a list item +
+After the linebreak, the bullet point is continued.
+* In this bullet point, the list item
+is continued on the next line. +
+Then the line is broken in a second part.
+
+..........................
+This is a Literal block. +
+This is a Literal block.
+..........................
+
+__________________________
+This is a Quote block. +
+This is a Quote block.
+__________________________
+
+. List item section 1
+. List item section 2 +
+ +
+Another section of list item 2
+
+Further text
+
+
+* List item section A
+* List item section B +
+ +
+Another section of list item B
+
+Further text
diff --git a/t/fmt/asciidoc/LineBreak.norm b/t/fmt/asciidoc/LineBreak.norm
new file mode 100644
index 0000000..44b0428
--- /dev/null
+++ b/t/fmt/asciidoc/LineBreak.norm
@@ -0,0 +1,34 @@
+= Linebreaks
+
+This is a paragraph with a linebreak, where the linebreak occurs on second line +
+The second part of the paragraph is on a second line.
+
+* We can do the same with a list item +
+After the linebreak, the bullet point is continued.
+* In this bullet point, the list item is continued on the next line. +
+Then the line is broken in a second part.
+
+..........................
+This is a Literal block. +
+This is a Literal block.
+..........................
+
+__________________________
+This is a Quote block. +
+This is a Quote block.
+__________________________
+
+. List item section 1
+. List item section 2 +
+ +
+Another section of list item 2
+
+Further text
+
+
+* List item section A
+* List item section B +
+ +
+Another section of list item B
+
+Further text
diff --git a/t/fmt/asciidoc/LineBreak.po b/t/fmt/asciidoc/LineBreak.po
new file mode 100644
index 0000000..009d79b
--- /dev/null
+++ b/t/fmt/asciidoc/LineBreak.po
@@ -0,0 +1,112 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2021-10-03 19:13+0200\n"
+"PO-Revision-Date: 2022-06-28 17:39+0200\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Title =
+#: LineBreak.adoc:1
+#, no-wrap
+msgid "Linebreaks"
+msgstr "LINEBREAKS"
+
+#. type: Plain text
+#: LineBreak.adoc:7
+#, no-wrap
+msgid ""
+"This is a paragraph with a linebreak, where the linebreak occurs on second "
+"line\n"
+"The second part of the paragraph is on a second line."
+msgstr ""
+"THIS IS A PARAGRAPH WITH A LINEBREAK, WHERE THE LINEBREAK OCCURS ON SECOND LINE\n"
+"THE SECOND PART OF THE PARAGRAPH IS ON A SECOND LINE."
+
+#. type: Plain text
+#: LineBreak.adoc:10
+#, no-wrap
+msgid ""
+"We can do the same with a list item\n"
+"After the linebreak, the bullet point is continued."
+msgstr ""
+"WE CAN DO THE SAME WITH A LIST ITEM\n"
+"AFTER THE LINEBREAK, THE BULLET POINT IS CONTINUED."
+
+#. type: Plain text
+#: LineBreak.adoc:13
+#, no-wrap
+msgid ""
+"In this bullet point, the list item is continued on the next line.\n"
+"Then the line is broken in a second part."
+msgstr ""
+"IN THIS BULLET POINT, THE LIST ITEM IS CONTINUED ON THE NEXT LINE.\n"
+"THEN THE LINE IS BROKEN IN A SECOND PART."
+
+#. type: delimited block .
+#: LineBreak.adoc:17
+#, no-wrap
+msgid ""
+"This is a Literal block. +\n"
+"This is a Literal block.\n"
+msgstr ""
+"THIS IS A LITERAL BLOCK. +\n"
+"THIS IS A LITERAL BLOCK.\n"
+
+#. type: delimited block _
+#: LineBreak.adoc:22
+#, no-wrap
+msgid ""
+"This is a Quote block.\n"
+"This is a Quote block."
+msgstr ""
+"THIS IS A QUOTE BLOCK.\n"
+"THIS IS A QUOTE BLOCK."
+
+#. type: Plain text
+#: LineBreak.adoc:25
+msgid "List item section 1"
+msgstr "LIST ITEM SECTION 1"
+
+#. type: Plain text
+#: LineBreak.adoc:28
+#, no-wrap
+msgid ""
+"List item section 2\n"
+"\n"
+"Another section of list item 2"
+msgstr ""
+"LIST ITEM SECTION 2\n"
+"\n"
+"ANOTHER SECTION OF LIST ITEM 2"
+
+#. type: Plain text
+#: LineBreak.adoc:30 LineBreak.adoc:37
+msgid "Further text"
+msgstr "FURTHER TEXT"
+
+#. type: Plain text
+#: LineBreak.adoc:33
+msgid "List item section A"
+msgstr "LIST ITEM SECTION A"
+
+#. type: Plain text
+#: LineBreak.adoc:36
+#, no-wrap
+msgid ""
+"List item section B\n"
+"\n"
+"Another section of list item B"
+msgstr ""
+"LIST ITEM SECTION B\n"
+"\n"
+"ANOTHER SECTION OF LIST ITEM B"
diff --git a/t/fmt/asciidoc/LineBreak.pot b/t/fmt/asciidoc/LineBreak.pot
new file mode 100644
index 0000000..144f0c2
--- /dev/null
+++ b/t/fmt/asciidoc/LineBreak.pot
@@ -0,0 +1,97 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2021-10-03 19:13+0200\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Title =
+#: LineBreak.adoc:1
+#, no-wrap
+msgid "Linebreaks"
+msgstr ""
+
+#. type: Plain text
+#: LineBreak.adoc:7
+#, no-wrap
+msgid ""
+"This is a paragraph with a linebreak, where the linebreak occurs on second "
+"line\n"
+"The second part of the paragraph is on a second line."
+msgstr ""
+
+#. type: Plain text
+#: LineBreak.adoc:10
+#, no-wrap
+msgid ""
+"We can do the same with a list item\n"
+"After the linebreak, the bullet point is continued."
+msgstr ""
+
+#. type: Plain text
+#: LineBreak.adoc:13
+#, no-wrap
+msgid ""
+"In this bullet point, the list item is continued on the next line.\n"
+"Then the line is broken in a second part."
+msgstr ""
+
+#. type: delimited block .
+#: LineBreak.adoc:17
+#, no-wrap
+msgid ""
+"This is a Literal block. +\n"
+"This is a Literal block.\n"
+msgstr ""
+
+#. type: delimited block _
+#: LineBreak.adoc:22
+#, no-wrap
+msgid ""
+"This is a Quote block.\n"
+"This is a Quote block."
+msgstr ""
+
+#. type: Plain text
+#: LineBreak.adoc:25
+msgid "List item section 1"
+msgstr ""
+
+#. type: Plain text
+#: LineBreak.adoc:28
+#, no-wrap
+msgid ""
+"List item section 2\n"
+"\n"
+"Another section of list item 2"
+msgstr ""
+
+#. type: Plain text
+#: LineBreak.adoc:30 LineBreak.adoc:37
+msgid "Further text"
+msgstr ""
+
+#. type: Plain text
+#: LineBreak.adoc:33
+msgid "List item section A"
+msgstr ""
+
+#. type: Plain text
+#: LineBreak.adoc:36
+#, no-wrap
+msgid ""
+"List item section B\n"
+"\n"
+"Another section of list item B"
+msgstr ""
diff --git a/t/fmt/asciidoc/LineBreak.trans b/t/fmt/asciidoc/LineBreak.trans
new file mode 100644
index 0000000..b4bab24
--- /dev/null
+++ b/t/fmt/asciidoc/LineBreak.trans
@@ -0,0 +1,34 @@
+= LINEBREAKS
+
+THIS IS A PARAGRAPH WITH A LINEBREAK, WHERE THE LINEBREAK OCCURS ON SECOND LINE +
+THE SECOND PART OF THE PARAGRAPH IS ON A SECOND LINE.
+
+* WE CAN DO THE SAME WITH A LIST ITEM +
+AFTER THE LINEBREAK, THE BULLET POINT IS CONTINUED.
+* IN THIS BULLET POINT, THE LIST ITEM IS CONTINUED ON THE NEXT LINE. +
+THEN THE LINE IS BROKEN IN A SECOND PART.
+
+..........................
+THIS IS A LITERAL BLOCK. +
+THIS IS A LITERAL BLOCK.
+..........................
+
+__________________________
+THIS IS A QUOTE BLOCK. +
+THIS IS A QUOTE BLOCK.
+__________________________
+
+. LIST ITEM SECTION 1
+. LIST ITEM SECTION 2 +
+ +
+ANOTHER SECTION OF LIST ITEM 2
+
+FURTHER TEXT
+
+
+* LIST ITEM SECTION A
+* LIST ITEM SECTION B +
+ +
+ANOTHER SECTION OF LIST ITEM B
+
+FURTHER TEXT
diff --git a/t/fmt/asciidoc/Lists.adoc b/t/fmt/asciidoc/Lists.adoc
new file mode 100644
index 0000000..bc5fb3d
--- /dev/null
+++ b/t/fmt/asciidoc/Lists.adoc
@@ -0,0 +1,252 @@
+Test Lists
+==========
+
+Bulleted and Numbered Lists
+---------------------------
+
+- List item.
+- List item which content
+spans over several lines (missing leading indent)
+* List item.
+
+. Integer numbered list item.
+1. Integer numbered list item with optional numbering.
+.. Lowercase letter numbered list item.
+a. Lowercase letter numbered list item with optional numbering.
+... Third level of numbered list.
+
+- Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
+ * Fusce euismod commodo velit.
+ * Qui in magna commodo, est labitur dolorum an. Est ne magna primis
+ adolescens. Sit munere ponderum dignissim et. Minim luptatum et
+ vel.
+ * Vivamus fringilla mi eu lacus.
+ * Donec eget arcu bibendum nunc consequat lobortis.
+- Nulla porttitor vulputate libero.
+ . Fusce euismod commodo velit.
+ . Vivamus fringilla mi eu lacus.
+ .. Fusce euismod commodo velit.
+ .. Vivamus fringilla mi eu lacus.
+ . Donec eget arcu bibendum nunc consequat lobortis.
+- Praesent eget purus quis magna eleifend eleifend.
+ 1. Fusce euismod commodo velit.
+ a. Fusce euismod commodo velit.
+ b. Vivamus fringilla mi eu lacus.
+ c. Donec eget arcu bibendum nunc consequat lobortis.
+ 2. Vivamus fringilla mi eu lacus.
+ 3. Donec eget arcu bibendum nunc consequat lobortis.
+ 4. Nam fermentum mattis ante.
+
+* List Item 1
+** Non-indented new list Item
+** Another Item
+* List Item 2
+* List Item 3
+** Non-indented new list Item 2
+
+Vertical Labeled Lists
+----------------------
+
+Lorem::
+ Fusce euismod commodo velit.
+
+ Fusce euismod commodo velit.
+
+Ipsum::
+ Vivamus fringilla mi eu lacus.
+ * Vivamus fringilla mi eu lacus.
+ * Donec eget arcu bibendum nunc consequat lobortis.
+Dolor::
+ Donec eget arcu bibendum nunc consequat lobortis.
+ Suspendisse;;
+ A massa id sem aliquam auctor.
+ Morbi;;
+ Pretium nulla vel lorem.
+ In;;
+ Dictum mauris in urna.
+
+<pathspec>...::
+ Files to add content from. Fileglobs (e.g. `*.c`) can
+ be given to add all matching files.
+
+-n::
+--dry-run::
+ Don't actually add the file(s), just show if they exist and/or will
+ be ignored.
+
+\--::
+ This option can be used to separate command-line options from
+ the list of files, (useful when filenames might be mistaken
+ for command-line options).
+
+[<refname>...]::
+ A list of references used to limit the references reported as
+ available.
+
+$(prefix)/etc/gitconfig::
+ System-wide configuration file.
+
+~/.gitconfig::
+ User-specific configuration file. Also called "global"
+ configuration file.
+
+%G::
+ Git directory name
+
+Horizontal Labeled Lists
+------------------------
+
+*Lorem*:: Fusce euismod commodo velit. Qui in magna commodo, est
+labitur dolorum an. Est ne magna primis adolescens.
+
+ Fusce euismod commodo velit.
+ Fusce euismod commodo velit.
+
+*Ipsum*:: Vivamus fringilla mi eu lacus.
+- Vivamus fringilla mi eu lacus.
+- Donec eget arcu bibendum nunc consequat lobortis.
+
+*Dolor*:: \
+ - Vivamus fringilla mi eu lacus.
+ - Donec eget arcu bibendum nunc consequat lobortis.
+
+*Lorem*:: Fusce euismod commodo velit. Qui in magna
+ commodo, est labitur dolorum an. Est ne magna
+ primis adolescens.
+
+*Lorem*::: Fusce euismod commodo velit. Qui in magna
+ commodo, est labitur dolorum an. Est ne magna
+ primis adolescens.
+
+*Dolor*:::
+ Vivamus fringilla mi eu lacus.
+
+|::
+ Vivamus fringilla mi eu lacus.
+
+{var}Dolor:: Donec eget arcu bibendum nunc consequat lobortis.
+
+Question and Answer Lists
+-------------------------
+Question one??
+ Answer one.
+Question two??
+ Answer two.
+
+Glossary Lists
+--------------
+
+A glossary term:-
+ The corresponding definition.
+A second glossary term:-
+ The corresponding definition.
+
+Bibliography Lists
+------------------
+
++ [[[taoup]]] Eric Steven Raymond. 'The Art of UNIX
+ Programming'. Addison-Wesley. ISBN 0-13-142901-9.
++ [[[walsh-muellner]]] Norman Walsh & Leonard Muellner.
+ 'DocBook - The Definitive Guide'. O'Reilly & Associates. 1999.
+ ISBN 1-56592-580-7.
+
+The same in a bibliography section, and without the doc typo
+
+Bibliography
+------------
++ [[[taoup]]] Eric Steven Raymond. 'The Art of UNIX
+ Programming'. Addison-Wesley. ISBN 0-13-142901-9.
++ [[[walsh-muellner]]] Norman Walsh & Leonard Muellner.
+ 'DocBook - The Definitive Guide'. O'Reilly & Associates. 1999.
+ ISBN 1-56592-580-7.
+
+List Item Continuation
+----------------------
+
+1. List item one.
++
+List item one continued with a second paragraph followed by an
+Indented block.
++
+.................
+$ ls *.sh
+$ mv *.sh ~/tmp
+.................
++
+List item one continued with a third paragraph.
+
+2. List item two.
+
+ List item two literal paragraph (no continuation required).
+ (but this should not be wrapped).
+
+- Nested list (item one).
+
+ Nested list literal paragraph (no continuation required).
+ (but this should not be wrapped).
++
+Nested list appended list item one paragraph
+
+- Nested list item two.
+
+
+List Block
+----------
+
+.Nested List Block
+1. List item one.
++
+This paragraph is part of the preceding list item
++
+--
+a. This list is nested and does not require explicit item continuation.
+
+This paragraph is part of the preceding list item
+
+b. List item b.
+
+This paragraph belongs to list item b.
+--
++
+This paragraph belongs to item 1.
+
+2. Item 2 of the outer list.
+
+.Literal Paragraph in a Vertical Labeled Lists
+
+This comes from the git doc, on which po4a used to fail miserably.
+
+patch::
+
+ This lets you choose one path out of a 'status' like selection. After choosing the path, it presents the diff between the index and the working tree file and asks you if you want to stage the change of each hunk. You can select one of the following options and type return:
+
+ y - stage this hunk
+ n - do not stage this hunk
+ q - quit; do not stage this hunk or any of the remaining ones
+ a - stage this hunk and all later hunks in the file
+ d - do not stage this hunk or any of the later hunks in the file
+ g - select a hunk to go to
+ / - search for a hunk matching the given regex
+ j - leave this hunk undecided, see next undecided hunk
+ J - leave this hunk undecided, see next hunk
+ k - leave this hunk undecided, see previous undecided hunk
+ K - leave this hunk undecided, see previous hunk
+ s - split the current hunk into smaller hunks
+ e - manually edit the current hunk
+ ? - print help
++
+After deciding the fate for all hunks, if there is any hunk that was chosen, the index is updated with the selected hunks.
+
+. First level
+.. Second level
+... Third level
+.... Fourth level
+..... Fifth level
+
+* [ ] Unchecked
+* [x] Checked
+* [X] Checked
+* [*] Checked
+
+1. *starting* with
+ a strong item
diff --git a/t/fmt/asciidoc/Lists.norm b/t/fmt/asciidoc/Lists.norm
new file mode 100644
index 0000000..5b09f20
--- /dev/null
+++ b/t/fmt/asciidoc/Lists.norm
@@ -0,0 +1,230 @@
+Test Lists
+==========
+
+Bulleted and Numbered Lists
+---------------------------
+
+- List item.
+- List item which content spans over several lines (missing leading indent)
+* List item.
+
+. Integer numbered list item.
+1. Integer numbered list item with optional numbering.
+.. Lowercase letter numbered list item.
+a. Lowercase letter numbered list item with optional numbering.
+... Third level of numbered list.
+
+- Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
+ * Fusce euismod commodo velit.
+ * Qui in magna commodo, est labitur dolorum an. Est ne magna primis adolescens. Sit munere ponderum dignissim et. Minim luptatum et vel.
+ * Vivamus fringilla mi eu lacus.
+ * Donec eget arcu bibendum nunc consequat lobortis.
+- Nulla porttitor vulputate libero.
+ . Fusce euismod commodo velit.
+ . Vivamus fringilla mi eu lacus.
+ .. Fusce euismod commodo velit.
+ .. Vivamus fringilla mi eu lacus.
+ . Donec eget arcu bibendum nunc consequat lobortis.
+- Praesent eget purus quis magna eleifend eleifend.
+ 1. Fusce euismod commodo velit.
+ a. Fusce euismod commodo velit.
+ b. Vivamus fringilla mi eu lacus.
+ c. Donec eget arcu bibendum nunc consequat lobortis.
+ 2. Vivamus fringilla mi eu lacus.
+ 3. Donec eget arcu bibendum nunc consequat lobortis.
+ 4. Nam fermentum mattis ante.
+
+* List Item 1
+** Non-indented new list Item
+** Another Item
+* List Item 2
+* List Item 3
+** Non-indented new list Item 2
+
+Vertical Labeled Lists
+----------------------
+
+Lorem::
+ Fusce euismod commodo velit.
+
+ Fusce euismod commodo velit.
+
+Ipsum::
+ Vivamus fringilla mi eu lacus.
+ * Vivamus fringilla mi eu lacus.
+ * Donec eget arcu bibendum nunc consequat lobortis.
+Dolor::
+ Donec eget arcu bibendum nunc consequat lobortis.
+ Suspendisse;;
+ A massa id sem aliquam auctor.
+ Morbi;;
+ Pretium nulla vel lorem.
+ In;;
+ Dictum mauris in urna.
+
+<pathspec>...::
+ Files to add content from. Fileglobs (e.g. `*.c`) can be given to add all matching files.
+
+-n::
+--dry-run::
+ Don't actually add the file(s), just show if they exist and/or will be ignored.
+
+\--::
+ This option can be used to separate command-line options from the list of files, (useful when filenames might be mistaken for command-line options).
+
+[<refname>...]::
+ A list of references used to limit the references reported as available.
+
+$(prefix)/etc/gitconfig::
+ System-wide configuration file.
+
+~/.gitconfig::
+ User-specific configuration file. Also called "global" configuration file.
+
+%G::
+ Git directory name
+
+Horizontal Labeled Lists
+------------------------
+
+*Lorem*:: Fusce euismod commodo velit. Qui in magna commodo, est labitur dolorum an. Est ne magna primis adolescens.
+
+ Fusce euismod commodo velit.
+ Fusce euismod commodo velit.
+
+*Ipsum*:: Vivamus fringilla mi eu lacus.
+- Vivamus fringilla mi eu lacus.
+- Donec eget arcu bibendum nunc consequat lobortis.
+
+*Dolor*:: \
+ - Vivamus fringilla mi eu lacus.
+ - Donec eget arcu bibendum nunc consequat lobortis.
+
+*Lorem*:: Fusce euismod commodo velit. Qui in magna commodo, est labitur dolorum an. Est ne magna primis adolescens.
+
+*Lorem*::: Fusce euismod commodo velit. Qui in magna commodo, est labitur dolorum an. Est ne magna primis adolescens.
+
+*Dolor*:::
+ Vivamus fringilla mi eu lacus.
+
+|::
+ Vivamus fringilla mi eu lacus.
+
+{var}Dolor:: Donec eget arcu bibendum nunc consequat lobortis.
+
+Question and Answer Lists
+-------------------------
+Question one??
+ Answer one.
+Question two??
+ Answer two.
+
+Glossary Lists
+--------------
+
+A glossary term:-
+ The corresponding definition.
+A second glossary term:-
+ The corresponding definition.
+
+Bibliography Lists
+------------------
+
++ [[[taoup]]] Eric Steven Raymond. 'The Art of UNIX Programming'. Addison-Wesley. ISBN 0-13-142901-9.
++ [[[walsh-muellner]]] Norman Walsh & Leonard Muellner. 'DocBook - The Definitive Guide'. O'Reilly & Associates. 1999. ISBN 1-56592-580-7.
+
+The same in a bibliography section, and without the doc typo
+
+Bibliography
+------------
++ [[[taoup]]] Eric Steven Raymond. 'The Art of UNIX Programming'. Addison-Wesley. ISBN 0-13-142901-9.
++ [[[walsh-muellner]]] Norman Walsh & Leonard Muellner. 'DocBook - The Definitive Guide'. O'Reilly & Associates. 1999. ISBN 1-56592-580-7.
+
+List Item Continuation
+----------------------
+
+1. List item one.
++
+List item one continued with a second paragraph followed by an Indented block.
++
+.................
+$ ls *.sh
+$ mv *.sh ~/tmp
+.................
++
+List item one continued with a third paragraph.
+
+2. List item two.
+
+ List item two literal paragraph (no continuation required).
+ (but this should not be wrapped).
+
+- Nested list (item one).
+
+ Nested list literal paragraph (no continuation required).
+ (but this should not be wrapped).
++
+Nested list appended list item one paragraph
+
+- Nested list item two.
+
+
+List Block
+----------
+
+.Nested List Block
+1. List item one.
++
+This paragraph is part of the preceding list item
++
+--
+a. This list is nested and does not require explicit item continuation.
+
+This paragraph is part of the preceding list item
+
+b. List item b.
+
+This paragraph belongs to list item b.
+--
++
+This paragraph belongs to item 1.
+
+2. Item 2 of the outer list.
+
+.Literal Paragraph in a Vertical Labeled Lists
+
+This comes from the git doc, on which po4a used to fail miserably.
+
+patch::
+
+ This lets you choose one path out of a 'status' like selection. After choosing the path, it presents the diff between the index and the working tree file and asks you if you want to stage the change of each hunk. You can select one of the following options and type return:
+
+ y - stage this hunk
+ n - do not stage this hunk
+ q - quit; do not stage this hunk or any of the remaining ones
+ a - stage this hunk and all later hunks in the file
+ d - do not stage this hunk or any of the later hunks in the file
+ g - select a hunk to go to
+ / - search for a hunk matching the given regex
+ j - leave this hunk undecided, see next undecided hunk
+ J - leave this hunk undecided, see next hunk
+ k - leave this hunk undecided, see previous undecided hunk
+ K - leave this hunk undecided, see previous hunk
+ s - split the current hunk into smaller hunks
+ e - manually edit the current hunk
+ ? - print help
++
+After deciding the fate for all hunks, if there is any hunk that was chosen, the index is updated with the selected hunks.
+
+. First level
+.. Second level
+... Third level
+.... Fourth level
+..... Fifth level
+
+* [ ] Unchecked
+* [x] Checked
+* [X] Checked
+* [*] Checked
+
+1. *starting* with a strong item
diff --git a/t/fmt/asciidoc/Lists.norm.stderr b/t/fmt/asciidoc/Lists.norm.stderr
new file mode 100644
index 0000000..b858cc9
--- /dev/null
+++ b/t/fmt/asciidoc/Lists.norm.stderr
@@ -0,0 +1 @@
+Lists.adoc:9: It seems that you are adding unindented content to an item. The standard allows this, but you may still want to change your document to use indented text to provide better visual clues to writers.
diff --git a/t/fmt/asciidoc/Lists.po b/t/fmt/asciidoc/Lists.po
new file mode 100644
index 0000000..a649e5d
--- /dev/null
+++ b/t/fmt/asciidoc/Lists.po
@@ -0,0 +1,669 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2020-10-15 22:04+0200\n"
+"PO-Revision-Date: 2020-10-15 22:16+0200\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Title =
+#: Lists.adoc:2
+#, no-wrap
+msgid "Test Lists"
+msgstr "TEST LISTS"
+
+#. type: Title -
+#: Lists.adoc:5
+#, no-wrap
+msgid "Bulleted and Numbered Lists"
+msgstr "BULLETED AND NUMBERED LISTS"
+
+#. type: Plain text
+#: Lists.adoc:8 Lists.adoc:11
+msgid "List item."
+msgstr "LIST ITEM."
+
+#. type: Plain text
+#: Lists.adoc:10
+msgid ""
+"List item which content spans over several lines (missing leading indent)"
+msgstr ""
+"LIST ITEM WHICH CONTENT SPANS OVER SEVERAL LINES (MISSING LEADING INDENT)"
+
+#. type: Plain text
+#: Lists.adoc:13
+msgid "Integer numbered list item."
+msgstr "INTEGER NUMBERED LIST ITEM."
+
+#. type: Plain text
+#: Lists.adoc:14
+msgid "Integer numbered list item with optional numbering."
+msgstr "INTEGER NUMBERED LIST ITEM WITH OPTIONAL NUMBERING."
+
+#. type: Plain text
+#: Lists.adoc:15
+msgid "Lowercase letter numbered list item."
+msgstr "LOWERCASE LETTER NUMBERED LIST ITEM."
+
+#. type: Plain text
+#: Lists.adoc:16
+msgid "Lowercase letter numbered list item with optional numbering."
+msgstr "LOWERCASE LETTER NUMBERED LIST ITEM WITH OPTIONAL NUMBERING."
+
+#. type: Plain text
+#: Lists.adoc:17
+msgid "Third level of numbered list."
+msgstr "THIRD LEVEL OF NUMBERED LIST."
+
+#. type: Plain text
+#: Lists.adoc:19
+msgid "Lorem ipsum dolor sit amet, consectetuer adipiscing elit."
+msgstr "LOREM IPSUM DOLOR SIT AMET, CONSECTETUER ADIPISCING ELIT."
+
+#. type: Plain text
+#: Lists.adoc:20 Lists.adoc:27 Lists.adoc:29 Lists.adoc:33 Lists.adoc:34
+#: Lists.adoc:52 Lists.adoc:54
+msgid "Fusce euismod commodo velit."
+msgstr "FUSCE EUISMOD COMMODO VELIT."
+
+#. type: Plain text
+#: Lists.adoc:23
+msgid ""
+"Qui in magna commodo, est labitur dolorum an. Est ne magna primis "
+"adolescens. Sit munere ponderum dignissim et. Minim luptatum et vel."
+msgstr ""
+"QUI IN MAGNA COMMODO, EST LABITUR DOLORUM AN. EST NE MAGNA PRIMIS "
+"ADOLESCENS. SIT MUNERE PONDERUM DIGNISSIM ET. MINIM LUPTATUM ET VEL."
+
+#. type: Plain text
+#: Lists.adoc:24 Lists.adoc:28 Lists.adoc:30 Lists.adoc:35 Lists.adoc:37
+#: Lists.adoc:57 Lists.adoc:58 Lists.adoc:106 Lists.adoc:107 Lists.adoc:111
+#: Lists.adoc:123 Lists.adoc:126
+msgid "Vivamus fringilla mi eu lacus."
+msgstr "VIVAMUS FRINGILLA MI EU LACUS."
+
+#. type: Plain text
+#: Lists.adoc:25 Lists.adoc:31 Lists.adoc:36 Lists.adoc:38 Lists.adoc:59
+#: Lists.adoc:61 Lists.adoc:108 Lists.adoc:112 Lists.adoc:128
+msgid "Donec eget arcu bibendum nunc consequat lobortis."
+msgstr "DONEC EGET ARCU BIBENDUM NUNC CONSEQUAT LOBORTIS."
+
+#. type: Plain text
+#: Lists.adoc:26
+msgid "Nulla porttitor vulputate libero."
+msgstr "NULLA PORTTITOR VULPUTATE LIBERO."
+
+#. type: Plain text
+#: Lists.adoc:32
+msgid "Praesent eget purus quis magna eleifend eleifend."
+msgstr "PRAESENT EGET PURUS QUIS MAGNA ELEIFEND ELEIFEND."
+
+#. type: Plain text
+#: Lists.adoc:39
+msgid "Nam fermentum mattis ante."
+msgstr "NAM FERMENTUM MATTIS ANTE."
+
+#. type: Plain text
+#: Lists.adoc:41
+msgid "List Item 1"
+msgstr "LIST ITEM 1"
+
+#. type: Plain text
+#: Lists.adoc:42
+msgid "Non-indented new list Item"
+msgstr "NON-INDENTED NEW LIST ITEM"
+
+#. type: Plain text
+#: Lists.adoc:43
+msgid "Another Item"
+msgstr "ANOTHER ITEM"
+
+#. type: Plain text
+#: Lists.adoc:44
+msgid "List Item 2"
+msgstr "LIST ITEM 2"
+
+#. type: Plain text
+#: Lists.adoc:45
+msgid "List Item 3"
+msgstr "LIST ITEM 3"
+
+#. type: Plain text
+#: Lists.adoc:46
+msgid "Non-indented new list Item 2"
+msgstr "NON-INDENTED NEW LIST ITEM 2"
+
+#. type: Title -
+#: Lists.adoc:48
+#, no-wrap
+msgid "Vertical Labeled Lists"
+msgstr "VERTICAL LABELED LISTS"
+
+#. type: Labeled list
+#: Lists.adoc:50
+#, no-wrap
+msgid "Lorem"
+msgstr "LOREM"
+
+#. type: Labeled list
+#: Lists.adoc:55
+#, no-wrap
+msgid "Ipsum"
+msgstr "IPSUM"
+
+#. type: Labeled list
+#: Lists.adoc:59
+#, no-wrap
+msgid "Dolor"
+msgstr "DOLOR"
+
+#. type: Labeled list
+#: Lists.adoc:61
+#, no-wrap
+msgid "Suspendisse"
+msgstr "SUSPENDISSE"
+
+#. type: Plain text
+#: Lists.adoc:63
+#, no-wrap
+msgid "A massa id sem aliquam auctor.\n"
+msgstr "A MASSA ID SEM ALIQUAM AUCTOR.\n"
+
+#. type: Labeled list
+#: Lists.adoc:63
+#, no-wrap
+msgid "Morbi"
+msgstr "MORBI"
+
+#. type: Plain text
+#: Lists.adoc:65
+#, no-wrap
+msgid "Pretium nulla vel lorem.\n"
+msgstr "PRETIUM NULLA VEL LOREM.\n"
+
+#. type: Labeled list
+#: Lists.adoc:65
+#, no-wrap
+msgid "In"
+msgstr "IN"
+
+#. type: Plain text
+#: Lists.adoc:67
+#, no-wrap
+msgid "Dictum mauris in urna.\n"
+msgstr "DICTUM MAURIS IN URNA.\n"
+
+#. type: Labeled list
+#: Lists.adoc:68
+#, no-wrap
+msgid "<pathspec>..."
+msgstr "<PATHSPEC>..."
+
+#. type: Plain text
+#: Lists.adoc:71
+msgid ""
+"Files to add content from. Fileglobs (e.g. `*.c`) can be given to add all "
+"matching files."
+msgstr ""
+"FILES TO ADD CONTENT FROM. FILEGLOBS (E.G. `*.C`) CAN BE GIVEN TO ADD ALL "
+"MATCHING FILES."
+
+#. type: Labeled list
+#: Lists.adoc:72
+#, no-wrap
+msgid "-n"
+msgstr "-N"
+
+#. type: Labeled list
+#: Lists.adoc:73
+#, no-wrap
+msgid "--dry-run"
+msgstr "--DRY-RUN"
+
+#. type: Plain text
+#: Lists.adoc:76
+msgid ""
+"Don't actually add the file(s), just show if they exist and/or will be "
+"ignored."
+msgstr ""
+"DON'T ACTUALLY ADD THE FILE(S), JUST SHOW IF THEY EXIST AND/OR WILL BE "
+"IGNORED."
+
+#. type: Labeled list
+#: Lists.adoc:77
+#, no-wrap
+msgid "\\--"
+msgstr "\\--"
+
+#. type: Plain text
+#: Lists.adoc:81
+msgid ""
+"This option can be used to separate command-line options from the list of "
+"files, (useful when filenames might be mistaken for command-line options)."
+msgstr ""
+"THIS OPTION CAN BE USED TO SEPARATE COMMAND-LINE OPTIONS FROM THE LIST OF "
+"FILES, (USEFUL WHEN FILENAMES MIGHT BE MISTAKEN FOR COMMAND-LINE OPTIONS)."
+
+#. type: Labeled list
+#: Lists.adoc:82
+#, no-wrap
+msgid "[<refname>...]"
+msgstr "[<REFNAME>...]"
+
+#. type: Plain text
+#: Lists.adoc:85
+msgid ""
+"A list of references used to limit the references reported as available."
+msgstr ""
+"A LIST OF REFERENCES USED TO LIMIT THE REFERENCES REPORTED AS AVAILABLE."
+
+#. type: Labeled list
+#: Lists.adoc:86
+#, no-wrap
+msgid "$(prefix)/etc/gitconfig"
+msgstr "$(PREFIX)/ETC/GITCONFIG"
+
+#. type: Plain text
+#: Lists.adoc:88
+msgid "System-wide configuration file."
+msgstr "SYSTEM-WIDE CONFIGURATION FILE."
+
+#. type: Labeled list
+#: Lists.adoc:89
+#, no-wrap
+msgid "~/.gitconfig"
+msgstr "~/.GITCONFIG"
+
+#. type: Plain text
+#: Lists.adoc:92
+msgid ""
+"User-specific configuration file. Also called \"global\" configuration file."
+msgstr ""
+"USER-SPECIFIC CONFIGURATION FILE. ALSO CALLED \"GLOBAL\" CONFIGURATION FILE."
+
+#. type: Labeled list
+#: Lists.adoc:93
+#, no-wrap
+msgid "%G"
+msgstr "%G"
+
+#. type: Plain text
+#: Lists.adoc:95
+msgid "Git directory name"
+msgstr "GIT DIRECTORY NAME"
+
+#. type: Title -
+#: Lists.adoc:97
+#, no-wrap
+msgid "Horizontal Labeled Lists"
+msgstr "HORIZONTAL LABELED LISTS"
+
+#. type: Labeled list
+#: Lists.adoc:99 Lists.adoc:113 Lists.adoc:117
+#, no-wrap
+msgid "*Lorem*"
+msgstr "*LOREM*"
+
+#. type: Plain text
+#: Lists.adoc:101 Lists.adoc:116 Lists.adoc:120
+msgid ""
+"Fusce euismod commodo velit. Qui in magna commodo, est labitur dolorum an. "
+"Est ne magna primis adolescens."
+msgstr ""
+"FUSCE EUISMOD COMMODO VELIT. QUI IN MAGNA COMMODO, EST LABITUR DOLORUM AN. "
+"EST NE MAGNA PRIMIS ADOLESCENS."
+
+#. type: Plain text
+#: Lists.adoc:104
+#, no-wrap
+msgid ""
+" Fusce euismod commodo velit.\n"
+" Fusce euismod commodo velit.\n"
+msgstr ""
+" FUSCE EUISMOD COMMODO VELIT.\n"
+" FUSCE EUISMOD COMMODO VELIT.\n"
+
+#. type: Labeled list
+#: Lists.adoc:105
+#, no-wrap
+msgid "*Ipsum*"
+msgstr "*IPSUM*"
+
+#. type: Labeled list
+#: Lists.adoc:109 Lists.adoc:121
+#, no-wrap
+msgid "*Dolor*"
+msgstr "*DOLOR*"
+
+#. type: Labeled list
+#: Lists.adoc:124
+#, no-wrap
+msgid "|"
+msgstr "|"
+
+#. type: Labeled list
+#: Lists.adoc:127
+#, no-wrap
+msgid "{var}Dolor"
+msgstr "{VAR}DOLOR"
+
+#. type: Title -
+#: Lists.adoc:130
+#, no-wrap
+msgid "Question and Answer Lists"
+msgstr "QUESTION AND ANSWER LISTS"
+
+#. type: Labeled list
+#: Lists.adoc:131
+#, no-wrap
+msgid "Question one"
+msgstr "QUESTION ONE"
+
+#. type: Plain text
+#: Lists.adoc:133
+msgid "Answer one."
+msgstr "ANSWER ONE."
+
+#. type: Labeled list
+#: Lists.adoc:133
+#, no-wrap
+msgid "Question two"
+msgstr "QUESTION TWO"
+
+#. type: Plain text
+#: Lists.adoc:135
+msgid "Answer two."
+msgstr "ANSWER TWO."
+
+#. type: Title -
+#: Lists.adoc:137
+#, no-wrap
+msgid "Glossary Lists"
+msgstr "GLOSSARY LISTS"
+
+#. type: Labeled list
+#: Lists.adoc:139
+#, no-wrap
+msgid "A glossary term"
+msgstr "A GLOSSARY TERM"
+
+#. type: Plain text
+#: Lists.adoc:141 Lists.adoc:143
+msgid "The corresponding definition."
+msgstr "THE CORRESPONDING DEFINITION."
+
+#. type: Labeled list
+#: Lists.adoc:141
+#, no-wrap
+msgid "A second glossary term"
+msgstr "A SECOND GLOSSARY TERM"
+
+#. type: Title -
+#: Lists.adoc:145
+#, no-wrap
+msgid "Bibliography Lists"
+msgstr "BIBLIOGRAPHY LISTS"
+
+#. type: Plain text
+#: Lists.adoc:149 Lists.adoc:159
+msgid ""
+"[[[taoup]]] Eric Steven Raymond. 'The Art of UNIX Programming'. Addison-"
+"Wesley. ISBN 0-13-142901-9."
+msgstr ""
+"[[[TAOUP]]] ERIC STEVEN RAYMOND. 'THE ART OF UNIX PROGRAMMING'. ADDISON-"
+"WESLEY. ISBN 0-13-142901-9."
+
+#. type: Plain text
+#: Lists.adoc:152 Lists.adoc:162
+msgid ""
+"[[[walsh-muellner]]] Norman Walsh & Leonard Muellner. 'DocBook - The "
+"Definitive Guide'. O'Reilly & Associates. 1999. ISBN 1-56592-580-7."
+msgstr ""
+"[[[WALSH-MUELLNER]]] NORMAN WALSH & LEONARD MUELLNER. 'DOCBOOK - THE "
+"DEFINITIVE GUIDE'. O'REILLY & ASSOCIATES. 1999. ISBN 1-56592-580-7."
+
+#. type: Plain text
+#: Lists.adoc:154
+msgid "The same in a bibliography section, and without the doc typo"
+msgstr "THE SAME IN A BIBLIOGRAPHY SECTION, AND WITHOUT THE DOC TYPO"
+
+#. type: Title -
+#: Lists.adoc:156
+#, no-wrap
+msgid "Bibliography"
+msgstr "BIBLIOGRAPHY"
+
+#. type: Title -
+#: Lists.adoc:164
+#, no-wrap
+msgid "List Item Continuation"
+msgstr "LIST ITEM CONTINUATION"
+
+#. type: Plain text
+#: Lists.adoc:167 Lists.adoc:198
+msgid "List item one."
+msgstr "LIST ITEM ONE."
+
+#. type: Plain text
+#: Lists.adoc:170
+msgid ""
+"List item one continued with a second paragraph followed by an Indented "
+"block."
+msgstr ""
+"LIST ITEM ONE CONTINUED WITH A SECOND PARAGRAPH FOLLOWED BY AN INDENTED "
+"BLOCK."
+
+#. type: delimited block .
+#: Lists.adoc:174
+#, no-wrap
+msgid ""
+"$ ls *.sh\n"
+"$ mv *.sh ~/tmp\n"
+msgstr ""
+"$ LS *.SH\n"
+"$ MV *.SH ~/TMP\n"
+
+#. type: Plain text
+#: Lists.adoc:177
+msgid "List item one continued with a third paragraph."
+msgstr "LIST ITEM ONE CONTINUED WITH A THIRD PARAGRAPH."
+
+#. type: Plain text
+#: Lists.adoc:179
+msgid "List item two."
+msgstr "LIST ITEM TWO."
+
+#. type: Plain text
+#: Lists.adoc:182
+#, no-wrap
+msgid ""
+"List item two literal paragraph (no continuation required).\n"
+"(but this should not be wrapped).\n"
+msgstr ""
+"LIST ITEM TWO LITERAL PARAGRAPH (NO CONTINUATION REQUIRED).\n"
+"(BUT THIS SHOULD NOT BE WRAPPED).\n"
+
+#. type: Plain text
+#: Lists.adoc:184
+msgid "Nested list (item one)."
+msgstr "NESTED LIST (ITEM ONE)."
+
+#. type: Plain text
+#: Lists.adoc:187
+#, no-wrap
+msgid ""
+"Nested list literal paragraph (no continuation required).\n"
+"(but this should not be wrapped).\n"
+msgstr ""
+"NESTED LIST LITERAL PARAGRAPH (NO CONTINUATION REQUIRED).\n"
+"(BUT THIS SHOULD NOT BE WRAPPED).\n"
+
+#. type: Plain text
+#: Lists.adoc:189
+msgid "Nested list appended list item one paragraph"
+msgstr "NESTED LIST APPENDED LIST ITEM ONE PARAGRAPH"
+
+#. type: Plain text
+#: Lists.adoc:191
+msgid "Nested list item two."
+msgstr "NESTED LIST ITEM TWO."
+
+#. type: Title -
+#: Lists.adoc:194
+#, no-wrap
+msgid "List Block"
+msgstr "LIST BLOCK"
+
+#. type: Block title
+#: Lists.adoc:196
+#, no-wrap
+msgid "Nested List Block"
+msgstr "NESTED LIST BLOCK"
+
+#. type: Plain text
+#: Lists.adoc:200 Lists.adoc:205
+msgid "This paragraph is part of the preceding list item"
+msgstr "THIS PARAGRAPH IS PART OF THE PRECEDING LIST ITEM"
+
+#. type: Plain text
+#: Lists.adoc:203
+msgid "This list is nested and does not require explicit item continuation."
+msgstr "THIS LIST IS NESTED AND DOES NOT REQUIRE EXPLICIT ITEM CONTINUATION."
+
+#. type: Plain text
+#: Lists.adoc:207
+msgid "List item b."
+msgstr "LIST ITEM B."
+
+#. type: Plain text
+#: Lists.adoc:209
+msgid "This paragraph belongs to list item b."
+msgstr "THIS PARAGRAPH BELONGS TO LIST ITEM B."
+
+#. type: Plain text
+#: Lists.adoc:212
+msgid "This paragraph belongs to item 1."
+msgstr "THIS PARAGRAPH BELONGS TO ITEM 1."
+
+#. type: Plain text
+#: Lists.adoc:214
+msgid "Item 2 of the outer list."
+msgstr "ITEM 2 OF THE OUTER LIST."
+
+#. type: Block title
+#: Lists.adoc:215
+#, no-wrap
+msgid "Literal Paragraph in a Vertical Labeled Lists"
+msgstr "LITERAL PARAGRAPH IN A VERTICAL LABELED LISTS"
+
+#. type: Plain text
+#: Lists.adoc:218
+msgid "This comes from the git doc, on which po4a used to fail miserably."
+msgstr "THIS COMES FROM THE GIT DOC, ON WHICH PO4A USED TO FAIL MISERABLY."
+
+#. type: Labeled list
+#: Lists.adoc:219
+#, no-wrap
+msgid "patch"
+msgstr "PATCH"
+
+#. type: Plain text
+#: Lists.adoc:222
+msgid ""
+"This lets you choose one path out of a 'status' like selection. After "
+"choosing the path, it presents the diff between the index and the working "
+"tree file and asks you if you want to stage the change of each hunk. You "
+"can select one of the following options and type return:"
+msgstr "THIS LETS YOU CHOOSE ONE PATH OUT OF A 'STATUS' LIKE SELECTION. AFTER CHOOSING THE PATH, IT PRESENTS THE DIFF BETWEEN THE INDEX AND THE WORKING TREE FILE AND ASKS YOU IF YOU WANT TO STAGE THE CHANGE OF EACH HUNK. YOU CAN SELECT ONE OF THE FOLLOWING OPTIONS AND TYPE RETURN:"
+
+#. type: Plain text
+#: Lists.adoc:237
+#, no-wrap
+msgid ""
+"y - stage this hunk\n"
+"n - do not stage this hunk\n"
+"q - quit; do not stage this hunk or any of the remaining ones\n"
+"a - stage this hunk and all later hunks in the file\n"
+"d - do not stage this hunk or any of the later hunks in the file\n"
+"g - select a hunk to go to\n"
+"/ - search for a hunk matching the given regex\n"
+"j - leave this hunk undecided, see next undecided hunk\n"
+"J - leave this hunk undecided, see next hunk\n"
+"k - leave this hunk undecided, see previous undecided hunk\n"
+"K - leave this hunk undecided, see previous hunk\n"
+"s - split the current hunk into smaller hunks\n"
+"e - manually edit the current hunk\n"
+"? - print help\n"
+msgstr ""
+"Y - STAGE THIS HUNK\n"
+"N - DO NOT STAGE THIS HUNK\n"
+"Q - QUIT; DO NOT STAGE THIS HUNK OR ANY OF THE REMAINING ONES\n"
+"A - STAGE THIS HUNK AND ALL LATER HUNKS IN THE FILE\n"
+"D - DO NOT STAGE THIS HUNK OR ANY OF THE LATER HUNKS IN THE FILE\n"
+"G - SELECT A HUNK TO GO TO\n"
+"/ - SEARCH FOR A HUNK MATCHING THE GIVEN REGEX\n"
+"J - LEAVE THIS HUNK UNDECIDED, SEE NEXT UNDECIDED HUNK\n"
+"J - LEAVE THIS HUNK UNDECIDED, SEE NEXT HUNK\n"
+"K - LEAVE THIS HUNK UNDECIDED, SEE PREVIOUS UNDECIDED HUNK\n"
+"K - LEAVE THIS HUNK UNDECIDED, SEE PREVIOUS HUNK\n"
+"S - SPLIT THE CURRENT HUNK INTO SMALLER HUNKS\n"
+"E - MANUALLY EDIT THE CURRENT HUNK\n"
+"? - PRINT HELP\n"
+
+#. type: Plain text
+#: Lists.adoc:239
+msgid ""
+"After deciding the fate for all hunks, if there is any hunk that was chosen, "
+"the index is updated with the selected hunks."
+msgstr ""
+"AFTER DECIDING THE FATE FOR ALL HUNKS, IF THERE IS ANY HUNK THAT WAS CHOSEN, "
+"THE INDEX IS UPDATED WITH THE SELECTED HUNKS."
+
+#. type: Plain text
+#: Lists.adoc:241
+msgid "First level"
+msgstr "FIRST LEVEL"
+
+#. type: Plain text
+#: Lists.adoc:242
+msgid "Second level"
+msgstr "SECOND LEVEL"
+
+#. type: Plain text
+#: Lists.adoc:243
+msgid "Third level"
+msgstr "THIRD LEVEL"
+
+#. type: Plain text
+#: Lists.adoc:244
+msgid "Fourth level"
+msgstr "FOURTH LEVEL"
+
+#. type: Plain text
+#: Lists.adoc:245
+msgid "Fifth level"
+msgstr "FIFTH LEVEL"
+
+#. type: Plain text
+#: Lists.adoc:247
+msgid "Unchecked"
+msgstr "UNCHECKED"
+
+#. type: Plain text
+#: Lists.adoc:248 Lists.adoc:249 Lists.adoc:250
+msgid "Checked"
+msgstr "CHECKED"
+
+#. type: Plain text
+#: Lists.adoc:252
+msgid "*starting* with a strong item"
+msgstr "*STARTING* WITH A STRONG ITEM"
diff --git a/t/fmt/asciidoc/Lists.pot b/t/fmt/asciidoc/Lists.pot
new file mode 100644
index 0000000..025bbd4
--- /dev/null
+++ b/t/fmt/asciidoc/Lists.pot
@@ -0,0 +1,624 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2023-06-17 11:44+0200\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Title =
+#: Lists.adoc:2
+#, no-wrap
+msgid "Test Lists"
+msgstr ""
+
+#. type: Title -
+#: Lists.adoc:5
+#, no-wrap
+msgid "Bulleted and Numbered Lists"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:8 Lists.adoc:11
+msgid "List item."
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:10
+msgid "List item which content spans over several lines (missing leading indent)"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:13
+msgid "Integer numbered list item."
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:14
+msgid "Integer numbered list item with optional numbering."
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:15
+msgid "Lowercase letter numbered list item."
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:16
+msgid "Lowercase letter numbered list item with optional numbering."
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:17
+msgid "Third level of numbered list."
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:19
+msgid "Lorem ipsum dolor sit amet, consectetuer adipiscing elit."
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:20 Lists.adoc:27 Lists.adoc:29 Lists.adoc:33 Lists.adoc:34
+#: Lists.adoc:52 Lists.adoc:54
+msgid "Fusce euismod commodo velit."
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:23
+msgid ""
+"Qui in magna commodo, est labitur dolorum an. Est ne magna primis "
+"adolescens. Sit munere ponderum dignissim et. Minim luptatum et vel."
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:24 Lists.adoc:28 Lists.adoc:30 Lists.adoc:35 Lists.adoc:37
+#: Lists.adoc:57 Lists.adoc:58 Lists.adoc:106 Lists.adoc:107 Lists.adoc:111
+#: Lists.adoc:123 Lists.adoc:126
+msgid "Vivamus fringilla mi eu lacus."
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:25 Lists.adoc:31 Lists.adoc:36 Lists.adoc:38 Lists.adoc:59
+#: Lists.adoc:61 Lists.adoc:108 Lists.adoc:112 Lists.adoc:128
+msgid "Donec eget arcu bibendum nunc consequat lobortis."
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:26
+msgid "Nulla porttitor vulputate libero."
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:32
+msgid "Praesent eget purus quis magna eleifend eleifend."
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:39
+msgid "Nam fermentum mattis ante."
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:41
+msgid "List Item 1"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:42
+msgid "Non-indented new list Item"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:43
+msgid "Another Item"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:44
+msgid "List Item 2"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:45
+msgid "List Item 3"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:46
+msgid "Non-indented new list Item 2"
+msgstr ""
+
+#. type: Title -
+#: Lists.adoc:48
+#, no-wrap
+msgid "Vertical Labeled Lists"
+msgstr ""
+
+#. type: Labeled list
+#: Lists.adoc:50
+#, no-wrap
+msgid "Lorem"
+msgstr ""
+
+#. type: Labeled list
+#: Lists.adoc:55
+#, no-wrap
+msgid "Ipsum"
+msgstr ""
+
+#. type: Labeled list
+#: Lists.adoc:59
+#, no-wrap
+msgid "Dolor"
+msgstr ""
+
+#. type: Labeled list
+#: Lists.adoc:61
+#, no-wrap
+msgid "Suspendisse"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:63
+#, no-wrap
+msgid "A massa id sem aliquam auctor.\n"
+msgstr ""
+
+#. type: Labeled list
+#: Lists.adoc:63
+#, no-wrap
+msgid "Morbi"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:65
+#, no-wrap
+msgid "Pretium nulla vel lorem.\n"
+msgstr ""
+
+#. type: Labeled list
+#: Lists.adoc:65
+#, no-wrap
+msgid "In"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:67
+#, no-wrap
+msgid "Dictum mauris in urna.\n"
+msgstr ""
+
+#. type: Labeled list
+#: Lists.adoc:68
+#, no-wrap
+msgid "<pathspec>..."
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:71
+msgid ""
+"Files to add content from. Fileglobs (e.g. `*.c`) can be given to add all "
+"matching files."
+msgstr ""
+
+#. type: Labeled list
+#: Lists.adoc:72
+#, no-wrap
+msgid "-n"
+msgstr ""
+
+#. type: Labeled list
+#: Lists.adoc:73
+#, no-wrap
+msgid "--dry-run"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:76
+msgid ""
+"Don't actually add the file(s), just show if they exist and/or will be "
+"ignored."
+msgstr ""
+
+#. type: Labeled list
+#: Lists.adoc:77
+#, no-wrap
+msgid "\\--"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:81
+msgid ""
+"This option can be used to separate command-line options from the list of "
+"files, (useful when filenames might be mistaken for command-line options)."
+msgstr ""
+
+#. type: Labeled list
+#: Lists.adoc:82
+#, no-wrap
+msgid "[<refname>...]"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:85
+msgid "A list of references used to limit the references reported as available."
+msgstr ""
+
+#. type: Labeled list
+#: Lists.adoc:86
+#, no-wrap
+msgid "$(prefix)/etc/gitconfig"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:88
+msgid "System-wide configuration file."
+msgstr ""
+
+#. type: Labeled list
+#: Lists.adoc:89
+#, no-wrap
+msgid "~/.gitconfig"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:92
+msgid "User-specific configuration file. Also called \"global\" configuration file."
+msgstr ""
+
+#. type: Labeled list
+#: Lists.adoc:93
+#, no-wrap
+msgid "%G"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:95
+msgid "Git directory name"
+msgstr ""
+
+#. type: Title -
+#: Lists.adoc:97
+#, no-wrap
+msgid "Horizontal Labeled Lists"
+msgstr ""
+
+#. type: Labeled list
+#: Lists.adoc:99 Lists.adoc:113 Lists.adoc:117
+#, no-wrap
+msgid "*Lorem*"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:101 Lists.adoc:116 Lists.adoc:120
+msgid ""
+"Fusce euismod commodo velit. Qui in magna commodo, est labitur dolorum "
+"an. Est ne magna primis adolescens."
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:104
+#, no-wrap
+msgid ""
+" Fusce euismod commodo velit.\n"
+" Fusce euismod commodo velit.\n"
+msgstr ""
+
+#. type: Labeled list
+#: Lists.adoc:105
+#, no-wrap
+msgid "*Ipsum*"
+msgstr ""
+
+#. type: Labeled list
+#: Lists.adoc:109 Lists.adoc:121
+#, no-wrap
+msgid "*Dolor*"
+msgstr ""
+
+#. type: Labeled list
+#: Lists.adoc:124
+#, no-wrap
+msgid "|"
+msgstr ""
+
+#. type: Labeled list
+#: Lists.adoc:127
+#, no-wrap
+msgid "{var}Dolor"
+msgstr ""
+
+#. type: Title -
+#: Lists.adoc:130
+#, no-wrap
+msgid "Question and Answer Lists"
+msgstr ""
+
+#. type: Labeled list
+#: Lists.adoc:131
+#, no-wrap
+msgid "Question one"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:133
+msgid "Answer one."
+msgstr ""
+
+#. type: Labeled list
+#: Lists.adoc:133
+#, no-wrap
+msgid "Question two"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:135
+msgid "Answer two."
+msgstr ""
+
+#. type: Title -
+#: Lists.adoc:137
+#, no-wrap
+msgid "Glossary Lists"
+msgstr ""
+
+#. type: Labeled list
+#: Lists.adoc:139
+#, no-wrap
+msgid "A glossary term"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:141 Lists.adoc:143
+msgid "The corresponding definition."
+msgstr ""
+
+#. type: Labeled list
+#: Lists.adoc:141
+#, no-wrap
+msgid "A second glossary term"
+msgstr ""
+
+#. type: Title -
+#: Lists.adoc:145
+#, no-wrap
+msgid "Bibliography Lists"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:149 Lists.adoc:159
+msgid ""
+"[[[taoup]]] Eric Steven Raymond. 'The Art of UNIX "
+"Programming'. Addison-Wesley. ISBN 0-13-142901-9."
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:152 Lists.adoc:162
+msgid ""
+"[[[walsh-muellner]]] Norman Walsh & Leonard Muellner. 'DocBook - The "
+"Definitive Guide'. O'Reilly & Associates. 1999. ISBN 1-56592-580-7."
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:154
+msgid "The same in a bibliography section, and without the doc typo"
+msgstr ""
+
+#. type: Title -
+#: Lists.adoc:156
+#, no-wrap
+msgid "Bibliography"
+msgstr ""
+
+#. type: Title -
+#: Lists.adoc:164
+#, no-wrap
+msgid "List Item Continuation"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:167 Lists.adoc:198
+msgid "List item one."
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:170
+msgid ""
+"List item one continued with a second paragraph followed by an Indented "
+"block."
+msgstr ""
+
+#. type: delimited block .
+#: Lists.adoc:174
+#, no-wrap
+msgid ""
+"$ ls *.sh\n"
+"$ mv *.sh ~/tmp\n"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:177
+msgid "List item one continued with a third paragraph."
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:179
+msgid "List item two."
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:182
+#, no-wrap
+msgid ""
+"List item two literal paragraph (no continuation required).\n"
+"(but this should not be wrapped).\n"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:184
+msgid "Nested list (item one)."
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:187
+#, no-wrap
+msgid ""
+"Nested list literal paragraph (no continuation required).\n"
+"(but this should not be wrapped).\n"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:189
+msgid "Nested list appended list item one paragraph"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:191
+msgid "Nested list item two."
+msgstr ""
+
+#. type: Title -
+#: Lists.adoc:194
+#, no-wrap
+msgid "List Block"
+msgstr ""
+
+#. type: Block title
+#: Lists.adoc:196
+#, no-wrap
+msgid "Nested List Block"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:200 Lists.adoc:205
+msgid "This paragraph is part of the preceding list item"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:203
+msgid "This list is nested and does not require explicit item continuation."
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:207
+msgid "List item b."
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:209
+msgid "This paragraph belongs to list item b."
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:212
+msgid "This paragraph belongs to item 1."
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:214
+msgid "Item 2 of the outer list."
+msgstr ""
+
+#. type: Block title
+#: Lists.adoc:215
+#, no-wrap
+msgid "Literal Paragraph in a Vertical Labeled Lists"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:218
+msgid "This comes from the git doc, on which po4a used to fail miserably."
+msgstr ""
+
+#. type: Labeled list
+#: Lists.adoc:219
+#, no-wrap
+msgid "patch"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:222
+msgid ""
+"This lets you choose one path out of a 'status' like selection. After "
+"choosing the path, it presents the diff between the index and the working "
+"tree file and asks you if you want to stage the change of each hunk. You "
+"can select one of the following options and type return:"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:237
+#, no-wrap
+msgid ""
+"y - stage this hunk\n"
+"n - do not stage this hunk\n"
+"q - quit; do not stage this hunk or any of the remaining ones\n"
+"a - stage this hunk and all later hunks in the file\n"
+"d - do not stage this hunk or any of the later hunks in the file\n"
+"g - select a hunk to go to\n"
+"/ - search for a hunk matching the given regex\n"
+"j - leave this hunk undecided, see next undecided hunk\n"
+"J - leave this hunk undecided, see next hunk\n"
+"k - leave this hunk undecided, see previous undecided hunk\n"
+"K - leave this hunk undecided, see previous hunk\n"
+"s - split the current hunk into smaller hunks\n"
+"e - manually edit the current hunk\n"
+"? - print help\n"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:239
+msgid ""
+"After deciding the fate for all hunks, if there is any hunk that was chosen, "
+"the index is updated with the selected hunks."
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:241
+msgid "First level"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:242
+msgid "Second level"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:243
+msgid "Third level"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:244
+msgid "Fourth level"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:245
+msgid "Fifth level"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:247
+msgid "Unchecked"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:248 Lists.adoc:249 Lists.adoc:250
+msgid "Checked"
+msgstr ""
+
+#. type: Plain text
+#: Lists.adoc:252
+msgid "*starting* with a strong item"
+msgstr ""
diff --git a/t/fmt/asciidoc/Lists.trans b/t/fmt/asciidoc/Lists.trans
new file mode 100644
index 0000000..35ccfb1
--- /dev/null
+++ b/t/fmt/asciidoc/Lists.trans
@@ -0,0 +1,230 @@
+TEST LISTS
+==========
+
+BULLETED AND NUMBERED LISTS
+---------------------------
+
+- LIST ITEM.
+- LIST ITEM WHICH CONTENT SPANS OVER SEVERAL LINES (MISSING LEADING INDENT)
+* LIST ITEM.
+
+. INTEGER NUMBERED LIST ITEM.
+1. INTEGER NUMBERED LIST ITEM WITH OPTIONAL NUMBERING.
+.. LOWERCASE LETTER NUMBERED LIST ITEM.
+a. LOWERCASE LETTER NUMBERED LIST ITEM WITH OPTIONAL NUMBERING.
+... THIRD LEVEL OF NUMBERED LIST.
+
+- LOREM IPSUM DOLOR SIT AMET, CONSECTETUER ADIPISCING ELIT.
+ * FUSCE EUISMOD COMMODO VELIT.
+ * QUI IN MAGNA COMMODO, EST LABITUR DOLORUM AN. EST NE MAGNA PRIMIS ADOLESCENS. SIT MUNERE PONDERUM DIGNISSIM ET. MINIM LUPTATUM ET VEL.
+ * VIVAMUS FRINGILLA MI EU LACUS.
+ * DONEC EGET ARCU BIBENDUM NUNC CONSEQUAT LOBORTIS.
+- NULLA PORTTITOR VULPUTATE LIBERO.
+ . FUSCE EUISMOD COMMODO VELIT.
+ . VIVAMUS FRINGILLA MI EU LACUS.
+ .. FUSCE EUISMOD COMMODO VELIT.
+ .. VIVAMUS FRINGILLA MI EU LACUS.
+ . DONEC EGET ARCU BIBENDUM NUNC CONSEQUAT LOBORTIS.
+- PRAESENT EGET PURUS QUIS MAGNA ELEIFEND ELEIFEND.
+ 1. FUSCE EUISMOD COMMODO VELIT.
+ a. FUSCE EUISMOD COMMODO VELIT.
+ b. VIVAMUS FRINGILLA MI EU LACUS.
+ c. DONEC EGET ARCU BIBENDUM NUNC CONSEQUAT LOBORTIS.
+ 2. VIVAMUS FRINGILLA MI EU LACUS.
+ 3. DONEC EGET ARCU BIBENDUM NUNC CONSEQUAT LOBORTIS.
+ 4. NAM FERMENTUM MATTIS ANTE.
+
+* LIST ITEM 1
+** NON-INDENTED NEW LIST ITEM
+** ANOTHER ITEM
+* LIST ITEM 2
+* LIST ITEM 3
+** NON-INDENTED NEW LIST ITEM 2
+
+VERTICAL LABELED LISTS
+----------------------
+
+LOREM::
+ FUSCE EUISMOD COMMODO VELIT.
+
+ FUSCE EUISMOD COMMODO VELIT.
+
+IPSUM::
+ VIVAMUS FRINGILLA MI EU LACUS.
+ * VIVAMUS FRINGILLA MI EU LACUS.
+ * DONEC EGET ARCU BIBENDUM NUNC CONSEQUAT LOBORTIS.
+DOLOR::
+ DONEC EGET ARCU BIBENDUM NUNC CONSEQUAT LOBORTIS.
+ SUSPENDISSE;;
+ A MASSA ID SEM ALIQUAM AUCTOR.
+ MORBI;;
+ PRETIUM NULLA VEL LOREM.
+ IN;;
+ DICTUM MAURIS IN URNA.
+
+<PATHSPEC>...::
+ FILES TO ADD CONTENT FROM. FILEGLOBS (E.G. `*.C`) CAN BE GIVEN TO ADD ALL MATCHING FILES.
+
+-N::
+--DRY-RUN::
+ DON'T ACTUALLY ADD THE FILE(S), JUST SHOW IF THEY EXIST AND/OR WILL BE IGNORED.
+
+\--::
+ THIS OPTION CAN BE USED TO SEPARATE COMMAND-LINE OPTIONS FROM THE LIST OF FILES, (USEFUL WHEN FILENAMES MIGHT BE MISTAKEN FOR COMMAND-LINE OPTIONS).
+
+[<REFNAME>...]::
+ A LIST OF REFERENCES USED TO LIMIT THE REFERENCES REPORTED AS AVAILABLE.
+
+$(PREFIX)/ETC/GITCONFIG::
+ SYSTEM-WIDE CONFIGURATION FILE.
+
+~/.GITCONFIG::
+ USER-SPECIFIC CONFIGURATION FILE. ALSO CALLED "GLOBAL" CONFIGURATION FILE.
+
+%G::
+ GIT DIRECTORY NAME
+
+HORIZONTAL LABELED LISTS
+------------------------
+
+*LOREM*:: FUSCE EUISMOD COMMODO VELIT. QUI IN MAGNA COMMODO, EST LABITUR DOLORUM AN. EST NE MAGNA PRIMIS ADOLESCENS.
+
+ FUSCE EUISMOD COMMODO VELIT.
+ FUSCE EUISMOD COMMODO VELIT.
+
+*IPSUM*:: VIVAMUS FRINGILLA MI EU LACUS.
+- VIVAMUS FRINGILLA MI EU LACUS.
+- DONEC EGET ARCU BIBENDUM NUNC CONSEQUAT LOBORTIS.
+
+*DOLOR*:: \
+ - VIVAMUS FRINGILLA MI EU LACUS.
+ - DONEC EGET ARCU BIBENDUM NUNC CONSEQUAT LOBORTIS.
+
+*LOREM*:: FUSCE EUISMOD COMMODO VELIT. QUI IN MAGNA COMMODO, EST LABITUR DOLORUM AN. EST NE MAGNA PRIMIS ADOLESCENS.
+
+*LOREM*::: FUSCE EUISMOD COMMODO VELIT. QUI IN MAGNA COMMODO, EST LABITUR DOLORUM AN. EST NE MAGNA PRIMIS ADOLESCENS.
+
+*DOLOR*:::
+ VIVAMUS FRINGILLA MI EU LACUS.
+
+|::
+ VIVAMUS FRINGILLA MI EU LACUS.
+
+{VAR}DOLOR:: DONEC EGET ARCU BIBENDUM NUNC CONSEQUAT LOBORTIS.
+
+QUESTION AND ANSWER LISTS
+-------------------------
+QUESTION ONE??
+ ANSWER ONE.
+QUESTION TWO??
+ ANSWER TWO.
+
+GLOSSARY LISTS
+--------------
+
+A GLOSSARY TERM:-
+ THE CORRESPONDING DEFINITION.
+A SECOND GLOSSARY TERM:-
+ THE CORRESPONDING DEFINITION.
+
+BIBLIOGRAPHY LISTS
+------------------
+
++ [[[TAOUP]]] ERIC STEVEN RAYMOND. 'THE ART OF UNIX PROGRAMMING'. ADDISON-WESLEY. ISBN 0-13-142901-9.
++ [[[WALSH-MUELLNER]]] NORMAN WALSH & LEONARD MUELLNER. 'DOCBOOK - THE DEFINITIVE GUIDE'. O'REILLY & ASSOCIATES. 1999. ISBN 1-56592-580-7.
+
+THE SAME IN A BIBLIOGRAPHY SECTION, AND WITHOUT THE DOC TYPO
+
+BIBLIOGRAPHY
+------------
++ [[[TAOUP]]] ERIC STEVEN RAYMOND. 'THE ART OF UNIX PROGRAMMING'. ADDISON-WESLEY. ISBN 0-13-142901-9.
++ [[[WALSH-MUELLNER]]] NORMAN WALSH & LEONARD MUELLNER. 'DOCBOOK - THE DEFINITIVE GUIDE'. O'REILLY & ASSOCIATES. 1999. ISBN 1-56592-580-7.
+
+LIST ITEM CONTINUATION
+----------------------
+
+1. LIST ITEM ONE.
++
+LIST ITEM ONE CONTINUED WITH A SECOND PARAGRAPH FOLLOWED BY AN INDENTED BLOCK.
++
+.................
+$ LS *.SH
+$ MV *.SH ~/TMP
+.................
++
+LIST ITEM ONE CONTINUED WITH A THIRD PARAGRAPH.
+
+2. LIST ITEM TWO.
+
+ LIST ITEM TWO LITERAL PARAGRAPH (NO CONTINUATION REQUIRED).
+ (BUT THIS SHOULD NOT BE WRAPPED).
+
+- NESTED LIST (ITEM ONE).
+
+ NESTED LIST LITERAL PARAGRAPH (NO CONTINUATION REQUIRED).
+ (BUT THIS SHOULD NOT BE WRAPPED).
++
+NESTED LIST APPENDED LIST ITEM ONE PARAGRAPH
+
+- NESTED LIST ITEM TWO.
+
+
+LIST BLOCK
+----------
+
+.NESTED LIST BLOCK
+1. LIST ITEM ONE.
++
+THIS PARAGRAPH IS PART OF THE PRECEDING LIST ITEM
++
+--
+a. THIS LIST IS NESTED AND DOES NOT REQUIRE EXPLICIT ITEM CONTINUATION.
+
+THIS PARAGRAPH IS PART OF THE PRECEDING LIST ITEM
+
+b. LIST ITEM B.
+
+THIS PARAGRAPH BELONGS TO LIST ITEM B.
+--
++
+THIS PARAGRAPH BELONGS TO ITEM 1.
+
+2. ITEM 2 OF THE OUTER LIST.
+
+.LITERAL PARAGRAPH IN A VERTICAL LABELED LISTS
+
+THIS COMES FROM THE GIT DOC, ON WHICH PO4A USED TO FAIL MISERABLY.
+
+PATCH::
+
+ THIS LETS YOU CHOOSE ONE PATH OUT OF A 'STATUS' LIKE SELECTION. AFTER CHOOSING THE PATH, IT PRESENTS THE DIFF BETWEEN THE INDEX AND THE WORKING TREE FILE AND ASKS YOU IF YOU WANT TO STAGE THE CHANGE OF EACH HUNK. YOU CAN SELECT ONE OF THE FOLLOWING OPTIONS AND TYPE RETURN:
+
+ Y - STAGE THIS HUNK
+ N - DO NOT STAGE THIS HUNK
+ Q - QUIT; DO NOT STAGE THIS HUNK OR ANY OF THE REMAINING ONES
+ A - STAGE THIS HUNK AND ALL LATER HUNKS IN THE FILE
+ D - DO NOT STAGE THIS HUNK OR ANY OF THE LATER HUNKS IN THE FILE
+ G - SELECT A HUNK TO GO TO
+ / - SEARCH FOR A HUNK MATCHING THE GIVEN REGEX
+ J - LEAVE THIS HUNK UNDECIDED, SEE NEXT UNDECIDED HUNK
+ J - LEAVE THIS HUNK UNDECIDED, SEE NEXT HUNK
+ K - LEAVE THIS HUNK UNDECIDED, SEE PREVIOUS UNDECIDED HUNK
+ K - LEAVE THIS HUNK UNDECIDED, SEE PREVIOUS HUNK
+ S - SPLIT THE CURRENT HUNK INTO SMALLER HUNKS
+ E - MANUALLY EDIT THE CURRENT HUNK
+ ? - PRINT HELP
++
+AFTER DECIDING THE FATE FOR ALL HUNKS, IF THERE IS ANY HUNK THAT WAS CHOSEN, THE INDEX IS UPDATED WITH THE SELECTED HUNKS.
+
+. FIRST LEVEL
+.. SECOND LEVEL
+... THIRD LEVEL
+.... FOURTH LEVEL
+..... FIFTH LEVEL
+
+* [ ] UNCHECKED
+* [x] CHECKED
+* [X] CHECKED
+* [*] CHECKED
+
+1. *STARTING* WITH A STRONG ITEM
diff --git a/t/fmt/asciidoc/Lists.trans.stderr b/t/fmt/asciidoc/Lists.trans.stderr
new file mode 100644
index 0000000..b858cc9
--- /dev/null
+++ b/t/fmt/asciidoc/Lists.trans.stderr
@@ -0,0 +1 @@
+Lists.adoc:9: It seems that you are adding unindented content to an item. The standard allows this, but you may still want to change your document to use indented text to provide better visual clues to writers.
diff --git a/t/fmt/asciidoc/MacroIncludesHugo.adoc b/t/fmt/asciidoc/MacroIncludesHugo.adoc
new file mode 100644
index 0000000..a779282
--- /dev/null
+++ b/t/fmt/asciidoc/MacroIncludesHugo.adoc
@@ -0,0 +1,31 @@
+== Includes
+
+include::shared/attributes/attributes-{{% lang %}}.adoc[]
+include::shared/{{% lang %}}/teams.adoc[]
+include::shared/{{% lang %}}/mailing-lists.adoc[]
+include::shared/{{% lang %}}/urls.adoc[]
+include::partial.adoc[]
+include::chapter01.adoc[]
+include::chapter01.adoc[leveloffset=+1]
+include::attributes-settings.adoc[]
+include::attributes-urls.adoc[]
+include::{includedir}/fragment1.adoc[]
+include::{sourcedir}/org/asciidoctor/Asciidoctor.java[]
+include::sales/2016/results.csv[]
+include::complex-list-item.adoc[]
+include::filename.txt[lines="1..10,15..20"]
+include::filename.txt[lines=12..-1]
+include::https://raw.githubusercontent.com/asciidoctor/asciidoctor/main/README.adoc[]
+
+== Description List
+
+CPU:: The brain of the computer.
+Hard drive:: Permanent storage for operating system and/or user files.
+RAM:: Temporarily stores information the CPU uses during operation.
+Keyboard:: Used to enter text or control items on the screen.
+Mouse:: Used to point to and select items on your computer screen.
+Monitor:: Displays information in visual form using text and graphics.
+Include:: Displays information in visual form using text and graphics.
+include:: Displays information in visual form using text and graphics.
+include:: Displays information in visual form using[] text and graphics.
+include:: Displays information in visual form using text and graphics.[]
diff --git a/t/fmt/asciidoc/MacroIncludesHugo.norm b/t/fmt/asciidoc/MacroIncludesHugo.norm
new file mode 100644
index 0000000..a779282
--- /dev/null
+++ b/t/fmt/asciidoc/MacroIncludesHugo.norm
@@ -0,0 +1,31 @@
+== Includes
+
+include::shared/attributes/attributes-{{% lang %}}.adoc[]
+include::shared/{{% lang %}}/teams.adoc[]
+include::shared/{{% lang %}}/mailing-lists.adoc[]
+include::shared/{{% lang %}}/urls.adoc[]
+include::partial.adoc[]
+include::chapter01.adoc[]
+include::chapter01.adoc[leveloffset=+1]
+include::attributes-settings.adoc[]
+include::attributes-urls.adoc[]
+include::{includedir}/fragment1.adoc[]
+include::{sourcedir}/org/asciidoctor/Asciidoctor.java[]
+include::sales/2016/results.csv[]
+include::complex-list-item.adoc[]
+include::filename.txt[lines="1..10,15..20"]
+include::filename.txt[lines=12..-1]
+include::https://raw.githubusercontent.com/asciidoctor/asciidoctor/main/README.adoc[]
+
+== Description List
+
+CPU:: The brain of the computer.
+Hard drive:: Permanent storage for operating system and/or user files.
+RAM:: Temporarily stores information the CPU uses during operation.
+Keyboard:: Used to enter text or control items on the screen.
+Mouse:: Used to point to and select items on your computer screen.
+Monitor:: Displays information in visual form using text and graphics.
+Include:: Displays information in visual form using text and graphics.
+include:: Displays information in visual form using text and graphics.
+include:: Displays information in visual form using[] text and graphics.
+include:: Displays information in visual form using text and graphics.[]
diff --git a/t/fmt/asciidoc/MacroIncludesHugo.po b/t/fmt/asciidoc/MacroIncludesHugo.po
new file mode 100644
index 0000000..13a4ce9
--- /dev/null
+++ b/t/fmt/asciidoc/MacroIncludesHugo.po
@@ -0,0 +1,119 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2022-01-23 10:54-0300\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Title ==
+#: MacroIncludesHugo.adoc:1
+#, no-wrap
+msgid "Includes"
+msgstr "iNCLUDES"
+
+#. type: Title ==
+#: MacroIncludesHugo.adoc:20
+#, no-wrap
+msgid "Description List"
+msgstr "dESCRIPTION lIST"
+
+#. type: Labeled list
+#: MacroIncludesHugo.adoc:22
+#, no-wrap
+msgid "CPU"
+msgstr "cpu"
+
+#. type: Plain text
+#: MacroIncludesHugo.adoc:23
+msgid "The brain of the computer."
+msgstr "tHE BRAIN OF THE COMPUTER."
+
+#. type: Labeled list
+#: MacroIncludesHugo.adoc:23
+#, no-wrap
+msgid "Hard drive"
+msgstr "hARD DRIVE"
+
+#. type: Plain text
+#: MacroIncludesHugo.adoc:24
+msgid "Permanent storage for operating system and/or user files."
+msgstr "pERMANENT STORAGE FOR OPERATING SYSTEM AND/OR USER FILES."
+
+#. type: Labeled list
+#: MacroIncludesHugo.adoc:24
+#, no-wrap
+msgid "RAM"
+msgstr "ram"
+
+#. type: Plain text
+#: MacroIncludesHugo.adoc:25
+msgid "Temporarily stores information the CPU uses during operation."
+msgstr "tEMPORARILY STORES INFORMATION THE cpu USES DURING OPERATION."
+
+#. type: Labeled list
+#: MacroIncludesHugo.adoc:25
+#, no-wrap
+msgid "Keyboard"
+msgstr "kEYBOARD"
+
+#. type: Plain text
+#: MacroIncludesHugo.adoc:26
+msgid "Used to enter text or control items on the screen."
+msgstr "uSED TO ENTER TEXT OR CONTROL ITEMS ON THE SCREEN."
+
+#. type: Labeled list
+#: MacroIncludesHugo.adoc:26
+#, no-wrap
+msgid "Mouse"
+msgstr "mOUSE"
+
+#. type: Plain text
+#: MacroIncludesHugo.adoc:27
+msgid "Used to point to and select items on your computer screen."
+msgstr "uSED TO POINT TO AND SELECT ITEMS ON YOUR COMPUTER SCREEN."
+
+#. type: Labeled list
+#: MacroIncludesHugo.adoc:27
+#, no-wrap
+msgid "Monitor"
+msgstr "mONITOR"
+
+#. type: Plain text
+#: MacroIncludesHugo.adoc:28 MacroIncludesHugo.adoc:29
+#: MacroIncludesHugo.adoc:30
+msgid "Displays information in visual form using text and graphics."
+msgstr "dISPLAYS INFORMATION IN VISUAL FORM USING TEXT AND GRAPHICS."
+
+#. type: Labeled list
+#: MacroIncludesHugo.adoc:28
+#, no-wrap
+msgid "Include"
+msgstr "iNCLUDE"
+
+#. type: Labeled list
+#: MacroIncludesHugo.adoc:29 MacroIncludesHugo.adoc:30
+#: MacroIncludesHugo.adoc:31
+#, no-wrap
+msgid "include"
+msgstr "INCLUDE"
+
+#. type: Plain text
+#: MacroIncludesHugo.adoc:31
+msgid "Displays information in visual form using[] text and graphics."
+msgstr "dISPLAYS INFORMATION IN VISUAL FORM USING[] TEXT AND GRAPHICS."
+
+#. type: Plain text
+#: MacroIncludesHugo.adoc:31
+msgid "Displays information in visual form using text and graphics.[]"
+msgstr "dISPLAYS INFORMATION IN VISUAL FORM USING TEXT AND GRAPHICS.[]"
diff --git a/t/fmt/asciidoc/MacroIncludesHugo.pot b/t/fmt/asciidoc/MacroIncludesHugo.pot
new file mode 100644
index 0000000..f999645
--- /dev/null
+++ b/t/fmt/asciidoc/MacroIncludesHugo.pot
@@ -0,0 +1,119 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2022-01-23 10:48-0300\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Title ==
+#: MacroIncludesHugo.adoc:1
+#, no-wrap
+msgid "Includes"
+msgstr ""
+
+#. type: Title ==
+#: MacroIncludesHugo.adoc:20
+#, no-wrap
+msgid "Description List"
+msgstr ""
+
+#. type: Labeled list
+#: MacroIncludesHugo.adoc:22
+#, no-wrap
+msgid "CPU"
+msgstr ""
+
+#. type: Plain text
+#: MacroIncludesHugo.adoc:23
+msgid "The brain of the computer."
+msgstr ""
+
+#. type: Labeled list
+#: MacroIncludesHugo.adoc:23
+#, no-wrap
+msgid "Hard drive"
+msgstr ""
+
+#. type: Plain text
+#: MacroIncludesHugo.adoc:24
+msgid "Permanent storage for operating system and/or user files."
+msgstr ""
+
+#. type: Labeled list
+#: MacroIncludesHugo.adoc:24
+#, no-wrap
+msgid "RAM"
+msgstr ""
+
+#. type: Plain text
+#: MacroIncludesHugo.adoc:25
+msgid "Temporarily stores information the CPU uses during operation."
+msgstr ""
+
+#. type: Labeled list
+#: MacroIncludesHugo.adoc:25
+#, no-wrap
+msgid "Keyboard"
+msgstr ""
+
+#. type: Plain text
+#: MacroIncludesHugo.adoc:26
+msgid "Used to enter text or control items on the screen."
+msgstr ""
+
+#. type: Labeled list
+#: MacroIncludesHugo.adoc:26
+#, no-wrap
+msgid "Mouse"
+msgstr ""
+
+#. type: Plain text
+#: MacroIncludesHugo.adoc:27
+msgid "Used to point to and select items on your computer screen."
+msgstr ""
+
+#. type: Labeled list
+#: MacroIncludesHugo.adoc:27
+#, no-wrap
+msgid "Monitor"
+msgstr ""
+
+#. type: Plain text
+#: MacroIncludesHugo.adoc:28 MacroIncludesHugo.adoc:29
+#: MacroIncludesHugo.adoc:30
+msgid "Displays information in visual form using text and graphics."
+msgstr ""
+
+#. type: Labeled list
+#: MacroIncludesHugo.adoc:28
+#, no-wrap
+msgid "Include"
+msgstr ""
+
+#. type: Labeled list
+#: MacroIncludesHugo.adoc:29 MacroIncludesHugo.adoc:30
+#: MacroIncludesHugo.adoc:31
+#, no-wrap
+msgid "include"
+msgstr ""
+
+#. type: Plain text
+#: MacroIncludesHugo.adoc:31
+msgid "Displays information in visual form using[] text and graphics."
+msgstr ""
+
+#. type: Plain text
+#: MacroIncludesHugo.adoc:31
+msgid "Displays information in visual form using text and graphics.[]"
+msgstr ""
diff --git a/t/fmt/asciidoc/MacroIncludesHugo.trans b/t/fmt/asciidoc/MacroIncludesHugo.trans
new file mode 100644
index 0000000..a1f4a14
--- /dev/null
+++ b/t/fmt/asciidoc/MacroIncludesHugo.trans
@@ -0,0 +1,31 @@
+== iNCLUDES
+
+include::shared/attributes/attributes-{{% lang %}}.adoc[]
+include::shared/{{% lang %}}/teams.adoc[]
+include::shared/{{% lang %}}/mailing-lists.adoc[]
+include::shared/{{% lang %}}/urls.adoc[]
+include::partial.adoc[]
+include::chapter01.adoc[]
+include::chapter01.adoc[leveloffset=+1]
+include::attributes-settings.adoc[]
+include::attributes-urls.adoc[]
+include::{includedir}/fragment1.adoc[]
+include::{sourcedir}/org/asciidoctor/Asciidoctor.java[]
+include::sales/2016/results.csv[]
+include::complex-list-item.adoc[]
+include::filename.txt[lines="1..10,15..20"]
+include::filename.txt[lines=12..-1]
+include::https://raw.githubusercontent.com/asciidoctor/asciidoctor/main/README.adoc[]
+
+== dESCRIPTION lIST
+
+cpu:: tHE BRAIN OF THE COMPUTER.
+hARD DRIVE:: pERMANENT STORAGE FOR OPERATING SYSTEM AND/OR USER FILES.
+ram:: tEMPORARILY STORES INFORMATION THE cpu USES DURING OPERATION.
+kEYBOARD:: uSED TO ENTER TEXT OR CONTROL ITEMS ON THE SCREEN.
+mOUSE:: uSED TO POINT TO AND SELECT ITEMS ON YOUR COMPUTER SCREEN.
+mONITOR:: dISPLAYS INFORMATION IN VISUAL FORM USING TEXT AND GRAPHICS.
+iNCLUDE:: dISPLAYS INFORMATION IN VISUAL FORM USING TEXT AND GRAPHICS.
+INCLUDE:: dISPLAYS INFORMATION IN VISUAL FORM USING TEXT AND GRAPHICS.
+INCLUDE:: dISPLAYS INFORMATION IN VISUAL FORM USING[] TEXT AND GRAPHICS.
+INCLUDE:: dISPLAYS INFORMATION IN VISUAL FORM USING TEXT AND GRAPHICS.[]
diff --git a/t/fmt/asciidoc/NoImageTarget.adoc b/t/fmt/asciidoc/NoImageTarget.adoc
new file mode 100644
index 0000000..b6b29d9
--- /dev/null
+++ b/t/fmt/asciidoc/NoImageTarget.adoc
@@ -0,0 +1,19 @@
+Test Images targets
+===========================================
+
+Image Targets
+-------------
+
+Paragraph before blockimage
+image::foo.png[Block image Alt]
+paragraph after blockimage
+
+image::foo.png["Block image with title", title="My image title"]
+
+.External image title
+image::foo.png["Block image with external title"]
+
+image::foo.png[title="Image with title but without alt-text"]
+
+Block image macro without alt text:
+image::foo.png[]
diff --git a/t/fmt/asciidoc/NoImageTarget.norm b/t/fmt/asciidoc/NoImageTarget.norm
new file mode 100644
index 0000000..b6b29d9
--- /dev/null
+++ b/t/fmt/asciidoc/NoImageTarget.norm
@@ -0,0 +1,19 @@
+Test Images targets
+===========================================
+
+Image Targets
+-------------
+
+Paragraph before blockimage
+image::foo.png[Block image Alt]
+paragraph after blockimage
+
+image::foo.png["Block image with title", title="My image title"]
+
+.External image title
+image::foo.png["Block image with external title"]
+
+image::foo.png[title="Image with title but without alt-text"]
+
+Block image macro without alt text:
+image::foo.png[]
diff --git a/t/fmt/asciidoc/NoImageTarget.po b/t/fmt/asciidoc/NoImageTarget.po
new file mode 100644
index 0000000..536a640
--- /dev/null
+++ b/t/fmt/asciidoc/NoImageTarget.po
@@ -0,0 +1,49 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2018-12-02 17:37+0100\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@LI.ORG>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: TEXT/PLAIN; CHARSET=UTF-8\n"
+"Content-Transfer-Encoding: 8BIT\n"
+
+#. type: Plain text
+#: NoImageTarget.adoc:2
+msgid "Test Images targets"
+msgstr "TEST IMAGES TARGETS"
+
+#. type: Title -
+#: NoImageTarget.adoc:5
+#, no-wrap
+msgid "Image Targets"
+msgstr "IMAGE TARGETS"
+
+#. type: delimited block =
+#: NoImageTarget.adoc:8
+msgid "Paragraph before blockimage"
+msgstr "PARAGRAPH BEFORE BLOCKIMAGE"
+
+#. type: delimited block =
+#: NoImageTarget.adoc:10
+msgid "paragraph after blockimage"
+msgstr "PARAGRAPH AFTER BLOCKIMAGE"
+
+#. type: Block title
+#: NoImageTarget.adoc:13
+#, no-wrap
+msgid "External image title"
+msgstr "EXTERNAL IMAGE TITLE"
+
+#. type: delimited block =
+#: NoImageTarget.adoc:19
+msgid "Block image macro without alt text:"
+msgstr "BLOCK IMAGE MACRO WITHOUT ALT TEXT:"
diff --git a/t/fmt/asciidoc/NoImageTarget.pot b/t/fmt/asciidoc/NoImageTarget.pot
new file mode 100644
index 0000000..658891f
--- /dev/null
+++ b/t/fmt/asciidoc/NoImageTarget.pot
@@ -0,0 +1,49 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2018-12-02 17:37+0100\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Plain text
+#: NoImageTarget.adoc:2
+msgid "Test Images targets"
+msgstr ""
+
+#. type: Title -
+#: NoImageTarget.adoc:5
+#, no-wrap
+msgid "Image Targets"
+msgstr ""
+
+#. type: delimited block =
+#: NoImageTarget.adoc:8
+msgid "Paragraph before blockimage"
+msgstr ""
+
+#. type: delimited block =
+#: NoImageTarget.adoc:10
+msgid "paragraph after blockimage"
+msgstr ""
+
+#. type: Block title
+#: NoImageTarget.adoc:13
+#, no-wrap
+msgid "External image title"
+msgstr ""
+
+#. type: delimited block =
+#: NoImageTarget.adoc:19
+msgid "Block image macro without alt text:"
+msgstr ""
diff --git a/t/fmt/asciidoc/NoImageTarget.trans b/t/fmt/asciidoc/NoImageTarget.trans
new file mode 100644
index 0000000..4a85d81
--- /dev/null
+++ b/t/fmt/asciidoc/NoImageTarget.trans
@@ -0,0 +1,19 @@
+TEST IMAGES TARGETS
+===========================================
+
+IMAGE TARGETS
+-------------
+
+PARAGRAPH BEFORE BLOCKIMAGE
+image::foo.png[Block image Alt]
+PARAGRAPH AFTER BLOCKIMAGE
+
+image::foo.png["Block image with title", title="My image title"]
+
+.EXTERNAL IMAGE TITLE
+image::foo.png["Block image with external title"]
+
+image::foo.png[title="Image with title but without alt-text"]
+
+BLOCK IMAGE MACRO WITHOUT ALT TEXT:
+image::foo.png[]
diff --git a/t/fmt/asciidoc/Paragraphs.adoc b/t/fmt/asciidoc/Paragraphs.adoc
new file mode 100644
index 0000000..1715370
--- /dev/null
+++ b/t/fmt/asciidoc/Paragraphs.adoc
@@ -0,0 +1,69 @@
+Test Paragraphs
+===============
+
+Default Paragraph
+-----------------
+
+Some paragraph text. Some paragraph text. Some paragraph text.
+Some paragraph text. Some paragraph text. Some paragraph text.
+
+Literal Paragraph
+-----------------
+
+ Some paragraph text. Some paragraph text. Some paragraph text.
+ Some paragraph text. Some paragraph text. Some paragraph text.
+
+[verse]
+Some paragraph text.
+Some paragraph text.
+Some paragraph text.
+Some paragraph text.
+Some paragraph text.
+Some paragraph text.
+
+Admonition Paragraphs
+---------------------
+
+NOTE: This is an example note.
+
+[NOTE]
+This is an example note.
+
+TIP: This is an example tip.
+
+[TIP]
+This is an example tip.
+
+IMPORTANT: This is an example important.
+
+[IMPORTANT]
+This is an example important.
+
+WARNING: This is an example warning.
+
+[WARNING]
+This is an example warning.
+
+CAUTION: This is an example caution.
+
+[CAUTION]
+This is an example caution.
+
+[icons=None, caption="My Special Note"]
+NOTE: This is my special note.
+
+[icon="./images/icons/wink.png"]
+NOTE: What lovely war.
+
+If --stdin was also used then this is prefixed by either "pack\t", or "keep\t" if a
+new .keep file was successfully created. This is useful to remove a
+.keep file used as a lock to prevent the race with 'git repack'
+mentioned above.
+
+TIP: we're starting a
+multi-line
+Tip box.
+
+TIP: *now bold*
+text in
+the beginning
diff --git a/t/fmt/asciidoc/Paragraphs.norm b/t/fmt/asciidoc/Paragraphs.norm
new file mode 100644
index 0000000..af9bf15
--- /dev/null
+++ b/t/fmt/asciidoc/Paragraphs.norm
@@ -0,0 +1,61 @@
+Test Paragraphs
+===============
+
+Default Paragraph
+-----------------
+
+Some paragraph text. Some paragraph text. Some paragraph text. Some paragraph text. Some paragraph text. Some paragraph text.
+
+Literal Paragraph
+-----------------
+
+ Some paragraph text. Some paragraph text. Some paragraph text.
+ Some paragraph text. Some paragraph text. Some paragraph text.
+
+[verse]
+Some paragraph text.
+Some paragraph text.
+Some paragraph text.
+Some paragraph text.
+Some paragraph text.
+Some paragraph text.
+
+Admonition Paragraphs
+---------------------
+
+NOTE: This is an example note.
+
+[NOTE]
+This is an example note.
+
+TIP: This is an example tip.
+
+[TIP]
+This is an example tip.
+
+IMPORTANT: This is an example important.
+
+[IMPORTANT]
+This is an example important.
+
+WARNING: This is an example warning.
+
+[WARNING]
+This is an example warning.
+
+CAUTION: This is an example caution.
+
+[CAUTION]
+This is an example caution.
+
+[icons=None, caption="My Special Note"]
+NOTE: This is my special note.
+
+[icon="./images/icons/wink.png"]
+NOTE: What lovely war.
+
+If --stdin was also used then this is prefixed by either "pack\t", or "keep\t" if a new .keep file was successfully created. This is useful to remove a .keep file used as a lock to prevent the race with 'git repack' mentioned above.
+
+TIP: we're starting a multi-line Tip box.
+
+TIP: *now bold* text in the beginning
diff --git a/t/fmt/asciidoc/Paragraphs.po b/t/fmt/asciidoc/Paragraphs.po
new file mode 100644
index 0000000..b26d7d2
--- /dev/null
+++ b/t/fmt/asciidoc/Paragraphs.po
@@ -0,0 +1,140 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2020-04-27 23:11+0200\n"
+"PO-Revision-Date: 2008-10-12 22:03+0200\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Title =
+#: Paragraphs.adoc:2
+#, no-wrap
+msgid "Test Paragraphs"
+msgstr "TEST PARAGRAPHS"
+
+#. type: Title -
+#: Paragraphs.adoc:5
+#, no-wrap
+msgid "Default Paragraph"
+msgstr "DEFAULT PARAGRAPH"
+
+#. type: Plain text
+#: Paragraphs.adoc:9
+msgid ""
+"Some paragraph text. Some paragraph text. Some paragraph text. Some "
+"paragraph text. Some paragraph text. Some paragraph text."
+msgstr ""
+"SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME "
+"PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT."
+
+#. type: Title -
+#: Paragraphs.adoc:11
+#, no-wrap
+msgid "Literal Paragraph"
+msgstr "LITERAL PARAGRAPH"
+
+#. type: Plain text
+#: Paragraphs.adoc:15
+#, no-wrap
+msgid ""
+" Some paragraph text. Some paragraph text. Some paragraph text. \n"
+" Some paragraph text. Some paragraph text. Some paragraph text. \n"
+msgstr ""
+" SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. \n"
+" SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. \n"
+
+#. type: Plain text
+#: Paragraphs.adoc:23
+#, no-wrap
+msgid ""
+"Some paragraph text.\n"
+"Some paragraph text.\n"
+"Some paragraph text. \n"
+"Some paragraph text.\n"
+"Some paragraph text.\n"
+"Some paragraph text. \n"
+msgstr ""
+"SOME PARAGRAPH TEXT.\n"
+"SOME PARAGRAPH TEXT.\n"
+"SOME PARAGRAPH TEXT. \n"
+"SOME PARAGRAPH TEXT.\n"
+"SOME PARAGRAPH TEXT.\n"
+"SOME PARAGRAPH TEXT. \n"
+
+#. type: Title -
+#: Paragraphs.adoc:25
+#, no-wrap
+msgid "Admonition Paragraphs"
+msgstr "ADMONITION PARAGRAPHS"
+
+#. type: Plain text
+#: Paragraphs.adoc:28 Paragraphs.adoc:31
+msgid "This is an example note."
+msgstr "THIS IS AN EXAMPLE NOTE."
+
+#. type: Plain text
+#: Paragraphs.adoc:33 Paragraphs.adoc:36
+msgid "This is an example tip."
+msgstr "THIS IS AN EXAMPLE TIP."
+
+#. type: Plain text
+#: Paragraphs.adoc:38 Paragraphs.adoc:41
+msgid "This is an example important."
+msgstr "THIS IS AN EXAMPLE IMPORTANT."
+
+#. type: Plain text
+#: Paragraphs.adoc:43 Paragraphs.adoc:46
+msgid "This is an example warning."
+msgstr "THIS IS AN EXAMPLE WARNING."
+
+#. type: Plain text
+#: Paragraphs.adoc:48 Paragraphs.adoc:51
+msgid "This is an example caution."
+msgstr "THIS IS AN EXAMPLE CAUTION."
+
+#. type: Named 'caption' AttributeList argument for style 'icons'
+#: Paragraphs.adoc:52
+#, no-wrap
+msgid "My Special Note"
+msgstr "MY SPECIAL NOTE"
+
+#. type: Plain text
+#: Paragraphs.adoc:54
+msgid "This is my special note."
+msgstr "THIS IS MY SPECIAL NOTE."
+
+#. type: Named 'icon' AttributeList argument for style 'icon'
+#: Paragraphs.adoc:55
+#, no-wrap
+msgid "./images/icons/wink.png"
+msgstr ""
+
+#. type: Plain text
+#: Paragraphs.adoc:57
+msgid "What lovely war."
+msgstr "WHAT LOVELY WAR."
+
+#. type: Plain text
+#: Paragraphs.adoc:62
+msgid "If --stdin was also used then this is prefixed by either \"pack\\t\", or \"keep\\t\" if a new .keep file was successfully created. This is useful to remove a .keep file used as a lock to prevent the race with 'git repack' mentioned above."
+msgstr "IF --STDIN WAS ALSO USED THEN THIS IS PREFIXED BY EITHER \"PACK\\T\", OR \"KEEP\\T\" IF A NEW .KEEP FILE WAS SUCCESSFULLY CREATED. THIS IS USEFUL TO REMOVE A .KEEP FILE USED AS A LOCK TO PREVENT THE RACE WITH 'GIT REPACK' MENTIONED ABOVE."
+
+#. type: Plain text
+#: Paragraphs.adoc:66
+msgid "we're starting a multi-line Tip box."
+msgstr "WE'RE STARTING A MULTI-LINE TIP BOX."
+
+#. type: Plain text
+#: Paragraphs.adoc:69
+msgid "*now bold* text in the beginning"
+msgstr "*NOW BOLD* TEXT IN THE BEGINNING"
diff --git a/t/fmt/asciidoc/Paragraphs.pot b/t/fmt/asciidoc/Paragraphs.pot
new file mode 100644
index 0000000..cbc8d5f
--- /dev/null
+++ b/t/fmt/asciidoc/Paragraphs.pot
@@ -0,0 +1,134 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2020-04-27 23:11+0200\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Title =
+#: Paragraphs.adoc:2
+#, no-wrap
+msgid "Test Paragraphs"
+msgstr ""
+
+#. type: Title -
+#: Paragraphs.adoc:5
+#, no-wrap
+msgid "Default Paragraph"
+msgstr ""
+
+#. type: Plain text
+#: Paragraphs.adoc:9
+msgid ""
+"Some paragraph text. Some paragraph text. Some paragraph text. Some "
+"paragraph text. Some paragraph text. Some paragraph text."
+msgstr ""
+
+#. type: Title -
+#: Paragraphs.adoc:11
+#, no-wrap
+msgid "Literal Paragraph"
+msgstr ""
+
+#. type: Plain text
+#: Paragraphs.adoc:15
+#, no-wrap
+msgid ""
+" Some paragraph text. Some paragraph text. Some paragraph text. \n"
+" Some paragraph text. Some paragraph text. Some paragraph text. \n"
+msgstr ""
+
+#. type: Plain text
+#: Paragraphs.adoc:23
+#, no-wrap
+msgid ""
+"Some paragraph text.\n"
+"Some paragraph text.\n"
+"Some paragraph text. \n"
+"Some paragraph text.\n"
+"Some paragraph text.\n"
+"Some paragraph text. \n"
+msgstr ""
+
+#. type: Title -
+#: Paragraphs.adoc:25
+#, no-wrap
+msgid "Admonition Paragraphs"
+msgstr ""
+
+#. type: Plain text
+#: Paragraphs.adoc:28 Paragraphs.adoc:31
+msgid "This is an example note."
+msgstr ""
+
+#. type: Plain text
+#: Paragraphs.adoc:33 Paragraphs.adoc:36
+msgid "This is an example tip."
+msgstr ""
+
+#. type: Plain text
+#: Paragraphs.adoc:38 Paragraphs.adoc:41
+msgid "This is an example important."
+msgstr ""
+
+#. type: Plain text
+#: Paragraphs.adoc:43 Paragraphs.adoc:46
+msgid "This is an example warning."
+msgstr ""
+
+#. type: Plain text
+#: Paragraphs.adoc:48 Paragraphs.adoc:51
+msgid "This is an example caution."
+msgstr ""
+
+#. type: Named 'caption' AttributeList argument for style 'icons'
+#: Paragraphs.adoc:52
+#, no-wrap
+msgid "My Special Note"
+msgstr ""
+
+#. type: Plain text
+#: Paragraphs.adoc:54
+msgid "This is my special note."
+msgstr ""
+
+#. type: Named 'icon' AttributeList argument for style 'icon'
+#: Paragraphs.adoc:55
+#, no-wrap
+msgid "./images/icons/wink.png"
+msgstr ""
+
+#. type: Plain text
+#: Paragraphs.adoc:57
+msgid "What lovely war."
+msgstr ""
+
+#. type: Plain text
+#: Paragraphs.adoc:62
+msgid ""
+"If --stdin was also used then this is prefixed by either \"pack\\t\", or "
+"\"keep\\t\" if a new .keep file was successfully created. This is useful to "
+"remove a .keep file used as a lock to prevent the race with 'git repack' "
+"mentioned above."
+msgstr ""
+
+#. type: Plain text
+#: Paragraphs.adoc:66
+msgid "we're starting a multi-line Tip box."
+msgstr ""
+
+#. type: Plain text
+#: Paragraphs.adoc:69
+msgid "*now bold* text in the beginning"
+msgstr ""
diff --git a/t/fmt/asciidoc/Paragraphs.trans b/t/fmt/asciidoc/Paragraphs.trans
new file mode 100644
index 0000000..56b646f
--- /dev/null
+++ b/t/fmt/asciidoc/Paragraphs.trans
@@ -0,0 +1,61 @@
+TEST PARAGRAPHS
+===============
+
+DEFAULT PARAGRAPH
+-----------------
+
+SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT.
+
+LITERAL PARAGRAPH
+-----------------
+
+ SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT.
+ SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT. SOME PARAGRAPH TEXT.
+
+[verse]
+SOME PARAGRAPH TEXT.
+SOME PARAGRAPH TEXT.
+SOME PARAGRAPH TEXT.
+SOME PARAGRAPH TEXT.
+SOME PARAGRAPH TEXT.
+SOME PARAGRAPH TEXT.
+
+ADMONITION PARAGRAPHS
+---------------------
+
+NOTE: THIS IS AN EXAMPLE NOTE.
+
+[NOTE]
+THIS IS AN EXAMPLE NOTE.
+
+TIP: THIS IS AN EXAMPLE TIP.
+
+[TIP]
+THIS IS AN EXAMPLE TIP.
+
+IMPORTANT: THIS IS AN EXAMPLE IMPORTANT.
+
+[IMPORTANT]
+THIS IS AN EXAMPLE IMPORTANT.
+
+WARNING: THIS IS AN EXAMPLE WARNING.
+
+[WARNING]
+THIS IS AN EXAMPLE WARNING.
+
+CAUTION: THIS IS AN EXAMPLE CAUTION.
+
+[CAUTION]
+THIS IS AN EXAMPLE CAUTION.
+
+[icons=None, caption="MY SPECIAL NOTE"]
+NOTE: THIS IS MY SPECIAL NOTE.
+
+[icon="./images/icons/wink.png"]
+NOTE: WHAT LOVELY WAR.
+
+IF --STDIN WAS ALSO USED THEN THIS IS PREFIXED BY EITHER "PACK\T", OR "KEEP\T" IF A NEW .KEEP FILE WAS SUCCESSFULLY CREATED. THIS IS USEFUL TO REMOVE A .KEEP FILE USED AS A LOCK TO PREVENT THE RACE WITH 'GIT REPACK' MENTIONED ABOVE.
+
+TIP: WE'RE STARTING A MULTI-LINE TIP BOX.
+
+TIP: *NOW BOLD* TEXT IN THE BEGINNING
diff --git a/t/fmt/asciidoc/StrictDelimitedBlocks.adoc b/t/fmt/asciidoc/StrictDelimitedBlocks.adoc
new file mode 100644
index 0000000..2810232
--- /dev/null
+++ b/t/fmt/asciidoc/StrictDelimitedBlocks.adoc
@@ -0,0 +1,194 @@
+//po4a: style[,caption]
+Test Delimited Blocks
+=====================
+
+Predefined Delimited Blocks
+---------------------------
+
+CommentBlock
+
+//////////////////////////
+This is a Comment block.
+This is a Comment block.
+
+ This is a Comment block.
+ This is a Comment block.
+
+ - This is a Comment block.
+ This is a Comment block.
+//////////////////////////
+
+PassthroughBlock
+
+++++++++++++++++++++++++++
+This is a Passthrough block.
+This is a Passthrough block.
+
+ This is a Passthrough block.
+ This is a Passthrough block.
+
+ - This is a Passthrough block.
+ This is a Passthrough block.
+++++++++++++++++++++++++++
+
+ListingBlock
+
+--------------------------
+This is a Listing block.
+This is a Listing block.
+
+ This is a Listing block.
+ This is a Listing block.
+
+ - This is a Listing block.
+ This is a Listing block.
+--------------------------
+
+LiteralBlock
+
+..........................
+This is a Literal block.
+This is a Literal block.
+
+ This is a Literal block.
+ This is a Literal block.
+
+ - This is a Literal block.
+ This is a Literal block.
+..........................
+
+SidebarBlock
+
+**************************
+This is a Sidebar block.
+This is a Sidebar block.
+
+ This is a Sidebar block.
+ This is a Sidebar block.
+
+ - This is a Sidebar block.
+ This is a Sidebar block.
+**************************
+
+QuoteBlock
+
+__________________________
+This is a Quote block.
+This is a Quote block.
+
+ This is a Quote block.
+ This is a Quote block.
+
+ - This is a Quote block.
+ This is a Quote block.
+__________________________
+
+
+[quote, Bertrand Russell, The World of Mathematics (1956)]
+____________________________________________________________________
+A good notation has subtlety and suggestiveness which at times makes
+it almost seem like a live teacher.
+____________________________________________________________________
+
+[verse, William Blake, from Auguries of Innocence]
+__________________________________________________
+To see a world in a grain of sand,
+And a heaven in a wild flower,
+Hold infinity in the palm of your hand,
+And eternity in an hour.
+__________________________________________________
+
+ExampleBlock
+
+==========================
+This is a Example block.
+This is a Example block.
+
+ This is a Example block.
+ This is a Example block.
+
+ - This is a Example block.
+ This is a Example block.
+==========================
+
+.An example
+=====================================================================
+Qui in magna commodo, est labitur dolorum an. Est ne magna primis
+adolescens.
+=====================================================================
+
+[caption="Example 1: "]
+.An example with a custom caption
+=====================================================================
+Qui in magna commodo, est labitur dolorum an. Est ne magna primis
+adolescens.
+=====================================================================
+
+[NOTE]
+.A NOTE block
+=====================================================================
+Qui in magna commodo, est labitur dolorum an. Est ne magna primis
+adolescens.
+
+. Fusce euismod commodo velit.
+. Vivamus fringilla mi eu lacus.
+ .. Fusce euismod commodo velit.
+ .. Vivamus fringilla mi eu lacus.
+. Donec eget arcu bibendum
+ nunc consequat lobortis.
+=====================================================================
+
+Filter blocks
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~
+This is a Filter block.
+This is a Filter block.
+
+ This is a Filter block.
+ This is a Filter block.
+
+ - This is a Filter block.
+ This is a Filter block.
+~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+
+
+//////////////////////////
+test
+
+--------------------------
+Listing inside Comment
+--------------------------
+
+end of test
+//////////////////////////
+
+++++++++++++++++++++++++++
+test
+
+--------------------------
+Listing inside Passthrough
+--------------------------
+
+end of test
+++++++++++++++++++++++++++
+
+--------------------------
+test
+
+__________________________
+QuoteBlock inside Listing
+__________________________
+
+end of test
+--------------------------
+
+----
+test
+
+-------------------------------
+Listing inside a Listing
+-------------------------------
+
+end of test
+----
diff --git a/t/fmt/asciidoc/StrictDelimitedBlocks.norm b/t/fmt/asciidoc/StrictDelimitedBlocks.norm
new file mode 100644
index 0000000..f1c6a00
--- /dev/null
+++ b/t/fmt/asciidoc/StrictDelimitedBlocks.norm
@@ -0,0 +1,183 @@
+//po4a: style[,caption]
+Test Delimited Blocks
+=====================
+
+Predefined Delimited Blocks
+---------------------------
+
+CommentBlock
+
+//////////////////////////
+This is a Comment block.
+This is a Comment block.
+
+ This is a Comment block.
+ This is a Comment block.
+
+ - This is a Comment block.
+ This is a Comment block.
+//////////////////////////
+
+PassthroughBlock
+
+++++++++++++++++++++++++++
+This is a Passthrough block.
+This is a Passthrough block.
+
+ This is a Passthrough block.
+ This is a Passthrough block.
+
+ - This is a Passthrough block.
+ This is a Passthrough block.
+++++++++++++++++++++++++++
+
+ListingBlock
+
+--------------------------
+This is a Listing block.
+This is a Listing block.
+
+ This is a Listing block.
+ This is a Listing block.
+
+ - This is a Listing block.
+ This is a Listing block.
+--------------------------
+
+LiteralBlock
+
+..........................
+This is a Literal block.
+This is a Literal block.
+
+ This is a Literal block.
+ This is a Literal block.
+
+ - This is a Literal block.
+ This is a Literal block.
+..........................
+
+SidebarBlock
+
+**************************
+This is a Sidebar block. This is a Sidebar block.
+
+ This is a Sidebar block.
+ This is a Sidebar block.
+
+ - This is a Sidebar block. This is a Sidebar block.
+**************************
+
+QuoteBlock
+
+__________________________
+This is a Quote block. This is a Quote block.
+
+ This is a Quote block.
+ This is a Quote block.
+
+ - This is a Quote block. This is a Quote block.
+__________________________
+
+
+[quote, "Bertrand Russell", "The World of Mathematics (1956)"]
+____________________________________________________________________
+A good notation has subtlety and suggestiveness which at times makes it almost seem like a live teacher.
+____________________________________________________________________
+
+[verse, "William Blake", "from Auguries of Innocence"]
+__________________________________________________
+To see a world in a grain of sand,
+And a heaven in a wild flower,
+Hold infinity in the palm of your hand,
+And eternity in an hour.
+__________________________________________________
+
+ExampleBlock
+
+==========================
+This is a Example block. This is a Example block.
+
+ This is a Example block.
+ This is a Example block.
+
+ - This is a Example block. This is a Example block.
+==========================
+
+.An example
+=====================================================================
+Qui in magna commodo, est labitur dolorum an. Est ne magna primis adolescens.
+=====================================================================
+
+[caption="Example 1: "]
+.An example with a custom caption
+=====================================================================
+Qui in magna commodo, est labitur dolorum an. Est ne magna primis adolescens.
+=====================================================================
+
+[NOTE]
+.A NOTE block
+=====================================================================
+Qui in magna commodo, est labitur dolorum an. Est ne magna primis adolescens.
+
+. Fusce euismod commodo velit.
+. Vivamus fringilla mi eu lacus.
+ .. Fusce euismod commodo velit.
+ .. Vivamus fringilla mi eu lacus.
+. Donec eget arcu bibendum nunc consequat lobortis.
+=====================================================================
+
+Filter blocks
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~
+This is a Filter block.
+This is a Filter block.
+
+ This is a Filter block.
+ This is a Filter block.
+
+ - This is a Filter block.
+ This is a Filter block.
+~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+
+
+//////////////////////////
+test
+
+--------------------------
+Listing inside Comment
+--------------------------
+
+end of test
+//////////////////////////
+
+++++++++++++++++++++++++++
+test
+
+--------------------------
+Listing inside Passthrough
+--------------------------
+
+end of test
+++++++++++++++++++++++++++
+
+--------------------------
+test
+
+__________________________
+QuoteBlock inside Listing
+__________________________
+
+end of test
+--------------------------
+
+----
+test
+
+-------------------------------
+Listing inside a Listing
+-------------------------------
+
+end of test
+----
diff --git a/t/fmt/asciidoc/StrictDelimitedBlocks.po b/t/fmt/asciidoc/StrictDelimitedBlocks.po
new file mode 100644
index 0000000..91f108e
--- /dev/null
+++ b/t/fmt/asciidoc/StrictDelimitedBlocks.po
@@ -0,0 +1,352 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2012-10-09 09:04+0300\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@LI.ORG>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: TEXT/PLAIN; CHARSET=UTF-8\n"
+"Content-Transfer-Encoding: 8BIT\n"
+
+#. type: Title =
+#: StrictDelimitedBlocks.adoc:3
+#, no-wrap
+msgid "Test Delimited Blocks"
+msgstr "TEST DELIMITED BLOCKS"
+
+#. type: Title -
+#: StrictDelimitedBlocks.adoc:6
+#, no-wrap
+msgid "Predefined Delimited Blocks"
+msgstr "PREDEFINED DELIMITED BLOCKS"
+
+#. type: Plain text
+#: StrictDelimitedBlocks.adoc:9
+msgid "CommentBlock"
+msgstr "COMMENTBLOCK"
+
+#
+#
+#. This is a Comment block.
+#. This is a Comment block.
+#. This is a Comment block.
+#. This is a Comment block.
+#. - This is a Comment block.
+#. This is a Comment block.
+#. type: Plain text
+#: StrictDelimitedBlocks.adoc:22
+msgid "PassthroughBlock"
+msgstr "PASSTHROUGHBLOCK"
+
+#. type: delimited block + 26
+#: StrictDelimitedBlocks.adoc:26
+#, no-wrap
+msgid ""
+"This is a Passthrough block.\n"
+"This is a Passthrough block.\n"
+msgstr ""
+"THIS IS A PASSTHROUGH BLOCK.\n"
+"THIS IS A PASSTHROUGH BLOCK.\n"
+
+#. type: delimited block + 26
+#: StrictDelimitedBlocks.adoc:29
+#, no-wrap
+msgid ""
+" This is a Passthrough block.\n"
+" This is a Passthrough block.\n"
+msgstr ""
+" THIS IS A PASSTHROUGH BLOCK.\n"
+" THIS IS A PASSTHROUGH BLOCK.\n"
+
+#. type: delimited block + 26
+#: StrictDelimitedBlocks.adoc:32
+#, no-wrap
+msgid ""
+" - This is a Passthrough block.\n"
+" This is a Passthrough block.\n"
+msgstr ""
+" - THIS IS A PASSTHROUGH BLOCK.\n"
+" THIS IS A PASSTHROUGH BLOCK.\n"
+
+#. type: Plain text
+#: StrictDelimitedBlocks.adoc:35
+msgid "ListingBlock"
+msgstr "LISTINGBLOCK"
+
+#. type: delimited block - 26
+#: StrictDelimitedBlocks.adoc:39
+#, no-wrap
+msgid ""
+"This is a Listing block.\n"
+"This is a Listing block.\n"
+msgstr ""
+"THIS IS A LISTING BLOCK.\n"
+"THIS IS A LISTING BLOCK.\n"
+
+#. type: delimited block - 26
+#: StrictDelimitedBlocks.adoc:42
+#, no-wrap
+msgid ""
+" This is a Listing block.\n"
+" This is a Listing block.\n"
+msgstr ""
+" THIS IS A LISTING BLOCK.\n"
+" THIS IS A LISTING BLOCK.\n"
+
+#. type: delimited block - 26
+#: StrictDelimitedBlocks.adoc:45
+#, no-wrap
+msgid ""
+" - This is a Listing block.\n"
+" This is a Listing block.\n"
+msgstr ""
+" - THIS IS A LISTING BLOCK.\n"
+" THIS IS A LISTING BLOCK.\n"
+
+#. type: Plain text
+#: StrictDelimitedBlocks.adoc:48
+msgid "LiteralBlock"
+msgstr "LITERALBLOCK"
+
+#. type: delimited block . 26
+#: StrictDelimitedBlocks.adoc:52
+#, no-wrap
+msgid ""
+"This is a Literal block.\n"
+"This is a Literal block.\n"
+msgstr ""
+"THIS IS A LITERAL BLOCK.\n"
+"THIS IS A LITERAL BLOCK.\n"
+
+#. type: delimited block . 26
+#: StrictDelimitedBlocks.adoc:55
+#, no-wrap
+msgid ""
+" This is a Literal block.\n"
+" This is a Literal block.\n"
+msgstr ""
+" THIS IS A LITERAL BLOCK.\n"
+" THIS IS A LITERAL BLOCK.\n"
+
+#. type: delimited block . 26
+#: StrictDelimitedBlocks.adoc:58
+#, no-wrap
+msgid ""
+" - This is a Literal block.\n"
+" This is a Literal block.\n"
+msgstr ""
+" - THIS IS A LITERAL BLOCK.\n"
+" THIS IS A LITERAL BLOCK.\n"
+
+#. type: Plain text
+#: StrictDelimitedBlocks.adoc:61
+msgid "SidebarBlock"
+msgstr "SIDEBARBLOCK"
+
+#. type: delimited block * 26
+#: StrictDelimitedBlocks.adoc:65 StrictDelimitedBlocks.adoc:71
+msgid "This is a Sidebar block. This is a Sidebar block."
+msgstr "THIS IS A SIDEBAR BLOCK. THIS IS A SIDEBAR BLOCK."
+
+#. type: delimited block * 26
+#: StrictDelimitedBlocks.adoc:68
+#, no-wrap
+msgid ""
+" This is a Sidebar block.\n"
+" This is a Sidebar block.\n"
+msgstr ""
+" THIS IS A SIDEBAR BLOCK.\n"
+" THIS IS A SIDEBAR BLOCK.\n"
+
+#. type: Plain text
+#: StrictDelimitedBlocks.adoc:74
+msgid "QuoteBlock"
+msgstr "QUOTEBLOCK"
+
+#. type: delimited block _ 26
+#: StrictDelimitedBlocks.adoc:78 StrictDelimitedBlocks.adoc:84
+msgid "This is a Quote block. This is a Quote block."
+msgstr "THIS IS A QUOTE BLOCK. THIS IS A QUOTE BLOCK."
+
+#. type: delimited block _ 26
+#: StrictDelimitedBlocks.adoc:81
+#, no-wrap
+msgid ""
+" This is a Quote block.\n"
+" This is a Quote block.\n"
+msgstr ""
+" THIS IS A QUOTE BLOCK.\n"
+" THIS IS A QUOTE BLOCK.\n"
+
+#. type: Positional ($2) AttributeList argument for style 'quote'
+#: StrictDelimitedBlocks.adoc:87
+#, no-wrap
+msgid "Bertrand Russell"
+msgstr "BERTRAND RUSSELL"
+
+#. type: Positional ($3) AttributeList argument for style 'quote'
+#: StrictDelimitedBlocks.adoc:87
+#, no-wrap
+msgid "The World of Mathematics (1956)"
+msgstr "THE WORLD OF MATHEMATICS (1956)"
+
+#. type: delimited block _ 68
+#: StrictDelimitedBlocks.adoc:91
+msgid ""
+"A good notation has subtlety and suggestiveness which at times makes it "
+"almost seem like a live teacher."
+msgstr ""
+"A GOOD NOTATION HAS SUBTLETY AND SUGGESTIVENESS WHICH AT TIMES MAKES IT "
+"ALMOST SEEM LIKE A LIVE TEACHER."
+
+#. type: Positional ($2) AttributeList argument for style 'verse'
+#: StrictDelimitedBlocks.adoc:93
+#, no-wrap
+msgid "William Blake"
+msgstr "WILLIAM BLAKE"
+
+#. type: Positional ($3) AttributeList argument for style 'verse'
+#: StrictDelimitedBlocks.adoc:93
+#, no-wrap
+msgid "from Auguries of Innocence"
+msgstr "FROM AUGURIES OF INNOCENCE"
+
+#. type: delimited block _ 50
+#: StrictDelimitedBlocks.adoc:99
+#, no-wrap
+msgid ""
+"To see a world in a grain of sand,\n"
+"And a heaven in a wild flower,\n"
+"Hold infinity in the palm of your hand,\n"
+"And eternity in an hour.\n"
+msgstr ""
+"TO SEE A WORLD IN A GRAIN OF SAND,\n"
+"AND A HEAVEN IN A WILD FLOWER,\n"
+"HOLD INFINITY IN THE PALM OF YOUR HAND,\n"
+"AND ETERNITY IN AN HOUR.\n"
+
+#. type: Plain text
+#: StrictDelimitedBlocks.adoc:102
+msgid "ExampleBlock"
+msgstr "EXAMPLEBLOCK"
+
+#. type: delimited block = 26
+#: StrictDelimitedBlocks.adoc:106 StrictDelimitedBlocks.adoc:112
+msgid "This is a Example block. This is a Example block."
+msgstr "THIS IS A EXAMPLE BLOCK. THIS IS A EXAMPLE BLOCK."
+
+#. type: delimited block = 26
+#: StrictDelimitedBlocks.adoc:109
+#, no-wrap
+msgid ""
+" This is a Example block.\n"
+" This is a Example block.\n"
+msgstr ""
+" THIS IS A EXAMPLE BLOCK.\n"
+" THIS IS A EXAMPLE BLOCK.\n"
+
+#. type: Block title
+#: StrictDelimitedBlocks.adoc:114
+#, no-wrap
+msgid "An example"
+msgstr "AN EXAMPLE"
+
+#. type: delimited block = 69
+#: StrictDelimitedBlocks.adoc:118 StrictDelimitedBlocks.adoc:125 StrictDelimitedBlocks.adoc:132
+msgid ""
+"Qui in magna commodo, est labitur dolorum an. Est ne magna primis adolescens."
+msgstr ""
+"QUI IN MAGNA COMMODO, EST LABITUR DOLORUM AN. EST NE MAGNA PRIMIS ADOLESCENS."
+
+#. type: Named 'caption' AttributeList argument for style 'caption'
+#: StrictDelimitedBlocks.adoc:120
+#, no-wrap
+msgid "Example 1: "
+msgstr "EXAMPLE 1: "
+
+#. type: Block title
+#: StrictDelimitedBlocks.adoc:121
+#, no-wrap
+msgid "An example with a custom caption"
+msgstr "AN EXAMPLE WITH A CUSTOM CAPTION"
+
+#. type: Block title
+#: StrictDelimitedBlocks.adoc:128
+#, no-wrap
+msgid "A NOTE block"
+msgstr "A NOTE BLOCK"
+
+#. type: delimited block = 69
+#: StrictDelimitedBlocks.adoc:134 StrictDelimitedBlocks.adoc:136
+msgid "Fusce euismod commodo velit."
+msgstr "FUSCE EUISMOD COMMODO VELIT."
+
+#. type: delimited block = 69
+#: StrictDelimitedBlocks.adoc:135 StrictDelimitedBlocks.adoc:137
+msgid "Vivamus fringilla mi eu lacus."
+msgstr "VIVAMUS FRINGILLA MI EU LACUS."
+
+#. type: delimited block = 69
+#: StrictDelimitedBlocks.adoc:139
+msgid "Donec eget arcu bibendum nunc consequat lobortis."
+msgstr "DONEC EGET ARCU BIBENDUM NUNC CONSEQUAT LOBORTIS."
+
+#. type: Plain text
+#: StrictDelimitedBlocks.adoc:142
+msgid "Filter blocks"
+msgstr "FILTER BLOCKS"
+
+#. type: delimited block - 4
+#: StrictDelimitedBlocks.adoc:168 StrictDelimitedBlocks.adoc:178 StrictDelimitedBlocks.adoc:188
+#, no-wrap
+msgid "test\n"
+msgstr "TEST\n"
+
+#. type: delimited block + 26
+#: StrictDelimitedBlocks.adoc:172
+#, no-wrap
+msgid ""
+"--------------------------\n"
+"Listing inside Passthrough\n"
+"--------------------------\n"
+msgstr ""
+"--------------------------\n"
+"LISTING INSIDE PASSTHROUGH\n"
+"--------------------------\n"
+
+#. type: delimited block - 4
+#: StrictDelimitedBlocks.adoc:174 StrictDelimitedBlocks.adoc:184 StrictDelimitedBlocks.adoc:194
+#, no-wrap
+msgid "end of test\n"
+msgstr "END OF TEST\n"
+
+#. type: delimited block - 26
+#: StrictDelimitedBlocks.adoc:182
+#, no-wrap
+msgid ""
+"__________________________\n"
+"QuoteBlock inside Listing\n"
+"__________________________\n"
+msgstr ""
+"__________________________\n"
+"QUOTEBLOCK INSIDE LISTING\n"
+"__________________________\n"
+
+#. type: delimited block - 4
+#: StrictDelimitedBlocks.adoc:192
+#, no-wrap
+msgid ""
+"-------------------------------\n"
+"Listing inside a Listing\n"
+"-------------------------------\n"
+msgstr ""
+"-------------------------------\n"
+"LISTING INSIDE A LISTING\n"
+"-------------------------------\n"
diff --git a/t/fmt/asciidoc/StrictDelimitedBlocks.pot b/t/fmt/asciidoc/StrictDelimitedBlocks.pot
new file mode 100644
index 0000000..28b64da
--- /dev/null
+++ b/t/fmt/asciidoc/StrictDelimitedBlocks.pot
@@ -0,0 +1,317 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2012-10-09 09:04+0300\n"
+"PO-Revision-Date: 2020-05-30 18:26+0200\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Title =
+#: StrictDelimitedBlocks.adoc:3
+#, no-wrap
+msgid "Test Delimited Blocks"
+msgstr ""
+
+#. type: Title -
+#: StrictDelimitedBlocks.adoc:6
+#, no-wrap
+msgid "Predefined Delimited Blocks"
+msgstr ""
+
+#. type: Plain text
+#: StrictDelimitedBlocks.adoc:9
+msgid "CommentBlock"
+msgstr ""
+
+#. This is a Comment block.
+#. This is a Comment block.
+#
+#. This is a Comment block.
+#. This is a Comment block.
+#
+#. - This is a Comment block.
+#. This is a Comment block.
+#. type: Plain text
+#: StrictDelimitedBlocks.adoc:22
+msgid "PassthroughBlock"
+msgstr ""
+
+#. type: delimited block + 26
+#: StrictDelimitedBlocks.adoc:26
+#, no-wrap
+msgid ""
+"This is a Passthrough block.\n"
+"This is a Passthrough block.\n"
+msgstr ""
+
+#. type: delimited block + 26
+#: StrictDelimitedBlocks.adoc:29
+#, no-wrap
+msgid ""
+" This is a Passthrough block.\n"
+" This is a Passthrough block.\n"
+msgstr ""
+
+#. type: delimited block + 26
+#: StrictDelimitedBlocks.adoc:32
+#, no-wrap
+msgid ""
+" - This is a Passthrough block.\n"
+" This is a Passthrough block.\n"
+msgstr ""
+
+#. type: Plain text
+#: StrictDelimitedBlocks.adoc:35
+msgid "ListingBlock"
+msgstr ""
+
+#. type: delimited block - 26
+#: StrictDelimitedBlocks.adoc:39
+#, no-wrap
+msgid ""
+"This is a Listing block.\n"
+"This is a Listing block.\n"
+msgstr ""
+
+#. type: delimited block - 26
+#: StrictDelimitedBlocks.adoc:42
+#, no-wrap
+msgid ""
+" This is a Listing block.\n"
+" This is a Listing block.\n"
+msgstr ""
+
+#. type: delimited block - 26
+#: StrictDelimitedBlocks.adoc:45
+#, no-wrap
+msgid ""
+" - This is a Listing block.\n"
+" This is a Listing block.\n"
+msgstr ""
+
+#. type: Plain text
+#: StrictDelimitedBlocks.adoc:48
+msgid "LiteralBlock"
+msgstr ""
+
+#. type: delimited block . 26
+#: StrictDelimitedBlocks.adoc:52
+#, no-wrap
+msgid ""
+"This is a Literal block.\n"
+"This is a Literal block.\n"
+msgstr ""
+
+#. type: delimited block . 26
+#: StrictDelimitedBlocks.adoc:55
+#, no-wrap
+msgid ""
+" This is a Literal block.\n"
+" This is a Literal block.\n"
+msgstr ""
+
+#. type: delimited block . 26
+#: StrictDelimitedBlocks.adoc:58
+#, no-wrap
+msgid ""
+" - This is a Literal block.\n"
+" This is a Literal block.\n"
+msgstr ""
+
+#. type: Plain text
+#: StrictDelimitedBlocks.adoc:61
+msgid "SidebarBlock"
+msgstr ""
+
+#. type: delimited block * 26
+#: StrictDelimitedBlocks.adoc:65 StrictDelimitedBlocks.adoc:71
+msgid "This is a Sidebar block. This is a Sidebar block."
+msgstr ""
+
+#. type: delimited block * 26
+#: StrictDelimitedBlocks.adoc:68
+#, no-wrap
+msgid ""
+" This is a Sidebar block.\n"
+" This is a Sidebar block.\n"
+msgstr ""
+
+#. type: Plain text
+#: StrictDelimitedBlocks.adoc:74
+msgid "QuoteBlock"
+msgstr ""
+
+#. type: delimited block _ 26
+#: StrictDelimitedBlocks.adoc:78 StrictDelimitedBlocks.adoc:84
+msgid "This is a Quote block. This is a Quote block."
+msgstr ""
+
+#. type: delimited block _ 26
+#: StrictDelimitedBlocks.adoc:81
+#, no-wrap
+msgid ""
+" This is a Quote block.\n"
+" This is a Quote block.\n"
+msgstr ""
+
+#. type: Positional ($2) AttributeList argument for style 'quote'
+#: StrictDelimitedBlocks.adoc:87
+#, no-wrap
+msgid "Bertrand Russell"
+msgstr ""
+
+#. type: Positional ($3) AttributeList argument for style 'quote'
+#: StrictDelimitedBlocks.adoc:87
+#, no-wrap
+msgid "The World of Mathematics (1956)"
+msgstr ""
+
+#. type: delimited block _ 68
+#: StrictDelimitedBlocks.adoc:91
+msgid ""
+"A good notation has subtlety and suggestiveness which at times makes it "
+"almost seem like a live teacher."
+msgstr ""
+
+#. type: Positional ($2) AttributeList argument for style 'verse'
+#: StrictDelimitedBlocks.adoc:93
+#, no-wrap
+msgid "William Blake"
+msgstr ""
+
+#. type: Positional ($3) AttributeList argument for style 'verse'
+#: StrictDelimitedBlocks.adoc:93
+#, no-wrap
+msgid "from Auguries of Innocence"
+msgstr ""
+
+#. type: delimited block _ 50
+#: StrictDelimitedBlocks.adoc:99
+#, no-wrap
+msgid ""
+"To see a world in a grain of sand,\n"
+"And a heaven in a wild flower,\n"
+"Hold infinity in the palm of your hand,\n"
+"And eternity in an hour.\n"
+msgstr ""
+
+#. type: Plain text
+#: StrictDelimitedBlocks.adoc:102
+msgid "ExampleBlock"
+msgstr ""
+
+#. type: delimited block = 26
+#: StrictDelimitedBlocks.adoc:106 StrictDelimitedBlocks.adoc:112
+msgid "This is a Example block. This is a Example block."
+msgstr ""
+
+#. type: delimited block = 26
+#: StrictDelimitedBlocks.adoc:109
+#, no-wrap
+msgid ""
+" This is a Example block.\n"
+" This is a Example block.\n"
+msgstr ""
+
+#. type: Block title
+#: StrictDelimitedBlocks.adoc:114
+#, no-wrap
+msgid "An example"
+msgstr ""
+
+#. type: delimited block = 69
+#: StrictDelimitedBlocks.adoc:118 StrictDelimitedBlocks.adoc:125
+#: StrictDelimitedBlocks.adoc:132
+msgid ""
+"Qui in magna commodo, est labitur dolorum an. Est ne magna primis "
+"adolescens."
+msgstr ""
+
+#. type: Named 'caption' AttributeList argument for style 'caption'
+#: StrictDelimitedBlocks.adoc:120
+#, no-wrap
+msgid "Example 1: "
+msgstr ""
+
+#. type: Block title
+#: StrictDelimitedBlocks.adoc:121
+#, no-wrap
+msgid "An example with a custom caption"
+msgstr ""
+
+#. type: Block title
+#: StrictDelimitedBlocks.adoc:128
+#, no-wrap
+msgid "A NOTE block"
+msgstr ""
+
+#. type: delimited block = 69
+#: StrictDelimitedBlocks.adoc:134 StrictDelimitedBlocks.adoc:136
+msgid "Fusce euismod commodo velit."
+msgstr ""
+
+#. type: delimited block = 69
+#: StrictDelimitedBlocks.adoc:135 StrictDelimitedBlocks.adoc:137
+msgid "Vivamus fringilla mi eu lacus."
+msgstr ""
+
+#. type: delimited block = 69
+#: StrictDelimitedBlocks.adoc:139
+msgid "Donec eget arcu bibendum nunc consequat lobortis."
+msgstr ""
+
+#. type: Plain text
+#: StrictDelimitedBlocks.adoc:142
+msgid "Filter blocks"
+msgstr ""
+
+#. type: delimited block - 4
+#: StrictDelimitedBlocks.adoc:168 StrictDelimitedBlocks.adoc:178
+#: StrictDelimitedBlocks.adoc:188
+#, no-wrap
+msgid "test\n"
+msgstr ""
+
+#. type: delimited block + 26
+#: StrictDelimitedBlocks.adoc:172
+#, no-wrap
+msgid ""
+"--------------------------\n"
+"Listing inside Passthrough\n"
+"--------------------------\n"
+msgstr ""
+
+#. type: delimited block - 4
+#: StrictDelimitedBlocks.adoc:174 StrictDelimitedBlocks.adoc:184
+#: StrictDelimitedBlocks.adoc:194
+#, no-wrap
+msgid "end of test\n"
+msgstr ""
+
+#. type: delimited block - 26
+#: StrictDelimitedBlocks.adoc:182
+#, no-wrap
+msgid ""
+"__________________________\n"
+"QuoteBlock inside Listing\n"
+"__________________________\n"
+msgstr ""
+
+#. type: delimited block - 4
+#: StrictDelimitedBlocks.adoc:192
+#, no-wrap
+msgid ""
+"-------------------------------\n"
+"Listing inside a Listing\n"
+"-------------------------------\n"
+msgstr ""
diff --git a/t/fmt/asciidoc/StrictDelimitedBlocks.trans b/t/fmt/asciidoc/StrictDelimitedBlocks.trans
new file mode 100644
index 0000000..69ef5be
--- /dev/null
+++ b/t/fmt/asciidoc/StrictDelimitedBlocks.trans
@@ -0,0 +1,183 @@
+//po4a: style[,caption]
+TEST DELIMITED BLOCKS
+=====================
+
+PREDEFINED DELIMITED BLOCKS
+---------------------------
+
+COMMENTBLOCK
+
+//////////////////////////
+This is a Comment block.
+This is a Comment block.
+
+ This is a Comment block.
+ This is a Comment block.
+
+ - This is a Comment block.
+ This is a Comment block.
+//////////////////////////
+
+PASSTHROUGHBLOCK
+
+++++++++++++++++++++++++++
+THIS IS A PASSTHROUGH BLOCK.
+THIS IS A PASSTHROUGH BLOCK.
+
+ THIS IS A PASSTHROUGH BLOCK.
+ THIS IS A PASSTHROUGH BLOCK.
+
+ - THIS IS A PASSTHROUGH BLOCK.
+ THIS IS A PASSTHROUGH BLOCK.
+++++++++++++++++++++++++++
+
+LISTINGBLOCK
+
+--------------------------
+THIS IS A LISTING BLOCK.
+THIS IS A LISTING BLOCK.
+
+ THIS IS A LISTING BLOCK.
+ THIS IS A LISTING BLOCK.
+
+ - THIS IS A LISTING BLOCK.
+ THIS IS A LISTING BLOCK.
+--------------------------
+
+LITERALBLOCK
+
+..........................
+THIS IS A LITERAL BLOCK.
+THIS IS A LITERAL BLOCK.
+
+ THIS IS A LITERAL BLOCK.
+ THIS IS A LITERAL BLOCK.
+
+ - THIS IS A LITERAL BLOCK.
+ THIS IS A LITERAL BLOCK.
+..........................
+
+SIDEBARBLOCK
+
+**************************
+THIS IS A SIDEBAR BLOCK. THIS IS A SIDEBAR BLOCK.
+
+ THIS IS A SIDEBAR BLOCK.
+ THIS IS A SIDEBAR BLOCK.
+
+ - THIS IS A SIDEBAR BLOCK. THIS IS A SIDEBAR BLOCK.
+**************************
+
+QUOTEBLOCK
+
+__________________________
+THIS IS A QUOTE BLOCK. THIS IS A QUOTE BLOCK.
+
+ THIS IS A QUOTE BLOCK.
+ THIS IS A QUOTE BLOCK.
+
+ - THIS IS A QUOTE BLOCK. THIS IS A QUOTE BLOCK.
+__________________________
+
+
+[quote, "BERTRAND RUSSELL", "THE WORLD OF MATHEMATICS (1956)"]
+____________________________________________________________________
+A GOOD NOTATION HAS SUBTLETY AND SUGGESTIVENESS WHICH AT TIMES MAKES IT ALMOST SEEM LIKE A LIVE TEACHER.
+____________________________________________________________________
+
+[verse, "WILLIAM BLAKE", "FROM AUGURIES OF INNOCENCE"]
+__________________________________________________
+TO SEE A WORLD IN A GRAIN OF SAND,
+AND A HEAVEN IN A WILD FLOWER,
+HOLD INFINITY IN THE PALM OF YOUR HAND,
+AND ETERNITY IN AN HOUR.
+__________________________________________________
+
+EXAMPLEBLOCK
+
+==========================
+THIS IS A EXAMPLE BLOCK. THIS IS A EXAMPLE BLOCK.
+
+ THIS IS A EXAMPLE BLOCK.
+ THIS IS A EXAMPLE BLOCK.
+
+ - THIS IS A EXAMPLE BLOCK. THIS IS A EXAMPLE BLOCK.
+==========================
+
+.AN EXAMPLE
+=====================================================================
+QUI IN MAGNA COMMODO, EST LABITUR DOLORUM AN. EST NE MAGNA PRIMIS ADOLESCENS.
+=====================================================================
+
+[caption="EXAMPLE 1: "]
+.AN EXAMPLE WITH A CUSTOM CAPTION
+=====================================================================
+QUI IN MAGNA COMMODO, EST LABITUR DOLORUM AN. EST NE MAGNA PRIMIS ADOLESCENS.
+=====================================================================
+
+[NOTE]
+.A NOTE BLOCK
+=====================================================================
+QUI IN MAGNA COMMODO, EST LABITUR DOLORUM AN. EST NE MAGNA PRIMIS ADOLESCENS.
+
+. FUSCE EUISMOD COMMODO VELIT.
+. VIVAMUS FRINGILLA MI EU LACUS.
+ .. FUSCE EUISMOD COMMODO VELIT.
+ .. VIVAMUS FRINGILLA MI EU LACUS.
+. DONEC EGET ARCU BIBENDUM NUNC CONSEQUAT LOBORTIS.
+=====================================================================
+
+FILTER BLOCKS
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~
+This is a Filter block.
+This is a Filter block.
+
+ This is a Filter block.
+ This is a Filter block.
+
+ - This is a Filter block.
+ This is a Filter block.
+~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+
+
+//////////////////////////
+test
+
+--------------------------
+Listing inside Comment
+--------------------------
+
+end of test
+//////////////////////////
+
+++++++++++++++++++++++++++
+TEST
+
+--------------------------
+LISTING INSIDE PASSTHROUGH
+--------------------------
+
+END OF TEST
+++++++++++++++++++++++++++
+
+--------------------------
+TEST
+
+__________________________
+QUOTEBLOCK INSIDE LISTING
+__________________________
+
+END OF TEST
+--------------------------
+
+----
+TEST
+
+-------------------------------
+LISTING INSIDE A LISTING
+-------------------------------
+
+END OF TEST
+----
diff --git a/t/fmt/asciidoc/StyleMacro.adoc b/t/fmt/asciidoc/StyleMacro.adoc
new file mode 100644
index 0000000..97936a8
--- /dev/null
+++ b/t/fmt/asciidoc/StyleMacro.adoc
@@ -0,0 +1,59 @@
+Test Macro and Styles
+===========================================
+
+Styles
+------
+
+[quote, Lorem Ipsum, Dolor sit(1991)]
+Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
+tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim
+veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea
+commodo consequat. Duis aute irure dolor in reprehenderit in voluptate
+velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat
+cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id
+est laborum.
+
+[verse, Lorem Ipsum verse, Dolor sit verse]
+Lorem ipsum dolor sit amet,
+Consectetur adipisicing elit,
+Sed do eiusmod tempor incididunt
+Ut labore et dolore magna aliqua.
+
+
+[verse, Lorem Ipsum verse2, Dolor sit verse2]
+____
+Lorem ipsum dolor sit amet,
+Consectetur adipisicing elit,
+
+Sed do eiusmod tempor incididunt
+Ut labore et dolore magna aliqua.
+____
+
+[icon=foo.png, caption="Lorem ipsum"]
+Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
+tempor incididunt ut labore et dolore magna aliqua.
+
+Block macros
+------------
+
+Paragraph before blockimage
+image::foo.png[Block image Alt]
+paragraph after blockimage
+
+image::foo.png["Block image with title", title="My image title"]
+
+.External image title
+image::foo.png["Block image with external title"]
+
+image::foo.png[title="Image with title but without alt-text"]
+
+Block image macro without alt text:
+image::foo.png[]
+
+ifeval::[42 == 42]
+// Empty macro target:
+endif::[]
+
+ifeval::["{foo}" == "bar"]
+include::{foo-path}bar.adoc[leveloffset=+1, lines=7..21;32..-1]
+endif::[]
diff --git a/t/fmt/asciidoc/StyleMacro.norm b/t/fmt/asciidoc/StyleMacro.norm
new file mode 100644
index 0000000..b9688b6
--- /dev/null
+++ b/t/fmt/asciidoc/StyleMacro.norm
@@ -0,0 +1,52 @@
+Test Macro and Styles
+===========================================
+
+Styles
+------
+
+[quote, "Lorem Ipsum", "Dolor sit(1991)"]
+Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
+
+[verse, "Lorem Ipsum verse", "Dolor sit verse"]
+Lorem ipsum dolor sit amet,
+Consectetur adipisicing elit,
+Sed do eiusmod tempor incididunt
+Ut labore et dolore magna aliqua.
+
+
+[verse, "Lorem Ipsum verse2", "Dolor sit verse2"]
+____
+Lorem ipsum dolor sit amet,
+Consectetur adipisicing elit,
+
+Sed do eiusmod tempor incididunt
+Ut labore et dolore magna aliqua.
+____
+
+[icon="foo.png,", caption="Lorem ipsum"]
+Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
+
+Block macros
+------------
+
+Paragraph before blockimage
+image::foo.png["Block image Alt"]
+paragraph after blockimage
+
+image::foo.png["Block image with title", title="My image title"]
+
+.External image title
+image::foo.png["Block image with external title"]
+
+image::foo.png[title="Image with title but without alt-text"]
+
+Block image macro without alt text:
+image::foo.png[]
+
+ifeval::[42 == 42]
+// Empty macro target:
+endif::[]
+
+ifeval::["{foo}" == "bar"]
+include::{foo-path}bar.adoc[leveloffset=+1, lines=7..21;32..-1]
+endif::[]
diff --git a/t/fmt/asciidoc/StyleMacro.po b/t/fmt/asciidoc/StyleMacro.po
new file mode 100644
index 0000000..c8a3c85
--- /dev/null
+++ b/t/fmt/asciidoc/StyleMacro.po
@@ -0,0 +1,194 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2017-03-27 17:53+0200\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@LI.ORG>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: TEXT/PLAIN; CHARSET=UTF-8\n"
+"Content-Transfer-Encoding: 8BIT\n"
+
+#. type: Plain text
+#: StyleMacro.adoc:2
+msgid "Test Macro and Styles"
+msgstr "TEST MACRO AND STYLES"
+
+#. type: Title -
+#: StyleMacro.adoc:5
+#, no-wrap
+msgid "Styles"
+msgstr "STYLES"
+
+#. type: Positional ($2) AttributeList argument for style 'quote'
+#: StyleMacro.adoc:7
+#, no-wrap
+msgid "Lorem Ipsum"
+msgstr "LOREM IPSUM"
+
+#. type: Positional ($3) AttributeList argument for style 'quote'
+#: StyleMacro.adoc:7
+#, no-wrap
+msgid "Dolor sit(1991)"
+msgstr "DOLOR SIT(1991)"
+
+#. type: quote
+#: StyleMacro.adoc:15
+msgid ""
+"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod "
+"tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, "
+"quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo "
+"consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse "
+"cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat "
+"non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
+msgstr ""
+"LOREM IPSUM DOLOR SIT AMET, CONSECTETUR ADIPISICING ELIT, SED DO EIUSMOD "
+"TEMPOR INCIDIDUNT UT LABORE ET DOLORE MAGNA ALIQUA. UT ENIM AD MINIM VENIAM, "
+"QUIS NOSTRUD EXERCITATION ULLAMCO LABORIS NISI UT ALIQUIP EX EA COMMODO "
+"CONSEQUAT. DUIS AUTE IRURE DOLOR IN REPREHENDERIT IN VOLUPTATE VELIT ESSE "
+"CILLUM DOLORE EU FUGIAT NULLA PARIATUR. EXCEPTEUR SINT OCCAECAT CUPIDATAT "
+"NON PROIDENT, SUNT IN CULPA QUI OFFICIA DESERUNT MOLLIT ANIM ID EST LABORUM."
+
+#. type: Positional ($2) AttributeList argument for style 'verse'
+#: StyleMacro.adoc:16
+#, no-wrap
+msgid "Lorem Ipsum verse"
+msgstr "LOREM IPSUM VERSE"
+
+#. type: Positional ($3) AttributeList argument for style 'verse'
+#: StyleMacro.adoc:16
+#, no-wrap
+msgid "Dolor sit verse"
+msgstr "DOLOR SIT VERSE"
+
+#. type: verse
+#: StyleMacro.adoc:21
+#, no-wrap
+msgid ""
+"Lorem ipsum dolor sit amet,\n"
+"Consectetur adipisicing elit,\n"
+"Sed do eiusmod tempor incididunt\n"
+"Ut labore et dolore magna aliqua.\n"
+msgstr ""
+"LOREM IPSUM DOLOR SIT AMET,\n"
+"CONSECTETUR ADIPISICING ELIT,\n"
+"SED DO EIUSMOD TEMPOR INCIDIDUNT\n"
+"UT LABORE ET DOLORE MAGNA ALIQUA.\n"
+
+#. type: Positional ($2) AttributeList argument for style 'verse'
+#: StyleMacro.adoc:23
+#, no-wrap
+msgid "Lorem Ipsum verse2"
+msgstr "LOREM IPSUM VERSE2"
+
+#. type: Positional ($3) AttributeList argument for style 'verse'
+#: StyleMacro.adoc:23
+#, no-wrap
+msgid "Dolor sit verse2"
+msgstr "DOLOR SIT VERSE2"
+
+#. type: delimited block _
+#: StyleMacro.adoc:27
+#, no-wrap
+msgid ""
+"Lorem ipsum dolor sit amet,\n"
+"Consectetur adipisicing elit,\n"
+msgstr ""
+"LOREM IPSUM DOLOR SIT AMET,\n"
+"CONSECTETUR ADIPISICING ELIT,\n"
+
+#. type: delimited block _
+#: StyleMacro.adoc:30
+#, no-wrap
+msgid ""
+"Sed do eiusmod tempor incididunt\n"
+"Ut labore et dolore magna aliqua.\n"
+msgstr ""
+"SED DO EIUSMOD TEMPOR INCIDIDUNT\n"
+"UT LABORE ET DOLORE MAGNA ALIQUA.\n"
+
+#. type: Named 'icon' AttributeList argument for style 'icon'
+#: StyleMacro.adoc:32
+#, no-wrap
+msgid "foo.png,"
+msgstr "FOO.PNG,"
+
+#. type: Plain text
+#: StyleMacro.adoc:35
+msgid ""
+"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod "
+"tempor incididunt ut labore et dolore magna aliqua."
+msgstr ""
+"LOREM IPSUM DOLOR SIT AMET, CONSECTETUR ADIPISICING ELIT, SED DO EIUSMOD "
+"TEMPOR INCIDIDUNT UT LABORE ET DOLORE MAGNA ALIQUA."
+
+#. type: Title -
+#: StyleMacro.adoc:37
+#, no-wrap
+msgid "Block macros"
+msgstr "BLOCK MACROS"
+
+#. type: Plain text
+#: StyleMacro.adoc:40
+msgid "Paragraph before blockimage"
+msgstr "PARAGRAPH BEFORE BLOCKIMAGE"
+
+#. type: Positional ($1) AttributeList argument for macro 'image'
+#: StyleMacro.adoc:40
+#, no-wrap
+msgid "Block image Alt"
+msgstr "BLOCK IMAGE ALT"
+
+#. type: Target for macro image
+#: StyleMacro.adoc:40 StyleMacro.adoc:43 StyleMacro.adoc:46 StyleMacro.adoc:48
+#: StyleMacro.adoc:51
+#, no-wrap
+msgid "foo.png"
+msgstr "FOO.PNG"
+
+#. type: Plain text
+#: StyleMacro.adoc:42
+msgid "paragraph after blockimage"
+msgstr "PARAGRAPH AFTER BLOCKIMAGE"
+
+#. type: Positional ($1) AttributeList argument for macro 'image'
+#: StyleMacro.adoc:43
+#, no-wrap
+msgid "Block image with title"
+msgstr "BLOCK IMAGE WITH TITLE"
+
+#. type: Named 'title' AttributeList argument for macro 'image'
+#: StyleMacro.adoc:43
+#, no-wrap
+msgid "My image title"
+msgstr "MY IMAGE TITLE"
+
+#. type: Block title
+#: StyleMacro.adoc:45
+#, no-wrap
+msgid "External image title"
+msgstr "EXTERNAL IMAGE TITLE"
+
+#. type: Positional ($1) AttributeList argument for macro 'image'
+#: StyleMacro.adoc:46
+#, no-wrap
+msgid "Block image with external title"
+msgstr "BLOCK IMAGE WITH EXTERNAL TITLE"
+
+#. type: Named 'title' AttributeList argument for macro 'image'
+#: StyleMacro.adoc:48
+#, no-wrap
+msgid "Image with title but without alt-text"
+msgstr "IMAGE WITH TITLE BUT WITHOUT ALT-TEXT"
+
+#. type: Plain text
+#: StyleMacro.adoc:51
+msgid "Block image macro without alt text:"
+msgstr "BLOCK IMAGE MACRO WITHOUT ALT TEXT:"
diff --git a/t/fmt/asciidoc/StyleMacro.pot b/t/fmt/asciidoc/StyleMacro.pot
new file mode 100644
index 0000000..b74d2a6
--- /dev/null
+++ b/t/fmt/asciidoc/StyleMacro.pot
@@ -0,0 +1,178 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2021-03-13 16:59-0300\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Plain text
+#: StyleMacro.adoc:2
+msgid "Test Macro and Styles"
+msgstr ""
+
+#. type: Title -
+#: StyleMacro.adoc:5
+#, no-wrap
+msgid "Styles"
+msgstr ""
+
+#. type: Positional ($2) AttributeList argument for style 'quote'
+#: StyleMacro.adoc:7
+#, no-wrap
+msgid "Lorem Ipsum"
+msgstr ""
+
+#. type: Positional ($3) AttributeList argument for style 'quote'
+#: StyleMacro.adoc:7
+#, no-wrap
+msgid "Dolor sit(1991)"
+msgstr ""
+
+#. type: quote
+#: StyleMacro.adoc:15
+msgid ""
+"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod "
+"tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, "
+"quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo "
+"consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse "
+"cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat "
+"non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
+msgstr ""
+
+#. type: Positional ($2) AttributeList argument for style 'verse'
+#: StyleMacro.adoc:16
+#, no-wrap
+msgid "Lorem Ipsum verse"
+msgstr ""
+
+#. type: Positional ($3) AttributeList argument for style 'verse'
+#: StyleMacro.adoc:16
+#, no-wrap
+msgid "Dolor sit verse"
+msgstr ""
+
+#. type: verse
+#: StyleMacro.adoc:21
+#, no-wrap
+msgid ""
+"Lorem ipsum dolor sit amet,\n"
+"Consectetur adipisicing elit,\n"
+"Sed do eiusmod tempor incididunt\n"
+"Ut labore et dolore magna aliqua.\n"
+msgstr ""
+
+#. type: Positional ($2) AttributeList argument for style 'verse'
+#: StyleMacro.adoc:23
+#, no-wrap
+msgid "Lorem Ipsum verse2"
+msgstr ""
+
+#. type: Positional ($3) AttributeList argument for style 'verse'
+#: StyleMacro.adoc:23
+#, no-wrap
+msgid "Dolor sit verse2"
+msgstr ""
+
+#. type: delimited block _
+#: StyleMacro.adoc:27
+#, no-wrap
+msgid ""
+"Lorem ipsum dolor sit amet,\n"
+"Consectetur adipisicing elit,\n"
+msgstr ""
+
+#. type: delimited block _
+#: StyleMacro.adoc:30
+#, no-wrap
+msgid ""
+"Sed do eiusmod tempor incididunt\n"
+"Ut labore et dolore magna aliqua.\n"
+msgstr ""
+
+#. type: Named 'icon' AttributeList argument for style 'icon'
+#: StyleMacro.adoc:32
+#, no-wrap
+msgid "foo.png,"
+msgstr ""
+
+#. type: Plain text
+#: StyleMacro.adoc:35
+msgid ""
+"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod "
+"tempor incididunt ut labore et dolore magna aliqua."
+msgstr ""
+
+#. type: Title -
+#: StyleMacro.adoc:37
+#, no-wrap
+msgid "Block macros"
+msgstr ""
+
+#. type: Plain text
+#: StyleMacro.adoc:40
+msgid "Paragraph before blockimage"
+msgstr ""
+
+#. type: Positional ($1) AttributeList argument for macro 'image'
+#: StyleMacro.adoc:40
+#, no-wrap
+msgid "Block image Alt"
+msgstr ""
+
+#. type: Target for macro image
+#: StyleMacro.adoc:40 StyleMacro.adoc:43 StyleMacro.adoc:46 StyleMacro.adoc:48
+#: StyleMacro.adoc:51
+#, no-wrap
+msgid "foo.png"
+msgstr ""
+
+#. type: Plain text
+#: StyleMacro.adoc:42
+msgid "paragraph after blockimage"
+msgstr ""
+
+#. type: Positional ($1) AttributeList argument for macro 'image'
+#: StyleMacro.adoc:43
+#, no-wrap
+msgid "Block image with title"
+msgstr ""
+
+#. type: Named 'title' AttributeList argument for macro 'image'
+#: StyleMacro.adoc:43
+#, no-wrap
+msgid "My image title"
+msgstr ""
+
+#. type: Block title
+#: StyleMacro.adoc:45
+#, no-wrap
+msgid "External image title"
+msgstr ""
+
+#. type: Positional ($1) AttributeList argument for macro 'image'
+#: StyleMacro.adoc:46
+#, no-wrap
+msgid "Block image with external title"
+msgstr ""
+
+#. type: Named 'title' AttributeList argument for macro 'image'
+#: StyleMacro.adoc:48
+#, no-wrap
+msgid "Image with title but without alt-text"
+msgstr ""
+
+#. type: Plain text
+#: StyleMacro.adoc:51
+msgid "Block image macro without alt text:"
+msgstr ""
diff --git a/t/fmt/asciidoc/StyleMacro.trans b/t/fmt/asciidoc/StyleMacro.trans
new file mode 100644
index 0000000..d33cc9e
--- /dev/null
+++ b/t/fmt/asciidoc/StyleMacro.trans
@@ -0,0 +1,52 @@
+TEST MACRO AND STYLES
+===========================================
+
+STYLES
+------
+
+[quote, "LOREM IPSUM", "DOLOR SIT(1991)"]
+LOREM IPSUM DOLOR SIT AMET, CONSECTETUR ADIPISICING ELIT, SED DO EIUSMOD TEMPOR INCIDIDUNT UT LABORE ET DOLORE MAGNA ALIQUA. UT ENIM AD MINIM VENIAM, QUIS NOSTRUD EXERCITATION ULLAMCO LABORIS NISI UT ALIQUIP EX EA COMMODO CONSEQUAT. DUIS AUTE IRURE DOLOR IN REPREHENDERIT IN VOLUPTATE VELIT ESSE CILLUM DOLORE EU FUGIAT NULLA PARIATUR. EXCEPTEUR SINT OCCAECAT CUPIDATAT NON PROIDENT, SUNT IN CULPA QUI OFFICIA DESERUNT MOLLIT ANIM ID EST LABORUM.
+
+[verse, "LOREM IPSUM VERSE", "DOLOR SIT VERSE"]
+LOREM IPSUM DOLOR SIT AMET,
+CONSECTETUR ADIPISICING ELIT,
+SED DO EIUSMOD TEMPOR INCIDIDUNT
+UT LABORE ET DOLORE MAGNA ALIQUA.
+
+
+[verse, "LOREM IPSUM VERSE2", "DOLOR SIT VERSE2"]
+____
+LOREM IPSUM DOLOR SIT AMET,
+CONSECTETUR ADIPISICING ELIT,
+
+SED DO EIUSMOD TEMPOR INCIDIDUNT
+UT LABORE ET DOLORE MAGNA ALIQUA.
+____
+
+[icon="FOO.PNG,", caption="Lorem ipsum"]
+LOREM IPSUM DOLOR SIT AMET, CONSECTETUR ADIPISICING ELIT, SED DO EIUSMOD TEMPOR INCIDIDUNT UT LABORE ET DOLORE MAGNA ALIQUA.
+
+BLOCK MACROS
+------------
+
+PARAGRAPH BEFORE BLOCKIMAGE
+image::FOO.PNG["BLOCK IMAGE ALT"]
+PARAGRAPH AFTER BLOCKIMAGE
+
+image::FOO.PNG["BLOCK IMAGE WITH TITLE", title="MY IMAGE TITLE"]
+
+.EXTERNAL IMAGE TITLE
+image::FOO.PNG["BLOCK IMAGE WITH EXTERNAL TITLE"]
+
+image::FOO.PNG[title="IMAGE WITH TITLE BUT WITHOUT ALT-TEXT"]
+
+BLOCK IMAGE MACRO WITHOUT ALT TEXT:
+image::FOO.PNG[]
+
+ifeval::[42 == 42]
+// Empty macro target:
+endif::[]
+
+ifeval::["{foo}" == "bar"]
+include::{foo-path}bar.adoc[leveloffset=+1, lines=7..21;32..-1]
+endif::[]
diff --git a/t/fmt/asciidoc/Tables.adoc b/t/fmt/asciidoc/Tables.adoc
new file mode 100644
index 0000000..35d55c5
--- /dev/null
+++ b/t/fmt/asciidoc/Tables.adoc
@@ -0,0 +1,78 @@
+Test Tables
+===========
+
+|===
+|1 | 2
+|3 | 4
+|5 | 6
+|===
+
+
+.An example table
+[grid="all", options="header", cols=">,"]
+|===
+|Column 1 | Column 2
+|1 | Item 1
+|2 | Item 2
+|3 | Item 3
+|6 | Three items
+|===
+
+[frame="all", cols="<,<,<,<", width="15%"]
+|===
+|1|2|3|4
+|a|b|c|d
+|A|B|C|D
+|===
+
+[frame="all", grid="all", cols="^15,>20,>25,>20", format="csv"]
+|===
+ID,Customer Name,Contact Name,Customer Address,Phone
+include::customers.csv[]
+|===
+
+The following examples are drawn from the https://docs.fedoraproject.org/f27/system-administrators-guide/index.html[Fedora System Administrator's Guide]:
+
+[options="header"]
+|===
+|Option|Description
+|[option]`Charset` = __encoding__|Specifies the character set of a generated web page. The _encoding_ has to be a valid character set such as `UTF-8` or `ISO-8859-2`.
+|[option]`Type` = __content-type__|Specifies the media type of a generated web page. The _content-type_ has to be a valid MIME type such as `text/html` or `text/plain`.
+|[option]`DescriptionWidth` = __value__|Specifies the width of the description column. The _value_ can be either a number of characters, or an asterisk (that is, `*`) to adjust the width automatically.
+|[option]`FancyIndexing`|Enables advanced features such as different icons for certain files or possibility to re-sort a directory listing by clicking on a column header.
+|[option]`FolderFirst`|Enables listing directories first, always placing them above files.
+|[option]`HTMLTable`|Enables the use of HTML tables for directory listings.
+|[option]`IconsAreLinks`|Enables using the icons as links.
+|[option]`IconHeight` = __value__|Specifies an icon height. The _value_ is a number of pixels.
+|[option]`IconWidth` = __value__|Specifies an icon width. The _value_ is a number of pixels.
+|[option]`IgnoreCase`|Enables sorting files and directories in a case-sensitive manner.
+|[option]`IgnoreClient`|Disables accepting query variables from a client.
+|[option]`NameWidth` = __value__|Specifies the width of the file name column. The _value_ can be either a number of characters, or an asterisk (that is, `*`) to adjust the width automatically.
+|[option]`ScanHTMLTitles`|Enables parsing the file for a description (that is, the `title` element) in case it is not provided by the [option]`AddDescription` directive.
+|[option]`ShowForbidden`|Enables listing the files with otherwise restricted access.
+|[option]`SuppressColumnSorting`|Disables re-sorting a directory listing by clicking on a column header.
+|[option]`SuppressDescription`|Disables reserving a space for file descriptions.
+|[option]`SuppressHTMLPreamble`|Disables the use of standard HTML preamble when a file specified by the [option]`HeaderName` directive is present.
+|[option]`SuppressIcon`|Disables the use of icons in directory listings.
+|[option]`SuppressLastModified`|Disables displaying the date of the last modification field in directory listings.
+|[option]`SuppressRules`|Disables the use of horizontal lines in directory listings.
+|[option]`SuppressSize`|Disables displaying the file size field in directory listings.
+|[option]`TrackModified`|Enables returning the `Last-Modified` and `ETag` values in the HTTP header.
+|[option]`VersionSort`|Enables sorting files that contain a version number in the expected manner.
+|[option]`XHTML`|Enables the use of XHTML 1.0 instead of the default HTML 3.2.
+|===
+
+Manually wrapped cells
+
+|===
+|Option|Description
+|[option]`Charset` = __encoding__
+|Specifies the character set of a generated web page. The _encoding_ has to be a valid character set such as `UTF-8` or `ISO-8859-2`.
+|[option]`Type` = __content-type__
+|Specifies the media type of a generated web page. The _content-type_
+has to be a valid MIME type such as `text/html` or `text/plain`.
+
+|[option]`DescriptionWidth` = __value__
+
+|Specifies the width of the description column. The _value_ can be either a number of characters, or an asterisk (that is, `*`) to adjust the width automatically.
+|===
diff --git a/t/fmt/asciidoc/Tables.norm b/t/fmt/asciidoc/Tables.norm
new file mode 100644
index 0000000..35d55c5
--- /dev/null
+++ b/t/fmt/asciidoc/Tables.norm
@@ -0,0 +1,78 @@
+Test Tables
+===========
+
+|===
+|1 | 2
+|3 | 4
+|5 | 6
+|===
+
+
+.An example table
+[grid="all", options="header", cols=">,"]
+|===
+|Column 1 | Column 2
+|1 | Item 1
+|2 | Item 2
+|3 | Item 3
+|6 | Three items
+|===
+
+[frame="all", cols="<,<,<,<", width="15%"]
+|===
+|1|2|3|4
+|a|b|c|d
+|A|B|C|D
+|===
+
+[frame="all", grid="all", cols="^15,>20,>25,>20", format="csv"]
+|===
+ID,Customer Name,Contact Name,Customer Address,Phone
+include::customers.csv[]
+|===
+
+The following examples are drawn from the https://docs.fedoraproject.org/f27/system-administrators-guide/index.html[Fedora System Administrator's Guide]:
+
+[options="header"]
+|===
+|Option|Description
+|[option]`Charset` = __encoding__|Specifies the character set of a generated web page. The _encoding_ has to be a valid character set such as `UTF-8` or `ISO-8859-2`.
+|[option]`Type` = __content-type__|Specifies the media type of a generated web page. The _content-type_ has to be a valid MIME type such as `text/html` or `text/plain`.
+|[option]`DescriptionWidth` = __value__|Specifies the width of the description column. The _value_ can be either a number of characters, or an asterisk (that is, `*`) to adjust the width automatically.
+|[option]`FancyIndexing`|Enables advanced features such as different icons for certain files or possibility to re-sort a directory listing by clicking on a column header.
+|[option]`FolderFirst`|Enables listing directories first, always placing them above files.
+|[option]`HTMLTable`|Enables the use of HTML tables for directory listings.
+|[option]`IconsAreLinks`|Enables using the icons as links.
+|[option]`IconHeight` = __value__|Specifies an icon height. The _value_ is a number of pixels.
+|[option]`IconWidth` = __value__|Specifies an icon width. The _value_ is a number of pixels.
+|[option]`IgnoreCase`|Enables sorting files and directories in a case-sensitive manner.
+|[option]`IgnoreClient`|Disables accepting query variables from a client.
+|[option]`NameWidth` = __value__|Specifies the width of the file name column. The _value_ can be either a number of characters, or an asterisk (that is, `*`) to adjust the width automatically.
+|[option]`ScanHTMLTitles`|Enables parsing the file for a description (that is, the `title` element) in case it is not provided by the [option]`AddDescription` directive.
+|[option]`ShowForbidden`|Enables listing the files with otherwise restricted access.
+|[option]`SuppressColumnSorting`|Disables re-sorting a directory listing by clicking on a column header.
+|[option]`SuppressDescription`|Disables reserving a space for file descriptions.
+|[option]`SuppressHTMLPreamble`|Disables the use of standard HTML preamble when a file specified by the [option]`HeaderName` directive is present.
+|[option]`SuppressIcon`|Disables the use of icons in directory listings.
+|[option]`SuppressLastModified`|Disables displaying the date of the last modification field in directory listings.
+|[option]`SuppressRules`|Disables the use of horizontal lines in directory listings.
+|[option]`SuppressSize`|Disables displaying the file size field in directory listings.
+|[option]`TrackModified`|Enables returning the `Last-Modified` and `ETag` values in the HTTP header.
+|[option]`VersionSort`|Enables sorting files that contain a version number in the expected manner.
+|[option]`XHTML`|Enables the use of XHTML 1.0 instead of the default HTML 3.2.
+|===
+
+Manually wrapped cells
+
+|===
+|Option|Description
+|[option]`Charset` = __encoding__
+|Specifies the character set of a generated web page. The _encoding_ has to be a valid character set such as `UTF-8` or `ISO-8859-2`.
+|[option]`Type` = __content-type__
+|Specifies the media type of a generated web page. The _content-type_
+has to be a valid MIME type such as `text/html` or `text/plain`.
+
+|[option]`DescriptionWidth` = __value__
+
+|Specifies the width of the description column. The _value_ can be either a number of characters, or an asterisk (that is, `*`) to adjust the width automatically.
+|===
diff --git a/t/fmt/asciidoc/Tables.po b/t/fmt/asciidoc/Tables.po
new file mode 100644
index 0000000..141e0f0
--- /dev/null
+++ b/t/fmt/asciidoc/Tables.po
@@ -0,0 +1,175 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2018-10-03 09:32+0200\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@LI.ORG>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: TEXT/PLAIN; CHARSET=UTF-8\n"
+"Content-Transfer-Encoding: 8BIT\n"
+
+#. type: Title =
+#: Tables.adoc:2
+#, no-wrap
+msgid "Test Tables"
+msgstr "TEST TABLES"
+
+#. type: Table
+#: Tables.adoc:8
+#, no-wrap
+msgid ""
+"|1 | 2\n"
+"|3 | 4\n"
+"|5 | 6\n"
+msgstr ""
+"|1 | 2\n"
+"|3 | 4\n"
+"|5 | 6\n"
+
+#. type: Block title
+#: Tables.adoc:11
+#, no-wrap
+msgid "An example table"
+msgstr "AN EXAMPLE TABLE"
+
+#. type: Table
+#: Tables.adoc:19
+#, no-wrap
+msgid ""
+"|Column 1 | Column 2\n"
+"|1 | Item 1\n"
+"|2 | Item 2\n"
+"|3 | Item 3\n"
+"|6 | Three items\n"
+msgstr ""
+"|COLUMN 1 | COLUMN 2\n"
+"|1 | ITEM 1\n"
+"|2 | ITEM 2\n"
+"|3 | ITEM 3\n"
+"|6 | THREE ITEMS\n"
+
+#. type: Table
+#: Tables.adoc:26
+#, no-wrap
+msgid ""
+"|1|2|3|4\n"
+"|a|b|c|d\n"
+"|A|B|C|D\n"
+msgstr ""
+"|1|2|3|4\n"
+"|A|B|C|D\n"
+"|A|B|C|D\n"
+
+#. type: Table
+#: Tables.adoc:32
+#, no-wrap
+msgid ""
+"ID,Customer Name,Contact Name,Customer Address,Phone\n"
+"include::customers.csv[]\n"
+msgstr ""
+"ID,CUSTOMER NAME,CONTACT NAME,CUSTOMER ADDRESS,PHONE\n"
+"INCLUDE::CUSTOMERS.CSV[]\n"
+
+#. type: Plain text
+#: Tables.adoc:35
+msgid ""
+"The following examples are drawn from the https://docs.fedoraproject.org/f27/"
+"system-administrators-guide/index.html[Fedora System Administrator's Guide]:"
+msgstr ""
+"THE FOLLOWING EXAMPLES ARE DRAWN FROM THE HTTPS://DOCS.FEDORAPROJECT.ORG/F27/"
+"SYSTEM-ADMINISTRATORS-GUIDE/INDEX.HTML[FEDORA SYSTEM ADMINISTRATOR'S GUIDE]:"
+
+#. type: Table
+#: Tables.adoc:63
+#, no-wrap
+msgid ""
+"|Option|Description\n"
+"|[option]`Charset` = __encoding__|Specifies the character set of a generated web page. The _encoding_ has to be a valid character set such as `UTF-8` or `ISO-8859-2`.\n"
+"|[option]`Type` = __content-type__|Specifies the media type of a generated web page. The _content-type_ has to be a valid MIME type such as `text/html` or `text/plain`.\n"
+"|[option]`DescriptionWidth` = __value__|Specifies the width of the description column. The _value_ can be either a number of characters, or an asterisk (that is, `*`) to adjust the width automatically.\n"
+"|[option]`FancyIndexing`|Enables advanced features such as different icons for certain files or possibility to re-sort a directory listing by clicking on a column header.\n"
+"|[option]`FolderFirst`|Enables listing directories first, always placing them above files.\n"
+"|[option]`HTMLTable`|Enables the use of HTML tables for directory listings.\n"
+"|[option]`IconsAreLinks`|Enables using the icons as links.\n"
+"|[option]`IconHeight` = __value__|Specifies an icon height. The _value_ is a number of pixels.\n"
+"|[option]`IconWidth` = __value__|Specifies an icon width. The _value_ is a number of pixels.\n"
+"|[option]`IgnoreCase`|Enables sorting files and directories in a case-sensitive manner.\n"
+"|[option]`IgnoreClient`|Disables accepting query variables from a client.\n"
+"|[option]`NameWidth` = __value__|Specifies the width of the file name column. The _value_ can be either a number of characters, or an asterisk (that is, `*`) to adjust the width automatically.\n"
+"|[option]`ScanHTMLTitles`|Enables parsing the file for a description (that is, the `title` element) in case it is not provided by the [option]`AddDescription` directive.\n"
+"|[option]`ShowForbidden`|Enables listing the files with otherwise restricted access.\n"
+"|[option]`SuppressColumnSorting`|Disables re-sorting a directory listing by clicking on a column header.\n"
+"|[option]`SuppressDescription`|Disables reserving a space for file descriptions.\n"
+"|[option]`SuppressHTMLPreamble`|Disables the use of standard HTML preamble when a file specified by the [option]`HeaderName` directive is present.\n"
+"|[option]`SuppressIcon`|Disables the use of icons in directory listings.\n"
+"|[option]`SuppressLastModified`|Disables displaying the date of the last modification field in directory listings.\n"
+"|[option]`SuppressRules`|Disables the use of horizontal lines in directory listings.\n"
+"|[option]`SuppressSize`|Disables displaying the file size field in directory listings.\n"
+"|[option]`TrackModified`|Enables returning the `Last-Modified` and `ETag` values in the HTTP header.\n"
+"|[option]`VersionSort`|Enables sorting files that contain a version number in the expected manner.\n"
+"|[option]`XHTML`|Enables the use of XHTML 1.0 instead of the default HTML 3.2.\n"
+msgstr ""
+"|OPTION|DESCRIPTION\n"
+"|[OPTION]`CHARSET` = __ENCODING__|SPECIFIES THE CHARACTER SET OF A GENERATED WEB PAGE. THE _ENCODING_ HAS TO BE A VALID CHARACTER SET SUCH AS `UTF-8` OR `ISO-8859-2`.\n"
+"|[OPTION]`TYPE` = __CONTENT-TYPE__|SPECIFIES THE MEDIA TYPE OF A GENERATED WEB PAGE. THE _CONTENT-TYPE_ HAS TO BE A VALID MIME TYPE SUCH AS `TEXT/HTML` OR `TEXT/PLAIN`.\n"
+"|[OPTION]`DESCRIPTIONWIDTH` = __VALUE__|SPECIFIES THE WIDTH OF THE DESCRIPTION COLUMN. THE _VALUE_ CAN BE EITHER A NUMBER OF CHARACTERS, OR AN ASTERISK (THAT IS, `*`) TO ADJUST THE WIDTH AUTOMATICALLY.\n"
+"|[OPTION]`FANCYINDEXING`|ENABLES ADVANCED FEATURES SUCH AS DIFFERENT ICONS FOR CERTAIN FILES OR POSSIBILITY TO RE-SORT A DIRECTORY LISTING BY CLICKING ON A COLUMN HEADER.\n"
+"|[OPTION]`FOLDERFIRST`|ENABLES LISTING DIRECTORIES FIRST, ALWAYS PLACING THEM ABOVE FILES.\n"
+"|[OPTION]`HTMLTABLE`|ENABLES THE USE OF HTML TABLES FOR DIRECTORY LISTINGS.\n"
+"|[OPTION]`ICONSARELINKS`|ENABLES USING THE ICONS AS LINKS.\n"
+"|[OPTION]`ICONHEIGHT` = __VALUE__|SPECIFIES AN ICON HEIGHT. THE _VALUE_ IS A NUMBER OF PIXELS.\n"
+"|[OPTION]`ICONWIDTH` = __VALUE__|SPECIFIES AN ICON WIDTH. THE _VALUE_ IS A NUMBER OF PIXELS.\n"
+"|[OPTION]`IGNORECASE`|ENABLES SORTING FILES AND DIRECTORIES IN A CASE-SENSITIVE MANNER.\n"
+"|[OPTION]`IGNORECLIENT`|DISABLES ACCEPTING QUERY VARIABLES FROM A CLIENT.\n"
+"|[OPTION]`NAMEWIDTH` = __VALUE__|SPECIFIES THE WIDTH OF THE FILE NAME COLUMN. THE _VALUE_ CAN BE EITHER A NUMBER OF CHARACTERS, OR AN ASTERISK (THAT IS, `*`) TO ADJUST THE WIDTH AUTOMATICALLY.\n"
+"|[OPTION]`SCANHTMLTITLES`|ENABLES PARSING THE FILE FOR A DESCRIPTION (THAT IS, THE `TITLE` ELEMENT) IN CASE IT IS NOT PROVIDED BY THE [OPTION]`ADDDESCRIPTION` DIRECTIVE.\n"
+"|[OPTION]`SHOWFORBIDDEN`|ENABLES LISTING THE FILES WITH OTHERWISE RESTRICTED ACCESS.\n"
+"|[OPTION]`SUPPRESSCOLUMNSORTING`|DISABLES RE-SORTING A DIRECTORY LISTING BY CLICKING ON A COLUMN HEADER.\n"
+"|[OPTION]`SUPPRESSDESCRIPTION`|DISABLES RESERVING A SPACE FOR FILE DESCRIPTIONS.\n"
+"|[OPTION]`SUPPRESSHTMLPREAMBLE`|DISABLES THE USE OF STANDARD HTML PREAMBLE WHEN A FILE SPECIFIED BY THE [OPTION]`HEADERNAME` DIRECTIVE IS PRESENT.\n"
+"|[OPTION]`SUPPRESSICON`|DISABLES THE USE OF ICONS IN DIRECTORY LISTINGS.\n"
+"|[OPTION]`SUPPRESSLASTMODIFIED`|DISABLES DISPLAYING THE DATE OF THE LAST MODIFICATION FIELD IN DIRECTORY LISTINGS.\n"
+"|[OPTION]`SUPPRESSRULES`|DISABLES THE USE OF HORIZONTAL LINES IN DIRECTORY LISTINGS.\n"
+"|[OPTION]`SUPPRESSSIZE`|DISABLES DISPLAYING THE FILE SIZE FIELD IN DIRECTORY LISTINGS.\n"
+"|[OPTION]`TRACKMODIFIED`|ENABLES RETURNING THE `LAST-MODIFIED` AND `ETAG` VALUES IN THE HTTP HEADER.\n"
+"|[OPTION]`VERSIONSORT`|ENABLES SORTING FILES THAT CONTAIN A VERSION NUMBER IN THE EXPECTED MANNER.\n"
+"|[OPTION]`XHTML`|ENABLES THE USE OF XHTML 1.0 INSTEAD OF THE DEFAULT HTML 3.2.\n"
+
+#. type: Plain text
+#: Tables.adoc:66
+msgid "Manually wrapped cells"
+msgstr "MANUALLY WRAPPED CELLS"
+
+#. type: Table
+#: Tables.adoc:78
+#, no-wrap
+msgid ""
+"|Option|Description\n"
+"|[option]`Charset` = __encoding__\n"
+"|Specifies the character set of a generated web page. The _encoding_ has to be a valid character set such as `UTF-8` or `ISO-8859-2`.\n"
+"|[option]`Type` = __content-type__\n"
+"|Specifies the media type of a generated web page. The _content-type_\n"
+"has to be a valid MIME type such as `text/html` or `text/plain`.\n"
+"\n"
+"|[option]`DescriptionWidth` = __value__\n"
+"\n"
+"|Specifies the width of the description column. The _value_ can be either a number of characters, or an asterisk (that is, `*`) to adjust the width automatically.\n"
+msgstr ""
+"|OPTION|DESCRIPTION\n"
+"|[OPTION]`CHARSET` = __ENCODING__\n"
+"|SPECIFIES THE CHARACTER SET OF A GENERATED WEB PAGE. THE _ENCODING_ HAS TO BE A VALID CHARACTER SET SUCH AS `UTF-8` OR `ISO-8859-2`.\n"
+"|[OPTION]`TYPE` = __CONTENT-TYPE__\n"
+"|SPECIFIES THE MEDIA TYPE OF A GENERATED WEB PAGE. THE _CONTENT-TYPE_\n"
+"HAS TO BE A VALID MIME TYPE SUCH AS `TEXT/HTML` OR `TEXT/PLAIN`.\n"
+"\n"
+"|[OPTION]`DESCRIPTIONWIDTH` = __VALUE__\n"
+"\n"
+"|SPECIFIES THE WIDTH OF THE DESCRIPTION COLUMN. THE _VALUE_ CAN BE EITHER A NUMBER OF CHARACTERS, OR AN ASTERISK (THAT IS, `*`) TO ADJUST THE WIDTH AUTOMATICALLY.\n"
diff --git a/t/fmt/asciidoc/Tables.pot b/t/fmt/asciidoc/Tables.pot
new file mode 100644
index 0000000..67b0d2f
--- /dev/null
+++ b/t/fmt/asciidoc/Tables.pot
@@ -0,0 +1,156 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2018-10-03 09:32+0200\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Title =
+#: Tables.adoc:2
+#, no-wrap
+msgid "Test Tables"
+msgstr ""
+
+#. type: Table
+#: Tables.adoc:8
+#, no-wrap
+msgid ""
+"|1 | 2\n"
+"|3 | 4\n"
+"|5 | 6\n"
+msgstr ""
+
+#. type: Block title
+#: Tables.adoc:11
+#, no-wrap
+msgid "An example table"
+msgstr ""
+
+#. type: Table
+#: Tables.adoc:19
+#, no-wrap
+msgid ""
+"|Column 1 | Column 2\n"
+"|1 | Item 1\n"
+"|2 | Item 2\n"
+"|3 | Item 3\n"
+"|6 | Three items\n"
+msgstr ""
+
+#. type: Table
+#: Tables.adoc:26
+#, no-wrap
+msgid ""
+"|1|2|3|4\n"
+"|a|b|c|d\n"
+"|A|B|C|D\n"
+msgstr ""
+
+#. type: Table
+#: Tables.adoc:32
+#, no-wrap
+msgid ""
+"ID,Customer Name,Contact Name,Customer Address,Phone\n"
+"include::customers.csv[]\n"
+msgstr ""
+
+#. type: Plain text
+#: Tables.adoc:35
+msgid ""
+"The following examples are drawn from the "
+"https://docs.fedoraproject.org/f27/system-administrators-guide/index.html[Fedora "
+"System Administrator's Guide]:"
+msgstr ""
+
+#. type: Table
+#: Tables.adoc:63
+#, no-wrap
+msgid ""
+"|Option|Description\n"
+"|[option]`Charset` = __encoding__|Specifies the character set of a generated "
+"web page. The _encoding_ has to be a valid character set such as `UTF-8` or "
+"`ISO-8859-2`.\n"
+"|[option]`Type` = __content-type__|Specifies the media type of a generated "
+"web page. The _content-type_ has to be a valid MIME type such as `text/html` "
+"or `text/plain`.\n"
+"|[option]`DescriptionWidth` = __value__|Specifies the width of the "
+"description column. The _value_ can be either a number of characters, or an "
+"asterisk (that is, `*`) to adjust the width automatically.\n"
+"|[option]`FancyIndexing`|Enables advanced features such as different icons "
+"for certain files or possibility to re-sort a directory listing by clicking "
+"on a column header.\n"
+"|[option]`FolderFirst`|Enables listing directories first, always placing "
+"them above files.\n"
+"|[option]`HTMLTable`|Enables the use of HTML tables for directory "
+"listings.\n"
+"|[option]`IconsAreLinks`|Enables using the icons as links.\n"
+"|[option]`IconHeight` = __value__|Specifies an icon height. The _value_ is a "
+"number of pixels.\n"
+"|[option]`IconWidth` = __value__|Specifies an icon width. The _value_ is a "
+"number of pixels.\n"
+"|[option]`IgnoreCase`|Enables sorting files and directories in a "
+"case-sensitive manner.\n"
+"|[option]`IgnoreClient`|Disables accepting query variables from a client.\n"
+"|[option]`NameWidth` = __value__|Specifies the width of the file name "
+"column. The _value_ can be either a number of characters, or an asterisk "
+"(that is, `*`) to adjust the width automatically.\n"
+"|[option]`ScanHTMLTitles`|Enables parsing the file for a description (that "
+"is, the `title` element) in case it is not provided by the "
+"[option]`AddDescription` directive.\n"
+"|[option]`ShowForbidden`|Enables listing the files with otherwise restricted "
+"access.\n"
+"|[option]`SuppressColumnSorting`|Disables re-sorting a directory listing by "
+"clicking on a column header.\n"
+"|[option]`SuppressDescription`|Disables reserving a space for file "
+"descriptions.\n"
+"|[option]`SuppressHTMLPreamble`|Disables the use of standard HTML preamble "
+"when a file specified by the [option]`HeaderName` directive is present.\n"
+"|[option]`SuppressIcon`|Disables the use of icons in directory listings.\n"
+"|[option]`SuppressLastModified`|Disables displaying the date of the last "
+"modification field in directory listings.\n"
+"|[option]`SuppressRules`|Disables the use of horizontal lines in directory "
+"listings.\n"
+"|[option]`SuppressSize`|Disables displaying the file size field in directory "
+"listings.\n"
+"|[option]`TrackModified`|Enables returning the `Last-Modified` and `ETag` "
+"values in the HTTP header.\n"
+"|[option]`VersionSort`|Enables sorting files that contain a version number "
+"in the expected manner.\n"
+"|[option]`XHTML`|Enables the use of XHTML 1.0 instead of the default HTML "
+"3.2.\n"
+msgstr ""
+
+#. type: Plain text
+#: Tables.adoc:66
+msgid "Manually wrapped cells"
+msgstr ""
+
+#. type: Table
+#: Tables.adoc:78
+#, no-wrap
+msgid ""
+"|Option|Description\n"
+"|[option]`Charset` = __encoding__\n"
+"|Specifies the character set of a generated web page. The _encoding_ has to "
+"be a valid character set such as `UTF-8` or `ISO-8859-2`.\n"
+"|[option]`Type` = __content-type__\n"
+"|Specifies the media type of a generated web page. The _content-type_\n"
+"has to be a valid MIME type such as `text/html` or `text/plain`.\n"
+"\n"
+"|[option]`DescriptionWidth` = __value__\n"
+"\n"
+"|Specifies the width of the description column. The _value_ can be either a "
+"number of characters, or an asterisk (that is, `*`) to adjust the width "
+"automatically.\n"
+msgstr ""
diff --git a/t/fmt/asciidoc/Tables.trans b/t/fmt/asciidoc/Tables.trans
new file mode 100644
index 0000000..d5be335
--- /dev/null
+++ b/t/fmt/asciidoc/Tables.trans
@@ -0,0 +1,78 @@
+TEST TABLES
+===========
+
+|===
+|1 | 2
+|3 | 4
+|5 | 6
+|===
+
+
+.AN EXAMPLE TABLE
+[grid="all", options="header", cols=">,"]
+|===
+|COLUMN 1 | COLUMN 2
+|1 | ITEM 1
+|2 | ITEM 2
+|3 | ITEM 3
+|6 | THREE ITEMS
+|===
+
+[frame="all", cols="<,<,<,<", width="15%"]
+|===
+|1|2|3|4
+|A|B|C|D
+|A|B|C|D
+|===
+
+[frame="all", grid="all", cols="^15,>20,>25,>20", format="csv"]
+|===
+ID,CUSTOMER NAME,CONTACT NAME,CUSTOMER ADDRESS,PHONE
+INCLUDE::CUSTOMERS.CSV[]
+|===
+
+THE FOLLOWING EXAMPLES ARE DRAWN FROM THE HTTPS://DOCS.FEDORAPROJECT.ORG/F27/SYSTEM-ADMINISTRATORS-GUIDE/INDEX.HTML[FEDORA SYSTEM ADMINISTRATOR'S GUIDE]:
+
+[options="header"]
+|===
+|OPTION|DESCRIPTION
+|[OPTION]`CHARSET` = __ENCODING__|SPECIFIES THE CHARACTER SET OF A GENERATED WEB PAGE. THE _ENCODING_ HAS TO BE A VALID CHARACTER SET SUCH AS `UTF-8` OR `ISO-8859-2`.
+|[OPTION]`TYPE` = __CONTENT-TYPE__|SPECIFIES THE MEDIA TYPE OF A GENERATED WEB PAGE. THE _CONTENT-TYPE_ HAS TO BE A VALID MIME TYPE SUCH AS `TEXT/HTML` OR `TEXT/PLAIN`.
+|[OPTION]`DESCRIPTIONWIDTH` = __VALUE__|SPECIFIES THE WIDTH OF THE DESCRIPTION COLUMN. THE _VALUE_ CAN BE EITHER A NUMBER OF CHARACTERS, OR AN ASTERISK (THAT IS, `*`) TO ADJUST THE WIDTH AUTOMATICALLY.
+|[OPTION]`FANCYINDEXING`|ENABLES ADVANCED FEATURES SUCH AS DIFFERENT ICONS FOR CERTAIN FILES OR POSSIBILITY TO RE-SORT A DIRECTORY LISTING BY CLICKING ON A COLUMN HEADER.
+|[OPTION]`FOLDERFIRST`|ENABLES LISTING DIRECTORIES FIRST, ALWAYS PLACING THEM ABOVE FILES.
+|[OPTION]`HTMLTABLE`|ENABLES THE USE OF HTML TABLES FOR DIRECTORY LISTINGS.
+|[OPTION]`ICONSARELINKS`|ENABLES USING THE ICONS AS LINKS.
+|[OPTION]`ICONHEIGHT` = __VALUE__|SPECIFIES AN ICON HEIGHT. THE _VALUE_ IS A NUMBER OF PIXELS.
+|[OPTION]`ICONWIDTH` = __VALUE__|SPECIFIES AN ICON WIDTH. THE _VALUE_ IS A NUMBER OF PIXELS.
+|[OPTION]`IGNORECASE`|ENABLES SORTING FILES AND DIRECTORIES IN A CASE-SENSITIVE MANNER.
+|[OPTION]`IGNORECLIENT`|DISABLES ACCEPTING QUERY VARIABLES FROM A CLIENT.
+|[OPTION]`NAMEWIDTH` = __VALUE__|SPECIFIES THE WIDTH OF THE FILE NAME COLUMN. THE _VALUE_ CAN BE EITHER A NUMBER OF CHARACTERS, OR AN ASTERISK (THAT IS, `*`) TO ADJUST THE WIDTH AUTOMATICALLY.
+|[OPTION]`SCANHTMLTITLES`|ENABLES PARSING THE FILE FOR A DESCRIPTION (THAT IS, THE `TITLE` ELEMENT) IN CASE IT IS NOT PROVIDED BY THE [OPTION]`ADDDESCRIPTION` DIRECTIVE.
+|[OPTION]`SHOWFORBIDDEN`|ENABLES LISTING THE FILES WITH OTHERWISE RESTRICTED ACCESS.
+|[OPTION]`SUPPRESSCOLUMNSORTING`|DISABLES RE-SORTING A DIRECTORY LISTING BY CLICKING ON A COLUMN HEADER.
+|[OPTION]`SUPPRESSDESCRIPTION`|DISABLES RESERVING A SPACE FOR FILE DESCRIPTIONS.
+|[OPTION]`SUPPRESSHTMLPREAMBLE`|DISABLES THE USE OF STANDARD HTML PREAMBLE WHEN A FILE SPECIFIED BY THE [OPTION]`HEADERNAME` DIRECTIVE IS PRESENT.
+|[OPTION]`SUPPRESSICON`|DISABLES THE USE OF ICONS IN DIRECTORY LISTINGS.
+|[OPTION]`SUPPRESSLASTMODIFIED`|DISABLES DISPLAYING THE DATE OF THE LAST MODIFICATION FIELD IN DIRECTORY LISTINGS.
+|[OPTION]`SUPPRESSRULES`|DISABLES THE USE OF HORIZONTAL LINES IN DIRECTORY LISTINGS.
+|[OPTION]`SUPPRESSSIZE`|DISABLES DISPLAYING THE FILE SIZE FIELD IN DIRECTORY LISTINGS.
+|[OPTION]`TRACKMODIFIED`|ENABLES RETURNING THE `LAST-MODIFIED` AND `ETAG` VALUES IN THE HTTP HEADER.
+|[OPTION]`VERSIONSORT`|ENABLES SORTING FILES THAT CONTAIN A VERSION NUMBER IN THE EXPECTED MANNER.
+|[OPTION]`XHTML`|ENABLES THE USE OF XHTML 1.0 INSTEAD OF THE DEFAULT HTML 3.2.
+|===
+
+MANUALLY WRAPPED CELLS
+
+|===
+|OPTION|DESCRIPTION
+|[OPTION]`CHARSET` = __ENCODING__
+|SPECIFIES THE CHARACTER SET OF A GENERATED WEB PAGE. THE _ENCODING_ HAS TO BE A VALID CHARACTER SET SUCH AS `UTF-8` OR `ISO-8859-2`.
+|[OPTION]`TYPE` = __CONTENT-TYPE__
+|SPECIFIES THE MEDIA TYPE OF A GENERATED WEB PAGE. THE _CONTENT-TYPE_
+HAS TO BE A VALID MIME TYPE SUCH AS `TEXT/HTML` OR `TEXT/PLAIN`.
+
+|[OPTION]`DESCRIPTIONWIDTH` = __VALUE__
+
+|SPECIFIES THE WIDTH OF THE DESCRIPTION COLUMN. THE _VALUE_ CAN BE EITHER A NUMBER OF CHARACTERS, OR AN ASTERISK (THAT IS, `*`) TO ADJUST THE WIDTH AUTOMATICALLY.
+|===
diff --git a/t/fmt/asciidoc/TablesCells.adoc b/t/fmt/asciidoc/TablesCells.adoc
new file mode 100644
index 0000000..dbd1740
--- /dev/null
+++ b/t/fmt/asciidoc/TablesCells.adoc
@@ -0,0 +1,161 @@
+Tables with Cells translated
+============================
+
+Examples taken from asciidoctor table guide
+
+.Simple table
+|===
+| Cell in column 1, row 1 | Cell in column 2, row 1
+| Cell in column 1, row 2 | Cell in column 2, row 2
+| Cell in column 1, row 3 | Cell in column 2, row 3
+|===
+
+.No space around column separator
+|===
+|Cell in column 1, row 1|Cell in column 2, row 1
+|===
+
+.Cells on each line
+[cols="3*"]
+|===
+|Cell in column 1, row 1
+|Cell in column 2, row 1
+|Cell in column 3, row 1
+
+|Cell in column 1, row 2
+|Cell in column 2, row 2
+|Cell in column 3, row 2
+|===
+
+.Cell duplicated
+|===
+|Cell in column 1, row 1 |Cell in column 2, row 1 |Cell in column 3, row 1
+3*|Same cell content in columns 1, 2, and 3
+|Cell in column 1, row 3
+|Cell in column 2, row 3
+|Cell in column 3, row 3
+|===
+
+.Cell span
+|===
+
+|Cell in column 1, row 1 |Cell in column 2, row 1 |Cell in column 3, row 1
+
+3+|Content in a single cell that spans columns 1, 2, and 3
+
+|Cell in column 1, row 3
+|Cell in column 2, row 3
+|Cell in column 3, row 3
+
+|===
+
+.Cell span in rows
+|===
+
+|Cell in column 1, row 1 |Cell in column 2, row 1 |Cell in column 3, row 1
+
+.2+|Content in a single cell that spans rows 2 and 3
+|Cell in column 2, row 2
+|Cell in column 3, row 2
+
+|Cell in column 2, row 3
+|Cell in column 3, row 3
+
+|===
+
+.Cell span in columns and rows
+|===
+
+|Column 1, row 1 |Column 2, row 1 |Column 3, row 1 |Column 4, row 1
+
+|Column 1, row 2
+2.3+|Content in a single cell that spans over rows and columns
+|Column 4, row 2
+
+|Column 1, row 3
+|Column 4, row 3
+
+|Column 1, row 4
+|Column 4, row 4
+|===
+
+.Cells aligned horizontally, vertically, and across a span of three columns
+[cols="3"]
+|===
+^|Prefix the `{vbar}` with `{caret}` to center content horizontally
+<|Prefix the `{vbar}` with `<` to align the content to the left horizontally
+>|Prefix the `{vbar}` with `>` to align the content to the right horizontally
+
+.^|Prefix the `{vbar}` with a `.` and `{caret}` to center the content in the cell vertically
+.<|Prefix the `{vbar}` with a `.` and `<` to align the content to the top of the cell
+.>|Prefix the `{vbar}` with a `.` and `>` to align the content to the bottom of the cell
+
+3+^.^|This content spans three columns (`3{plus}`) and is centered horizontally (`{caret}`) and vertically (`.{caret}`) within the cell.
+
+|===
+
+.Building a variety of cell specifiers
+|===
+
+2*>m|This content is duplicated across two columns.
+
+It is aligned right horizontally.
+
+And it is monospaced.
+
+.3+^.>s|This cell spans 3 rows. The content is centered horizontally, aligned to the bottom of the cell, and strong.
+e|This content is emphasized.
+
+.^l|This content is aligned to the top of the cell and literal.
+
+v|This cell contains a verse
+that may one day expound on the
+wonders of tables in an
+epic sonnet.
+
+|===
+
+.Cells with Asciidoc in them
+[cols="2"]
+|===
+
+a|This cell is prefixed with an `a`, so the processor interprets the following lines as an AsciiDoc list.
+
+* List item 1
+* List item 2
+* List item 3
+|This cell *is not* prefixed with an `a`, so the processor does not interpret the following lines as an AsciiDoc list.
+
+* List item 1
+* List item 2
+* List item 3
+
+a|This cell is prefixed with an `a`, so the processor honors the `lead` style on the following paragraph.
+
+[.lead]
+I am a paragraph styled with the lead attribute.
+|This cell *is not* prefixed with an `a`, so the processor does not honor the `lead` style on the following paragraph.
+
+[.lead]
+I am a paragraph styled with the lead attribute.
+|===
+
+[format="csv",width="60%",cols="2"]
+[frame="topbot",grid="none"]
+[options="header"]
+|===
+iocontrol.0 pin ,motion pin
+tool-prepare,digital-out-00
+tool-prepared,digital-in-00
+tool-change,digital-out-01
+tool-changed,digital-in-01
+tool-prep-number,analog-out-00
+tool-prep-pocket,analog-out-01
+tool-number,analog-out-02
+|===
+
+.Empty cells
+|===
+|0|
+||
+|===
diff --git a/t/fmt/asciidoc/TablesCells.norm b/t/fmt/asciidoc/TablesCells.norm
new file mode 100644
index 0000000..97befa6
--- /dev/null
+++ b/t/fmt/asciidoc/TablesCells.norm
@@ -0,0 +1,161 @@
+Tables with Cells translated
+============================
+
+Examples taken from asciidoctor table guide
+
+.Simple table
+|===
+| Cell in column 1, row 1 | Cell in column 2, row 1
+| Cell in column 1, row 2 | Cell in column 2, row 2
+| Cell in column 1, row 3 | Cell in column 2, row 3
+|===
+
+.No space around column separator
+|===
+|Cell in column 1, row 1|Cell in column 2, row 1
+|===
+
+.Cells on each line
+[cols="3*"]
+|===
+|Cell in column 1, row 1
+|Cell in column 2, row 1
+|Cell in column 3, row 1
+
+|Cell in column 1, row 2
+|Cell in column 2, row 2
+|Cell in column 3, row 2
+|===
+
+.Cell duplicated
+|===
+|Cell in column 1, row 1 |Cell in column 2, row 1 |Cell in column 3, row 1
+3*|Same cell content in columns 1, 2, and 3
+|Cell in column 1, row 3
+|Cell in column 2, row 3
+|Cell in column 3, row 3
+|===
+
+.Cell span
+|===
+
+|Cell in column 1, row 1 |Cell in column 2, row 1 |Cell in column 3, row 1
+
+3+|Content in a single cell that spans columns 1, 2, and 3
+
+|Cell in column 1, row 3
+|Cell in column 2, row 3
+|Cell in column 3, row 3
+
+|===
+
+.Cell span in rows
+|===
+
+|Cell in column 1, row 1 |Cell in column 2, row 1 |Cell in column 3, row 1
+
+.2+|Content in a single cell that spans rows 2 and 3
+|Cell in column 2, row 2
+|Cell in column 3, row 2
+
+|Cell in column 2, row 3
+|Cell in column 3, row 3
+
+|===
+
+.Cell span in columns and rows
+|===
+
+|Column 1, row 1 |Column 2, row 1 |Column 3, row 1 |Column 4, row 1
+
+|Column 1, row 2
+2.3+|Content in a single cell that spans over rows and columns
+|Column 4, row 2
+
+|Column 1, row 3
+|Column 4, row 3
+
+|Column 1, row 4
+|Column 4, row 4
+|===
+
+.Cells aligned horizontally, vertically, and across a span of three columns
+[cols="3"]
+|===
+^|Prefix the `{vbar}` with `{caret}` to center content horizontally
+<|Prefix the `{vbar}` with `<` to align the content to the left horizontally
+>|Prefix the `{vbar}` with `>` to align the content to the right horizontally
+
+.^|Prefix the `{vbar}` with a `.` and `{caret}` to center the content in the cell vertically
+.<|Prefix the `{vbar}` with a `.` and `<` to align the content to the top of the cell
+.>|Prefix the `{vbar}` with a `.` and `>` to align the content to the bottom of the cell
+
+3+^.^|This content spans three columns (`3{plus}`) and is centered horizontally (`{caret}`) and vertically (`.{caret}`) within the cell.
+
+|===
+
+.Building a variety of cell specifiers
+|===
+
+2*>m|This content is duplicated across two columns.
+
+It is aligned right horizontally.
+
+And it is monospaced.
+
+.3+^.>s|This cell spans 3 rows. The content is centered horizontally, aligned to the bottom of the cell, and strong.
+e|This content is emphasized.
+
+.^l|This content is aligned to the top of the cell and literal.
+
+v|This cell contains a verse
+that may one day expound on the
+wonders of tables in an
+epic sonnet.
+
+|===
+
+.Cells with Asciidoc in them
+[cols="2"]
+|===
+
+a|This cell is prefixed with an `a`, so the processor interprets the following lines as an AsciiDoc list.
+
+* List item 1
+* List item 2
+* List item 3
+|This cell *is not* prefixed with an `a`, so the processor does not interpret the following lines as an AsciiDoc list.
+
+* List item 1
+* List item 2
+* List item 3
+
+a|This cell is prefixed with an `a`, so the processor honors the `lead` style on the following paragraph.
+
+[.lead]
+I am a paragraph styled with the lead attribute.
+|This cell *is not* prefixed with an `a`, so the processor does not honor the `lead` style on the following paragraph.
+
+[.lead]
+I am a paragraph styled with the lead attribute.
+|===
+
+[format="csv", width="60%", cols="2"]
+[frame="topbot", grid="none"]
+[options="header"]
+|===
+iocontrol.0 pin ,motion pin
+tool-prepare,digital-out-00
+tool-prepared,digital-in-00
+tool-change,digital-out-01
+tool-changed,digital-in-01
+tool-prep-number,analog-out-00
+tool-prep-pocket,analog-out-01
+tool-number,analog-out-02
+|===
+
+.Empty cells
+|===
+|0|
+| |
+|===
diff --git a/t/fmt/asciidoc/TablesCells.norm.stderr b/t/fmt/asciidoc/TablesCells.norm.stderr
new file mode 100644
index 0000000..835f46c
--- /dev/null
+++ b/t/fmt/asciidoc/TablesCells.norm.stderr
@@ -0,0 +1 @@
+TablesCells.adoc:143: Po4a's tablecells mode only supports PSV formatted tables with '|' separators. Disabling tablecells and falling back to block mode for this table.
diff --git a/t/fmt/asciidoc/TablesCells.po b/t/fmt/asciidoc/TablesCells.po
new file mode 100644
index 0000000..29c593c
--- /dev/null
+++ b/t/fmt/asciidoc/TablesCells.po
@@ -0,0 +1,428 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2018-12-09 22:02+0100\n"
+"PO-Revision-Date: 2020-05-10 15:01+0200\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Title =
+#: TablesCells.adoc:2
+#, no-wrap
+msgid "Tables with Cells translated"
+msgstr "TABLES WITH CELLS TRANSLATED"
+
+#. type: Plain text
+#: TablesCells.adoc:5
+msgid "Examples taken from asciidoctor table guide"
+msgstr "EXAMPLES TAKEN FROM ASCIIDOCTOR TABLE GUIDE"
+
+#. type: Block title
+#: TablesCells.adoc:6
+#, no-wrap
+msgid "Simple table"
+msgstr "SIMPLE TABLE"
+
+#. type: Table
+#: TablesCells.adoc:8 TablesCells.adoc:15 TablesCells.adoc:22
+#: TablesCells.adoc:32 TablesCells.adoc:42 TablesCells.adoc:55
+#, no-wrap
+msgid "Cell in column 1, row 1"
+msgstr "CELL IN COLUMN 1, ROW 1"
+
+#. type: Table
+#: TablesCells.adoc:9 TablesCells.adoc:16 TablesCells.adoc:23
+#: TablesCells.adoc:32 TablesCells.adoc:42 TablesCells.adoc:55
+#, no-wrap
+msgid "Cell in column 2, row 1"
+msgstr "CELL IN COLUMN 2, ROW 1"
+
+#. type: Table
+#: TablesCells.adoc:9 TablesCells.adoc:26
+#, no-wrap
+msgid "Cell in column 1, row 2"
+msgstr "CELL IN COLUMN 1, ROW 2"
+
+#. type: Table
+#: TablesCells.adoc:10 TablesCells.adoc:27 TablesCells.adoc:59
+#, no-wrap
+msgid "Cell in column 2, row 2"
+msgstr "CELL IN COLUMN 2, ROW 2"
+
+#. type: Table
+#: TablesCells.adoc:10 TablesCells.adoc:35 TablesCells.adoc:47
+#, no-wrap
+msgid "Cell in column 1, row 3"
+msgstr "CELL IN COLUMN 1, ROW 3"
+
+#. type: Table
+#: TablesCells.adoc:11 TablesCells.adoc:36 TablesCells.adoc:48
+#: TablesCells.adoc:62
+#, no-wrap
+msgid "Cell in column 2, row 3"
+msgstr "CELL IN COLUMN 2, ROW 3"
+
+#. type: Block title
+#: TablesCells.adoc:13
+#, no-wrap
+msgid "No space around column separator"
+msgstr "NO SPACE AROUND COLUMN SEPARATOR"
+
+#. type: Block title
+#: TablesCells.adoc:18
+#, no-wrap
+msgid "Cells on each line"
+msgstr "CELLS ON EACH LINE"
+
+#. type: Table
+#: TablesCells.adoc:25 TablesCells.adoc:33 TablesCells.adoc:44
+#: TablesCells.adoc:57
+#, no-wrap
+msgid "Cell in column 3, row 1"
+msgstr "CELL IN COLUMN 3, ROW 1"
+
+#. type: Table
+#: TablesCells.adoc:28 TablesCells.adoc:61
+#, no-wrap
+msgid "Cell in column 3, row 2"
+msgstr "CELL IN COLUMN 3, ROW 2"
+
+#. type: Block title
+#: TablesCells.adoc:30
+#, no-wrap
+msgid "Cell duplicated"
+msgstr "CELL DUPLICATED"
+
+#. type: Table
+#: TablesCells.adoc:34
+#, no-wrap
+msgid "Same cell content in columns 1, 2, and 3"
+msgstr "SAME CELL CONTENT IN COLUMNS 1, 2, AND 3"
+
+#. type: Table
+#: TablesCells.adoc:37 TablesCells.adoc:50 TablesCells.adoc:64
+#, no-wrap
+msgid "Cell in column 3, row 3"
+msgstr "CELL IN COLUMN 3, ROW 3"
+
+#. type: Block title
+#: TablesCells.adoc:39
+#, no-wrap
+msgid "Cell span"
+msgstr "CELL SPAN"
+
+#. type: Table
+#: TablesCells.adoc:46
+#, no-wrap
+msgid "Content in a single cell that spans columns 1, 2, and 3"
+msgstr "CONTENT IN A SINGLE CELL THAT SPANS COLUMNS 1, 2, AND 3"
+
+#. type: Block title
+#: TablesCells.adoc:52
+#, no-wrap
+msgid "Cell span in rows"
+msgstr "CELL SPAN IN ROWS"
+
+#. type: Table
+#: TablesCells.adoc:58
+#, no-wrap
+msgid "Content in a single cell that spans rows 2 and 3"
+msgstr "CONTENT IN A SINGLE CELL THAT SPANS ROWS 2 AND 3"
+
+#. type: Block title
+#: TablesCells.adoc:66
+#, no-wrap
+msgid "Cell span in columns and rows"
+msgstr "CELL SPAN IN COLUMNS AND ROWS"
+
+#. type: Table
+#: TablesCells.adoc:69
+#, no-wrap
+msgid "Column 1, row 1"
+msgstr "COLUMN 1, ROW 1"
+
+#. type: Table
+#: TablesCells.adoc:69
+#, no-wrap
+msgid "Column 2, row 1"
+msgstr "COLUMN 2, ROW 1"
+
+#. type: Table
+#: TablesCells.adoc:69
+#, no-wrap
+msgid "Column 3, row 1"
+msgstr "COLUMN 3, ROW 1"
+
+#. type: Table
+#: TablesCells.adoc:71
+#, no-wrap
+msgid "Column 4, row 1"
+msgstr "COLUMN 4, ROW 1"
+
+#. type: Table
+#: TablesCells.adoc:72
+#, no-wrap
+msgid "Column 1, row 2"
+msgstr "COLUMN 1, ROW 2"
+
+#. type: Table
+#: TablesCells.adoc:73
+#, no-wrap
+msgid "Content in a single cell that spans over rows and columns"
+msgstr "CONTENT IN A SINGLE CELL THAT SPANS OVER ROWS AND COLUMNS"
+
+#. type: Table
+#: TablesCells.adoc:75
+#, no-wrap
+msgid "Column 4, row 2"
+msgstr "COLUMN 4, ROW 2"
+
+#. type: Table
+#: TablesCells.adoc:76
+#, no-wrap
+msgid "Column 1, row 3"
+msgstr "COLUMN 1, ROW 3"
+
+#. type: Table
+#: TablesCells.adoc:78
+#, no-wrap
+msgid "Column 4, row 3"
+msgstr "COLUMN 4, ROW 3"
+
+#. type: Table
+#: TablesCells.adoc:79
+#, no-wrap
+msgid "Column 1, row 4"
+msgstr "COLUMN 1, ROW 4"
+
+#. type: Table
+#: TablesCells.adoc:80
+#, no-wrap
+msgid "Column 4, row 4"
+msgstr "COLUMN 4, ROW 4"
+
+#. type: Block title
+#: TablesCells.adoc:82
+#, no-wrap
+msgid "Cells aligned horizontally, vertically, and across a span of three columns"
+msgstr "CELLS ALIGNED HORIZONTALLY, VERTICALLY, AND ACROSS A SPAN OF THREE COLUMNS"
+
+#. type: Table
+#: TablesCells.adoc:86
+#, no-wrap
+msgid "Prefix the `{vbar}` with `{caret}` to center content horizontally"
+msgstr "PREFIX THE `{VBAR}` WITH `{CARET}` TO CENTER CONTENT HORIZONTALLY"
+
+#. type: Table
+#: TablesCells.adoc:87
+#, no-wrap
+msgid "Prefix the `{vbar}` with `<` to align the content to the left horizontally"
+msgstr "PREFIX THE `{VBAR}` WITH `<` TO ALIGN THE CONTENT TO THE LEFT HORIZONTALLY"
+
+#. type: Table
+#: TablesCells.adoc:89
+#, no-wrap
+msgid "Prefix the `{vbar}` with `>` to align the content to the right horizontally"
+msgstr "PREFIX THE `{VBAR}` WITH `>` TO ALIGN THE CONTENT TO THE RIGHT HORIZONTALLY"
+
+#. type: Table
+#: TablesCells.adoc:90
+#, no-wrap
+msgid ""
+"Prefix the `{vbar}` with a `.` and `{caret}` to center the content in the "
+"cell vertically"
+msgstr "PREFIX THE `{VBAR}` WITH A `.` AND `{CARET}` TO CENTER THE CONTENT IN THE CELL VERTICALLY"
+
+#. type: Table
+#: TablesCells.adoc:91
+#, no-wrap
+msgid ""
+"Prefix the `{vbar}` with a `.` and `<` to align the content to the top of "
+"the cell"
+msgstr "PREFIX THE `{VBAR}` WITH A `.` AND `<` TO ALIGN THE CONTENT TO THE TOP OF THE CELL"
+
+#. type: Table
+#: TablesCells.adoc:93
+#, no-wrap
+msgid ""
+"Prefix the `{vbar}` with a `.` and `>` to align the content to the bottom of "
+"the cell"
+msgstr "PREFIX THE `{VBAR}` WITH A `.` AND `>` TO ALIGN THE CONTENT TO THE BOTTOM OF THE CELL"
+
+#. type: Table
+#: TablesCells.adoc:95
+#, no-wrap
+msgid ""
+"This content spans three columns (`3{plus}`) and is centered horizontally "
+"(`{caret}`) and vertically (`.{caret}`) within the cell."
+msgstr "THIS CONTENT SPANS THREE COLUMNS (`3{PLUS}`) AND IS CENTERED HORIZONTALLY (`{CARET}`) AND VERTICALLY (`.{CARET}`) WITHIN THE CELL."
+
+#. type: Block title
+#: TablesCells.adoc:97
+#, no-wrap
+msgid "Building a variety of cell specifiers"
+msgstr "BUILDING A VARIETY OF CELL SPECIFIERS"
+
+#. type: Table
+#: TablesCells.adoc:106
+#, no-wrap
+msgid ""
+"This content is duplicated across two columns.\n"
+"\n"
+"It is aligned right horizontally.\n"
+"\n"
+"And it is monospaced."
+msgstr ""
+"THIS CONTENT IS DUPLICATED ACROSS TWO COLUMNS.\n"
+"\n"
+"IT IS ALIGNED RIGHT HORIZONTALLY.\n"
+"\n"
+"AND IT IS MONOSPACED."
+
+#. type: Table
+#: TablesCells.adoc:107
+#, no-wrap
+msgid ""
+"This cell spans 3 rows. The content is centered horizontally, aligned to the "
+"bottom of the cell, and strong."
+msgstr "THIS CELL SPANS 3 ROWS. THE CONTENT IS CENTERED HORIZONTALLY, ALIGNED TO THE BOTTOM OF THE CELL, AND STRONG."
+
+#. type: Table
+#: TablesCells.adoc:109
+#, no-wrap
+msgid "This content is emphasized."
+msgstr "THIS CONTENT IS EMPHASIZED."
+
+#. type: Table
+#: TablesCells.adoc:111
+#, no-wrap
+msgid "This content is aligned to the top of the cell and literal."
+msgstr "THIS CONTENT IS ALIGNED TO THE TOP OF THE CELL AND LITERAL."
+
+#. type: Table
+#: TablesCells.adoc:116
+#, no-wrap
+msgid ""
+"This cell contains a verse\n"
+"that may one day expound on the\n"
+"wonders of tables in an\n"
+"epic sonnet."
+msgstr ""
+"THIS CELL CONTAINS A VERSE\n"
+"THAT MAY ONE DAY EXPOUND ON THE\n"
+"WONDERS OF TABLES IN AN\n"
+"EPIC SONNET."
+
+#. type: Block title
+#: TablesCells.adoc:118
+#, no-wrap
+msgid "Cells with Asciidoc in them"
+msgstr "CELLS WITH ASCIIDOC IN THEM"
+
+#. type: Table
+#: TablesCells.adoc:127
+#, no-wrap
+msgid ""
+"This cell is prefixed with an `a`, so the processor interprets the following "
+"lines as an AsciiDoc list.\n"
+"\n"
+"* List item 1\n"
+"* List item 2\n"
+"* List item 3"
+msgstr ""
+"THIS CELL IS PREFIXED WITH AN `A`, SO THE PROCESSOR INTERPRETS THE FOLLOWING LINES AS AN ASCIIDOC LIST.\n"
+"\n"
+"* LIST ITEM 1\n"
+"* LIST ITEM 2\n"
+"* LIST ITEM 3"
+
+#. type: Table
+#: TablesCells.adoc:133
+#, no-wrap
+msgid ""
+"This cell *is not* prefixed with an `a`, so the processor does not interpret "
+"the following lines as an AsciiDoc list.\n"
+"\n"
+"* List item 1\n"
+"* List item 2\n"
+"* List item 3"
+msgstr ""
+"THIS CELL *IS NOT* PREFIXED WITH AN `A`, SO THE PROCESSOR DOES NOT INTERPRET THE FOLLOWING LINES AS AN ASCIIDOC LIST.\n"
+"\n"
+"* LIST ITEM 1\n"
+"* LIST ITEM 2\n"
+"* LIST ITEM 3"
+
+#. type: Table
+#: TablesCells.adoc:137
+#, no-wrap
+msgid ""
+"This cell is prefixed with an `a`, so the processor honors the `lead` style "
+"on the following paragraph.\n"
+"\n"
+"[.lead]\n"
+"I am a paragraph styled with the lead attribute."
+msgstr ""
+"THIS CELL IS PREFIXED WITH AN `A`, SO THE PROCESSOR HONORS THE `LEAD` STYLE ON THE FOLLOWING PARAGRAPH.\n"
+"\n"
+"[.LEAD]\n"
+"I AM A PARAGRAPH STYLED WITH THE LEAD ATTRIBUTE."
+
+#. type: Table
+#: TablesCells.adoc:141
+#, no-wrap
+msgid ""
+"This cell *is not* prefixed with an `a`, so the processor does not honor the "
+"`lead` style on the following paragraph.\n"
+"\n"
+"[.lead]\n"
+"I am a paragraph styled with the lead attribute."
+msgstr ""
+"THIS CELL *IS NOT* PREFIXED WITH AN `A`, SO THE PROCESSOR DOES NOT HONOR THE `LEAD` STYLE ON THE FOLLOWING PARAGRAPH.\n"
+"\n"
+"[.LEAD]\n"
+"I AM A PARAGRAPH STYLED WITH THE LEAD ATTRIBUTE."
+
+#. type: Table
+#: TablesCells.adoc:155
+#, no-wrap
+msgid ""
+"iocontrol.0 pin ,motion pin\n"
+"tool-prepare,digital-out-00\n"
+"tool-prepared,digital-in-00\n"
+"tool-change,digital-out-01\n"
+"tool-changed,digital-in-01\n"
+"tool-prep-number,analog-out-00\n"
+"tool-prep-pocket,analog-out-01\n"
+"tool-number,analog-out-02\n"
+msgstr ""
+"IOCONTROL.0 PIN ,MOTION PIN\n"
+"TOOL-PREPARE,DIGITAL-OUT-00\n"
+"TOOL-PREPARED,DIGITAL-IN-00\n"
+"TOOL-CHANGE,DIGITAL-OUT-01\n"
+"TOOL-CHANGED,DIGITAL-IN-01\n"
+"TOOL-PREP-NUMBER,ANALOG-OUT-00\n"
+"TOOL-PREP-POCKET,ANALOG-OUT-01\n"
+"TOOL-NUMBER,ANALOG-OUT-02\n"
+
+#. type: Block title
+#: TablesCells.adoc:157
+#, no-wrap
+msgid "Empty cells"
+msgstr "EMPTY CELLS"
+
+#. type: Table
+#: TablesCells.adoc:159
+#, no-wrap
+msgid "0"
+msgstr "0"
diff --git a/t/fmt/asciidoc/TablesCells.pot b/t/fmt/asciidoc/TablesCells.pot
new file mode 100644
index 0000000..b831cd8
--- /dev/null
+++ b/t/fmt/asciidoc/TablesCells.pot
@@ -0,0 +1,393 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2018-12-09 22:02+0100\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Title =
+#: TablesCells.adoc:2
+#, no-wrap
+msgid "Tables with Cells translated"
+msgstr ""
+
+#. type: Plain text
+#: TablesCells.adoc:5
+msgid "Examples taken from asciidoctor table guide"
+msgstr ""
+
+#. type: Block title
+#: TablesCells.adoc:6
+#, no-wrap
+msgid "Simple table"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:8 TablesCells.adoc:15 TablesCells.adoc:22
+#: TablesCells.adoc:32 TablesCells.adoc:42 TablesCells.adoc:55
+#, no-wrap
+msgid "Cell in column 1, row 1"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:9 TablesCells.adoc:16 TablesCells.adoc:23
+#: TablesCells.adoc:32 TablesCells.adoc:42 TablesCells.adoc:55
+#, no-wrap
+msgid "Cell in column 2, row 1"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:9 TablesCells.adoc:26
+#, no-wrap
+msgid "Cell in column 1, row 2"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:10 TablesCells.adoc:27 TablesCells.adoc:59
+#, no-wrap
+msgid "Cell in column 2, row 2"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:10 TablesCells.adoc:35 TablesCells.adoc:47
+#, no-wrap
+msgid "Cell in column 1, row 3"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:11 TablesCells.adoc:36 TablesCells.adoc:48
+#: TablesCells.adoc:62
+#, no-wrap
+msgid "Cell in column 2, row 3"
+msgstr ""
+
+#. type: Block title
+#: TablesCells.adoc:13
+#, no-wrap
+msgid "No space around column separator"
+msgstr ""
+
+#. type: Block title
+#: TablesCells.adoc:18
+#, no-wrap
+msgid "Cells on each line"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:25 TablesCells.adoc:33 TablesCells.adoc:44
+#: TablesCells.adoc:57
+#, no-wrap
+msgid "Cell in column 3, row 1"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:28 TablesCells.adoc:61
+#, no-wrap
+msgid "Cell in column 3, row 2"
+msgstr ""
+
+#. type: Block title
+#: TablesCells.adoc:30
+#, no-wrap
+msgid "Cell duplicated"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:34
+#, no-wrap
+msgid "Same cell content in columns 1, 2, and 3"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:37 TablesCells.adoc:50 TablesCells.adoc:64
+#, no-wrap
+msgid "Cell in column 3, row 3"
+msgstr ""
+
+#. type: Block title
+#: TablesCells.adoc:39
+#, no-wrap
+msgid "Cell span"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:46
+#, no-wrap
+msgid "Content in a single cell that spans columns 1, 2, and 3"
+msgstr ""
+
+#. type: Block title
+#: TablesCells.adoc:52
+#, no-wrap
+msgid "Cell span in rows"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:58
+#, no-wrap
+msgid "Content in a single cell that spans rows 2 and 3"
+msgstr ""
+
+#. type: Block title
+#: TablesCells.adoc:66
+#, no-wrap
+msgid "Cell span in columns and rows"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:69
+#, no-wrap
+msgid "Column 1, row 1"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:69
+#, no-wrap
+msgid "Column 2, row 1"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:69
+#, no-wrap
+msgid "Column 3, row 1"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:71
+#, no-wrap
+msgid "Column 4, row 1"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:72
+#, no-wrap
+msgid "Column 1, row 2"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:73
+#, no-wrap
+msgid "Content in a single cell that spans over rows and columns"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:75
+#, no-wrap
+msgid "Column 4, row 2"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:76
+#, no-wrap
+msgid "Column 1, row 3"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:78
+#, no-wrap
+msgid "Column 4, row 3"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:79
+#, no-wrap
+msgid "Column 1, row 4"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:80
+#, no-wrap
+msgid "Column 4, row 4"
+msgstr ""
+
+#. type: Block title
+#: TablesCells.adoc:82
+#, no-wrap
+msgid "Cells aligned horizontally, vertically, and across a span of three columns"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:86
+#, no-wrap
+msgid "Prefix the `{vbar}` with `{caret}` to center content horizontally"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:87
+#, no-wrap
+msgid "Prefix the `{vbar}` with `<` to align the content to the left horizontally"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:89
+#, no-wrap
+msgid "Prefix the `{vbar}` with `>` to align the content to the right horizontally"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:90
+#, no-wrap
+msgid ""
+"Prefix the `{vbar}` with a `.` and `{caret}` to center the content in the "
+"cell vertically"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:91
+#, no-wrap
+msgid ""
+"Prefix the `{vbar}` with a `.` and `<` to align the content to the top of "
+"the cell"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:93
+#, no-wrap
+msgid ""
+"Prefix the `{vbar}` with a `.` and `>` to align the content to the bottom of "
+"the cell"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:95
+#, no-wrap
+msgid ""
+"This content spans three columns (`3{plus}`) and is centered horizontally "
+"(`{caret}`) and vertically (`.{caret}`) within the cell."
+msgstr ""
+
+#. type: Block title
+#: TablesCells.adoc:97
+#, no-wrap
+msgid "Building a variety of cell specifiers"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:106
+#, no-wrap
+msgid ""
+"This content is duplicated across two columns.\n"
+"\n"
+"It is aligned right horizontally.\n"
+"\n"
+"And it is monospaced."
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:107
+#, no-wrap
+msgid ""
+"This cell spans 3 rows. The content is centered horizontally, aligned to the "
+"bottom of the cell, and strong."
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:109
+#, no-wrap
+msgid "This content is emphasized."
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:111
+#, no-wrap
+msgid "This content is aligned to the top of the cell and literal."
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:116
+#, no-wrap
+msgid ""
+"This cell contains a verse\n"
+"that may one day expound on the\n"
+"wonders of tables in an\n"
+"epic sonnet."
+msgstr ""
+
+#. type: Block title
+#: TablesCells.adoc:118
+#, no-wrap
+msgid "Cells with Asciidoc in them"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:127
+#, no-wrap
+msgid ""
+"This cell is prefixed with an `a`, so the processor interprets the following "
+"lines as an AsciiDoc list.\n"
+"\n"
+"* List item 1\n"
+"* List item 2\n"
+"* List item 3"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:133
+#, no-wrap
+msgid ""
+"This cell *is not* prefixed with an `a`, so the processor does not interpret "
+"the following lines as an AsciiDoc list.\n"
+"\n"
+"* List item 1\n"
+"* List item 2\n"
+"* List item 3"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:137
+#, no-wrap
+msgid ""
+"This cell is prefixed with an `a`, so the processor honors the `lead` style "
+"on the following paragraph.\n"
+"\n"
+"[.lead]\n"
+"I am a paragraph styled with the lead attribute."
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:141
+#, no-wrap
+msgid ""
+"This cell *is not* prefixed with an `a`, so the processor does not honor the "
+"`lead` style on the following paragraph.\n"
+"\n"
+"[.lead]\n"
+"I am a paragraph styled with the lead attribute."
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:155
+#, no-wrap
+msgid ""
+"iocontrol.0 pin ,motion pin\n"
+"tool-prepare,digital-out-00\n"
+"tool-prepared,digital-in-00\n"
+"tool-change,digital-out-01\n"
+"tool-changed,digital-in-01\n"
+"tool-prep-number,analog-out-00\n"
+"tool-prep-pocket,analog-out-01\n"
+"tool-number,analog-out-02\n"
+msgstr ""
+
+#. type: Block title
+#: TablesCells.adoc:157
+#, no-wrap
+msgid "Empty cells"
+msgstr ""
+
+#. type: Table
+#: TablesCells.adoc:159
+#, no-wrap
+msgid "0"
+msgstr ""
diff --git a/t/fmt/asciidoc/TablesCells.trans b/t/fmt/asciidoc/TablesCells.trans
new file mode 100644
index 0000000..6181b1d
--- /dev/null
+++ b/t/fmt/asciidoc/TablesCells.trans
@@ -0,0 +1,161 @@
+TABLES WITH CELLS TRANSLATED
+============================
+
+EXAMPLES TAKEN FROM ASCIIDOCTOR TABLE GUIDE
+
+.SIMPLE TABLE
+|===
+| CELL IN COLUMN 1, ROW 1 | CELL IN COLUMN 2, ROW 1
+| CELL IN COLUMN 1, ROW 2 | CELL IN COLUMN 2, ROW 2
+| CELL IN COLUMN 1, ROW 3 | CELL IN COLUMN 2, ROW 3
+|===
+
+.NO SPACE AROUND COLUMN SEPARATOR
+|===
+|CELL IN COLUMN 1, ROW 1|CELL IN COLUMN 2, ROW 1
+|===
+
+.CELLS ON EACH LINE
+[cols="3*"]
+|===
+|CELL IN COLUMN 1, ROW 1
+|CELL IN COLUMN 2, ROW 1
+|CELL IN COLUMN 3, ROW 1
+
+|CELL IN COLUMN 1, ROW 2
+|CELL IN COLUMN 2, ROW 2
+|CELL IN COLUMN 3, ROW 2
+|===
+
+.CELL DUPLICATED
+|===
+|CELL IN COLUMN 1, ROW 1 |CELL IN COLUMN 2, ROW 1 |CELL IN COLUMN 3, ROW 1
+3*|SAME CELL CONTENT IN COLUMNS 1, 2, AND 3
+|CELL IN COLUMN 1, ROW 3
+|CELL IN COLUMN 2, ROW 3
+|CELL IN COLUMN 3, ROW 3
+|===
+
+.CELL SPAN
+|===
+
+|CELL IN COLUMN 1, ROW 1 |CELL IN COLUMN 2, ROW 1 |CELL IN COLUMN 3, ROW 1
+
+3+|CONTENT IN A SINGLE CELL THAT SPANS COLUMNS 1, 2, AND 3
+
+|CELL IN COLUMN 1, ROW 3
+|CELL IN COLUMN 2, ROW 3
+|CELL IN COLUMN 3, ROW 3
+
+|===
+
+.CELL SPAN IN ROWS
+|===
+
+|CELL IN COLUMN 1, ROW 1 |CELL IN COLUMN 2, ROW 1 |CELL IN COLUMN 3, ROW 1
+
+.2+|CONTENT IN A SINGLE CELL THAT SPANS ROWS 2 AND 3
+|CELL IN COLUMN 2, ROW 2
+|CELL IN COLUMN 3, ROW 2
+
+|CELL IN COLUMN 2, ROW 3
+|CELL IN COLUMN 3, ROW 3
+
+|===
+
+.CELL SPAN IN COLUMNS AND ROWS
+|===
+
+|COLUMN 1, ROW 1 |COLUMN 2, ROW 1 |COLUMN 3, ROW 1 |COLUMN 4, ROW 1
+
+|COLUMN 1, ROW 2
+2.3+|CONTENT IN A SINGLE CELL THAT SPANS OVER ROWS AND COLUMNS
+|COLUMN 4, ROW 2
+
+|COLUMN 1, ROW 3
+|COLUMN 4, ROW 3
+
+|COLUMN 1, ROW 4
+|COLUMN 4, ROW 4
+|===
+
+.CELLS ALIGNED HORIZONTALLY, VERTICALLY, AND ACROSS A SPAN OF THREE COLUMNS
+[cols="3"]
+|===
+^|PREFIX THE `{VBAR}` WITH `{CARET}` TO CENTER CONTENT HORIZONTALLY
+<|PREFIX THE `{VBAR}` WITH `<` TO ALIGN THE CONTENT TO THE LEFT HORIZONTALLY
+>|PREFIX THE `{VBAR}` WITH `>` TO ALIGN THE CONTENT TO THE RIGHT HORIZONTALLY
+
+.^|PREFIX THE `{VBAR}` WITH A `.` AND `{CARET}` TO CENTER THE CONTENT IN THE CELL VERTICALLY
+.<|PREFIX THE `{VBAR}` WITH A `.` AND `<` TO ALIGN THE CONTENT TO THE TOP OF THE CELL
+.>|PREFIX THE `{VBAR}` WITH A `.` AND `>` TO ALIGN THE CONTENT TO THE BOTTOM OF THE CELL
+
+3+^.^|THIS CONTENT SPANS THREE COLUMNS (`3{PLUS}`) AND IS CENTERED HORIZONTALLY (`{CARET}`) AND VERTICALLY (`.{CARET}`) WITHIN THE CELL.
+
+|===
+
+.BUILDING A VARIETY OF CELL SPECIFIERS
+|===
+
+2*>m|THIS CONTENT IS DUPLICATED ACROSS TWO COLUMNS.
+
+IT IS ALIGNED RIGHT HORIZONTALLY.
+
+AND IT IS MONOSPACED.
+
+.3+^.>s|THIS CELL SPANS 3 ROWS. THE CONTENT IS CENTERED HORIZONTALLY, ALIGNED TO THE BOTTOM OF THE CELL, AND STRONG.
+e|THIS CONTENT IS EMPHASIZED.
+
+.^l|THIS CONTENT IS ALIGNED TO THE TOP OF THE CELL AND LITERAL.
+
+v|THIS CELL CONTAINS A VERSE
+THAT MAY ONE DAY EXPOUND ON THE
+WONDERS OF TABLES IN AN
+EPIC SONNET.
+
+|===
+
+.CELLS WITH ASCIIDOC IN THEM
+[cols="2"]
+|===
+
+a|THIS CELL IS PREFIXED WITH AN `A`, SO THE PROCESSOR INTERPRETS THE FOLLOWING LINES AS AN ASCIIDOC LIST.
+
+* LIST ITEM 1
+* LIST ITEM 2
+* LIST ITEM 3
+|THIS CELL *IS NOT* PREFIXED WITH AN `A`, SO THE PROCESSOR DOES NOT INTERPRET THE FOLLOWING LINES AS AN ASCIIDOC LIST.
+
+* LIST ITEM 1
+* LIST ITEM 2
+* LIST ITEM 3
+
+a|THIS CELL IS PREFIXED WITH AN `A`, SO THE PROCESSOR HONORS THE `LEAD` STYLE ON THE FOLLOWING PARAGRAPH.
+
+[.LEAD]
+I AM A PARAGRAPH STYLED WITH THE LEAD ATTRIBUTE.
+|THIS CELL *IS NOT* PREFIXED WITH AN `A`, SO THE PROCESSOR DOES NOT HONOR THE `LEAD` STYLE ON THE FOLLOWING PARAGRAPH.
+
+[.LEAD]
+I AM A PARAGRAPH STYLED WITH THE LEAD ATTRIBUTE.
+|===
+
+[format="csv", width="60%", cols="2"]
+[frame="topbot", grid="none"]
+[options="header"]
+|===
+IOCONTROL.0 PIN ,MOTION PIN
+TOOL-PREPARE,DIGITAL-OUT-00
+TOOL-PREPARED,DIGITAL-IN-00
+TOOL-CHANGE,DIGITAL-OUT-01
+TOOL-CHANGED,DIGITAL-IN-01
+TOOL-PREP-NUMBER,ANALOG-OUT-00
+TOOL-PREP-POCKET,ANALOG-OUT-01
+TOOL-NUMBER,ANALOG-OUT-02
+|===
+
+.EMPTY CELLS
+|===
+|0|
+| |
+|===
diff --git a/t/fmt/asciidoc/TablesCells.trans.stderr b/t/fmt/asciidoc/TablesCells.trans.stderr
new file mode 100644
index 0000000..835f46c
--- /dev/null
+++ b/t/fmt/asciidoc/TablesCells.trans.stderr
@@ -0,0 +1 @@
+TablesCells.adoc:143: Po4a's tablecells mode only supports PSV formatted tables with '|' separators. Disabling tablecells and falling back to block mode for this table.
diff --git a/t/fmt/asciidoc/TablesImageText.adoc b/t/fmt/asciidoc/TablesImageText.adoc
new file mode 100644
index 0000000..13f3324
--- /dev/null
+++ b/t/fmt/asciidoc/TablesImageText.adoc
@@ -0,0 +1,12 @@
+|====
+|First col
+|Second col
+
+image::tab.png[alt="Tab"]
+
+Text below image 1
+|====
+
+image::notab.png[alt="NoTab"]
+
+Text below image 2
diff --git a/t/fmt/asciidoc/TablesImageText.norm b/t/fmt/asciidoc/TablesImageText.norm
new file mode 100644
index 0000000..13f3324
--- /dev/null
+++ b/t/fmt/asciidoc/TablesImageText.norm
@@ -0,0 +1,12 @@
+|====
+|First col
+|Second col
+
+image::tab.png[alt="Tab"]
+
+Text below image 1
+|====
+
+image::notab.png[alt="NoTab"]
+
+Text below image 2
diff --git a/t/fmt/asciidoc/TablesImageText.po b/t/fmt/asciidoc/TablesImageText.po
new file mode 100644
index 0000000..3c56b24
--- /dev/null
+++ b/t/fmt/asciidoc/TablesImageText.po
@@ -0,0 +1,63 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2020-05-09 10:35+0200\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@LI.ORG>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: TEXT/PLAIN; CHARSET=UTF-8\n"
+"Content-Transfer-Encoding: 8BIT\n"
+
+#. type: Table
+#: TablesImageText.adoc:5
+#, no-wrap
+msgid ""
+"|First col\n"
+"|Second col\n"
+"\n"
+msgstr ""
+"|FIRST COL\n"
+"|SECOND COL\n"
+"\n"
+
+#. type: Named 'alt' AttributeList argument for macro 'image'
+#: TablesImageText.adoc:5
+#, no-wrap
+msgid "Tab"
+msgstr "TAB"
+
+#. type: Target for macro image
+#: TablesImageText.adoc:5
+#, no-wrap
+msgid "tab.png"
+msgstr "TAB.PNG"
+
+#. type: Table
+#: TablesImageText.adoc:8
+msgid "Text below image 1"
+msgstr "TEXT BELOW IMAGE 1"
+
+#. type: Named 'alt' AttributeList argument for macro 'image'
+#: TablesImageText.adoc:10
+#, no-wrap
+msgid "NoTab"
+msgstr "NOTAB"
+
+#. type: Target for macro image
+#: TablesImageText.adoc:10
+#, no-wrap
+msgid "notab.png"
+msgstr "NOTAB.PNG"
+
+#. type: Plain text
+#: TablesImageText.adoc:12
+msgid "Text below image 2"
+msgstr "TEXT BELOW IMAGE 2"
diff --git a/t/fmt/asciidoc/TablesImageText.pot b/t/fmt/asciidoc/TablesImageText.pot
new file mode 100644
index 0000000..5082a1e
--- /dev/null
+++ b/t/fmt/asciidoc/TablesImageText.pot
@@ -0,0 +1,60 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2020-05-09 10:35+0200\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Table
+#: TablesImageText.adoc:5
+#, no-wrap
+msgid ""
+"|First col\n"
+"|Second col\n"
+"\n"
+msgstr ""
+
+#. type: Named 'alt' AttributeList argument for macro 'image'
+#: TablesImageText.adoc:5
+#, no-wrap
+msgid "Tab"
+msgstr ""
+
+#. type: Target for macro image
+#: TablesImageText.adoc:5
+#, no-wrap
+msgid "tab.png"
+msgstr ""
+
+#. type: Table
+#: TablesImageText.adoc:8
+msgid "Text below image 1"
+msgstr ""
+
+#. type: Named 'alt' AttributeList argument for macro 'image'
+#: TablesImageText.adoc:10
+#, no-wrap
+msgid "NoTab"
+msgstr ""
+
+#. type: Target for macro image
+#: TablesImageText.adoc:10
+#, no-wrap
+msgid "notab.png"
+msgstr ""
+
+#. type: Plain text
+#: TablesImageText.adoc:12
+msgid "Text below image 2"
+msgstr ""
diff --git a/t/fmt/asciidoc/TablesImageText.trans b/t/fmt/asciidoc/TablesImageText.trans
new file mode 100644
index 0000000..3c789dd
--- /dev/null
+++ b/t/fmt/asciidoc/TablesImageText.trans
@@ -0,0 +1,12 @@
+|====
+|FIRST COL
+|SECOND COL
+
+image::TAB.PNG[alt="TAB"]
+
+TEXT BELOW IMAGE 1
+|====
+
+image::NOTAB.PNG[alt="NOTAB"]
+
+TEXT BELOW IMAGE 2
diff --git a/t/fmt/asciidoc/Titles.adoc b/t/fmt/asciidoc/Titles.adoc
new file mode 100644
index 0000000..1631c0a
--- /dev/null
+++ b/t/fmt/asciidoc/Titles.adoc
@@ -0,0 +1,30 @@
+Title0
+======
+
+Title1
+------
+
+Title level 2
+~~~~~~~~~~~~~
+
+Title level 3
+^^^^^^^^^^^^^
+
+Title level 4
++++++++++++++
+
+= Document Title (level 0) =
+
+== Section title (level 1) ==
+
+=== Section title (level 2) ===
+
+==== Section title (level 3) ====
+
+===== Section title (level 4) =====
+
+Title level 2 short
+~~~~~~~~~~~~~~~~~
+
+Title level 2 long
+~~~~~~~~~~~~~~~~~~~~
diff --git a/t/fmt/asciidoc/Titles.norm b/t/fmt/asciidoc/Titles.norm
new file mode 100644
index 0000000..8b5a421
--- /dev/null
+++ b/t/fmt/asciidoc/Titles.norm
@@ -0,0 +1,30 @@
+Title0
+======
+
+Title1
+------
+
+Title level 2
+~~~~~~~~~~~~~
+
+Title level 3
+^^^^^^^^^^^^^
+
+Title level 4
++++++++++++++
+
+= Document Title (level 0) =
+
+== Section title (level 1) ==
+
+=== Section title (level 2) ===
+
+==== Section title (level 3) ====
+
+===== Section title (level 4) =====
+
+Title level 2 short
+~~~~~~~~~~~~~~~~~~~
+
+Title level 2 long
+~~~~~~~~~~~~~~~~~~
diff --git a/t/fmt/asciidoc/Titles.norm.stderr b/t/fmt/asciidoc/Titles.norm.stderr
new file mode 100644
index 0000000..bcdc347
--- /dev/null
+++ b/t/fmt/asciidoc/Titles.norm.stderr
@@ -0,0 +1,2 @@
+Titles.adoc:27: 'Title level 2 short' seems to be a two-lines title underlined with '~', but the underlines are too short or too long compared to the title length. You may want to fix your master document.
+Titles.adoc:30: 'Title level 2 long' seems to be a two-lines title underlined with '~', but the underlines are too short or too long compared to the title length. You may want to fix your master document.
diff --git a/t/fmt/asciidoc/Titles.po b/t/fmt/asciidoc/Titles.po
new file mode 100644
index 0000000..58fd230
--- /dev/null
+++ b/t/fmt/asciidoc/Titles.po
@@ -0,0 +1,89 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2008-10-12 21:59+0300\n"
+"PO-Revision-Date: 2008-10-12 22:05+0200\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Title =
+#: Titles.adoc:2
+#, no-wrap
+msgid "Title0"
+msgstr "TITLE0"
+
+#. type: Title -
+#: Titles.adoc:5
+#, no-wrap
+msgid "Title1"
+msgstr "TITLE1"
+
+#. type: Title ~
+#: Titles.adoc:8
+#, no-wrap
+msgid "Title level 2"
+msgstr "TITLE LEVEL 2"
+
+#. type: Title ^
+#: Titles.adoc:11
+#, no-wrap
+msgid "Title level 3"
+msgstr "TITLE LEVEL 3"
+
+#. type: Title +
+#: Titles.adoc:14
+#, no-wrap
+msgid "Title level 4"
+msgstr "TITLE LEVEL 4"
+
+#. type: Title =
+#: Titles.adoc:16
+#, no-wrap
+msgid "Document Title (level 0)"
+msgstr "DOCUMENT TITLE (LEVEL 0)"
+
+#. type: Title ==
+#: Titles.adoc:18
+#, no-wrap
+msgid "Section title (level 1)"
+msgstr "SECTION TITLE (LEVEL 1)"
+
+#. type: Title ===
+#: Titles.adoc:20
+#, no-wrap
+msgid "Section title (level 2)"
+msgstr "SECTION TITLE (LEVEL 2)"
+
+#. type: Title ====
+#: Titles.adoc:22
+#, no-wrap
+msgid "Section title (level 3)"
+msgstr "SECTION TITLE (LEVEL 3)"
+
+#. type: Title =====
+#: Titles.adoc:24
+#, no-wrap
+msgid "Section title (level 4)"
+msgstr "SECTION TITLE (LEVEL 4)"
+
+#. type: Title ~
+#: Titles.adoc:27
+#, no-wrap
+msgid "Title level 2 short"
+msgstr "TITLE LEVEL 2 SHORT"
+
+#. type: Title ~
+#: Titles.adoc:30
+#, no-wrap
+msgid "Title level 2 long"
+msgstr "TITLE LEVEL 2 LONG"
diff --git a/t/fmt/asciidoc/Titles.pot b/t/fmt/asciidoc/Titles.pot
new file mode 100644
index 0000000..c1527c4
--- /dev/null
+++ b/t/fmt/asciidoc/Titles.pot
@@ -0,0 +1,89 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2008-10-12 21:59+0300\n"
+"PO-Revision-Date: 2008-10-12 22:05+0200\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Title =
+#: Titles.adoc:2
+#, no-wrap
+msgid "Title0"
+msgstr ""
+
+#. type: Title -
+#: Titles.adoc:5
+#, no-wrap
+msgid "Title1"
+msgstr ""
+
+#. type: Title ~
+#: Titles.adoc:8
+#, no-wrap
+msgid "Title level 2"
+msgstr ""
+
+#. type: Title ^
+#: Titles.adoc:11
+#, no-wrap
+msgid "Title level 3"
+msgstr ""
+
+#. type: Title +
+#: Titles.adoc:14
+#, no-wrap
+msgid "Title level 4"
+msgstr ""
+
+#. type: Title =
+#: Titles.adoc:16
+#, no-wrap
+msgid "Document Title (level 0)"
+msgstr ""
+
+#. type: Title ==
+#: Titles.adoc:18
+#, no-wrap
+msgid "Section title (level 1)"
+msgstr ""
+
+#. type: Title ===
+#: Titles.adoc:20
+#, no-wrap
+msgid "Section title (level 2)"
+msgstr ""
+
+#. type: Title ====
+#: Titles.adoc:22
+#, no-wrap
+msgid "Section title (level 3)"
+msgstr ""
+
+#. type: Title =====
+#: Titles.adoc:24
+#, no-wrap
+msgid "Section title (level 4)"
+msgstr ""
+
+#. type: Title ~
+#: Titles.adoc:27
+#, no-wrap
+msgid "Title level 2 short"
+msgstr ""
+
+#. type: Title ~
+#: Titles.adoc:30
+#, no-wrap
+msgid "Title level 2 long"
+msgstr ""
diff --git a/t/fmt/asciidoc/Titles.trans b/t/fmt/asciidoc/Titles.trans
new file mode 100644
index 0000000..c2e776c
--- /dev/null
+++ b/t/fmt/asciidoc/Titles.trans
@@ -0,0 +1,30 @@
+TITLE0
+======
+
+TITLE1
+------
+
+TITLE LEVEL 2
+~~~~~~~~~~~~~
+
+TITLE LEVEL 3
+^^^^^^^^^^^^^
+
+TITLE LEVEL 4
++++++++++++++
+
+= DOCUMENT TITLE (LEVEL 0) =
+
+== SECTION TITLE (LEVEL 1) ==
+
+=== SECTION TITLE (LEVEL 2) ===
+
+==== SECTION TITLE (LEVEL 3) ====
+
+===== SECTION TITLE (LEVEL 4) =====
+
+TITLE LEVEL 2 SHORT
+~~~~~~~~~~~~~~~~~~~
+
+TITLE LEVEL 2 LONG
+~~~~~~~~~~~~~~~~~~
diff --git a/t/fmt/asciidoc/Titles.trans.stderr b/t/fmt/asciidoc/Titles.trans.stderr
new file mode 100644
index 0000000..bcdc347
--- /dev/null
+++ b/t/fmt/asciidoc/Titles.trans.stderr
@@ -0,0 +1,2 @@
+Titles.adoc:27: 'Title level 2 short' seems to be a two-lines title underlined with '~', but the underlines are too short or too long compared to the title length. You may want to fix your master document.
+Titles.adoc:30: 'Title level 2 long' seems to be a two-lines title underlined with '~', but the underlines are too short or too long compared to the title length. You may want to fix your master document.
diff --git a/t/fmt/asciidoc/YamlFrontMatter.adoc b/t/fmt/asciidoc/YamlFrontMatter.adoc
new file mode 100644
index 0000000..3798587
--- /dev/null
+++ b/t/fmt/asciidoc/YamlFrontMatter.adoc
@@ -0,0 +1,39 @@
+---
+title: "This is a test for the YFM thing in AsciiDoc"
+author: test
+tags:
+- yaml
+- markdown
+wrappedtext: >
+ this is really a
+ single line of text
+ despite appearances
+include_newlines: |
+ exactly as you see
+ will appear these three
+ lines of poetry
+people:
+ -
+ name: John D'vloper
+ job: Developer
+ hobbies:
+ - Amateur radio
+ - Pet adoption & fostering
+ - Puzzle
+ -
+ name: Tabitha Bitumen
+ job: Developer
+ hobbies:
+ - Ice skating
+ - Water polo
+ - Caving
+---
+
+
+YAML: does it fit in AsciiDoc?
+==============================
+
+AsciiDoc moves to YFM too. Why so?
+
+Because blog posts need metadata!
+
diff --git a/t/fmt/asciidoc/YamlFrontMatter.norm b/t/fmt/asciidoc/YamlFrontMatter.norm
new file mode 100644
index 0000000..9bceb53
--- /dev/null
+++ b/t/fmt/asciidoc/YamlFrontMatter.norm
@@ -0,0 +1,33 @@
+---
+author: test
+include_newlines: "exactly as you see\nwill appear these three\nlines of poetry\n"
+people:
+ -
+ hobbies:
+ - 'Amateur radio'
+ - 'Pet adoption & fostering'
+ - Puzzle
+ job: Developer
+ name: "John D'vloper"
+ -
+ hobbies:
+ - 'Ice skating'
+ - 'Water polo'
+ - Caving
+ job: Developer
+ name: 'Tabitha Bitumen'
+tags:
+ - yaml
+ - markdown
+title: 'This is a test for the YFM thing in AsciiDoc'
+wrappedtext: "this is really a single line of text despite appearances\n"
+---
+
+
+YAML: does it fit in AsciiDoc?
+==============================
+
+AsciiDoc moves to YFM too. Why so?
+
+Because blog posts need metadata!
+
diff --git a/t/fmt/asciidoc/YamlFrontMatter.po b/t/fmt/asciidoc/YamlFrontMatter.po
new file mode 100644
index 0000000..37fe149
--- /dev/null
+++ b/t/fmt/asciidoc/YamlFrontMatter.po
@@ -0,0 +1,129 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2021-02-21 00:52+0100\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@LI.ORG>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: TEXT/PLAIN; CHARSET=UTF-8\n"
+"Content-Transfer-Encoding: 8BIT\n"
+
+#. type: Yaml Front Matter Hash Value: author
+#: YamlFrontMatter.adoc:1
+#, no-wrap
+msgid "test"
+msgstr "TEST"
+
+#. type: Yaml Front Matter Hash Value: include_newlines
+#: YamlFrontMatter.adoc:1
+#, no-wrap
+msgid ""
+"exactly as you see\n"
+"will appear these three\n"
+"lines of poetry\n"
+msgstr ""
+"EXACTLY AS YOU SEE\n"
+"WILL APPEAR THESE THREE\n"
+"LINES OF POETRY\n"
+
+#. type: Yaml Front Matter Array Element: people hobbies
+#: YamlFrontMatter.adoc:1
+#, no-wrap
+msgid "Amateur radio"
+msgstr "AMATEUR RADIO"
+
+#. type: Yaml Front Matter Array Element: people hobbies
+#: YamlFrontMatter.adoc:1
+#, no-wrap
+msgid "Pet adoption & fostering"
+msgstr "PET ADOPTION & FOSTERING"
+
+#. type: Yaml Front Matter Array Element: people hobbies
+#: YamlFrontMatter.adoc:1
+#, no-wrap
+msgid "Puzzle"
+msgstr "PUZZLE"
+
+#. type: Yaml Front Matter Hash Value: people job
+#: YamlFrontMatter.adoc:1
+#, no-wrap
+msgid "Developer"
+msgstr "DEVELOPER"
+
+#. type: Yaml Front Matter Hash Value: people name
+#: YamlFrontMatter.adoc:1
+#, no-wrap
+msgid "John D'vloper"
+msgstr "JOHN D'VLOPER"
+
+#. type: Yaml Front Matter Array Element: people hobbies
+#: YamlFrontMatter.adoc:1
+#, no-wrap
+msgid "Ice skating"
+msgstr "ICE SKATING"
+
+#. type: Yaml Front Matter Array Element: people hobbies
+#: YamlFrontMatter.adoc:1
+#, no-wrap
+msgid "Water polo"
+msgstr "WATER POLO"
+
+#. type: Yaml Front Matter Array Element: people hobbies
+#: YamlFrontMatter.adoc:1
+#, no-wrap
+msgid "Caving"
+msgstr "CAVING"
+
+#. type: Yaml Front Matter Hash Value: people name
+#: YamlFrontMatter.adoc:1
+#, no-wrap
+msgid "Tabitha Bitumen"
+msgstr "TABITHA BITUMEN"
+
+#. type: Yaml Front Matter Array Element: tags
+#: YamlFrontMatter.adoc:1
+#, no-wrap
+msgid "yaml"
+msgstr "YAML"
+
+#. type: Yaml Front Matter Array Element: tags
+#: YamlFrontMatter.adoc:1
+#, no-wrap
+msgid "markdown"
+msgstr "MARKDOWN"
+
+#. type: Yaml Front Matter Hash Value: title
+#: YamlFrontMatter.adoc:1
+#, no-wrap
+msgid "This is a test for the YFM thing in AsciiDoc"
+msgstr "THIS IS A TEST FOR THE yfm THING IN aSCIIdOC"
+
+#. type: Yaml Front Matter Hash Value: wrappedtext
+#: YamlFrontMatter.adoc:1
+#, no-wrap
+msgid "this is really a single line of text despite appearances\n"
+msgstr "THIS IS REALLY A SINGLE LINE OF TEXT DESPITE APPEARANCES\n"
+
+#. type: Title =
+#: YamlFrontMatter.adoc:34
+#, no-wrap
+msgid "YAML: does it fit in AsciiDoc?"
+msgstr "YAML: DOES IT FIT IN aSCIIdOC?"
+
+#. type: Plain text
+#: YamlFrontMatter.adoc:37
+msgid "AsciiDoc moves to YFM too. Why so?"
+msgstr "aSCIIdOC MOVES TO yfm TOO. wHY SO?"
+
+#. type: Plain text
+#: YamlFrontMatter.adoc:39
+msgid "Because blog posts need metadata!"
+msgstr "BECAUSE BLOG POSTS NEED METADATA!"
diff --git a/t/fmt/asciidoc/YamlFrontMatter.pot b/t/fmt/asciidoc/YamlFrontMatter.pot
new file mode 100644
index 0000000..a0a0abc
--- /dev/null
+++ b/t/fmt/asciidoc/YamlFrontMatter.pot
@@ -0,0 +1,126 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2021-02-21 00:52+0100\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Yaml Front Matter Hash Value: author
+#: YamlFrontMatter.adoc:1
+#, no-wrap
+msgid "test"
+msgstr ""
+
+#. type: Yaml Front Matter Hash Value: include_newlines
+#: YamlFrontMatter.adoc:1
+#, no-wrap
+msgid ""
+"exactly as you see\n"
+"will appear these three\n"
+"lines of poetry\n"
+msgstr ""
+
+#. type: Yaml Front Matter Array Element: people hobbies
+#: YamlFrontMatter.adoc:1
+#, no-wrap
+msgid "Amateur radio"
+msgstr ""
+
+#. type: Yaml Front Matter Array Element: people hobbies
+#: YamlFrontMatter.adoc:1
+#, no-wrap
+msgid "Pet adoption & fostering"
+msgstr ""
+
+#. type: Yaml Front Matter Array Element: people hobbies
+#: YamlFrontMatter.adoc:1
+#, no-wrap
+msgid "Puzzle"
+msgstr ""
+
+#. type: Yaml Front Matter Hash Value: people job
+#: YamlFrontMatter.adoc:1
+#, no-wrap
+msgid "Developer"
+msgstr ""
+
+#. type: Yaml Front Matter Hash Value: people name
+#: YamlFrontMatter.adoc:1
+#, no-wrap
+msgid "John D'vloper"
+msgstr ""
+
+#. type: Yaml Front Matter Array Element: people hobbies
+#: YamlFrontMatter.adoc:1
+#, no-wrap
+msgid "Ice skating"
+msgstr ""
+
+#. type: Yaml Front Matter Array Element: people hobbies
+#: YamlFrontMatter.adoc:1
+#, no-wrap
+msgid "Water polo"
+msgstr ""
+
+#. type: Yaml Front Matter Array Element: people hobbies
+#: YamlFrontMatter.adoc:1
+#, no-wrap
+msgid "Caving"
+msgstr ""
+
+#. type: Yaml Front Matter Hash Value: people name
+#: YamlFrontMatter.adoc:1
+#, no-wrap
+msgid "Tabitha Bitumen"
+msgstr ""
+
+#. type: Yaml Front Matter Array Element: tags
+#: YamlFrontMatter.adoc:1
+#, no-wrap
+msgid "yaml"
+msgstr ""
+
+#. type: Yaml Front Matter Array Element: tags
+#: YamlFrontMatter.adoc:1
+#, no-wrap
+msgid "markdown"
+msgstr ""
+
+#. type: Yaml Front Matter Hash Value: title
+#: YamlFrontMatter.adoc:1
+#, no-wrap
+msgid "This is a test for the YFM thing in AsciiDoc"
+msgstr ""
+
+#. type: Yaml Front Matter Hash Value: wrappedtext
+#: YamlFrontMatter.adoc:1
+#, no-wrap
+msgid "this is really a single line of text despite appearances\n"
+msgstr ""
+
+#. type: Title =
+#: YamlFrontMatter.adoc:34
+#, no-wrap
+msgid "YAML: does it fit in AsciiDoc?"
+msgstr ""
+
+#. type: Plain text
+#: YamlFrontMatter.adoc:37
+msgid "AsciiDoc moves to YFM too. Why so?"
+msgstr ""
+
+#. type: Plain text
+#: YamlFrontMatter.adoc:39
+msgid "Because blog posts need metadata!"
+msgstr ""
diff --git a/t/fmt/asciidoc/YamlFrontMatter.trans b/t/fmt/asciidoc/YamlFrontMatter.trans
new file mode 100644
index 0000000..22ca370
--- /dev/null
+++ b/t/fmt/asciidoc/YamlFrontMatter.trans
@@ -0,0 +1,33 @@
+---
+author: TEST
+include_newlines: "EXACTLY AS YOU SEE\nWILL APPEAR THESE THREE\nLINES OF POETRY\n"
+people:
+ -
+ hobbies:
+ - 'AMATEUR RADIO'
+ - 'PET ADOPTION & FOSTERING'
+ - PUZZLE
+ job: DEVELOPER
+ name: "JOHN D'VLOPER"
+ -
+ hobbies:
+ - 'ICE SKATING'
+ - 'WATER POLO'
+ - CAVING
+ job: DEVELOPER
+ name: 'TABITHA BITUMEN'
+tags:
+ - YAML
+ - MARKDOWN
+title: 'THIS IS A TEST FOR THE yfm THING IN aSCIIdOC'
+wrappedtext: "THIS IS REALLY A SINGLE LINE OF TEXT DESPITE APPEARANCES\n"
+---
+
+
+YAML: DOES IT FIT IN aSCIIdOC?
+==============================
+
+aSCIIdOC MOVES TO yfm TOO. wHY SO?
+
+BECAUSE BLOG POSTS NEED METADATA!
+
diff --git a/t/fmt/asciidoc/YamlFrontMatter_KeysPaths.adoc b/t/fmt/asciidoc/YamlFrontMatter_KeysPaths.adoc
new file mode 100644
index 0000000..79ca750
--- /dev/null
+++ b/t/fmt/asciidoc/YamlFrontMatter_KeysPaths.adoc
@@ -0,0 +1,35 @@
+---
+title: "This is a test for the YFM thing in AsciiDoc"
+subtitle: "I mean: why not?"
+author: test
+numeric_ignored_value: 22
+tags:
+- yaml
+- markdown
+people:
+ -
+ name: John D'vloper
+ title: Developer
+ hobbies:
+ - Amateur radio
+ - Pet adoption & fostering
+ - Puzzle
+ -
+ name: Tabitha Bitumen
+ title: Developer
+ hobbies:
+ - Ice skating
+ - Water polo
+ - Caving
+paragraph: >
+ Some text to translate, please.
+---
+
+
+YAML: does it fit in AsciiDoc?
+==============================
+
+AsciiDoc moves to YFM too. Why so?
+
+Because blog posts need metadata!
+
diff --git a/t/fmt/asciidoc/YamlFrontMatter_KeysPaths.norm b/t/fmt/asciidoc/YamlFrontMatter_KeysPaths.norm
new file mode 100644
index 0000000..e74e8da
--- /dev/null
+++ b/t/fmt/asciidoc/YamlFrontMatter_KeysPaths.norm
@@ -0,0 +1,34 @@
+---
+author: test
+numeric_ignored_value: 22
+paragraph: "Some text to translate, please.\n"
+people:
+ -
+ hobbies:
+ - 'Amateur radio'
+ - 'Pet adoption & fostering'
+ - Puzzle
+ name: "John D'vloper"
+ title: Developer
+ -
+ hobbies:
+ - 'Ice skating'
+ - 'Water polo'
+ - Caving
+ name: 'Tabitha Bitumen'
+ title: Developer
+subtitle: 'I mean: why not?'
+tags:
+ - yaml
+ - markdown
+title: 'This is a test for the YFM thing in AsciiDoc'
+---
+
+
+YAML: does it fit in AsciiDoc?
+==============================
+
+AsciiDoc moves to YFM too. Why so?
+
+Because blog posts need metadata!
+
diff --git a/t/fmt/asciidoc/YamlFrontMatter_KeysPaths.po b/t/fmt/asciidoc/YamlFrontMatter_KeysPaths.po
new file mode 100644
index 0000000..14214f9
--- /dev/null
+++ b/t/fmt/asciidoc/YamlFrontMatter_KeysPaths.po
@@ -0,0 +1,51 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2021-02-21 01:14+0100\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@LI.ORG>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: TEXT/PLAIN; CHARSET=UTF-8\n"
+"Content-Transfer-Encoding: 8BIT\n"
+
+#. type: Yaml Front Matter Hash Value: paragraph
+#: YamlFrontMatter_KeysPaths.adoc:1
+#, no-wrap
+msgid "Some text to translate, please.\n"
+msgstr "SOME TEXT TO TRANSLATE, PLEASE.\n"
+
+#. type: Yaml Front Matter Hash Value: people title
+#: YamlFrontMatter_KeysPaths.adoc:1
+#, no-wrap
+msgid "Developer"
+msgstr "DEVELOPER"
+
+#. type: Yaml Front Matter Hash Value: subtitle
+#: YamlFrontMatter_KeysPaths.adoc:1
+#, no-wrap
+msgid "I mean: why not?"
+msgstr "I MEAN: WHY NOT?"
+
+#. type: Title =
+#: YamlFrontMatter_KeysPaths.adoc:30
+#, no-wrap
+msgid "YAML: does it fit in AsciiDoc?"
+msgstr "YAML: DOES IT FIT IN aSCIIdOC?"
+
+#. type: Plain text
+#: YamlFrontMatter_KeysPaths.adoc:33
+msgid "AsciiDoc moves to YFM too. Why so?"
+msgstr "aSCIIdOC MOVES TO yfm TOO. wHY SO?"
+
+#. type: Plain text
+#: YamlFrontMatter_KeysPaths.adoc:35
+msgid "Because blog posts need metadata!"
+msgstr "BECAUSE BLOG POSTS NEED METADATA!"
diff --git a/t/fmt/asciidoc/YamlFrontMatter_KeysPaths.pot b/t/fmt/asciidoc/YamlFrontMatter_KeysPaths.pot
new file mode 100644
index 0000000..e21ed6c
--- /dev/null
+++ b/t/fmt/asciidoc/YamlFrontMatter_KeysPaths.pot
@@ -0,0 +1,51 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2021-02-21 01:14+0100\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Yaml Front Matter Hash Value: paragraph
+#: YamlFrontMatter_KeysPaths.adoc:1
+#, no-wrap
+msgid "Some text to translate, please.\n"
+msgstr ""
+
+#. type: Yaml Front Matter Hash Value: people title
+#: YamlFrontMatter_KeysPaths.adoc:1
+#, no-wrap
+msgid "Developer"
+msgstr ""
+
+#. type: Yaml Front Matter Hash Value: subtitle
+#: YamlFrontMatter_KeysPaths.adoc:1
+#, no-wrap
+msgid "I mean: why not?"
+msgstr ""
+
+#. type: Title =
+#: YamlFrontMatter_KeysPaths.adoc:30
+#, no-wrap
+msgid "YAML: does it fit in AsciiDoc?"
+msgstr ""
+
+#. type: Plain text
+#: YamlFrontMatter_KeysPaths.adoc:33
+msgid "AsciiDoc moves to YFM too. Why so?"
+msgstr ""
+
+#. type: Plain text
+#: YamlFrontMatter_KeysPaths.adoc:35
+msgid "Because blog posts need metadata!"
+msgstr ""
diff --git a/t/fmt/asciidoc/YamlFrontMatter_KeysPaths.trans b/t/fmt/asciidoc/YamlFrontMatter_KeysPaths.trans
new file mode 100644
index 0000000..1461bce
--- /dev/null
+++ b/t/fmt/asciidoc/YamlFrontMatter_KeysPaths.trans
@@ -0,0 +1,34 @@
+---
+author: test
+numeric_ignored_value: 22
+paragraph: "SOME TEXT TO TRANSLATE, PLEASE.\n"
+people:
+ -
+ hobbies:
+ - 'Amateur radio'
+ - 'Pet adoption & fostering'
+ - Puzzle
+ name: "John D'vloper"
+ title: DEVELOPER
+ -
+ hobbies:
+ - 'Ice skating'
+ - 'Water polo'
+ - Caving
+ name: 'Tabitha Bitumen'
+ title: DEVELOPER
+subtitle: 'I MEAN: WHY NOT?'
+tags:
+ - yaml
+ - markdown
+title: 'This is a test for the YFM thing in AsciiDoc'
+---
+
+
+YAML: DOES IT FIT IN aSCIIdOC?
+==============================
+
+aSCIIdOC MOVES TO yfm TOO. wHY SO?
+
+BECAUSE BLOG POSTS NEED METADATA!
+
diff --git a/t/fmt/asciidoc/YamlFrontMatter_Option.adoc b/t/fmt/asciidoc/YamlFrontMatter_Option.adoc
new file mode 100644
index 0000000..79ca750
--- /dev/null
+++ b/t/fmt/asciidoc/YamlFrontMatter_Option.adoc
@@ -0,0 +1,35 @@
+---
+title: "This is a test for the YFM thing in AsciiDoc"
+subtitle: "I mean: why not?"
+author: test
+numeric_ignored_value: 22
+tags:
+- yaml
+- markdown
+people:
+ -
+ name: John D'vloper
+ title: Developer
+ hobbies:
+ - Amateur radio
+ - Pet adoption & fostering
+ - Puzzle
+ -
+ name: Tabitha Bitumen
+ title: Developer
+ hobbies:
+ - Ice skating
+ - Water polo
+ - Caving
+paragraph: >
+ Some text to translate, please.
+---
+
+
+YAML: does it fit in AsciiDoc?
+==============================
+
+AsciiDoc moves to YFM too. Why so?
+
+Because blog posts need metadata!
+
diff --git a/t/fmt/asciidoc/YamlFrontMatter_Option.norm b/t/fmt/asciidoc/YamlFrontMatter_Option.norm
new file mode 100644
index 0000000..e74e8da
--- /dev/null
+++ b/t/fmt/asciidoc/YamlFrontMatter_Option.norm
@@ -0,0 +1,34 @@
+---
+author: test
+numeric_ignored_value: 22
+paragraph: "Some text to translate, please.\n"
+people:
+ -
+ hobbies:
+ - 'Amateur radio'
+ - 'Pet adoption & fostering'
+ - Puzzle
+ name: "John D'vloper"
+ title: Developer
+ -
+ hobbies:
+ - 'Ice skating'
+ - 'Water polo'
+ - Caving
+ name: 'Tabitha Bitumen'
+ title: Developer
+subtitle: 'I mean: why not?'
+tags:
+ - yaml
+ - markdown
+title: 'This is a test for the YFM thing in AsciiDoc'
+---
+
+
+YAML: does it fit in AsciiDoc?
+==============================
+
+AsciiDoc moves to YFM too. Why so?
+
+Because blog posts need metadata!
+
diff --git a/t/fmt/asciidoc/YamlFrontMatter_Option.po b/t/fmt/asciidoc/YamlFrontMatter_Option.po
new file mode 100644
index 0000000..f4fbf08
--- /dev/null
+++ b/t/fmt/asciidoc/YamlFrontMatter_Option.po
@@ -0,0 +1,57 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2021-02-21 01:14+0100\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@LI.ORG>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: TEXT/PLAIN; CHARSET=UTF-8\n"
+"Content-Transfer-Encoding: 8BIT\n"
+
+#. type: Yaml Front Matter Hash Value: paragraph
+#: YamlFrontMatter_Option.adoc:1
+#, no-wrap
+msgid "Some text to translate, please.\n"
+msgstr "SOME TEXT TO TRANSLATE, PLEASE.\n"
+
+#. type: Yaml Front Matter Hash Value: people title
+#: YamlFrontMatter_Option.adoc:1
+#, no-wrap
+msgid "Developer"
+msgstr "DEVELOPER"
+
+#. type: Yaml Front Matter Hash Value: subtitle
+#: YamlFrontMatter_Option.adoc:1
+#, no-wrap
+msgid "I mean: why not?"
+msgstr "I MEAN: WHY NOT?"
+
+#. type: Yaml Front Matter Hash Value: title
+#: YamlFrontMatter_Option.adoc:1
+#, no-wrap
+msgid "This is a test for the YFM thing in AsciiDoc"
+msgstr "THIS IS A TEST FOR THE yfm THING IN aSCIIdOC"
+
+#. type: Title =
+#: YamlFrontMatter_Option.adoc:30
+#, no-wrap
+msgid "YAML: does it fit in AsciiDoc?"
+msgstr "YAML: DOES IT FIT IN aSCIIdOC?"
+
+#. type: Plain text
+#: YamlFrontMatter_Option.adoc:33
+msgid "AsciiDoc moves to YFM too. Why so?"
+msgstr "aSCIIdOC MOVES TO yfm TOO. wHY SO?"
+
+#. type: Plain text
+#: YamlFrontMatter_Option.adoc:35
+msgid "Because blog posts need metadata!"
+msgstr "BECAUSE BLOG POSTS NEED METADATA!"
diff --git a/t/fmt/asciidoc/YamlFrontMatter_Option.pot b/t/fmt/asciidoc/YamlFrontMatter_Option.pot
new file mode 100644
index 0000000..ae6420f
--- /dev/null
+++ b/t/fmt/asciidoc/YamlFrontMatter_Option.pot
@@ -0,0 +1,57 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2021-02-21 01:14+0100\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. type: Yaml Front Matter Hash Value: paragraph
+#: YamlFrontMatter_Option.adoc:1
+#, no-wrap
+msgid "Some text to translate, please.\n"
+msgstr ""
+
+#. type: Yaml Front Matter Hash Value: people title
+#: YamlFrontMatter_Option.adoc:1
+#, no-wrap
+msgid "Developer"
+msgstr ""
+
+#. type: Yaml Front Matter Hash Value: subtitle
+#: YamlFrontMatter_Option.adoc:1
+#, no-wrap
+msgid "I mean: why not?"
+msgstr ""
+
+#. type: Yaml Front Matter Hash Value: title
+#: YamlFrontMatter_Option.adoc:1
+#, no-wrap
+msgid "This is a test for the YFM thing in AsciiDoc"
+msgstr ""
+
+#. type: Title =
+#: YamlFrontMatter_Option.adoc:30
+#, no-wrap
+msgid "YAML: does it fit in AsciiDoc?"
+msgstr ""
+
+#. type: Plain text
+#: YamlFrontMatter_Option.adoc:33
+msgid "AsciiDoc moves to YFM too. Why so?"
+msgstr ""
+
+#. type: Plain text
+#: YamlFrontMatter_Option.adoc:35
+msgid "Because blog posts need metadata!"
+msgstr ""
diff --git a/t/fmt/asciidoc/YamlFrontMatter_Option.trans b/t/fmt/asciidoc/YamlFrontMatter_Option.trans
new file mode 100644
index 0000000..4164e56
--- /dev/null
+++ b/t/fmt/asciidoc/YamlFrontMatter_Option.trans
@@ -0,0 +1,34 @@
+---
+author: test
+numeric_ignored_value: 22
+paragraph: "SOME TEXT TO TRANSLATE, PLEASE.\n"
+people:
+ -
+ hobbies:
+ - 'Amateur radio'
+ - 'Pet adoption & fostering'
+ - Puzzle
+ name: "John D'vloper"
+ title: DEVELOPER
+ -
+ hobbies:
+ - 'Ice skating'
+ - 'Water polo'
+ - Caving
+ name: 'Tabitha Bitumen'
+ title: DEVELOPER
+subtitle: 'I MEAN: WHY NOT?'
+tags:
+ - yaml
+ - markdown
+title: 'THIS IS A TEST FOR THE yfm THING IN aSCIIdOC'
+---
+
+
+YAML: DOES IT FIT IN aSCIIdOC?
+==============================
+
+aSCIIdOC MOVES TO yfm TOO. wHY SO?
+
+BECAUSE BLOG POSTS NEED METADATA!
+