FreeBSD Bugzilla – Attachment 220462 Details for
Bug 251329
textproc/asciidoc: extraneous carriage returns in output
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
patch with newest
patch-textproc_ascidoc-eol_correction.diff (text/plain), 73.85 KB, created by
Rainer Hurling
on 2020-12-11 17:57:07 UTC
(
hide
)
Description:
patch with newest
Filename:
MIME Type:
Creator:
Rainer Hurling
Created:
2020-12-11 17:57:07 UTC
Size:
73.85 KB
patch
obsolete
>diff -urN asciidoc.orig/files/patch-a2x.py asciidoc/files/patch-a2x.py >--- asciidoc.orig/files/patch-a2x.py 2020-09-06 19:56:58.635707000 +0200 >+++ asciidoc/files/patch-a2x.py 2020-12-11 18:44:20.153307000 +0100 >@@ -1,6 +1,6 @@ >---- a2x.py.orig 2018-01-13 22:10:35 UTC >+--- a2x.py.orig 2020-12-11 16:50:16 UTC > +++ a2x.py >-@@ -498,7 +498,7 @@ class A2X(AttrDict): >+@@ -543,7 +543,7 @@ class A2X(AttrDict): > self.asciidoc_opts += ' --doctype %s' % self.doctype > for attr in self.attributes: > self.asciidoc_opts += ' --attribute "%s"' % attr >diff -urN asciidoc.orig/files/patch-asciidoc.py asciidoc/files/patch-asciidoc.py >--- asciidoc.orig/files/patch-asciidoc.py 1970-01-01 01:00:00.000000000 +0100 >+++ asciidoc/files/patch-asciidoc.py 2020-12-11 18:44:20.153260000 +0100 >@@ -0,0 +1,11 @@ >+--- asciidoc.py.orig 2020-12-11 16:50:16 UTC >++++ asciidoc.py >+@@ -969,7 +969,7 @@ def system(name, args, is_macro=False, attrs=None): >+ line = subs_attrs(line) >+ if line is not None: >+ result.append(line) >+- result = DEFAULT_NEWLINE.join(result) >++ result = config.newline.join(result) >+ else: >+ assert False >+ if result and name in ('eval3', 'sys3'): >diff -urN asciidoc.orig/files/patch-tests_data_newline-dos-html5.html asciidoc/files/patch-tests_data_newline-dos-html5.html >--- asciidoc.orig/files/patch-tests_data_newline-dos-html5.html 1970-01-01 01:00:00.000000000 +0100 >+++ asciidoc/files/patch-tests_data_newline-dos-html5.html 2020-12-11 18:44:20.153215000 +0100 >@@ -0,0 +1,788 @@ >+--- tests/data/newline-dos-html5.html.orig 2020-12-11 17:05:41 UTC >++++ tests/data/newline-dos-html5.html >+@@ -0,0 +1,785 @@ >++<!DOCTYPE html> >++<html lang="en"> >++<head> >++<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> >++<meta name="generator" content="AsciiDoc test"> >++<title>Newline Tests</title> >++<style type="text/css"> >++/* Shared CSS for AsciiDoc xhtml11 and html5 backends */ >++ >++/* Default font. */ >++body { >++ font-family: Georgia,serif; >++} >++ >++/* Title font. */ >++h1, h2, h3, h4, h5, h6, >++div.title, caption.title, >++thead, p.table.header, >++#toctitle, >++#author, #revnumber, #revdate, #revremark, >++#footer { >++ font-family: Arial,Helvetica,sans-serif; >++} >++ >++body { >++ margin: 1em 5% 1em 5%; >++} >++ >++a { >++ color: blue; >++ text-decoration: underline; >++} >++a:visited { >++ color: fuchsia; >++} >++ >++em { >++ font-style: italic; >++ color: navy; >++} >++ >++strong { >++ font-weight: bold; >++ color: #083194; >++} >++ >++h1, h2, h3, h4, h5, h6 { >++ color: #527bbd; >++ margin-top: 1.2em; >++ margin-bottom: 0.5em; >++ line-height: 1.3; >++} >++ >++h1, h2, h3 { >++ border-bottom: 2px solid silver; >++} >++h2 { >++ padding-top: 0.5em; >++} >++h3 { >++ float: left; >++} >++h3 + * { >++ clear: left; >++} >++h5 { >++ font-size: 1.0em; >++} >++ >++div.sectionbody { >++ margin-left: 0; >++} >++ >++hr { >++ border: 1px solid silver; >++} >++ >++p { >++ margin-top: 0.5em; >++ margin-bottom: 0.5em; >++} >++ >++ul, ol, li > p { >++ margin-top: 0; >++} >++ul > li { color: #aaa; } >++ul > li > * { color: black; } >++ >++.monospaced, code, pre { >++ font-family: "Courier New", Courier, monospace; >++ font-size: inherit; >++ color: navy; >++ padding: 0; >++ margin: 0; >++} >++pre { >++ white-space: pre-wrap; >++} >++ >++#author { >++ color: #527bbd; >++ font-weight: bold; >++ font-size: 1.1em; >++} >++#email { >++} >++#revnumber, #revdate, #revremark { >++} >++ >++#footer { >++ font-size: small; >++ border-top: 2px solid silver; >++ padding-top: 0.5em; >++ margin-top: 4.0em; >++} >++#footer-text { >++ float: left; >++ padding-bottom: 0.5em; >++} >++#footer-badges { >++ float: right; >++ padding-bottom: 0.5em; >++} >++ >++#preamble { >++ margin-top: 1.5em; >++ margin-bottom: 1.5em; >++} >++div.imageblock, div.exampleblock, div.verseblock, >++div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock, >++div.admonitionblock { >++ margin-top: 1.0em; >++ margin-bottom: 1.5em; >++} >++div.admonitionblock { >++ margin-top: 2.0em; >++ margin-bottom: 2.0em; >++ margin-right: 10%; >++ color: #606060; >++} >++ >++div.content { /* Block element content. */ >++ padding: 0; >++} >++ >++/* Block element titles. */ >++div.title, caption.title { >++ color: #527bbd; >++ font-weight: bold; >++ text-align: left; >++ margin-top: 1.0em; >++ margin-bottom: 0.5em; >++} >++div.title + * { >++ margin-top: 0; >++} >++ >++td div.title:first-child { >++ margin-top: 0.0em; >++} >++div.content div.title:first-child { >++ margin-top: 0.0em; >++} >++div.content + div.title { >++ margin-top: 0.0em; >++} >++ >++div.sidebarblock > div.content { >++ background: #ffffee; >++ border: 1px solid #dddddd; >++ border-left: 4px solid #f0f0f0; >++ padding: 0.5em; >++} >++ >++div.listingblock > div.content { >++ border: 1px solid #dddddd; >++ border-left: 5px solid #f0f0f0; >++ background: #f8f8f8; >++ padding: 0.5em; >++} >++ >++div.quoteblock, div.verseblock { >++ padding-left: 1.0em; >++ margin-left: 1.0em; >++ margin-right: 10%; >++ border-left: 5px solid #f0f0f0; >++ color: #888; >++} >++ >++div.quoteblock > div.attribution { >++ padding-top: 0.5em; >++ text-align: right; >++} >++ >++div.verseblock > pre.content { >++ font-family: inherit; >++ font-size: inherit; >++} >++div.verseblock > div.attribution { >++ padding-top: 0.75em; >++ text-align: left; >++} >++/* DEPRECATED: Pre version 8.2.7 verse style literal block. */ >++div.verseblock + div.attribution { >++ text-align: left; >++} >++ >++div.admonitionblock .icon { >++ vertical-align: top; >++ font-size: 1.1em; >++ font-weight: bold; >++ text-decoration: underline; >++ color: #527bbd; >++ padding-right: 0.5em; >++} >++div.admonitionblock td.content { >++ padding-left: 0.5em; >++ border-left: 3px solid #dddddd; >++} >++ >++div.exampleblock > div.content { >++ border-left: 3px solid #dddddd; >++ padding-left: 0.5em; >++} >++ >++div.imageblock div.content { padding-left: 0; } >++span.image img { border-style: none; vertical-align: text-bottom; } >++a.image:visited { color: white; } >++ >++dl { >++ margin-top: 0.8em; >++ margin-bottom: 0.8em; >++} >++dt { >++ margin-top: 0.5em; >++ margin-bottom: 0; >++ font-style: normal; >++ color: navy; >++} >++dd > *:first-child { >++ margin-top: 0.1em; >++} >++ >++ul, ol { >++ list-style-position: outside; >++} >++ol.arabic { >++ list-style-type: decimal; >++} >++ol.loweralpha { >++ list-style-type: lower-alpha; >++} >++ol.upperalpha { >++ list-style-type: upper-alpha; >++} >++ol.lowerroman { >++ list-style-type: lower-roman; >++} >++ol.upperroman { >++ list-style-type: upper-roman; >++} >++ >++div.compact ul, div.compact ol, >++div.compact p, div.compact p, >++div.compact div, div.compact div { >++ margin-top: 0.1em; >++ margin-bottom: 0.1em; >++} >++ >++tfoot { >++ font-weight: bold; >++} >++td > div.verse { >++ white-space: pre; >++} >++ >++div.hdlist { >++ margin-top: 0.8em; >++ margin-bottom: 0.8em; >++} >++div.hdlist tr { >++ padding-bottom: 15px; >++} >++dt.hdlist1.strong, td.hdlist1.strong { >++ font-weight: bold; >++} >++td.hdlist1 { >++ vertical-align: top; >++ font-style: normal; >++ padding-right: 0.8em; >++ color: navy; >++} >++td.hdlist2 { >++ vertical-align: top; >++} >++div.hdlist.compact tr { >++ margin: 0; >++ padding-bottom: 0; >++} >++ >++.comment { >++ background: yellow; >++} >++ >++.footnote, .footnoteref { >++ font-size: 0.8em; >++} >++ >++span.footnote, span.footnoteref { >++ vertical-align: super; >++} >++ >++#footnotes { >++ margin: 20px 0 20px 0; >++ padding: 7px 0 0 0; >++} >++ >++#footnotes div.footnote { >++ margin: 0 0 5px 0; >++} >++ >++#footnotes hr { >++ border: none; >++ border-top: 1px solid silver; >++ height: 1px; >++ text-align: left; >++ margin-left: 0; >++ width: 20%; >++ min-width: 100px; >++} >++ >++div.colist td { >++ padding-right: 0.5em; >++ padding-bottom: 0.3em; >++ vertical-align: top; >++} >++div.colist td img { >++ margin-top: 0.3em; >++} >++ >++@media print { >++ #footer-badges { display: none; } >++} >++ >++#toc { >++ margin-bottom: 2.5em; >++} >++ >++#toctitle { >++ color: #527bbd; >++ font-size: 1.1em; >++ font-weight: bold; >++ margin-top: 1.0em; >++ margin-bottom: 0.1em; >++} >++ >++div.toclevel0, div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 { >++ margin-top: 0; >++ margin-bottom: 0; >++} >++div.toclevel2 { >++ margin-left: 2em; >++ font-size: 0.9em; >++} >++div.toclevel3 { >++ margin-left: 4em; >++ font-size: 0.9em; >++} >++div.toclevel4 { >++ margin-left: 6em; >++ font-size: 0.9em; >++} >++ >++span.aqua { color: aqua; } >++span.black { color: black; } >++span.blue { color: blue; } >++span.fuchsia { color: fuchsia; } >++span.gray { color: gray; } >++span.green { color: green; } >++span.lime { color: lime; } >++span.maroon { color: maroon; } >++span.navy { color: navy; } >++span.olive { color: olive; } >++span.purple { color: purple; } >++span.red { color: red; } >++span.silver { color: silver; } >++span.teal { color: teal; } >++span.white { color: white; } >++span.yellow { color: yellow; } >++ >++span.aqua-background { background: aqua; } >++span.black-background { background: black; } >++span.blue-background { background: blue; } >++span.fuchsia-background { background: fuchsia; } >++span.gray-background { background: gray; } >++span.green-background { background: green; } >++span.lime-background { background: lime; } >++span.maroon-background { background: maroon; } >++span.navy-background { background: navy; } >++span.olive-background { background: olive; } >++span.purple-background { background: purple; } >++span.red-background { background: red; } >++span.silver-background { background: silver; } >++span.teal-background { background: teal; } >++span.white-background { background: white; } >++span.yellow-background { background: yellow; } >++ >++span.big { font-size: 2em; } >++span.small { font-size: 0.6em; } >++ >++span.underline { text-decoration: underline; } >++span.overline { text-decoration: overline; } >++span.line-through { text-decoration: line-through; } >++ >++div.unbreakable { page-break-inside: avoid; } >++ >++ >++/* >++ * xhtml11 specific >++ * >++ * */ >++ >++div.tableblock { >++ margin-top: 1.0em; >++ margin-bottom: 1.5em; >++} >++div.tableblock > table { >++ border: 3px solid #527bbd; >++} >++thead, p.table.header { >++ font-weight: bold; >++ color: #527bbd; >++} >++p.table { >++ margin-top: 0; >++} >++/* Because the table frame attribute is overridden by CSS in most browsers. */ >++div.tableblock > table[frame="void"] { >++ border-style: none; >++} >++div.tableblock > table[frame="hsides"] { >++ border-left-style: none; >++ border-right-style: none; >++} >++div.tableblock > table[frame="vsides"] { >++ border-top-style: none; >++ border-bottom-style: none; >++} >++ >++ >++/* >++ * html5 specific >++ * >++ * */ >++ >++table.tableblock { >++ margin-top: 1.0em; >++ margin-bottom: 1.5em; >++} >++thead, p.tableblock.header { >++ font-weight: bold; >++ color: #527bbd; >++} >++p.tableblock { >++ margin-top: 0; >++} >++table.tableblock { >++ border-width: 3px; >++ border-spacing: 0px; >++ border-style: solid; >++ border-color: #527bbd; >++ border-collapse: collapse; >++} >++th.tableblock, td.tableblock { >++ border-width: 1px; >++ padding: 4px; >++ border-style: solid; >++ border-color: #527bbd; >++} >++ >++table.tableblock.frame-topbot { >++ border-left-style: hidden; >++ border-right-style: hidden; >++} >++table.tableblock.frame-sides { >++ border-top-style: hidden; >++ border-bottom-style: hidden; >++} >++table.tableblock.frame-none { >++ border-style: hidden; >++} >++ >++th.tableblock.halign-left, td.tableblock.halign-left { >++ text-align: left; >++} >++th.tableblock.halign-center, td.tableblock.halign-center { >++ text-align: center; >++} >++th.tableblock.halign-right, td.tableblock.halign-right { >++ text-align: right; >++} >++ >++th.tableblock.valign-top, td.tableblock.valign-top { >++ vertical-align: top; >++} >++th.tableblock.valign-middle, td.tableblock.valign-middle { >++ vertical-align: middle; >++} >++th.tableblock.valign-bottom, td.tableblock.valign-bottom { >++ vertical-align: bottom; >++} >++ >++ >++/* >++ * manpage specific >++ * >++ * */ >++ >++body.manpage h1 { >++ padding-top: 0.5em; >++ padding-bottom: 0.5em; >++ border-top: 2px solid silver; >++ border-bottom: 2px solid silver; >++} >++body.manpage h2 { >++ border-style: none; >++} >++body.manpage div.sectionbody { >++ margin-left: 3em; >++} >++ >++@media print { >++ body.manpage div#toc { display: none; } >++} >++ >++ >++</style> >++<script type="text/javascript"> >++/*<![CDATA[*/ >++var asciidoc = { // Namespace. >++ >++///////////////////////////////////////////////////////////////////// >++// Table Of Contents generator >++///////////////////////////////////////////////////////////////////// >++ >++/* Author: Mihai Bazon, September 2002 >++ * http://students.infoiasi.ro/~mishoo >++ * >++ * Table Of Content generator >++ * Version: 0.4 >++ * >++ * Feel free to use this script under the terms of the GNU General Public >++ * License, as long as you do not remove or alter this notice. >++ */ >++ >++ /* modified by Troy D. Hanson, September 2006. License: GPL */ >++ /* modified by Stuart Rackham, 2006, 2009. License: GPL */ >++ >++// toclevels = 1..4. >++toc: function (toclevels) { >++ >++ function getText(el) { >++ var text = ""; >++ for (var i = el.firstChild; i != null; i = i.nextSibling) { >++ if (i.nodeType == 3 /* Node.TEXT_NODE */) // IE doesn't speak constants. >++ text += i.data; >++ else if (i.firstChild != null) >++ text += getText(i); >++ } >++ return text; >++ } >++ >++ function TocEntry(el, text, toclevel) { >++ this.element = el; >++ this.text = text; >++ this.toclevel = toclevel; >++ } >++ >++ function tocEntries(el, toclevels) { >++ var result = new Array; >++ var re = new RegExp('[hH]([1-'+(toclevels+1)+'])'); >++ // Function that scans the DOM tree for header elements (the DOM2 >++ // nodeIterator API would be a better technique but not supported by all >++ // browsers). >++ var iterate = function (el) { >++ for (var i = el.firstChild; i != null; i = i.nextSibling) { >++ if (i.nodeType == 1 /* Node.ELEMENT_NODE */) { >++ var mo = re.exec(i.tagName); >++ if (mo && (i.getAttribute("class") || i.getAttribute("className")) != "float") { >++ result[result.length] = new TocEntry(i, getText(i), mo[1]-1); >++ } >++ iterate(i); >++ } >++ } >++ } >++ iterate(el); >++ return result; >++ } >++ >++ var toc = document.getElementById("toc"); >++ if (!toc) { >++ return; >++ } >++ >++ // Delete existing TOC entries in case we're reloading the TOC. >++ var tocEntriesToRemove = []; >++ var i; >++ for (i = 0; i < toc.childNodes.length; i++) { >++ var entry = toc.childNodes[i]; >++ if (entry.nodeName.toLowerCase() == 'div' >++ && entry.getAttribute("class") >++ && entry.getAttribute("class").match(/^toclevel/)) >++ tocEntriesToRemove.push(entry); >++ } >++ for (i = 0; i < tocEntriesToRemove.length; i++) { >++ toc.removeChild(tocEntriesToRemove[i]); >++ } >++ >++ // Rebuild TOC entries. >++ var entries = tocEntries(document.getElementById("content"), toclevels); >++ for (var i = 0; i < entries.length; ++i) { >++ var entry = entries[i]; >++ if (entry.element.id == "") >++ entry.element.id = "_toc_" + i; >++ var a = document.createElement("a"); >++ a.href = "#" + entry.element.id; >++ a.appendChild(document.createTextNode(entry.text)); >++ var div = document.createElement("div"); >++ div.appendChild(a); >++ div.className = "toclevel" + entry.toclevel; >++ toc.appendChild(div); >++ } >++ if (entries.length == 0) >++ toc.parentNode.removeChild(toc); >++}, >++ >++ >++///////////////////////////////////////////////////////////////////// >++// Footnotes generator >++///////////////////////////////////////////////////////////////////// >++ >++/* Based on footnote generation code from: >++ * http://www.brandspankingnew.net/archive/2005/07/format_footnote.html >++ */ >++ >++footnotes: function () { >++ // Delete existing footnote entries in case we're reloading the footnodes. >++ var i; >++ var noteholder = document.getElementById("footnotes"); >++ if (!noteholder) { >++ return; >++ } >++ var entriesToRemove = []; >++ for (i = 0; i < noteholder.childNodes.length; i++) { >++ var entry = noteholder.childNodes[i]; >++ if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote") >++ entriesToRemove.push(entry); >++ } >++ for (i = 0; i < entriesToRemove.length; i++) { >++ noteholder.removeChild(entriesToRemove[i]); >++ } >++ >++ // Rebuild footnote entries. >++ var cont = document.getElementById("content"); >++ var spans = cont.getElementsByTagName("span"); >++ var refs = {}; >++ var n = 0; >++ for (i=0; i<spans.length; i++) { >++ if (spans[i].className == "footnote") { >++ n++; >++ var note = spans[i].getAttribute("data-note"); >++ if (!note) { >++ // Use [\s\S] in place of . so multi-line matches work. >++ // Because JavaScript has no s (dotall) regex flag. >++ note = spans[i].innerHTML.match(/\s*\[([\s\S]*)]\s*/)[1]; >++ spans[i].innerHTML = >++ "[<a id='_footnoteref_" + n + "' href='#_footnote_" + n + >++ "' title='View footnote' class='footnote'>" + n + "</a>]"; >++ spans[i].setAttribute("data-note", note); >++ } >++ noteholder.innerHTML += >++ "<div class='footnote' id='_footnote_" + n + "'>" + >++ "<a href='#_footnoteref_" + n + "' title='Return to text'>" + >++ n + "</a>. " + note + "</div>"; >++ var id =spans[i].getAttribute("id"); >++ if (id != null) refs["#"+id] = n; >++ } >++ } >++ if (n == 0) >++ noteholder.parentNode.removeChild(noteholder); >++ else { >++ // Process footnoterefs. >++ for (i=0; i<spans.length; i++) { >++ if (spans[i].className == "footnoteref") { >++ var href = spans[i].getElementsByTagName("a")[0].getAttribute("href"); >++ href = href.match(/#.*/)[0]; // Because IE return full URL. >++ n = refs[href]; >++ spans[i].innerHTML = >++ "[<a href='#_footnote_" + n + >++ "' title='View footnote' class='footnote'>" + n + "</a>]"; >++ } >++ } >++ } >++}, >++ >++install: function(toclevels) { >++ var timerId; >++ >++ function reinstall() { >++ asciidoc.footnotes(); >++ if (toclevels) { >++ asciidoc.toc(toclevels); >++ } >++ } >++ >++ function reinstallAndRemoveTimer() { >++ clearInterval(timerId); >++ reinstall(); >++ } >++ >++ timerId = setInterval(reinstall, 500); >++ if (document.addEventListener) >++ document.addEventListener("DOMContentLoaded", reinstallAndRemoveTimer, false); >++ else >++ window.onload = reinstallAndRemoveTimer; >++} >++ >++} >++asciidoc.install(2); >++/*]]>*/ >++</script> >++</head> >++<body class="article"> >++<div id="header"> >++<h1>Newline Tests</h1> >++<div id="toc"> >++ <div id="toctitle">Table of Contents</div> >++ <noscript><p><b>JavaScript must be enabled in your browser to display the table of contents.</b></p></noscript> >++</div> >++</div> >++<div id="content"> >++<div id="preamble"> >++<div class="sectionbody"> >++<div class="paragraph"><p>These are tests about newlines. >++See <a href="https://en.wikipedia.org/wiki/Newline">details</a> on the history.</p></div> >++<div class="admonitionblock"> >++<table><tr> >++<td class="icon"> >++<div class="title">Note</div> >++</td> >++<td class="content">Each section in the source file has the newline style from the >++ description.</td> >++</tr></table> >++</div> >++</div> >++</div> >++<div class="sect1"> >++<h2 id="_unix_newlines">UNIX Newlines</h2> >++<div class="sectionbody"> >++<div class="paragraph"><p>Uses \n.</p></div> >++</div> >++</div> >++<div class="sect1"> >++<h2 id="_dos_newlines">DOS Newlines</h2> >++<div class="sectionbody"> >++<div class="paragraph"><p>Uses \r\n.</p></div> >++</div> >++</div> >++<div class="sect1"> >++<h2 id="_mac_newlines">MAC Newlines</h2> >++<div class="sectionbody"> >++<div class="paragraph"><p>Uses \r.</p></div> >++<div class="paragraph"><p>Only used prior to Mac OS X.</p></div> >++</div> >++</div> >++</div> >++<div id="footnotes"><hr></div> >++<div id="footer"> >++<div id="footer-text"> >++Last updated >++ 2002-11-25 00:37:42 UTC >++</div> >++</div> >++</body> >++</html> >diff -urN asciidoc.orig/files/patch-tests_data_newline-mac-html5.html asciidoc/files/patch-tests_data_newline-mac-html5.html >--- asciidoc.orig/files/patch-tests_data_newline-mac-html5.html 1970-01-01 01:00:00.000000000 +0100 >+++ asciidoc/files/patch-tests_data_newline-mac-html5.html 2020-12-11 18:44:20.152468000 +0100 >@@ -0,0 +1,5 @@ >+--- tests/data/newline-mac-html5.html.orig 2020-12-11 17:05:49 UTC >++++ tests/data/newline-mac-html5.html >+@@ -0,0 +1 @@ >++<!DOCTYPE html><html lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><meta name="generator" content="AsciiDoc test"><title>Newline Tests</title><style type="text/css">/* Shared CSS for AsciiDoc xhtml11 and html5 backends *//* Default font. */body { font-family: Georgia,serif;}/* Title font. */h1, h2, h3, h4, h5, h6,div.title, caption.title,thead, p.table.header,#toctitle,#author, #revnumber, #revdate, #revremark,#footer { font-family: Arial,Helvetica,sans-serif;}body { margin: 1em 5% 1em 5%;}a { color: blue; text-decoration: underline;}a:visited { color: fuchsia;}em { font-style: italic; color: navy;}strong { font-weight: bold; color: #083194;}h1, h2, h3, h4, h5, h6 { color: #527bbd; margin-top: 1.2em; margin-bottom: 0.5em; line-height: 1.3;}h1, h2, h3 { border-bottom: 2px solid silver;}h2 { padding-top: 0.5em;}h3 { float: left;}h3 + * { clear: left;}h5 { font-size: 1.0em;}div.sectionbody { margin-left: 0;}hr { border: 1px solid silver;}p { margin-top: 0.5em; margin-bottom: 0.5em;}ul, ol, li > p { margin-top: 0;}ul > li { color: #aaa; }ul > li > * { color: black; }.monospaced, code, pre { font-family: "Courier New", Courier, monospace; font-size: inherit; color: navy; padding: 0; margin: 0;}pre { white-space: pre-wrap;}#author { color: #527bbd; font-weight: bold; font-size: 1.1em;}#email {}#revnumber, #revdate, #revremark {}#footer { font-size: small; border-top: 2px solid silver; padding-top: 0.5em; margin-top: 4.0em;}#footer-text { float: left; padding-bottom: 0.5em;}#footer-badges { float: right; padding-bottom: 0.5em;}#preamble { margin-top: 1.5em; margin-bottom: 1.5em;}div.imageblock, div.exampleblock, div.verseblock,div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock,div.admonitionblock { margin-top: 1.0em; margin-bottom: 1.5em;}div.admonitionblock { margin-top: 2.0em; margin-bottom: 2.0em; margin-right: 10%; color: #606060;}div.content { /* Block element content. */ padding: 0;}/* Block element titles. */div.title, caption.title { color: #527bbd; font-weight: bold; text-align: left; margin-top: 1.0em; margin-bottom: 0.5em;}div.title + * { margin-top: 0;}td div.title:first-child { margin-top: 0.0em;}div.content div.title:first-child { margin-top: 0.0em;}div.content + div.title { margin-top: 0.0em;}div.sidebarblock > div.content { background: #ffffee; border: 1px solid #dddddd; border-left: 4px solid #f0f0f0; padding: 0.5em;}div.listingblock > div.content { border: 1px solid #dddddd; border-left: 5px solid #f0f0f0; background: #f8f8f8; padding: 0.5em;}div.quoteblock, div.verseblock { padding-left: 1.0em; margin-left: 1.0em; margin-right: 10%; border-left: 5px solid #f0f0f0; color: #888;}div.quoteblock > div.attribution { padding-top: 0.5em; text-align: right;}div.verseblock > pre.content { font-family: inherit; font-size: inherit;}div.verseblock > div.attribution { padding-top: 0.75em; text-align: left;}/* DEPRECATED: Pre version 8.2.7 verse style literal block. */div.verseblock + div.attribution { text-align: left;}div.admonitionblock .icon { vertical-align: top; font-size: 1.1em; font-weight: bold; text-decoration: underline; color: #527bbd; padding-right: 0.5em;}div.admonitionblock td.content { padding-left: 0.5em; border-left: 3px solid #dddddd;}div.exampleblock > div.content { border-left: 3px solid #dddddd; padding-left: 0.5em;}div.imageblock div.content { padding-left: 0; }span.image img { border-style: none; vertical-align: text-bottom; }a.image:visited { color: white; }dl { margin-top: 0.8em; margin-bottom: 0.8em;}dt { margin-top: 0.5em; margin-bottom: 0; font-style: normal; color: navy;}dd > *:first-child { margin-top: 0.1em;}ul, ol { list-style-position: outside;}ol.arabic { list-style-type: decimal;}ol.loweralpha { list-style-type: lower-alpha;}ol.upperalpha { list-style-type: upper-alpha;}ol.lowerroman { list-style-type: lower-roman;}ol.upperroman { list-style-type: upper-roman;}div.compact ul, div.compact ol,div.compact p, div.compact p,div.compact div, div.compact div { margin-top: 0.1em; margin-bottom: 0.1em;}tfoot { font-weight: bold;}td > div.verse { white-space: pre;}div.hdlist { margin-top: 0.8em; margin-bottom: 0.8em;}div.hdlist tr { padding-bottom: 15px;}dt.hdlist1.strong, td.hdlist1.strong { font-weight: bold;}td.hdlist1 { vertical-align: top; font-style: normal; padding-right: 0.8em; color: navy;}td.hdlist2 { vertical-align: top;}div.hdlist.compact tr { margin: 0; padding-bottom: 0;}.comment { background: yellow;}.footnote, .footnoteref { font-size: 0.8em;}span.footnote, span.footnoteref { vertical-align: super;}#footnotes { margin: 20px 0 20px 0; padding: 7px 0 0 0;}#footnotes div.footnote { margin: 0 0 5px 0;}#footnotes hr { border: none; border-top: 1px solid silver; height: 1px; text-align: left; margin-left: 0; width: 20%; min-width: 100px;}div.colist td { padding-right: 0.5em; padding-bottom: 0.3em; vertical-align: top;}div.colist td img { margin-top: 0.3em;}@media print { #footer-badges { display: none; }}#toc { margin-bottom: 2.5em;}#toctitle { color: #527bbd; font-size: 1.1em; font-weight: bold; margin-top: 1.0em; margin-bottom: 0.1em;}div.toclevel0, div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 { margin-top: 0; margin-bottom: 0;}div.toclevel2 { margin-left: 2em; font-size: 0.9em;}div.toclevel3 { margin-left: 4em; font-size: 0.9em;}div.toclevel4 { margin-left: 6em; font-size: 0.9em;}span.aqua { color: aqua; }span.black { color: black; }span.blue { color: blue; }span.fuchsia { color: fuchsia; }span.gray { color: gray; }span.green { color: green; }span.lime { color: lime; }span.maroon { color: maroon; }span.navy { color: navy; }span.olive { color: olive; }span.purple { color: purple; }span.red { color: red; }span.silver { color: silver; }span.teal { color: teal; }span.white { color: white; }span.yellow { color: yellow; }span.aqua-background { background: aqua; }span.black-background { background: black; }span.blue-background { background: blue; }span.fuchsia-background { background: fuchsia; }span.gray-background { background: gray; }span.green-background { background: green; }span.lime-background { background: lime; }span.maroon-background { background: maroon; }span.navy-background { background: navy; }span.olive-background { background: olive; }span.purple-background { background: purple; }span.red-background { background: red; }span.silver-background { background: silver; }span.teal-background { background: teal; }span.white-background { background: white; }span.yellow-background { background: yellow; }span.big { font-size: 2em; }span.small { font-size: 0.6em; }span.underline { text-decoration: underline; }span.overline { text-decoration: overline; }span.line-through { text-decoration: line-through; }div.unbreakable { page-break-inside: avoid; }/* * xhtml11 specific * * */div.tableblock { margin-top: 1.0em; margin-bottom: 1.5em;}div.tableblock > table { border: 3px solid #527bbd;}thead, p.table.header { font-weight: bold; color: #527bbd;}p.table { margin-top: 0;}/* Because the table frame attribute is overridden by CSS in most browsers. */div.tableblock > table[frame="void"] { border-style: none;}div.tableblock > table[frame="hsides"] { border-left-style: none; border-right-style: none;}div.tableblock > table[frame="vsides"] { border-top-style: none; border-bottom-style: none;}/* * html5 specific * * */table.tableblock { margin-top: 1.0em; margin-bottom: 1.5em;}thead, p.tableblock.header { font-weight: bold; color: #527bbd;}p.tableblock { margin-top: 0;}table.tableblock { border-width: 3px; border-spacing: 0px; border-style: solid; border-color: #527bbd; border-collapse: collapse;}th.tableblock, td.tableblock { border-width: 1px; padding: 4px; border-style: solid; border-color: #527bbd;}table.tableblock.frame-topbot { border-left-style: hidden; border-right-style: hidden;}table.tableblock.frame-sides { border-top-style: hidden; border-bottom-style: hidden;}table.tableblock.frame-none { border-style: hidden;}th.tableblock.halign-left, td.tableblock.halign-left { text-align: left;}th.tableblock.halign-center, td.tableblock.halign-center { text-align: center;}th.tableblock.halign-right, td.tableblock.halign-right { text-align: right;}th.tableblock.valign-top, td.tableblock.valign-top { vertical-align: top;}th.tableblock.valign-middle, td.tableblock.valign-middle { vertical-align: middle;}th.tableblock.valign-bottom, td.tableblock.valign-bottom { vertical-align: bottom;}/* * manpage specific * * */body.manpage h1 { padding-top: 0.5em; padding-bottom: 0.5em; border-top: 2px solid silver; border-bottom: 2px solid silver;}body.manpage h2 { border-style: none;}body.manpage div.sectionbody { margin-left: 3em;}@media print { body.manpage div#toc { display: none; }}</style><script type="text/javascript">/*<![CDATA[*/var asciidoc = { // Namespace./////////////////////////////////////////////////////////////////////// Table Of Contents generator//////////////////////////////////////////////////////////////////////* Author: Mihai Bazon, September 2002 * http://students.infoiasi.ro/~mishoo * * Table Of Content generator * Version: 0.4 * * Feel free to use this script under the terms of the GNU General Public * License, as long as you do not remove or alter this notice. */ /* modified by Troy D. Hanson, September 2006. License: GPL */ /* modified by Stuart Rackham, 2006, 2009. License: GPL */// toclevels = 1..4.toc: function (toclevels) { function getText(el) { var text = ""; for (var i = el.firstChild; i != null; i = i.nextSibling) { if (i.nodeType == 3 /* Node.TEXT_NODE */) // IE doesn't speak constants. text += i.data; else if (i.firstChild != null) text += getText(i); } return text; } function TocEntry(el, text, toclevel) { this.element = el; this.text = text; this.toclevel = toclevel; } function tocEntries(el, toclevels) { var result = new Array; var re = new RegExp('[hH]([1-'+(toclevels+1)+'])'); // Function that scans the DOM tree for header elements (the DOM2 // nodeIterator API would be a better technique but not supported by all // browsers). var iterate = function (el) { for (var i = el.firstChild; i != null; i = i.nextSibling) { if (i.nodeType == 1 /* Node.ELEMENT_NODE */) { var mo = re.exec(i.tagName); if (mo && (i.getAttribute("class") || i.getAttribute("className")) != "float") { result[result.length] = new TocEntry(i, getText(i), mo[1]-1); } iterate(i); } } } iterate(el); return result; } var toc = document.getElementById("toc"); if (!toc) { return; } // Delete existing TOC entries in case we're reloading the TOC. var tocEntriesToRemove = []; var i; for (i = 0; i < toc.childNodes.length; i++) { var entry = toc.childNodes[i]; if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") && entry.getAttribute("class").match(/^toclevel/)) tocEntriesToRemove.push(entry); } for (i = 0; i < tocEntriesToRemove.length; i++) { toc.removeChild(tocEntriesToRemove[i]); } // Rebuild TOC entries. var entries = tocEntries(document.getElementById("content"), toclevels); for (var i = 0; i < entries.length; ++i) { var entry = entries[i]; if (entry.element.id == "") entry.element.id = "_toc_" + i; var a = document.createElement("a"); a.href = "#" + entry.element.id; a.appendChild(document.createTextNode(entry.text)); var div = document.createElement("div"); div.appendChild(a); div.className = "toclevel" + entry.toclevel; toc.appendChild(div); } if (entries.length == 0) toc.parentNode.removeChild(toc);},/////////////////////////////////////////////////////////////////////// Footnotes generator//////////////////////////////////////////////////////////////////////* Based on footnote generation code from: * http://www.brandspankingnew.net/archive/2005/07/format_footnote.html */footnotes: function () { // Delete existing footnote entries in case we're reloading the footnodes. var i; var noteholder = document.getElementById("footnotes"); if (!noteholder) { return; } var entriesToRemove = []; for (i = 0; i < noteholder.childNodes.length; i++) { var entry = noteholder.childNodes[i]; if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote") entriesToRemove.push(entry); } for (i = 0; i < entriesToRemove.length; i++) { noteholder.removeChild(entriesToRemove[i]); } // Rebuild footnote entries. var cont = document.getElementById("content"); var spans = cont.getElementsByTagName("span"); var refs = {}; var n = 0; for (i=0; i<spans.length; i++) { if (spans[i].className == "footnote") { n++; var note = spans[i].getAttribute("data-note"); if (!note) { // Use [\s\S] in place of . so multi-line matches work. // Because JavaScript has no s (dotall) regex flag. note = spans[i].innerHTML.match(/\s*\[([\s\S]*)]\s*/)[1]; spans[i].innerHTML = "[<a id='_footnoteref_" + n + "' href='#_footnote_" + n + "' title='View footnote' class='footnote'>" + n + "</a>]"; spans[i].setAttribute("data-note", note); } noteholder.innerHTML += "<div class='footnote' id='_footnote_" + n + "'>" + "<a href='#_footnoteref_" + n + "' title='Return to text'>" + n + "</a>. " + note + "</div>"; var id =spans[i].getAttribute("id"); if (id != null) refs["#"+id] = n; } } if (n == 0) noteholder.parentNode.removeChild(noteholder); else { // Process footnoterefs. for (i=0; i<spans.length; i++) { if (spans[i].className == "footnoteref") { var href = spans[i].getElementsByTagName("a")[0].getAttribute("href"); href = href.match(/#.*/)[0]; // Because IE return full URL. n = refs[href]; spans[i].innerHTML = "[<a href='#_footnote_" + n + "' title='View footnote' class='footnote'>" + n + "</a>]"; } } }},install: function(toclevels) { var timerId; function reinstall() { asciidoc.footnotes(); if (toclevels) { asciidoc.toc(toclevels); } } function reinstallAndRemoveTimer() { clearInterval(timerId); reinstall(); } timerId = setInterval(reinstall, 500); if (document.addEventListener) document.addEventListener("DOMContentLoaded", reinstallAndRemoveTimer, false); else window.onload = reinstallAndRemoveTimer;}}asciidoc.install(2);/*]]>*/</script></head><body class="article"><div id="header"><h1>Newline Tests</h1><div id="toc"> <div id="toctitle">Table of Contents</div> <noscript><p><b>JavaScript must be enabled in your browser to display the table of contents.</b></p></noscript></div></div><div id="content"><div id="preamble"><div class="sectionbody"><div class="paragraph"><p>These are tests about newlines.See <a href="https://en.wikipedia.org/wiki/Newline">details</a> on the history.</p></div><div class="admonitionblock"><table><tr><td class="icon"><div class="title">Note</div></td><td class="content">Each section in the source file has the newline style from the description.</td></tr></table></div></div></div><div class="sect1"><h2 id="_unix_newlines">UNIX Newlines</h2><div class="sectionbody"><div class="paragraph"><p>Uses \n.</p></div></div></div><div class="sect1"><h2 id="_dos_newlines">DOS Newlines</h2><div class="sectionbody"><div class="paragraph"><p>Uses \r\n.</p></div></div></div><div class="sect1"><h2 id="_mac_newlines">MAC Newlines</h2><div class="sectionbody"><div class="paragraph"><p>Uses \r.</p></div><div class="paragraph"><p>Only used prior to Mac OS X.</p></div></div></div></div><div id="footnotes"><hr></div><div id="footer"><div id="footer-text">Last updated 2002-11-25 00:37:42 UTC</div></div></body></html> >+\ No newline at end of file >diff -urN asciidoc.orig/files/patch-tests_data_newline-unix-html5.html asciidoc/files/patch-tests_data_newline-unix-html5.html >--- asciidoc.orig/files/patch-tests_data_newline-unix-html5.html 1970-01-01 01:00:00.000000000 +0100 >+++ asciidoc/files/patch-tests_data_newline-unix-html5.html 2020-12-11 18:44:20.151781000 +0100 >@@ -0,0 +1,788 @@ >+--- tests/data/newline-unix-html5.html.orig 2020-12-11 17:06:08 UTC >++++ tests/data/newline-unix-html5.html >+@@ -0,0 +1,785 @@ >++<!DOCTYPE html> >++<html lang="en"> >++<head> >++<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> >++<meta name="generator" content="AsciiDoc test"> >++<title>Newline Tests</title> >++<style type="text/css"> >++/* Shared CSS for AsciiDoc xhtml11 and html5 backends */ >++ >++/* Default font. */ >++body { >++ font-family: Georgia,serif; >++} >++ >++/* Title font. */ >++h1, h2, h3, h4, h5, h6, >++div.title, caption.title, >++thead, p.table.header, >++#toctitle, >++#author, #revnumber, #revdate, #revremark, >++#footer { >++ font-family: Arial,Helvetica,sans-serif; >++} >++ >++body { >++ margin: 1em 5% 1em 5%; >++} >++ >++a { >++ color: blue; >++ text-decoration: underline; >++} >++a:visited { >++ color: fuchsia; >++} >++ >++em { >++ font-style: italic; >++ color: navy; >++} >++ >++strong { >++ font-weight: bold; >++ color: #083194; >++} >++ >++h1, h2, h3, h4, h5, h6 { >++ color: #527bbd; >++ margin-top: 1.2em; >++ margin-bottom: 0.5em; >++ line-height: 1.3; >++} >++ >++h1, h2, h3 { >++ border-bottom: 2px solid silver; >++} >++h2 { >++ padding-top: 0.5em; >++} >++h3 { >++ float: left; >++} >++h3 + * { >++ clear: left; >++} >++h5 { >++ font-size: 1.0em; >++} >++ >++div.sectionbody { >++ margin-left: 0; >++} >++ >++hr { >++ border: 1px solid silver; >++} >++ >++p { >++ margin-top: 0.5em; >++ margin-bottom: 0.5em; >++} >++ >++ul, ol, li > p { >++ margin-top: 0; >++} >++ul > li { color: #aaa; } >++ul > li > * { color: black; } >++ >++.monospaced, code, pre { >++ font-family: "Courier New", Courier, monospace; >++ font-size: inherit; >++ color: navy; >++ padding: 0; >++ margin: 0; >++} >++pre { >++ white-space: pre-wrap; >++} >++ >++#author { >++ color: #527bbd; >++ font-weight: bold; >++ font-size: 1.1em; >++} >++#email { >++} >++#revnumber, #revdate, #revremark { >++} >++ >++#footer { >++ font-size: small; >++ border-top: 2px solid silver; >++ padding-top: 0.5em; >++ margin-top: 4.0em; >++} >++#footer-text { >++ float: left; >++ padding-bottom: 0.5em; >++} >++#footer-badges { >++ float: right; >++ padding-bottom: 0.5em; >++} >++ >++#preamble { >++ margin-top: 1.5em; >++ margin-bottom: 1.5em; >++} >++div.imageblock, div.exampleblock, div.verseblock, >++div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock, >++div.admonitionblock { >++ margin-top: 1.0em; >++ margin-bottom: 1.5em; >++} >++div.admonitionblock { >++ margin-top: 2.0em; >++ margin-bottom: 2.0em; >++ margin-right: 10%; >++ color: #606060; >++} >++ >++div.content { /* Block element content. */ >++ padding: 0; >++} >++ >++/* Block element titles. */ >++div.title, caption.title { >++ color: #527bbd; >++ font-weight: bold; >++ text-align: left; >++ margin-top: 1.0em; >++ margin-bottom: 0.5em; >++} >++div.title + * { >++ margin-top: 0; >++} >++ >++td div.title:first-child { >++ margin-top: 0.0em; >++} >++div.content div.title:first-child { >++ margin-top: 0.0em; >++} >++div.content + div.title { >++ margin-top: 0.0em; >++} >++ >++div.sidebarblock > div.content { >++ background: #ffffee; >++ border: 1px solid #dddddd; >++ border-left: 4px solid #f0f0f0; >++ padding: 0.5em; >++} >++ >++div.listingblock > div.content { >++ border: 1px solid #dddddd; >++ border-left: 5px solid #f0f0f0; >++ background: #f8f8f8; >++ padding: 0.5em; >++} >++ >++div.quoteblock, div.verseblock { >++ padding-left: 1.0em; >++ margin-left: 1.0em; >++ margin-right: 10%; >++ border-left: 5px solid #f0f0f0; >++ color: #888; >++} >++ >++div.quoteblock > div.attribution { >++ padding-top: 0.5em; >++ text-align: right; >++} >++ >++div.verseblock > pre.content { >++ font-family: inherit; >++ font-size: inherit; >++} >++div.verseblock > div.attribution { >++ padding-top: 0.75em; >++ text-align: left; >++} >++/* DEPRECATED: Pre version 8.2.7 verse style literal block. */ >++div.verseblock + div.attribution { >++ text-align: left; >++} >++ >++div.admonitionblock .icon { >++ vertical-align: top; >++ font-size: 1.1em; >++ font-weight: bold; >++ text-decoration: underline; >++ color: #527bbd; >++ padding-right: 0.5em; >++} >++div.admonitionblock td.content { >++ padding-left: 0.5em; >++ border-left: 3px solid #dddddd; >++} >++ >++div.exampleblock > div.content { >++ border-left: 3px solid #dddddd; >++ padding-left: 0.5em; >++} >++ >++div.imageblock div.content { padding-left: 0; } >++span.image img { border-style: none; vertical-align: text-bottom; } >++a.image:visited { color: white; } >++ >++dl { >++ margin-top: 0.8em; >++ margin-bottom: 0.8em; >++} >++dt { >++ margin-top: 0.5em; >++ margin-bottom: 0; >++ font-style: normal; >++ color: navy; >++} >++dd > *:first-child { >++ margin-top: 0.1em; >++} >++ >++ul, ol { >++ list-style-position: outside; >++} >++ol.arabic { >++ list-style-type: decimal; >++} >++ol.loweralpha { >++ list-style-type: lower-alpha; >++} >++ol.upperalpha { >++ list-style-type: upper-alpha; >++} >++ol.lowerroman { >++ list-style-type: lower-roman; >++} >++ol.upperroman { >++ list-style-type: upper-roman; >++} >++ >++div.compact ul, div.compact ol, >++div.compact p, div.compact p, >++div.compact div, div.compact div { >++ margin-top: 0.1em; >++ margin-bottom: 0.1em; >++} >++ >++tfoot { >++ font-weight: bold; >++} >++td > div.verse { >++ white-space: pre; >++} >++ >++div.hdlist { >++ margin-top: 0.8em; >++ margin-bottom: 0.8em; >++} >++div.hdlist tr { >++ padding-bottom: 15px; >++} >++dt.hdlist1.strong, td.hdlist1.strong { >++ font-weight: bold; >++} >++td.hdlist1 { >++ vertical-align: top; >++ font-style: normal; >++ padding-right: 0.8em; >++ color: navy; >++} >++td.hdlist2 { >++ vertical-align: top; >++} >++div.hdlist.compact tr { >++ margin: 0; >++ padding-bottom: 0; >++} >++ >++.comment { >++ background: yellow; >++} >++ >++.footnote, .footnoteref { >++ font-size: 0.8em; >++} >++ >++span.footnote, span.footnoteref { >++ vertical-align: super; >++} >++ >++#footnotes { >++ margin: 20px 0 20px 0; >++ padding: 7px 0 0 0; >++} >++ >++#footnotes div.footnote { >++ margin: 0 0 5px 0; >++} >++ >++#footnotes hr { >++ border: none; >++ border-top: 1px solid silver; >++ height: 1px; >++ text-align: left; >++ margin-left: 0; >++ width: 20%; >++ min-width: 100px; >++} >++ >++div.colist td { >++ padding-right: 0.5em; >++ padding-bottom: 0.3em; >++ vertical-align: top; >++} >++div.colist td img { >++ margin-top: 0.3em; >++} >++ >++@media print { >++ #footer-badges { display: none; } >++} >++ >++#toc { >++ margin-bottom: 2.5em; >++} >++ >++#toctitle { >++ color: #527bbd; >++ font-size: 1.1em; >++ font-weight: bold; >++ margin-top: 1.0em; >++ margin-bottom: 0.1em; >++} >++ >++div.toclevel0, div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 { >++ margin-top: 0; >++ margin-bottom: 0; >++} >++div.toclevel2 { >++ margin-left: 2em; >++ font-size: 0.9em; >++} >++div.toclevel3 { >++ margin-left: 4em; >++ font-size: 0.9em; >++} >++div.toclevel4 { >++ margin-left: 6em; >++ font-size: 0.9em; >++} >++ >++span.aqua { color: aqua; } >++span.black { color: black; } >++span.blue { color: blue; } >++span.fuchsia { color: fuchsia; } >++span.gray { color: gray; } >++span.green { color: green; } >++span.lime { color: lime; } >++span.maroon { color: maroon; } >++span.navy { color: navy; } >++span.olive { color: olive; } >++span.purple { color: purple; } >++span.red { color: red; } >++span.silver { color: silver; } >++span.teal { color: teal; } >++span.white { color: white; } >++span.yellow { color: yellow; } >++ >++span.aqua-background { background: aqua; } >++span.black-background { background: black; } >++span.blue-background { background: blue; } >++span.fuchsia-background { background: fuchsia; } >++span.gray-background { background: gray; } >++span.green-background { background: green; } >++span.lime-background { background: lime; } >++span.maroon-background { background: maroon; } >++span.navy-background { background: navy; } >++span.olive-background { background: olive; } >++span.purple-background { background: purple; } >++span.red-background { background: red; } >++span.silver-background { background: silver; } >++span.teal-background { background: teal; } >++span.white-background { background: white; } >++span.yellow-background { background: yellow; } >++ >++span.big { font-size: 2em; } >++span.small { font-size: 0.6em; } >++ >++span.underline { text-decoration: underline; } >++span.overline { text-decoration: overline; } >++span.line-through { text-decoration: line-through; } >++ >++div.unbreakable { page-break-inside: avoid; } >++ >++ >++/* >++ * xhtml11 specific >++ * >++ * */ >++ >++div.tableblock { >++ margin-top: 1.0em; >++ margin-bottom: 1.5em; >++} >++div.tableblock > table { >++ border: 3px solid #527bbd; >++} >++thead, p.table.header { >++ font-weight: bold; >++ color: #527bbd; >++} >++p.table { >++ margin-top: 0; >++} >++/* Because the table frame attribute is overridden by CSS in most browsers. */ >++div.tableblock > table[frame="void"] { >++ border-style: none; >++} >++div.tableblock > table[frame="hsides"] { >++ border-left-style: none; >++ border-right-style: none; >++} >++div.tableblock > table[frame="vsides"] { >++ border-top-style: none; >++ border-bottom-style: none; >++} >++ >++ >++/* >++ * html5 specific >++ * >++ * */ >++ >++table.tableblock { >++ margin-top: 1.0em; >++ margin-bottom: 1.5em; >++} >++thead, p.tableblock.header { >++ font-weight: bold; >++ color: #527bbd; >++} >++p.tableblock { >++ margin-top: 0; >++} >++table.tableblock { >++ border-width: 3px; >++ border-spacing: 0px; >++ border-style: solid; >++ border-color: #527bbd; >++ border-collapse: collapse; >++} >++th.tableblock, td.tableblock { >++ border-width: 1px; >++ padding: 4px; >++ border-style: solid; >++ border-color: #527bbd; >++} >++ >++table.tableblock.frame-topbot { >++ border-left-style: hidden; >++ border-right-style: hidden; >++} >++table.tableblock.frame-sides { >++ border-top-style: hidden; >++ border-bottom-style: hidden; >++} >++table.tableblock.frame-none { >++ border-style: hidden; >++} >++ >++th.tableblock.halign-left, td.tableblock.halign-left { >++ text-align: left; >++} >++th.tableblock.halign-center, td.tableblock.halign-center { >++ text-align: center; >++} >++th.tableblock.halign-right, td.tableblock.halign-right { >++ text-align: right; >++} >++ >++th.tableblock.valign-top, td.tableblock.valign-top { >++ vertical-align: top; >++} >++th.tableblock.valign-middle, td.tableblock.valign-middle { >++ vertical-align: middle; >++} >++th.tableblock.valign-bottom, td.tableblock.valign-bottom { >++ vertical-align: bottom; >++} >++ >++ >++/* >++ * manpage specific >++ * >++ * */ >++ >++body.manpage h1 { >++ padding-top: 0.5em; >++ padding-bottom: 0.5em; >++ border-top: 2px solid silver; >++ border-bottom: 2px solid silver; >++} >++body.manpage h2 { >++ border-style: none; >++} >++body.manpage div.sectionbody { >++ margin-left: 3em; >++} >++ >++@media print { >++ body.manpage div#toc { display: none; } >++} >++ >++ >++</style> >++<script type="text/javascript"> >++/*<![CDATA[*/ >++var asciidoc = { // Namespace. >++ >++///////////////////////////////////////////////////////////////////// >++// Table Of Contents generator >++///////////////////////////////////////////////////////////////////// >++ >++/* Author: Mihai Bazon, September 2002 >++ * http://students.infoiasi.ro/~mishoo >++ * >++ * Table Of Content generator >++ * Version: 0.4 >++ * >++ * Feel free to use this script under the terms of the GNU General Public >++ * License, as long as you do not remove or alter this notice. >++ */ >++ >++ /* modified by Troy D. Hanson, September 2006. License: GPL */ >++ /* modified by Stuart Rackham, 2006, 2009. License: GPL */ >++ >++// toclevels = 1..4. >++toc: function (toclevels) { >++ >++ function getText(el) { >++ var text = ""; >++ for (var i = el.firstChild; i != null; i = i.nextSibling) { >++ if (i.nodeType == 3 /* Node.TEXT_NODE */) // IE doesn't speak constants. >++ text += i.data; >++ else if (i.firstChild != null) >++ text += getText(i); >++ } >++ return text; >++ } >++ >++ function TocEntry(el, text, toclevel) { >++ this.element = el; >++ this.text = text; >++ this.toclevel = toclevel; >++ } >++ >++ function tocEntries(el, toclevels) { >++ var result = new Array; >++ var re = new RegExp('[hH]([1-'+(toclevels+1)+'])'); >++ // Function that scans the DOM tree for header elements (the DOM2 >++ // nodeIterator API would be a better technique but not supported by all >++ // browsers). >++ var iterate = function (el) { >++ for (var i = el.firstChild; i != null; i = i.nextSibling) { >++ if (i.nodeType == 1 /* Node.ELEMENT_NODE */) { >++ var mo = re.exec(i.tagName); >++ if (mo && (i.getAttribute("class") || i.getAttribute("className")) != "float") { >++ result[result.length] = new TocEntry(i, getText(i), mo[1]-1); >++ } >++ iterate(i); >++ } >++ } >++ } >++ iterate(el); >++ return result; >++ } >++ >++ var toc = document.getElementById("toc"); >++ if (!toc) { >++ return; >++ } >++ >++ // Delete existing TOC entries in case we're reloading the TOC. >++ var tocEntriesToRemove = []; >++ var i; >++ for (i = 0; i < toc.childNodes.length; i++) { >++ var entry = toc.childNodes[i]; >++ if (entry.nodeName.toLowerCase() == 'div' >++ && entry.getAttribute("class") >++ && entry.getAttribute("class").match(/^toclevel/)) >++ tocEntriesToRemove.push(entry); >++ } >++ for (i = 0; i < tocEntriesToRemove.length; i++) { >++ toc.removeChild(tocEntriesToRemove[i]); >++ } >++ >++ // Rebuild TOC entries. >++ var entries = tocEntries(document.getElementById("content"), toclevels); >++ for (var i = 0; i < entries.length; ++i) { >++ var entry = entries[i]; >++ if (entry.element.id == "") >++ entry.element.id = "_toc_" + i; >++ var a = document.createElement("a"); >++ a.href = "#" + entry.element.id; >++ a.appendChild(document.createTextNode(entry.text)); >++ var div = document.createElement("div"); >++ div.appendChild(a); >++ div.className = "toclevel" + entry.toclevel; >++ toc.appendChild(div); >++ } >++ if (entries.length == 0) >++ toc.parentNode.removeChild(toc); >++}, >++ >++ >++///////////////////////////////////////////////////////////////////// >++// Footnotes generator >++///////////////////////////////////////////////////////////////////// >++ >++/* Based on footnote generation code from: >++ * http://www.brandspankingnew.net/archive/2005/07/format_footnote.html >++ */ >++ >++footnotes: function () { >++ // Delete existing footnote entries in case we're reloading the footnodes. >++ var i; >++ var noteholder = document.getElementById("footnotes"); >++ if (!noteholder) { >++ return; >++ } >++ var entriesToRemove = []; >++ for (i = 0; i < noteholder.childNodes.length; i++) { >++ var entry = noteholder.childNodes[i]; >++ if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote") >++ entriesToRemove.push(entry); >++ } >++ for (i = 0; i < entriesToRemove.length; i++) { >++ noteholder.removeChild(entriesToRemove[i]); >++ } >++ >++ // Rebuild footnote entries. >++ var cont = document.getElementById("content"); >++ var spans = cont.getElementsByTagName("span"); >++ var refs = {}; >++ var n = 0; >++ for (i=0; i<spans.length; i++) { >++ if (spans[i].className == "footnote") { >++ n++; >++ var note = spans[i].getAttribute("data-note"); >++ if (!note) { >++ // Use [\s\S] in place of . so multi-line matches work. >++ // Because JavaScript has no s (dotall) regex flag. >++ note = spans[i].innerHTML.match(/\s*\[([\s\S]*)]\s*/)[1]; >++ spans[i].innerHTML = >++ "[<a id='_footnoteref_" + n + "' href='#_footnote_" + n + >++ "' title='View footnote' class='footnote'>" + n + "</a>]"; >++ spans[i].setAttribute("data-note", note); >++ } >++ noteholder.innerHTML += >++ "<div class='footnote' id='_footnote_" + n + "'>" + >++ "<a href='#_footnoteref_" + n + "' title='Return to text'>" + >++ n + "</a>. " + note + "</div>"; >++ var id =spans[i].getAttribute("id"); >++ if (id != null) refs["#"+id] = n; >++ } >++ } >++ if (n == 0) >++ noteholder.parentNode.removeChild(noteholder); >++ else { >++ // Process footnoterefs. >++ for (i=0; i<spans.length; i++) { >++ if (spans[i].className == "footnoteref") { >++ var href = spans[i].getElementsByTagName("a")[0].getAttribute("href"); >++ href = href.match(/#.*/)[0]; // Because IE return full URL. >++ n = refs[href]; >++ spans[i].innerHTML = >++ "[<a href='#_footnote_" + n + >++ "' title='View footnote' class='footnote'>" + n + "</a>]"; >++ } >++ } >++ } >++}, >++ >++install: function(toclevels) { >++ var timerId; >++ >++ function reinstall() { >++ asciidoc.footnotes(); >++ if (toclevels) { >++ asciidoc.toc(toclevels); >++ } >++ } >++ >++ function reinstallAndRemoveTimer() { >++ clearInterval(timerId); >++ reinstall(); >++ } >++ >++ timerId = setInterval(reinstall, 500); >++ if (document.addEventListener) >++ document.addEventListener("DOMContentLoaded", reinstallAndRemoveTimer, false); >++ else >++ window.onload = reinstallAndRemoveTimer; >++} >++ >++} >++asciidoc.install(2); >++/*]]>*/ >++</script> >++</head> >++<body class="article"> >++<div id="header"> >++<h1>Newline Tests</h1> >++<div id="toc"> >++ <div id="toctitle">Table of Contents</div> >++ <noscript><p><b>JavaScript must be enabled in your browser to display the table of contents.</b></p></noscript> >++</div> >++</div> >++<div id="content"> >++<div id="preamble"> >++<div class="sectionbody"> >++<div class="paragraph"><p>These are tests about newlines. >++See <a href="https://en.wikipedia.org/wiki/Newline">details</a> on the history.</p></div> >++<div class="admonitionblock"> >++<table><tr> >++<td class="icon"> >++<div class="title">Note</div> >++</td> >++<td class="content">Each section in the source file has the newline style from the >++ description.</td> >++</tr></table> >++</div> >++</div> >++</div> >++<div class="sect1"> >++<h2 id="_unix_newlines">UNIX Newlines</h2> >++<div class="sectionbody"> >++<div class="paragraph"><p>Uses \n.</p></div> >++</div> >++</div> >++<div class="sect1"> >++<h2 id="_dos_newlines">DOS Newlines</h2> >++<div class="sectionbody"> >++<div class="paragraph"><p>Uses \r\n.</p></div> >++</div> >++</div> >++<div class="sect1"> >++<h2 id="_mac_newlines">MAC Newlines</h2> >++<div class="sectionbody"> >++<div class="paragraph"><p>Uses \r.</p></div> >++<div class="paragraph"><p>Only used prior to Mac OS X.</p></div> >++</div> >++</div> >++</div> >++<div id="footnotes"><hr></div> >++<div id="footer"> >++<div id="footer-text"> >++Last updated >++ 2002-11-25 00:37:42 UTC >++</div> >++</div> >++</body> >++</html> >diff -urN asciidoc.orig/files/patch-tests_data_newline.txt asciidoc/files/patch-tests_data_newline.txt >--- asciidoc.orig/files/patch-tests_data_newline.txt 1970-01-01 01:00:00.000000000 +0100 >+++ asciidoc/files/patch-tests_data_newline.txt 2020-12-11 18:44:20.151047000 +0100 >@@ -0,0 +1,21 @@ >+--- tests/data/newline.txt.orig 2020-12-11 17:06:15 UTC >++++ tests/data/newline.txt >+@@ -0,0 +1,17 @@ >++= Newline Tests >++ >++These are tests about newlines. >++See https://en.wikipedia.org/wiki/Newline[details] on the history. >++ >++NOTE: Each section in the source file has the newline style from the >++ description. >++ >++== UNIX Newlines >++ >++Uses \n. >++ >++== DOS Newlines >++ >++Uses \r\n. >++ >++== MAC NewlinesUses \r.Only used prior to Mac OS X. >+\ No newline at end of file >diff -urN asciidoc.orig/files/patch-tests_data_testasciidoc.conf asciidoc/files/patch-tests_data_testasciidoc.conf >--- asciidoc.orig/files/patch-tests_data_testasciidoc.conf 1970-01-01 01:00:00.000000000 +0100 >+++ asciidoc/files/patch-tests_data_testasciidoc.conf 2020-12-11 18:44:20.150990000 +0100 >@@ -0,0 +1,959 @@ >+--- tests/data/testasciidoc.conf.orig 2020-12-11 17:06:22 UTC >++++ tests/data/testasciidoc.conf >+@@ -0,0 +1,956 @@ >++% globals >++{ >++ 'datadir': 'data', >++} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Test cases >++ >++% requires >++['source-highlight'] >++ >++% source >++data/testcases.txt >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Filters >++ >++% requires >++['dot', 'lilypond'] >++ >++% source >++data/filters-test.txt >++ >++% artifacts >++['data/graphviz1.png', 'data/graphviz2.png', 'data/music1.md5', 'data/music1.png', 'data/music2.md5', 'data/music2.png'] >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Tables >++ >++% requires >++['source-highlight'] >++ >++% source >++../website/newtables.txt >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Old tables >++ >++% source >++data/oldtables.txt >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Source highlighter >++ >++% requires >++['source-highlight'] >++ >++% source >++../doc/source-highlight-filter.txt >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Example article >++ >++% options >++['--section-numbers', ('--attribute','css-signature=article-test')] >++ >++% attributes >++# So document date in footer doesn't generate an error. >++{'docdate':None} >++ >++% source >++../doc/article.txt >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Example article with embedded images (data URIs) >++ >++% source >++../doc/article.txt >++ >++% name >++article-data-uri >++ >++% backends >++['html4','xhtml11','html5'] >++ >++% options >++['--section-numbers'] >++ >++% attributes >++{'docdate':None, 'data-uri':True, 'icons':True, 'imagesdir': '../', 'iconsdir': '../images/icons'} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Example article with included docinfo file. >++ >++% source >++../doc/article.txt >++ >++% name >++article-docinfo >++ >++% backends >++['docbook','docbook5'] >++ >++% options >++['--section-numbers'] >++ >++% attributes >++{'docdate':None, 'docinfo':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Example book >++ >++% options >++['--section-numbers'] >++ >++% source >++../doc/book.txt >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Example multi-part book >++ >++% options >++['--section-numbers'] >++ >++% source >++../doc/book-multi.txt >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Man page >++ >++% attributes >++# So document date in footer doesn't generate an error. >++{'docdate':None} >++ >++% source >++../doc/asciidoc.1.txt >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Example slideshow >++ >++% backends >++['slidy'] >++ >++% requires >++['source-highlight'] >++ >++% attributes >++{'imagesdir': '../../', 'iconsdir': '../../images/icons'} >++ >++% source >++data/slidy-example.txt >++ >++% artifacts >++['../slidy-example__1.md5','../slidy-example__1.png'] >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++ASCIIMathML >++ >++% attributes >++{'asciimath':'','deprecated-quotes':''} >++ >++% backends >++['xhtml11','html5'] >++ >++% source >++../doc/asciimathml.txt >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++LaTeXMathML >++ >++% attributes >++{'latexmath':''} >++ >++% backends >++['xhtml11','html5'] >++ >++% source >++../doc/latexmathml.txt >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++LaTeX Math >++ >++% backends >++['docbook','docbook5'] >++ >++% source >++../doc/latexmath.txt >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++LaTeX Filter >++ >++% requires >++['latex', 'dvipng'] >++ >++% source >++../doc/latex-filter.txt >++ >++% artifacts >++['../doc/latex-filter__1.md5','../doc/latex-filter__1.svg','../doc/latex-filter__2.md5','../doc/latex-filter__2.svg','../doc/latex1.md5','../doc/latex1.svg','../doc/latex2.md5','../doc/latex2.png','../doc/latex3.md5','../doc/latex3.svg'] >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++!User Guide >++ >++% options >++['--section-numbers'] >++ >++% source >++../doc/asciidoc.txt >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++UTF-8 Examples >++ >++% source >++data/utf8-examples.txt >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Additional Open Block and Paragraph styles >++ >++% requires >++['source-highlight', 'dot'] >++ >++% source >++data/open-block-test.txt >++ >++% artifacts >++['data/open-block-test__1.md5','data/open-block-test__1.png','data/open-block-test__2.png','data/open-block-test__3.md5','data/open-block-test__3.png'] >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++English language file (article) >++ >++% backends >++['docbook','docbook5','xhtml11','html4','html5'] >++ >++% name >++lang-en-article-test >++ >++% source >++data/lang-en-test.txt >++ >++% options >++[('--doctype','article')] >++ >++% attributes >++{'toc':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++English language file (book) >++ >++% backends >++['docbook','docbook5','xhtml11','html4','html5'] >++ >++% name >++lang-en-book-test >++ >++% source >++data/lang-en-test.txt >++ >++% options >++[('--doctype','book')] >++ >++% attributes >++{'toc':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++English language file (manpage) >++ >++% backends >++['docbook','docbook5'] >++ >++% source >++data/lang-en-man-test.txt >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Russian language file (article) >++ >++% backends >++['docbook','docbook5','xhtml11','html4','html5'] >++ >++% name >++lang-ru-article-test >++ >++% source >++data/lang-ru-test.txt >++ >++% options >++[('--doctype','article')] >++ >++% attributes >++{'toc':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Russian language file (book) >++ >++% backends >++['docbook','docbook5','xhtml11','html4','html5'] >++ >++% name >++lang-ru-book-test >++ >++% source >++data/lang-ru-test.txt >++ >++% options >++[('--doctype','book')] >++ >++% attributes >++{'toc':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Russian language file (manpage) >++ >++% backends >++['docbook','docbook5'] >++ >++% source >++data/lang-ru-man-test.txt >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++French language file (article) >++ >++% backends >++['docbook','docbook5','xhtml11','html4','html5'] >++ >++% name >++lang-fr-article-test >++ >++% source >++data/lang-fr-test.txt >++ >++% options >++[('--doctype','article')] >++ >++% attributes >++{'toc':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++French language file (book) >++ >++% backends >++['docbook','docbook5','xhtml11','html4','html5'] >++ >++% name >++lang-fr-book-test >++ >++% source >++data/lang-fr-test.txt >++ >++% options >++[('--doctype','book')] >++ >++% attributes >++{'toc':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++French language file (manpage) >++ >++% backends >++['docbook','docbook5'] >++ >++% source >++data/lang-fr-man-test.txt >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++German language file (article) >++ >++% backends >++['docbook','docbook5','xhtml11','html4','html5'] >++ >++% name >++lang-de-article-test >++ >++% source >++data/lang-de-test.txt >++ >++% options >++[('--doctype','article')] >++ >++% attributes >++{'toc':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++German language file (book) >++ >++% backends >++['docbook','docbook5','xhtml11','html4','html5'] >++ >++% name >++lang-de-book-test >++ >++% source >++data/lang-de-test.txt >++ >++% options >++[('--doctype','book')] >++ >++% attributes >++{'toc':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++German language file (manpage) >++ >++% backends >++['docbook','docbook5'] >++ >++% source >++data/lang-de-man-test.txt >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Hungarian language file (article) >++ >++% backends >++['docbook','docbook5','xhtml11','html4','html5'] >++ >++% name >++lang-hu-article-test >++ >++% source >++data/lang-hu-test.txt >++ >++% options >++[('--doctype','article')] >++ >++% attributes >++{'toc':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Hungarian language file (book) >++ >++% backends >++['docbook','docbook5','xhtml11','html4','html5'] >++ >++% name >++lang-hu-book-test >++ >++% source >++data/lang-hu-test.txt >++ >++% options >++[('--doctype','book')] >++ >++% attributes >++{'toc':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Hungarian language file (manpage) >++ >++% backends >++['docbook','docbook5'] >++ >++% source >++data/lang-hu-man-test.txt >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Spanish language file (article) >++ >++% backends >++['docbook','docbook5','xhtml11','html4','html5'] >++ >++% name >++lang-es-article-test >++ >++% source >++data/lang-es-test.txt >++ >++% options >++[('--doctype','article')] >++ >++% attributes >++{'toc':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Spanish language file (book) >++ >++% backends >++['docbook','docbook5','xhtml11','html4','html5'] >++ >++% name >++lang-es-book-test >++ >++% source >++data/lang-es-test.txt >++ >++% options >++[('--doctype','book')] >++ >++% attributes >++{'toc':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Spanish language file (manpage) >++ >++% backends >++['docbook','docbook5'] >++ >++% source >++data/lang-es-man-test.txt >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Brazilian Portuguese language file (article) >++ >++% backends >++['docbook','docbook5','xhtml11','html4','html5'] >++ >++% name >++lang-pt-BR-article-test >++ >++% source >++data/lang-pt-BR-test.txt >++ >++% options >++[('--doctype','article')] >++ >++% attributes >++{'toc':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Brazilian Portuguese language file (book) >++ >++% backends >++['docbook','docbook5','xhtml11','html4','html5'] >++ >++% name >++lang-pt-BR-book-test >++ >++% source >++data/lang-pt-BR-test.txt >++ >++% options >++[('--doctype','book')] >++ >++% attributes >++{'toc':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Brazilian Portuguese language file (manpage) >++ >++% backends >++['docbook','docbook5'] >++ >++% source >++data/lang-pt-BR-man-test.txt >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Ukrainian language file (article) >++ >++% backends >++['docbook','docbook5','xhtml11','html4','html5'] >++ >++% name >++lang-uk-article-test >++ >++% source >++data/lang-uk-test.txt >++ >++% options >++[('--doctype','article')] >++ >++% attributes >++{'toc':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Ukrainian language file (book) >++ >++% backends >++['docbook','docbook5','xhtml11','html4','html5'] >++ >++% name >++lang-uk-book-test >++ >++% source >++data/lang-uk-test.txt >++ >++% options >++[('--doctype','book')] >++ >++% attributes >++{'toc':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Ukrainian language file (manpage) >++ >++% backends >++['docbook','docbook5'] >++ >++% source >++data/lang-uk-man-test.txt >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Dutch language file (article) >++ >++% backends >++['docbook','docbook5','xhtml11','html4','html5'] >++ >++% name >++lang-nl-article-test >++ >++% source >++data/lang-nl-test.txt >++ >++% options >++[('--doctype','article')] >++ >++% attributes >++{'toc':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Dutch language file (book) >++ >++% backends >++['docbook','docbook5','xhtml11','html4','html5'] >++ >++% name >++lang-nl-book-test >++ >++% source >++data/lang-nl-test.txt >++ >++% options >++[('--doctype','book')] >++ >++% attributes >++{'toc':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Dutch language file (manpage) >++ >++% backends >++['docbook','docbook5'] >++ >++% source >++data/lang-nl-man-test.txt >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Italian language file (article) >++ >++% backends >++['docbook','docbook5','xhtml11','html4','html5'] >++ >++% name >++lang-it-article-test >++ >++% source >++data/lang-it-test.txt >++ >++% options >++[('--doctype','article')] >++ >++% attributes >++{'toc':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Italian language file (book) >++ >++% backends >++['docbook','docbook5','xhtml11','html4','html5'] >++ >++% name >++lang-it-book-test >++ >++% source >++data/lang-it-test.txt >++ >++% options >++[('--doctype','book')] >++ >++% attributes >++{'toc':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Italian language file (manpage) >++ >++% backends >++['docbook','docbook5'] >++ >++% source >++data/lang-it-man-test.txt >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Czech language file (article) >++ >++% backends >++['docbook','docbook5','xhtml11','html4','html5'] >++ >++% name >++lang-cs-article-test >++ >++% source >++data/lang-cs-test.txt >++ >++% options >++[('--doctype','article')] >++ >++% attributes >++{'toc':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Czech language file (book) >++ >++% backends >++['docbook','docbook5','xhtml11','html4','html5'] >++ >++% name >++lang-cs-book-test >++ >++% source >++data/lang-cs-test.txt >++ >++% options >++[('--doctype','book')] >++ >++% attributes >++{'toc':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Czech language file (manpage) >++ >++% backends >++['docbook','docbook5'] >++ >++% source >++data/lang-cs-man-test.txt >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Romanian language file (article) >++ >++% backends >++['docbook','docbook5','xhtml11','html4','html5'] >++ >++% name >++lang-ro-article-test >++ >++% source >++data/lang-ro-test.txt >++ >++% options >++[('--doctype','article')] >++ >++% attributes >++{'toc':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Romanian language file (book) >++ >++% backends >++['docbook','docbook5','xhtml11','html4','html5'] >++ >++% name >++lang-ro-book-test >++ >++% source >++data/lang-ro-test.txt >++ >++% options >++[('--doctype','book')] >++ >++% attributes >++{'toc':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Romanian language file (manpage) >++ >++% backends >++['docbook','docbook5'] >++ >++% source >++data/lang-ro-man-test.txt >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Japanese language file (article) >++ >++% backends >++['docbook','docbook5','xhtml11','html4','html5'] >++ >++% name >++lang-ja-article-test >++ >++% source >++data/lang-ja-test.txt >++ >++% options >++[('--doctype','article')] >++ >++% attributes >++{'toc':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Japanese language file (book) >++ >++% backends >++['docbook','docbook5','xhtml11','html4','html5'] >++ >++% name >++lang-ja-book-test >++ >++% source >++data/lang-ja-test.txt >++ >++% options >++[('--doctype','book')] >++ >++% attributes >++{'toc':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Japanese language file (manpage) >++ >++% backends >++['docbook','docbook5'] >++ >++% source >++data/lang-ja-man-test.txt >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++RCS $Id$ marker test >++ >++% source >++data/rcs-id-marker-test.txt >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++UTF-8 BOM test >++ >++% source >++data/utf8-bom-test.txt >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Deprecated quote attributes >++ >++% attributes >++{'deprecated-quotes':''} >++ >++% source >++data/deprecated-quotes.txt >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Swedish language file (article) >++ >++% backends >++['docbook','docbook5','xhtml11','html4','html5'] >++ >++% name >++lang-sv-article-test >++ >++% source >++data/lang-sv-test.txt >++ >++% options >++[('--doctype','article')] >++ >++% attributes >++{'toc':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Swedish language file (book) >++ >++% backends >++['docbook','docbook5','xhtml11','html4','html5'] >++ >++% name >++lang-sv-book-test >++ >++% source >++data/lang-sv-test.txt >++ >++% options >++[('--doctype','book')] >++ >++% attributes >++{'toc':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Swedish language file (manpage) >++ >++% backends >++['docbook','docbook5'] >++ >++% source >++data/lang-sv-man-test.txt >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Last Updated field not displayed in HTML backends >++ >++% backends >++['xhtml11','html4','html5'] >++ >++% name >++lang-en-no-last-updated-test >++ >++% source >++data/lang-en-test.txt >++ >++% attributes >++{'footer-style':'none'} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Last Updated field displays revision date >++ >++% backends >++['xhtml11','html4','html5'] >++ >++% name >++lang-en-last-updated-is-revdate-test >++ >++% source >++data/lang-en-test.txt >++ >++% attributes >++{'footer-style':'revdate'} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++!Generated chapter IDs normalized to ASCII test >++ >++% source >++data/ascii-ids1.txt >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Newline Tests (Default With DOS) >++ >++% backends >++['html5'] >++ >++% name >++newline-dos >++ >++% source >++data/newline.txt >++ >++% attributes >++{'toc':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Newline Tests (Override To UNIX) >++ >++% backends >++['html5'] >++ >++% name >++newline-unix >++ >++% source >++data/newline.txt >++ >++% options >++[('--attribute','newline=\\n')] >++ >++% attributes >++{'toc':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >++Newline Tests (Override To MAC) >++ >++% backends >++['html5'] >++ >++% name >++newline-mac >++ >++% source >++data/newline.txt >++ >++% options >++[('--attribute','newline=\\r')] >++ >++% attributes >++{'toc':True} >++ >++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >diff -urN asciidoc.orig/pkg-plist asciidoc/pkg-plist >--- asciidoc.orig/pkg-plist 2020-04-22 18:51:51.493510000 +0200 >+++ asciidoc/pkg-plist 2020-12-11 18:12:07.059982000 +0100 >@@ -90,8 +90,8 @@ > @sample %%ETCDIR%%/text.conf.sample > %%ETCDIR%%/themes/flask/flask.css > %%ETCDIR%%/themes/volnitsky/volnitsky.css >-@sample %%ETCDIR%%/xhtml11.conf.sample > @sample %%ETCDIR%%/xhtml11-quirks.conf.sample >+@sample %%ETCDIR%%/xhtml11.conf.sample > %%PYTHON_SITELIBDIR%%/asciidocapi.py > man/man1/a2x.1.gz > man/man1/asciidoc.1.gz
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 251329
:
219906
|
219917
| 220462