metanorma-un 0.10.1 → 0.10.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4bb58f5070137457c97598dc1dc44036a0f3f126500ed833367c7b8833e11b50
4
- data.tar.gz: 854ca121c4d69913f5706b8f1daf13f81bcce711130f061aff5c9c85b968a77b
3
+ metadata.gz: 5bf468cba8a3337fef7dde1c10540150adb9df6e0dc7b2d3a09ae8c6949cd257
4
+ data.tar.gz: aa1015d7812c6519258ce72d52a9ea39296f5f265e5aa3a522f44f6b1c44cf98
5
5
  SHA512:
6
- metadata.gz: 71b85c17cbf8264a281708db02c3d0c6073bd9fa99a4b8cd3bdd4cced42fc76d98220e646a4a65820edd0a87484655b445479368ae8d09f878816725dca75c1c
7
- data.tar.gz: f16c9f80b0d0d1a686083ec19a47587aa73ab4216beffbbb60a834b4545e7159ccbec47b738e75d85b8b7b1599bd1beb4e98817a94ed3f2aa304ab5dffe665c6
6
+ metadata.gz: de873712b53505b22a4c3b5ab370ae34349debb2face1a555315dd1dbea0f10eb5ab6fe2f781b49a042251053ce374b65832cb9c9a0d06cdfcfad16269cb77b7
7
+ data.tar.gz: 445278fb7efd96b0fe58ed8cd0c5a3d4c3eb9090317416e0270cd78492610e3d260dc7d674a2ab4bbdef7aab944f6a05e3cfd9dc698469efe48b948c331b8420
@@ -131,6 +131,35 @@ a.FootnoteRef + a.FootnoteRef:before {
131
131
  color: red;
132
132
  text-decoration: line-through; }
133
133
 
134
+ /* code highlighting with line numbers */
135
+ table.rouge-line-table td.rouge-gutter {
136
+ -moz-user-select: none;
137
+ -ms-user-select: none;
138
+ -webkit-user-select: none;
139
+ user-select: none;
140
+ padding-right: 1em; }
141
+
142
+ table.rouge-line-table td.rouge-code {
143
+ -moz-user-select: all;
144
+ -ms-user-select: all;
145
+ -webkit-user-select: all;
146
+ user-select: all; }
147
+
148
+ table.rouge-line-table,
149
+ table.rouge-line-table th,
150
+ table.rouge-line-table td {
151
+ width: auto;
152
+ border: none;
153
+ margin: 0;
154
+ padding: 0;
155
+ font-size: 100%; }
156
+
157
+ table.rouge-line-table pre {
158
+ margin: 0;
159
+ padding: 0;
160
+ overflow-x: visible;
161
+ font-size: 100%; }
162
+
134
163
  #standard-band {
135
164
  background-color: #0AC442; }
136
165
 
@@ -843,7 +872,7 @@ table {
843
872
  table th, table td {
844
873
  padding: 1em; }
845
874
  table td.header {
846
- font-weigth: 400; }
875
+ font-weight: 400; }
847
876
 
848
877
  p.TableTitle {
849
878
  text-align: center;
@@ -2,7 +2,7 @@
2
2
 
3
3
  <xsl:output version="1.0" method="xml" encoding="UTF-8" indent="no"/>
4
4
 
5
- <xsl:key name="kfn" match="*[local-name() = 'fn'][not(ancestor::*[(local-name() = 'table' or local-name() = 'figure') and not(ancestor::*[local-name() = 'name'])])]" use="@reference"/>
5
+ <xsl:key name="kfn" match="*[local-name() = 'fn'][not(ancestor::*[(local-name() = 'table' or local-name() = 'figure' or local-name() = 'localized-strings')] and not(ancestor::*[local-name() = 'name'])) and not(ancestor::*[local-name() = 'bibdata'] and ancestor::*[local-name() = 'abstract'])]" use="@reference"/>
6
6
 
7
7
  <xsl:variable name="debug">false</xsl:variable>
8
8
 
@@ -645,7 +645,7 @@
645
645
  <!-- ============================ -->
646
646
 
647
647
  <xsl:template match="un:figure" priority="2">
648
- <fo:block-container id="{@id}">
648
+ <fo:block-container id="{@id}" xsl:use-attribute-sets="figure-block-style">
649
649
  <fo:block>
650
650
  <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
651
651
  </fo:block>
@@ -1561,6 +1561,7 @@
1561
1561
  <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1562
1562
  <xsl:attribute name="keep-with-next">always</xsl:attribute>
1563
1563
  <xsl:attribute name="border">2pt solid black</xsl:attribute>
1564
+ <xsl:attribute name="text-indent">0</xsl:attribute>
1564
1565
 
1565
1566
  </xsl:attribute-set>
1566
1567
 
@@ -3297,7 +3298,7 @@
3297
3298
  </fn>
3298
3299
  -->
3299
3300
  <!-- footnotes in text (title, bibliography, main body, table's, figure's names), not for tables, figures -->
3300
- <xsl:template match="*[local-name() = 'fn'][not(ancestor::*[(local-name() = 'table' or local-name() = 'figure') and not(ancestor::*[local-name() = 'name'])])]" priority="2" name="fn">
3301
+ <xsl:template match="*[local-name() = 'fn'][not(ancestor::*[(local-name() = 'table' or local-name() = 'figure')] and not(ancestor::*[local-name() = 'name']))]" priority="2" name="fn">
3301
3302
 
3302
3303
  <!-- list of footnotes to calculate actual footnotes number -->
3303
3304
  <xsl:variable name="p_fn_">
@@ -3354,8 +3355,7 @@
3354
3355
  </fo:basic-link>
3355
3356
  </fo:inline>
3356
3357
  </xsl:variable>
3357
- <!-- DEBUG: p_fn=<xsl:copy-of select="$p_fn"/>
3358
- gen_id=<xsl:value-of select="$gen_id"/> -->
3358
+
3359
3359
  <xsl:choose>
3360
3360
  <xsl:when test="normalize-space(@skip_footnote_body) = 'true'">
3361
3361
  <xsl:copy-of select="$footnote_inline"/>
@@ -3410,7 +3410,7 @@
3410
3410
  <!-- commented:
3411
3411
  .//*[local-name() = 'bibitem'][ancestor::*[local-name() = 'references']]/*[local-name() = 'note'] |
3412
3412
  because 'fn' there is in biblio-tag -->
3413
- <xsl:for-each select=".//*[local-name() = 'fn'][not(ancestor::*[(local-name() = 'table' or local-name() = 'figure') and not(ancestor::*[local-name() = 'name'])])][generate-id(.)=generate-id(key('kfn',@reference)[1])]">
3413
+ <xsl:for-each select=".//*[local-name() = 'fn'][not(ancestor::*[(local-name() = 'table' or local-name() = 'figure')] and not(ancestor::*[local-name() = 'name']))][generate-id(.)=generate-id(key('kfn',@reference)[1])]">
3414
3414
  <!-- copy unique fn -->
3415
3415
  <fn gen_id="{generate-id(.)}">
3416
3416
  <xsl:copy-of select="@*"/>
@@ -5964,7 +5964,9 @@
5964
5964
 
5965
5965
  <xsl:variable name="scale" select="java:org.metanorma.fop.Util.getImageScale($img_src, $width_effective, $height_effective)"/>
5966
5966
  <xsl:if test="number($scale) &lt; 100">
5967
- <xsl:attribute name="content-width"><xsl:value-of select="$scale"/>%</xsl:attribute>
5967
+
5968
+ <xsl:attribute name="content-width"><xsl:value-of select="$scale * 0.985"/>%</xsl:attribute><!-- 0.985 due border around image -->
5969
+
5968
5970
  </xsl:if>
5969
5971
 
5970
5972
  </xsl:if>
@@ -6978,6 +6980,12 @@
6978
6980
  </xsl:attribute>
6979
6981
  </xsl:for-each>
6980
6982
 
6983
+ <!-- remove margin between rows in the table with sourcecode line numbers -->
6984
+ <xsl:if test="ancestor::*[local-name() = 'sourcecode'][@linenums = 'true'] and ancestor::*[local-name() = 'tr'][1]/following-sibling::*[local-name() = 'tr']">
6985
+ <xsl:attribute name="margin-top">0pt</xsl:attribute>
6986
+ <xsl:attribute name="margin-bottom">0pt</xsl:attribute>
6987
+ </xsl:if>
6988
+
6981
6989
  <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
6982
6990
  </fo:block>
6983
6991
 
@@ -7026,7 +7034,7 @@
7026
7034
  </xsl:template>
7027
7035
 
7028
7036
  <!-- outer table with line numbers for sourcecode -->
7029
- <xsl:template match="*[local-name()='table'][@type = 'sourcecode']" priority="2">
7037
+ <xsl:template match="*[local-name() = 'sourcecode'][@linenums = 'true']/*[local-name()='table']" priority="2"> <!-- *[local-name()='table'][@type = 'sourcecode'] | -->
7030
7038
  <fo:block>
7031
7039
  <fo:table width="100%" table-layout="fixed">
7032
7040
  <xsl:copy-of select="@id"/>
@@ -7038,16 +7046,16 @@
7038
7046
  </fo:table>
7039
7047
  </fo:block>
7040
7048
  </xsl:template>
7041
- <xsl:template match="*[local-name()='table'][@type = 'sourcecode']/*[local-name() = 'tbody']" priority="2">
7049
+ <xsl:template match="*[local-name() = 'sourcecode'][@linenums = 'true']/*[local-name()='table']/*[local-name() = 'tbody']" priority="2"> <!-- *[local-name()='table'][@type = 'sourcecode']/*[local-name() = 'tbody'] | -->
7042
7050
  <xsl:apply-templates/>
7043
7051
  </xsl:template>
7044
- <xsl:template match="*[local-name()='table'][@type = 'sourcecode']//*[local-name()='tr']" priority="2">
7052
+ <xsl:template match="*[local-name() = 'sourcecode'][@linenums = 'true']/*[local-name()='table']//*[local-name()='tr']" priority="2"> <!-- *[local-name()='table'][@type = 'sourcecode']//*[local-name()='tr'] | -->
7045
7053
  <fo:table-row>
7046
7054
  <xsl:apply-templates/>
7047
7055
  </fo:table-row>
7048
7056
  </xsl:template>
7049
7057
  <!-- first td with line numbers -->
7050
- <xsl:template match="*[local-name()='table'][@type = 'sourcecode']//*[local-name()='tr']/*[local-name()='td'][not(preceding-sibling::*)]" priority="2">
7058
+ <xsl:template match="*[local-name() = 'sourcecode'][@linenums = 'true']/*[local-name()='table']//*[local-name()='tr']/*[local-name()='td'][not(preceding-sibling::*)]" priority="2"> <!-- *[local-name()='table'][@type = 'sourcecode'] -->
7051
7059
  <fo:table-cell>
7052
7060
  <fo:block>
7053
7061
 
@@ -7067,8 +7075,9 @@
7067
7075
  </fo:block>
7068
7076
  </fo:table-cell>
7069
7077
  </xsl:template>
7078
+
7070
7079
  <!-- second td with sourcecode -->
7071
- <xsl:template match="*[local-name()='table'][@type = 'sourcecode']//*[local-name()='tr']/*[local-name()='td'][preceding-sibling::*]" priority="2">
7080
+ <xsl:template match="*[local-name() = 'sourcecode'][@linenums = 'true']/*[local-name()='table']//*[local-name()='tr']/*[local-name()='td'][preceding-sibling::*]" priority="2"> <!-- *[local-name()='table'][@type = 'sourcecode'] -->
7072
7081
  <fo:table-cell>
7073
7082
  <fo:block>
7074
7083
  <xsl:apply-templates/>
@@ -7306,7 +7315,25 @@
7306
7315
  <xsl:template match="*[local-name()='pre']" name="pre">
7307
7316
  <fo:block xsl:use-attribute-sets="pre-style">
7308
7317
  <xsl:copy-of select="@id"/>
7309
- <xsl:apply-templates/>
7318
+ <xsl:choose>
7319
+
7320
+ <xsl:when test="ancestor::*[local-name() = 'sourcecode'][@linenums = 'true'] and ancestor::*[local-name()='td'][1][not(preceding-sibling::*)]"> <!-- pre in the first td in the table with @linenums = 'true' -->
7321
+ <xsl:if test="ancestor::*[local-name() = 'tr'][1]/following-sibling::*[local-name() = 'tr']"> <!-- is current tr isn't last -->
7322
+ <xsl:attribute name="margin-top">0pt</xsl:attribute>
7323
+ <xsl:attribute name="margin-bottom">0pt</xsl:attribute>
7324
+ </xsl:if>
7325
+ <fo:instream-foreign-object fox:alt-text="{.}" content-width="95%">
7326
+ <math xmlns="http://www.w3.org/1998/Math/MathML">
7327
+ <mtext><xsl:value-of select="."/></mtext>
7328
+ </math>
7329
+ </fo:instream-foreign-object>
7330
+ </xsl:when>
7331
+
7332
+ <xsl:otherwise>
7333
+ <xsl:apply-templates/>
7334
+ </xsl:otherwise>
7335
+
7336
+ </xsl:choose>
7310
7337
  </fo:block>
7311
7338
  </xsl:template>
7312
7339
  <!-- =============== -->
@@ -2,7 +2,7 @@
2
2
 
3
3
  <xsl:output version="1.0" method="xml" encoding="UTF-8" indent="no"/>
4
4
 
5
- <xsl:key name="kfn" match="*[local-name() = 'fn'][not(ancestor::*[(local-name() = 'table' or local-name() = 'figure') and not(ancestor::*[local-name() = 'name'])])]" use="@reference"/>
5
+ <xsl:key name="kfn" match="*[local-name() = 'fn'][not(ancestor::*[(local-name() = 'table' or local-name() = 'figure' or local-name() = 'localized-strings')] and not(ancestor::*[local-name() = 'name'])) and not(ancestor::*[local-name() = 'bibdata'] and ancestor::*[local-name() = 'abstract'])]" use="@reference"/>
6
6
 
7
7
  <xsl:variable name="debug">false</xsl:variable>
8
8
 
@@ -645,7 +645,7 @@
645
645
  <!-- ============================ -->
646
646
 
647
647
  <xsl:template match="un:figure" priority="2">
648
- <fo:block-container id="{@id}">
648
+ <fo:block-container id="{@id}" xsl:use-attribute-sets="figure-block-style">
649
649
  <fo:block>
650
650
  <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
651
651
  </fo:block>
@@ -1561,6 +1561,7 @@
1561
1561
  <xsl:attribute name="margin-bottom">12pt</xsl:attribute>
1562
1562
  <xsl:attribute name="keep-with-next">always</xsl:attribute>
1563
1563
  <xsl:attribute name="border">2pt solid black</xsl:attribute>
1564
+ <xsl:attribute name="text-indent">0</xsl:attribute>
1564
1565
 
1565
1566
  </xsl:attribute-set>
1566
1567
 
@@ -3297,7 +3298,7 @@
3297
3298
  </fn>
3298
3299
  -->
3299
3300
  <!-- footnotes in text (title, bibliography, main body, table's, figure's names), not for tables, figures -->
3300
- <xsl:template match="*[local-name() = 'fn'][not(ancestor::*[(local-name() = 'table' or local-name() = 'figure') and not(ancestor::*[local-name() = 'name'])])]" priority="2" name="fn">
3301
+ <xsl:template match="*[local-name() = 'fn'][not(ancestor::*[(local-name() = 'table' or local-name() = 'figure')] and not(ancestor::*[local-name() = 'name']))]" priority="2" name="fn">
3301
3302
 
3302
3303
  <!-- list of footnotes to calculate actual footnotes number -->
3303
3304
  <xsl:variable name="p_fn_">
@@ -3354,8 +3355,7 @@
3354
3355
  </fo:basic-link>
3355
3356
  </fo:inline>
3356
3357
  </xsl:variable>
3357
- <!-- DEBUG: p_fn=<xsl:copy-of select="$p_fn"/>
3358
- gen_id=<xsl:value-of select="$gen_id"/> -->
3358
+
3359
3359
  <xsl:choose>
3360
3360
  <xsl:when test="normalize-space(@skip_footnote_body) = 'true'">
3361
3361
  <xsl:copy-of select="$footnote_inline"/>
@@ -3410,7 +3410,7 @@
3410
3410
  <!-- commented:
3411
3411
  .//*[local-name() = 'bibitem'][ancestor::*[local-name() = 'references']]/*[local-name() = 'note'] |
3412
3412
  because 'fn' there is in biblio-tag -->
3413
- <xsl:for-each select=".//*[local-name() = 'fn'][not(ancestor::*[(local-name() = 'table' or local-name() = 'figure') and not(ancestor::*[local-name() = 'name'])])][generate-id(.)=generate-id(key('kfn',@reference)[1])]">
3413
+ <xsl:for-each select=".//*[local-name() = 'fn'][not(ancestor::*[(local-name() = 'table' or local-name() = 'figure')] and not(ancestor::*[local-name() = 'name']))][generate-id(.)=generate-id(key('kfn',@reference)[1])]">
3414
3414
  <!-- copy unique fn -->
3415
3415
  <fn gen_id="{generate-id(.)}">
3416
3416
  <xsl:copy-of select="@*"/>
@@ -5964,7 +5964,9 @@
5964
5964
 
5965
5965
  <xsl:variable name="scale" select="java:org.metanorma.fop.Util.getImageScale($img_src, $width_effective, $height_effective)"/>
5966
5966
  <xsl:if test="number($scale) &lt; 100">
5967
- <xsl:attribute name="content-width"><xsl:value-of select="$scale"/>%</xsl:attribute>
5967
+
5968
+ <xsl:attribute name="content-width"><xsl:value-of select="$scale * 0.985"/>%</xsl:attribute><!-- 0.985 due border around image -->
5969
+
5968
5970
  </xsl:if>
5969
5971
 
5970
5972
  </xsl:if>
@@ -6978,6 +6980,12 @@
6978
6980
  </xsl:attribute>
6979
6981
  </xsl:for-each>
6980
6982
 
6983
+ <!-- remove margin between rows in the table with sourcecode line numbers -->
6984
+ <xsl:if test="ancestor::*[local-name() = 'sourcecode'][@linenums = 'true'] and ancestor::*[local-name() = 'tr'][1]/following-sibling::*[local-name() = 'tr']">
6985
+ <xsl:attribute name="margin-top">0pt</xsl:attribute>
6986
+ <xsl:attribute name="margin-bottom">0pt</xsl:attribute>
6987
+ </xsl:if>
6988
+
6981
6989
  <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
6982
6990
  </fo:block>
6983
6991
 
@@ -7026,7 +7034,7 @@
7026
7034
  </xsl:template>
7027
7035
 
7028
7036
  <!-- outer table with line numbers for sourcecode -->
7029
- <xsl:template match="*[local-name()='table'][@type = 'sourcecode']" priority="2">
7037
+ <xsl:template match="*[local-name() = 'sourcecode'][@linenums = 'true']/*[local-name()='table']" priority="2"> <!-- *[local-name()='table'][@type = 'sourcecode'] | -->
7030
7038
  <fo:block>
7031
7039
  <fo:table width="100%" table-layout="fixed">
7032
7040
  <xsl:copy-of select="@id"/>
@@ -7038,16 +7046,16 @@
7038
7046
  </fo:table>
7039
7047
  </fo:block>
7040
7048
  </xsl:template>
7041
- <xsl:template match="*[local-name()='table'][@type = 'sourcecode']/*[local-name() = 'tbody']" priority="2">
7049
+ <xsl:template match="*[local-name() = 'sourcecode'][@linenums = 'true']/*[local-name()='table']/*[local-name() = 'tbody']" priority="2"> <!-- *[local-name()='table'][@type = 'sourcecode']/*[local-name() = 'tbody'] | -->
7042
7050
  <xsl:apply-templates/>
7043
7051
  </xsl:template>
7044
- <xsl:template match="*[local-name()='table'][@type = 'sourcecode']//*[local-name()='tr']" priority="2">
7052
+ <xsl:template match="*[local-name() = 'sourcecode'][@linenums = 'true']/*[local-name()='table']//*[local-name()='tr']" priority="2"> <!-- *[local-name()='table'][@type = 'sourcecode']//*[local-name()='tr'] | -->
7045
7053
  <fo:table-row>
7046
7054
  <xsl:apply-templates/>
7047
7055
  </fo:table-row>
7048
7056
  </xsl:template>
7049
7057
  <!-- first td with line numbers -->
7050
- <xsl:template match="*[local-name()='table'][@type = 'sourcecode']//*[local-name()='tr']/*[local-name()='td'][not(preceding-sibling::*)]" priority="2">
7058
+ <xsl:template match="*[local-name() = 'sourcecode'][@linenums = 'true']/*[local-name()='table']//*[local-name()='tr']/*[local-name()='td'][not(preceding-sibling::*)]" priority="2"> <!-- *[local-name()='table'][@type = 'sourcecode'] -->
7051
7059
  <fo:table-cell>
7052
7060
  <fo:block>
7053
7061
 
@@ -7067,8 +7075,9 @@
7067
7075
  </fo:block>
7068
7076
  </fo:table-cell>
7069
7077
  </xsl:template>
7078
+
7070
7079
  <!-- second td with sourcecode -->
7071
- <xsl:template match="*[local-name()='table'][@type = 'sourcecode']//*[local-name()='tr']/*[local-name()='td'][preceding-sibling::*]" priority="2">
7080
+ <xsl:template match="*[local-name() = 'sourcecode'][@linenums = 'true']/*[local-name()='table']//*[local-name()='tr']/*[local-name()='td'][preceding-sibling::*]" priority="2"> <!-- *[local-name()='table'][@type = 'sourcecode'] -->
7072
7081
  <fo:table-cell>
7073
7082
  <fo:block>
7074
7083
  <xsl:apply-templates/>
@@ -7306,7 +7315,25 @@
7306
7315
  <xsl:template match="*[local-name()='pre']" name="pre">
7307
7316
  <fo:block xsl:use-attribute-sets="pre-style">
7308
7317
  <xsl:copy-of select="@id"/>
7309
- <xsl:apply-templates/>
7318
+ <xsl:choose>
7319
+
7320
+ <xsl:when test="ancestor::*[local-name() = 'sourcecode'][@linenums = 'true'] and ancestor::*[local-name()='td'][1][not(preceding-sibling::*)]"> <!-- pre in the first td in the table with @linenums = 'true' -->
7321
+ <xsl:if test="ancestor::*[local-name() = 'tr'][1]/following-sibling::*[local-name() = 'tr']"> <!-- is current tr isn't last -->
7322
+ <xsl:attribute name="margin-top">0pt</xsl:attribute>
7323
+ <xsl:attribute name="margin-bottom">0pt</xsl:attribute>
7324
+ </xsl:if>
7325
+ <fo:instream-foreign-object fox:alt-text="{.}" content-width="95%">
7326
+ <math xmlns="http://www.w3.org/1998/Math/MathML">
7327
+ <mtext><xsl:value-of select="."/></mtext>
7328
+ </math>
7329
+ </fo:instream-foreign-object>
7330
+ </xsl:when>
7331
+
7332
+ <xsl:otherwise>
7333
+ <xsl:apply-templates/>
7334
+ </xsl:otherwise>
7335
+
7336
+ </xsl:choose>
7310
7337
  </fo:block>
7311
7338
  </xsl:template>
7312
7339
  <!-- =============== -->
@@ -2,7 +2,7 @@
2
2
 
3
3
  <xsl:output version="1.0" method="xml" encoding="UTF-8" indent="no"/>
4
4
 
5
- <xsl:key name="kfn" match="*[local-name() = 'fn'][not(ancestor::*[(local-name() = 'table' or local-name() = 'figure') and not(ancestor::*[local-name() = 'name'])])]" use="@reference"/>
5
+ <xsl:key name="kfn" match="*[local-name() = 'fn'][not(ancestor::*[(local-name() = 'table' or local-name() = 'figure' or local-name() = 'localized-strings')] and not(ancestor::*[local-name() = 'name'])) and not(ancestor::*[local-name() = 'bibdata'] and ancestor::*[local-name() = 'abstract'])]" use="@reference"/>
6
6
 
7
7
  <xsl:variable name="debug">false</xsl:variable>
8
8
 
@@ -750,7 +750,7 @@
750
750
  <!-- ============================ -->
751
751
 
752
752
  <xsl:template match="un:figure" priority="2">
753
- <fo:block-container id="{@id}">
753
+ <fo:block-container id="{@id}" xsl:use-attribute-sets="figure-block-style">
754
754
  <xsl:if test="ancestor::un:admonition">
755
755
  <xsl:attribute name="margin-left">-5mm</xsl:attribute>
756
756
  <xsl:attribute name="margin-right">-5mm</xsl:attribute>
@@ -3391,7 +3391,7 @@
3391
3391
  </fn>
3392
3392
  -->
3393
3393
  <!-- footnotes in text (title, bibliography, main body, table's, figure's names), not for tables, figures -->
3394
- <xsl:template match="*[local-name() = 'fn'][not(ancestor::*[(local-name() = 'table' or local-name() = 'figure') and not(ancestor::*[local-name() = 'name'])])]" priority="2" name="fn">
3394
+ <xsl:template match="*[local-name() = 'fn'][not(ancestor::*[(local-name() = 'table' or local-name() = 'figure')] and not(ancestor::*[local-name() = 'name']))]" priority="2" name="fn">
3395
3395
 
3396
3396
  <!-- list of footnotes to calculate actual footnotes number -->
3397
3397
  <xsl:variable name="p_fn_">
@@ -3448,8 +3448,7 @@
3448
3448
  </fo:basic-link>
3449
3449
  </fo:inline>
3450
3450
  </xsl:variable>
3451
- <!-- DEBUG: p_fn=<xsl:copy-of select="$p_fn"/>
3452
- gen_id=<xsl:value-of select="$gen_id"/> -->
3451
+
3453
3452
  <xsl:choose>
3454
3453
  <xsl:when test="normalize-space(@skip_footnote_body) = 'true'">
3455
3454
  <xsl:copy-of select="$footnote_inline"/>
@@ -3504,7 +3503,7 @@
3504
3503
  <!-- commented:
3505
3504
  .//*[local-name() = 'bibitem'][ancestor::*[local-name() = 'references']]/*[local-name() = 'note'] |
3506
3505
  because 'fn' there is in biblio-tag -->
3507
- <xsl:for-each select=".//*[local-name() = 'fn'][not(ancestor::*[(local-name() = 'table' or local-name() = 'figure') and not(ancestor::*[local-name() = 'name'])])][generate-id(.)=generate-id(key('kfn',@reference)[1])]">
3506
+ <xsl:for-each select=".//*[local-name() = 'fn'][not(ancestor::*[(local-name() = 'table' or local-name() = 'figure')] and not(ancestor::*[local-name() = 'name']))][generate-id(.)=generate-id(key('kfn',@reference)[1])]">
3508
3507
  <!-- copy unique fn -->
3509
3508
  <fn gen_id="{generate-id(.)}">
3510
3509
  <xsl:copy-of select="@*"/>
@@ -6067,7 +6066,9 @@
6067
6066
 
6068
6067
  <xsl:variable name="scale" select="java:org.metanorma.fop.Util.getImageScale($img_src, $width_effective, $height_effective)"/>
6069
6068
  <xsl:if test="number($scale) &lt; 100">
6070
- <xsl:attribute name="content-width"><xsl:value-of select="$scale"/>%</xsl:attribute>
6069
+
6070
+ <xsl:attribute name="content-width"><xsl:value-of select="$scale"/>%</xsl:attribute>
6071
+
6071
6072
  </xsl:if>
6072
6073
 
6073
6074
  </xsl:if>
@@ -7081,6 +7082,12 @@
7081
7082
  </xsl:attribute>
7082
7083
  </xsl:for-each>
7083
7084
 
7085
+ <!-- remove margin between rows in the table with sourcecode line numbers -->
7086
+ <xsl:if test="ancestor::*[local-name() = 'sourcecode'][@linenums = 'true'] and ancestor::*[local-name() = 'tr'][1]/following-sibling::*[local-name() = 'tr']">
7087
+ <xsl:attribute name="margin-top">0pt</xsl:attribute>
7088
+ <xsl:attribute name="margin-bottom">0pt</xsl:attribute>
7089
+ </xsl:if>
7090
+
7084
7091
  <xsl:apply-templates select="node()[not(local-name() = 'name')]"/>
7085
7092
  </fo:block>
7086
7093
 
@@ -7129,7 +7136,7 @@
7129
7136
  </xsl:template>
7130
7137
 
7131
7138
  <!-- outer table with line numbers for sourcecode -->
7132
- <xsl:template match="*[local-name()='table'][@type = 'sourcecode']" priority="2">
7139
+ <xsl:template match="*[local-name() = 'sourcecode'][@linenums = 'true']/*[local-name()='table']" priority="2"> <!-- *[local-name()='table'][@type = 'sourcecode'] | -->
7133
7140
  <fo:block>
7134
7141
  <fo:table width="100%" table-layout="fixed">
7135
7142
  <xsl:copy-of select="@id"/>
@@ -7141,16 +7148,16 @@
7141
7148
  </fo:table>
7142
7149
  </fo:block>
7143
7150
  </xsl:template>
7144
- <xsl:template match="*[local-name()='table'][@type = 'sourcecode']/*[local-name() = 'tbody']" priority="2">
7151
+ <xsl:template match="*[local-name() = 'sourcecode'][@linenums = 'true']/*[local-name()='table']/*[local-name() = 'tbody']" priority="2"> <!-- *[local-name()='table'][@type = 'sourcecode']/*[local-name() = 'tbody'] | -->
7145
7152
  <xsl:apply-templates/>
7146
7153
  </xsl:template>
7147
- <xsl:template match="*[local-name()='table'][@type = 'sourcecode']//*[local-name()='tr']" priority="2">
7154
+ <xsl:template match="*[local-name() = 'sourcecode'][@linenums = 'true']/*[local-name()='table']//*[local-name()='tr']" priority="2"> <!-- *[local-name()='table'][@type = 'sourcecode']//*[local-name()='tr'] | -->
7148
7155
  <fo:table-row>
7149
7156
  <xsl:apply-templates/>
7150
7157
  </fo:table-row>
7151
7158
  </xsl:template>
7152
7159
  <!-- first td with line numbers -->
7153
- <xsl:template match="*[local-name()='table'][@type = 'sourcecode']//*[local-name()='tr']/*[local-name()='td'][not(preceding-sibling::*)]" priority="2">
7160
+ <xsl:template match="*[local-name() = 'sourcecode'][@linenums = 'true']/*[local-name()='table']//*[local-name()='tr']/*[local-name()='td'][not(preceding-sibling::*)]" priority="2"> <!-- *[local-name()='table'][@type = 'sourcecode'] -->
7154
7161
  <fo:table-cell>
7155
7162
  <fo:block>
7156
7163
 
@@ -7170,8 +7177,9 @@
7170
7177
  </fo:block>
7171
7178
  </fo:table-cell>
7172
7179
  </xsl:template>
7180
+
7173
7181
  <!-- second td with sourcecode -->
7174
- <xsl:template match="*[local-name()='table'][@type = 'sourcecode']//*[local-name()='tr']/*[local-name()='td'][preceding-sibling::*]" priority="2">
7182
+ <xsl:template match="*[local-name() = 'sourcecode'][@linenums = 'true']/*[local-name()='table']//*[local-name()='tr']/*[local-name()='td'][preceding-sibling::*]" priority="2"> <!-- *[local-name()='table'][@type = 'sourcecode'] -->
7175
7183
  <fo:table-cell>
7176
7184
  <fo:block>
7177
7185
  <xsl:apply-templates/>
@@ -7409,7 +7417,25 @@
7409
7417
  <xsl:template match="*[local-name()='pre']" name="pre">
7410
7418
  <fo:block xsl:use-attribute-sets="pre-style">
7411
7419
  <xsl:copy-of select="@id"/>
7412
- <xsl:apply-templates/>
7420
+ <xsl:choose>
7421
+
7422
+ <xsl:when test="ancestor::*[local-name() = 'sourcecode'][@linenums = 'true'] and ancestor::*[local-name()='td'][1][not(preceding-sibling::*)]"> <!-- pre in the first td in the table with @linenums = 'true' -->
7423
+ <xsl:if test="ancestor::*[local-name() = 'tr'][1]/following-sibling::*[local-name() = 'tr']"> <!-- is current tr isn't last -->
7424
+ <xsl:attribute name="margin-top">0pt</xsl:attribute>
7425
+ <xsl:attribute name="margin-bottom">0pt</xsl:attribute>
7426
+ </xsl:if>
7427
+ <fo:instream-foreign-object fox:alt-text="{.}" content-width="95%">
7428
+ <math xmlns="http://www.w3.org/1998/Math/MathML">
7429
+ <mtext><xsl:value-of select="."/></mtext>
7430
+ </math>
7431
+ </fo:instream-foreign-object>
7432
+ </xsl:when>
7433
+
7434
+ <xsl:otherwise>
7435
+ <xsl:apply-templates/>
7436
+ </xsl:otherwise>
7437
+
7438
+ </xsl:choose>
7413
7439
  </fo:block>
7414
7440
  </xsl:template>
7415
7441
  <!-- =============== -->
@@ -1,5 +1,5 @@
1
1
  module Metanorma
2
2
  module UN
3
- VERSION = "0.10.1".freeze
3
+ VERSION = "0.10.2".freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metanorma-un
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.1
4
+ version: 0.10.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-12-19 00:00:00.000000000 Z
11
+ date: 2022-12-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: iso-639