DocBook: allow empty paragraphs before the <info> section.

This commit is contained in:
Thibaut Cuvelier 2020-08-02 16:52:33 +02:00
parent 7470305720
commit a852706bf0
2 changed files with 38 additions and 2 deletions

View File

@ -3,6 +3,23 @@
See http://www.lyx.org/ for more information -->
<article xml:lang="en_US" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:xi="http://www.w3.org/2001/XInclude" version="5.2">
<info>
<title>Collapsed Cores in Globular Clusters, Gauge-Boson Couplings, and AASTeX Examples</title>
<author><personname>S. Djorgovski and Ivan R. King</personname></author>
<author><affiliation>Astronomy Department, University of California, Berkeley, CA 94720</affiliation></author>
<author><affiliation role="alternate">Visiting Astronomer Cerro Tololo Inter-American Observatory.CTIO is operated by AURA Inc. under contract to the National Science Foundation.</affiliation></author>
<author><affiliation role="alternate">Society of Fellows, Harvard University.</affiliation></author>
<author><affiliation role="alternate">present address: Center for Astrophysics60 Garden Street, Cambridge, MA 02138</affiliation></author>
<author><personname>C. D. Biemesderfer</personname></author>
<author><affiliation>National Optical Astronomy Observatories, Tucson, AZ 85719</affiliation></author>
<author><affiliation role="alternate">Visiting Programmer, Space Telescope Science Institute</affiliation></author>
<author><affiliation role="alternate">Patron, Alonso's Bar and Grill</affiliation></author>
<author><email>aastex-help@aas.org</email></author>
<author><personname>R. J. Hanisch</personname></author>
<author><affiliation>Space Telescope Science Institute, Baltimore, MD 21218</affiliation></author>
<author><affiliation role="alternate">Patron, Alonso's Bar and Grill</affiliation></author>
<abstract>
<para>This is a preliminary report on surface photometry of the major fraction of known globular clusters, to see which of them show the signs of a collapsed core. We also explore some diversionary mathematics and recreational tables. </para>
</abstract>
</info>
<section>
<title>Introduction</title>

View File

@ -764,15 +764,34 @@ DocBookDocumentSectioning hasDocumentSectioning(ParagraphList const &paragraphs,
}
DocBookInfoTag getParagraphsWithInfo(ParagraphList const &paragraphs, pit_type const bpit, pit_type const epit) {
bool hasOnlyNotes(Paragraph const & par)
{
for (int i = 0; i < par.size(); ++i)
if (!par.isInset(i) || !dynamic_cast<InsetNote *>(par.insetList().get(i)))
return false;
return true;
}
DocBookInfoTag getParagraphsWithInfo(ParagraphList const &paragraphs, pit_type bpit, pit_type const epit) {
set<pit_type> shouldBeInInfo;
set<pit_type> mustBeInInfo;
// Find the first non empty paragraph by mutating bpit.
while (bpit < epit) {
Paragraph const &par = paragraphs[bpit];
if (par.empty() || hasOnlyNotes(par))
bpit += 1;
else
break;
}
// Find the last info-like paragraph.
pit_type cpit = bpit;
while (cpit < epit) {
// Skip paragraphs only containing one note.
Paragraph const &par = paragraphs[cpit];
if (par.size() == 1 && dynamic_cast<InsetNote*>(paragraphs[cpit].insetList().get(0))) {
if (hasOnlyNotes(par)) {
cpit += 1;
continue;
}