[LyX/master] DocBook: bug fixing in AASTeX layout.
Thibaut Cuvelier
tcuvelier at lyx.org
Sat Sep 19 18:18:55 UTC 2020
commit 7ec0307b13b002e5914882ece6c76f864ef61746
Author: Thibaut Cuvelier <tcuvelier at lyx.org>
Date: Sun Aug 30 03:08:55 2020 +0200
DocBook: bug fixing in AASTeX layout.
That's mostly generating DocBook tags at an inappropriate place with some metadata, rather than outputting whatever you have at your disposal. Far from satisfying, but good enough for a generic tool (see details in the new TODO). Doesn't trigger assertions. Is valid XML.
---
.../docbook/bibliography_precooked_aastex.xml | 45 +++++++-------------
development/DocBookToDo | 20 +++++++++
lib/layouts/aastex.layout | 24 ++++++++++-
lib/layouts/aastex6.layout | 7 ++-
lib/layouts/aastex62.layout | 7 ++-
5 files changed, 68 insertions(+), 35 deletions(-)
diff --git a/autotests/export/docbook/bibliography_precooked_aastex.xml b/autotests/export/docbook/bibliography_precooked_aastex.xml
index 71fe700..70b19af 100644
--- a/autotests/export/docbook/bibliography_precooked_aastex.xml
+++ b/autotests/export/docbook/bibliography_precooked_aastex.xml
@@ -382,9 +382,7 @@ clusters: globular, peanut—bosons: bozos
</m:mrow>
</m:math>
</inlineequation> may be formed from particle four-momenta, gauge-boson polarization vectors or fermion strings with an uncontracted Lorentz index associated with final-state fermions.</para>
-<NoteToEditor>
-Figures 1 and 2 should appear side-by-side in print
-</NoteToEditor>
+<remark role='to-editor'>Figures 1 and 2 should appear side-by-side in print</remark>
<para>In the chiral representation the <inlineequation>
<alt role='tex'>\gamma</alt>
<m:math>
@@ -634,7 +632,6 @@ Figures 1 and 2 should appear side-by-side in print
</m:mrow>
</m:math>
</inlineequation> by </para>
-<MathLetters>
<informalequation>
<alt role='tex'>u(p,\lambda)_{\pm} & = & (E\pm\lambda|{\textbf{p}}|)^{1/2}\chi_{\lambda}(p),\\
v(p,\lambda)_{\pm} & = & \pm\lambda(E\mp\lambda|{\textbf{p}}|)^{1/2}\chi_{-\lambda}(p)
@@ -724,9 +721,7 @@ v(p,\lambda)_{\pm} & = & \pm\lambda(E\mp\lambda|{\textbf{p}}|)^{1/2}\chi
</m:mtr>
</m:mtable>
</m:math>
-</informalequation>
-</MathLetters>
-</section>
+</informalequation></section>
</section>
<section>
<title>Floating material and so forth</title>
@@ -1008,7 +1003,7 @@ v(p,\lambda)_{\pm} & = & \pm\lambda(E\mp\lambda|{\textbf{p}}|)^{1/2}\chi
</m:mrow>
</m:math>
</inlineequation> of the electronically submitted abstracts for AAS meetings are error-free. </para>
-<acknowledgement>
+<acknowledgements>
<para>We are grateful to V. Barger, T. Han, and R. J. N. Phillips for doing the math in section <xref linkend="bozomath" />. More information on the AASTeX macros package are available at <link xlink:href="http://www.aas.org/publications/aastex">http://www.aas.org/publications/aastex</link> or the <link xlink:href="ftp://www.aas.org/pubs/AAS ftp site">AAS ftp site</link>.</para>
<application>
IRAF, AIPS, Astropy, ...
@@ -1139,7 +1134,7 @@ IRAF, AIPS, Astropy, ...
<m:mrow><m:mi>P</m:mi>
</m:mrow>
</m:math>
-</inlineequation>a</td>
+</inlineequation><remark role='tablenotemark'>a</remark></td>
<td align='right' valign='top'> <inlineequation>
<alt role='tex'>PR_{maj}</alt>
<m:math>
@@ -1183,7 +1178,7 @@ IRAF, AIPS, Astropy, ...
<m:mrow><m:mo>Θ</m:mo>
</m:mrow>
</m:math>
-</inlineequation>b</td>
+</inlineequation><remark role='tablenotemark'>b</remark></td>
<td align='center' valign='top'>Ref.</td>
</tr>
<tr>
@@ -1235,7 +1230,7 @@ IRAF, AIPS, Astropy, ...
<tr>
<td align='center' valign='top'> 4 </td>
<td align='right' valign='top'>32733.8 </td>
-<td align='right' valign='top'>-1.2c</td>
+<td align='right' valign='top'>-1.2<remark role='tablenotemark'>c</remark></td>
<td align='right' valign='top'>-0.5 </td>
<td align='right' valign='top'>41 </td>
<td align='right' valign='top'>54.8 </td>
@@ -1254,7 +1249,7 @@ IRAF, AIPS, Astropy, ...
<td align='right' valign='top'>-0.4 </td>
<td align='right' valign='top'>60 </td>
<td align='right' valign='top'>1.4 </td>
-<td align='right' valign='top'>1.669c</td>
+<td align='right' valign='top'>1.669<remark role='tablenotemark'>c</remark></td>
<td align='right' valign='top'>1.574 </td>
<td align='right' valign='top'>2.343 </td>
<td align='right' valign='top'>8.0 </td>
@@ -1279,23 +1274,13 @@ IRAF, AIPS, Astropy, ...
</tr>
</tbody>
-<Table note>
-a<!-- }{ -->
-Sample footnote for table <xref linkend="tbl-2" /> that was generated with the LaTeX table environment
-</Table note>
-<Table note>
-b<!-- }{ -->
-Yet another sample footnote for table <xref linkend="tbl-2" />
-</Table note>
-<Table note>
-c<!-- }{ -->
-Another sample footnote for table <xref linkend="tbl-2" />
-</Table note>
-<TableComments>
-We can also attach a long-ish paragraph of explanatory material to a table. Use \tablerefs to append a list of references. The following references were from a different table: I've patched them in here to show how they look, but don't take them too seriously—I certainly have not.
-</TableComments>
-<TableRefs>
-(1) Barbuy, Spite, & Spite 1985; (2) Bond 1980; (3) Carbon et al. 1987; (4) Hobbs & Duncan 1987; (5) Gilroy et al. 1988: (6) Gratton & Ortolani 1986; (7) Gratton & Sneden 1987; (8) Gratton & Sneden (1988); (9) Gratton & Sneden 1991; (10) Kraft et al. 1982; (11) LCL, or Laird, 1990; (12) Leep & Wallerstein 1981; (13) Luck & Bond 1981; (14) Luck & Bond 1985; (15) Magain 1987; (16) Magain 1989; (17) Peterson 1981; (18) Peterson, Kurucz, & Carney 1990; (19) RMB; (20) Schuster & Nissen 1988; (21) Schuster & Nissen 1989b; (22) Spite et al. 1984; (23) Spite & Spite 1986; (24) Hobbs & Thorburn 1991; (25) Hobbs et al. 1991; (26) Olsen 1983.
-</TableRefs>
+<remark role='tablenote'>a<!-- }{ -->
+Sample footnote for table <xref linkend="tbl-2" /> that was generated with the LaTeX table environment</remark>
+<remark role='tablenote'>b<!-- }{ -->
+Yet another sample footnote for table <xref linkend="tbl-2" /></remark>
+<remark role='tablenote'>c<!-- }{ -->
+Another sample footnote for table <xref linkend="tbl-2" /></remark>
+<remark role='tablecomments'>We can also attach a long-ish paragraph of explanatory material to a table. Use \tablerefs to append a list of references. The following references were from a different table: I've patched them in here to show how they look, but don't take them too seriously—I certainly have not.</remark>
+<remark role='tablerefs'>(1) Barbuy, Spite, & Spite 1985; (2) Bond 1980; (3) Carbon et al. 1987; (4) Hobbs & Duncan 1987; (5) Gilroy et al. 1988: (6) Gratton & Ortolani 1986; (7) Gratton & Sneden 1987; (8) Gratton & Sneden (1988); (9) Gratton & Sneden 1991; (10) Kraft et al. 1982; (11) LCL, or Laird, 1990; (12) Leep & Wallerstein 1981; (13) Luck & Bond 1981; (14) Luck & Bond 1985; (15) Magain 1987; (16) Magain 1989; (17) Peterson 1981; (18) Peterson, Kurucz, & Carney 1990; (19) RMB; (20) Schuster & Nissen 1988; (21) Schuster & Nissen 1989b; (22) Spite et al. 1984; (23) Spite & Spite 1986; (24) Hobbs & Thorburn 1991; (25) Hobbs et al. 1991; (26) Olsen 1983.</remark>
</table>
</article>
\ No newline at end of file
diff --git a/development/DocBookToDo b/development/DocBookToDo
new file mode 100644
index 0000000..39ca534
--- /dev/null
+++ b/development/DocBookToDo
@@ -0,0 +1,20 @@
+Things specific to layouts
+==========================
+
+AASTeX
+------
+
+No support for table notes. They could be implemented through <footnoteref>, but it becomes a nightmare to ensure xml:id uniqueness (the only ID available here is in the inset; mix it with the table ID?). Anyway, it would require a lot of specific code to make it work, probably not worth the effort right now.
+
+ Related parts of the layout:
+ Style "Table note"
+ InsetLayout "Flex:tablenotemark"
+ Alreayd used in the following test:
+ bibliography_precooked_aastex.lyx
+
+Notion of MathLetters: a group of equations. No good mapping in DocBook, maybe an informalgroup? To discuss with DocBook TC.
+TableRefs, TableComments: no mapping in DocBook, not really a way to add these things. To discuss with DocBook TC.
+
+Clearly, with this kind of template, we're reaching the limits of such a system! Having a really good converter for all these cases would require a lot of very specific code.
+
+More general: what the heck with appendices? It's not handled in the LyX way (Document > Start Appendix Here), but in a custom way. Making this work would solve some correctness issues with this template.
\ No newline at end of file
diff --git a/lib/layouts/aastex.layout b/lib/layouts/aastex.layout
index d79cd02..78089a4 100644
--- a/lib/layouts/aastex.layout
+++ b/lib/layouts/aastex.layout
@@ -285,6 +285,11 @@ Style Abstract
Series Bold
Size Normal
EndFont
+ DocBookAbstract true
+ DocBookInInfo always
+ DocBookWrapperTag abstract
+ DocBookWrapperMergeWithPrevious true
+ DocBookTag para
End
@@ -335,6 +340,7 @@ Style Keywords
Size Normal
EndFont
DocBookTag keyword
+ DocBookTagType paragraph
DocBookWrapperTag keywordset
DocBookInInfo always
End
@@ -359,7 +365,7 @@ Style Acknowledgements
Shape Italic
EndFont
DocBookTag para
- DocBookWrapperTag acknowledgement
+ DocBookWrapperTag acknowledgements
End
@@ -432,6 +438,7 @@ Style MathLetters
Font
Size Normal
EndFont
+ DocBookTag NONE
End
@@ -495,6 +502,9 @@ Style NoteToEditor
Size Normal
Shape Italic
EndFont
+ DocBookTag remark
+ DocBookTagType paragraph
+ DocBookAttr role='to-editor'
End
@@ -515,6 +525,9 @@ Style TableRefs
Family Roman
Size Normal
EndFont
+ DocBookTag remark
+ DocBookTagType paragraph
+ DocBookAttr role='tablerefs'
End
@@ -535,6 +548,9 @@ Style TableComments
Family Roman
Size Normal
EndFont
+ DocBookTag remark
+ DocBookTagType paragraph
+ DocBookAttr role='tablecomments'
End
@@ -550,6 +566,9 @@ Style "Table note"
LabelFont
Color magenta
EndFont
+ DocBookTag remark
+ DocBookTagType paragraph
+ DocBookAttr role='tablenote'
End
@@ -572,6 +591,9 @@ InsetLayout "Flex:tablenotemark"
Color magenta
Size Small
EndFont
+ DocBookTag remark
+ DocBookTagType paragraph
+ DocBookAttr role='tablenotemark'
End
diff --git a/lib/layouts/aastex6.layout b/lib/layouts/aastex6.layout
index 03d585e..6935365 100644
--- a/lib/layouts/aastex6.layout
+++ b/lib/layouts/aastex6.layout
@@ -67,8 +67,11 @@ Style Software
LabelFont
Shape Italic
EndFont
- DocBookWrapperTag para
- DocBookTag application
+ DocBookTag remark
+ DocBookAttr role='software'
+ # Override what's taken from Keywords, but not really wanted.
+ DocBookWrapperTag NONE
+ DocBookInInfo never
End
# other new commands are mainly for the user preamble
diff --git a/lib/layouts/aastex62.layout b/lib/layouts/aastex62.layout
index 3eb7dcc..1ef8636 100644
--- a/lib/layouts/aastex62.layout
+++ b/lib/layouts/aastex62.layout
@@ -78,8 +78,11 @@ Style Software
LabelFont
Shape Italic
EndFont
- DocBookWrapperTag para
- DocBookTag application
+ DocBookTag remark
+ DocBookAttr role='software'
+ # Override what's taken from Keywords, but not really wanted.
+ DocBookWrapperTag NONE
+ DocBookInInfo never
End
# other new commands are mainly for the user preamble
More information about the lyx-cvs
mailing list