metanorma-cc 2.5.8 → 2.5.9

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: 8e6e2e0002ff5d21efb028567a37c919bf125671ff2e144d2cb1b79590e489b3
4
- data.tar.gz: 837f2cd8cdd5e69c90205f8d530852ce6238471e82e24914b2e3161fdbc48da8
3
+ metadata.gz: 8e6f81d3d4b9527168daaf8debb0565c6546623baf3234732d2c000fb9441f5c
4
+ data.tar.gz: 5099a781d393dad36085bd93c197d5bc5f6d4ef1fc89052653e84c6d6bd0ad07
5
5
  SHA512:
6
- metadata.gz: 3281c8b62a4e7f7d9b0e332f505c8c4cd876e88df7fb232fc0b33decc82f5895894ee71d17212a64d53eb17de3cb474368d95b7d81e6ae1afaab8167eeeaafc2
7
- data.tar.gz: bc278dfffa0784e265dc2bae58c6d2f856cb46e2264c337851ea328d5450eb300f8cd4fa6ba85095431abf96b43c94b7d8be65c701fda662ce7471a00484d253
6
+ metadata.gz: 2eee82bd020dfb201a61169593c0855be44f5a7379d83a203b4d87223d67ff3e384f4a28e8e6c24fb7c16cdbacc8d7bd15e7183839140cc9c854efc87df43a4d
7
+ data.tar.gz: e88aaa72da7a924488c3b786f6abeccc232fd9652c34d08ef6aeda37c13d630518318c5a581b86af43eaf5136d97cd57d1ae538e60e340c743b2029c015e366e
@@ -243,7 +243,7 @@
243
243
  </xsl:variable>
244
244
 
245
245
  <xsl:for-each select="xalan:nodeset($updated_xml_with_pages)"> <!-- set context to preface/sections -->
246
- <xsl:for-each select=".//*[local-name() = 'page_sequence'][parent::*[local-name() = 'preface']][normalize-space() != '' or .//image or .//svg]">
246
+ <xsl:for-each select=".//*[local-name() = 'page_sequence'][parent::*[local-name() = 'preface']][normalize-space() != '' or .//*[local-name() = 'image'] or .//*[local-name() = 'svg']]">
247
247
 
248
248
  <!-- Copyright, Content, Foreword, etc. pages -->
249
249
  <fo:page-sequence master-reference="preface" format="i">
@@ -306,7 +306,7 @@
306
306
  </fo:page-sequence>
307
307
  </xsl:for-each>
308
308
 
309
- <xsl:for-each select=".//*[local-name() = 'page_sequence'][not(parent::*[local-name() = 'preface'])][normalize-space() != '' or .//image or .//svg]">
309
+ <xsl:for-each select=".//*[local-name() = 'page_sequence'][not(parent::*[local-name() = 'preface'])][normalize-space() != '' or .//*[local-name() = 'image'] or .//*[local-name() = 'svg']]">
310
310
 
311
311
  <!-- Document Pages -->
312
312
  <fo:page-sequence master-reference="document" format="1" force-page-count="no-force">
@@ -3913,7 +3913,9 @@
3913
3913
  <fo:block role="SKIP">
3914
3914
 
3915
3915
  <xsl:if test="$isGenerateTableIF = 'true'">
3916
- <xsl:attribute name="id"><xsl:value-of select="@id"/></xsl:attribute>
3916
+
3917
+ <xsl:attribute name="id"><xsl:value-of select="@id"/></xsl:attribute>
3918
+
3917
3919
  </xsl:if>
3918
3920
 
3919
3921
  <xsl:apply-templates/>
@@ -4932,7 +4934,17 @@
4932
4934
  <xsl:call-template name="refine_dt-cell-style"/>
4933
4935
 
4934
4936
  <fo:block xsl:use-attribute-sets="dt-block-style" role="SKIP">
4935
- <xsl:copy-of select="@id"/>
4937
+
4938
+ <xsl:choose>
4939
+ <xsl:when test="$isGenerateTableIF = 'true'">
4940
+
4941
+ <xsl:copy-of select="@id"/>
4942
+
4943
+ </xsl:when>
4944
+ <xsl:otherwise>
4945
+ <xsl:copy-of select="@id"/>
4946
+ </xsl:otherwise>
4947
+ </xsl:choose>
4936
4948
 
4937
4949
  <xsl:if test="normalize-space($key_iso) = 'true'">
4938
4950
  <xsl:attribute name="margin-top">0</xsl:attribute>
@@ -4964,7 +4976,9 @@
4964
4976
  <fo:block role="SKIP">
4965
4977
 
4966
4978
  <xsl:if test="$isGenerateTableIF = 'true'">
4967
- <xsl:attribute name="id"><xsl:value-of select="@id"/></xsl:attribute>
4979
+
4980
+ <xsl:attribute name="id"><xsl:value-of select="@id"/></xsl:attribute>
4981
+
4968
4982
  </xsl:if>
4969
4983
 
4970
4984
  <xsl:choose>
@@ -6205,6 +6219,14 @@
6205
6219
  </xsl:for-each>
6206
6220
  </xsl:variable>
6207
6221
 
6222
+ <!-- <xsl:if test="$debug = 'true'">
6223
+ <redirect:write file="{generate-id()}_words_with_width_sorted.xml">
6224
+ <td_text><xsl:copy-of select="$td_text"/></td_text>
6225
+ <words_with_width><xsl:copy-of select="$words_with_width"/></words_with_width>
6226
+ <xsl:copy-of select="$words_with_width_sorted"/>
6227
+ </redirect:write>
6228
+ </xsl:if> -->
6229
+
6208
6230
  <xsl:variable name="words">
6209
6231
  <xsl:for-each select=".//*[local-name() = 'image' or local-name() = 'stem']">
6210
6232
  <word>
@@ -6330,6 +6352,7 @@
6330
6352
  <xsl:if test="ancestor::*[local-name() = 'tt']"><tag>tt</tag></xsl:if>
6331
6353
  <xsl:if test="ancestor::*[local-name() = 'sourcecode']"><tag>sourcecode</tag></xsl:if>
6332
6354
  <xsl:if test="ancestor::*[local-name() = 'keep-together_within-line']"><tag>keep-together_within-line</tag></xsl:if>
6355
+ <xsl:if test="ancestor::*[local-name() = 'font_en_vertical']"><tag>font_en_vertical</tag></xsl:if>
6333
6356
  </tags>
6334
6357
  </xsl:template>
6335
6358
  <!-- =============================== -->
@@ -6870,7 +6893,16 @@
6870
6893
  </xsl:when>
6871
6894
  <xsl:otherwise>
6872
6895
  <!-- output text from <link>text</link> -->
6873
- <xsl:apply-templates/>
6896
+ <xsl:choose>
6897
+ <xsl:when test="starts-with(., 'http://') or starts-with(., 'https://') or starts-with(., 'www.')">
6898
+ <xsl:call-template name="add-zero-spaces-link-java">
6899
+ <xsl:with-param name="text" select="."/>
6900
+ </xsl:call-template>
6901
+ </xsl:when>
6902
+ <xsl:otherwise>
6903
+ <xsl:apply-templates/>
6904
+ </xsl:otherwise>
6905
+ </xsl:choose>
6874
6906
  </xsl:otherwise>
6875
6907
  </xsl:choose>
6876
6908
  </fo:basic-link>
@@ -7509,16 +7541,29 @@
7509
7541
  <xsl:template name="getImageSrc">
7510
7542
  <xsl:choose>
7511
7543
  <xsl:when test="not(starts-with(@src, 'data:'))">
7544
+ <xsl:call-template name="getImageSrcExternal"/>
7545
+ </xsl:when>
7546
+ <xsl:otherwise><xsl:value-of select="@src"/></xsl:otherwise>
7547
+ </xsl:choose>
7548
+ </xsl:template>
7549
+
7550
+ <xsl:template name="getImageSrcExternal">
7551
+ <xsl:choose>
7552
+ <xsl:when test="@extracted = 'true'"> <!-- added in mn2pdf v1.97 -->
7553
+ <xsl:value-of select="@src"/>
7554
+ </xsl:when>
7555
+ <xsl:otherwise>
7556
+ <xsl:variable name="src_with_basepath" select="concat($basepath, @src)"/>
7557
+ <xsl:variable name="file_exists" select="normalize-space(java:exists(java:java.io.File.new($src_with_basepath)))"/>
7512
7558
  <xsl:choose>
7513
- <xsl:when test="@extracted = 'true'"> <!-- added in mn2pdf v1.97 -->
7514
- <xsl:value-of select="@src"/>
7559
+ <xsl:when test="$file_exists = 'true'">
7560
+ <xsl:value-of select="$src_with_basepath"/>
7515
7561
  </xsl:when>
7516
7562
  <xsl:otherwise>
7517
- <xsl:value-of select="concat($basepath, @src)"/>
7563
+ <xsl:value-of select="@src"/>
7518
7564
  </xsl:otherwise>
7519
7565
  </xsl:choose>
7520
- </xsl:when>
7521
- <xsl:otherwise><xsl:value-of select="@src"/></xsl:otherwise>
7566
+ </xsl:otherwise>
7522
7567
  </xsl:choose>
7523
7568
  </xsl:template>
7524
7569
 
@@ -7566,14 +7611,8 @@
7566
7611
  <xsl:value-of select="concat('url(file:///',$basepath, $src_png, ')')"/>
7567
7612
  </xsl:when>
7568
7613
  <xsl:when test="not(starts-with(@src, 'data:'))">
7569
- <xsl:choose>
7570
- <xsl:when test="@extracted = 'true'"> <!-- added in mn2pdf v1.97 -->
7571
- <xsl:value-of select="concat('url(file:///', @src, ')')"/>
7572
- </xsl:when>
7573
- <xsl:otherwise>
7574
- <xsl:value-of select="concat('url(file:///',$basepath, @src, ')')"/>
7575
- </xsl:otherwise>
7576
- </xsl:choose>
7614
+ <xsl:variable name="src_external"><xsl:call-template name="getImageSrcExternal"/></xsl:variable>
7615
+ <xsl:value-of select="concat('url(file:///', $src_external, ')')"/>
7577
7616
  </xsl:when>
7578
7617
  <xsl:otherwise>
7579
7618
  <xsl:value-of select="@src"/>
@@ -7594,16 +7633,8 @@
7594
7633
  </svg>
7595
7634
  </xsl:when>
7596
7635
  <xsl:when test="not(starts-with(@src, 'data:'))">
7597
- <xsl:variable name="src">
7598
- <xsl:choose>
7599
- <xsl:when test="@extracted = 'true'"> <!-- added in mn2pdf v1.97 -->
7600
- <xsl:value-of select="concat('url(file:///', @src, ')')"/>
7601
- </xsl:when>
7602
- <xsl:otherwise>
7603
- <xsl:value-of select="concat('url(file:///',$basepath, @src, ')')"/>
7604
- </xsl:otherwise>
7605
- </xsl:choose>
7606
- </xsl:variable>
7636
+ <xsl:variable name="src_external"><xsl:call-template name="getImageSrcExternal"/></xsl:variable>
7637
+ <xsl:variable name="src" select="concat('url(file:///', $src_external, ')')"/>
7607
7638
  <xsl:variable name="file" select="java:java.io.File.new(@src)"/>
7608
7639
  <xsl:variable name="bufferedImage" select="java:javax.imageio.ImageIO.read($file)"/>
7609
7640
  <xsl:variable name="width" select="java:getWidth($bufferedImage)"/>
@@ -11731,7 +11762,9 @@
11731
11762
  <xsl:template name="add_id">
11732
11763
  <xsl:if test="not(@id)">
11733
11764
  <!-- add @id - first element with @id plus '_element_name' -->
11734
- <xsl:attribute name="id"><xsl:value-of select="(.//*[@id])[1]/@id"/>_<xsl:value-of select="local-name()"/></xsl:attribute>
11765
+ <xsl:variable name="prefix_id_" select="(.//*[@id])[1]/@id"/>
11766
+ <xsl:variable name="prefix_id"><xsl:value-of select="$prefix_id_"/><xsl:if test="normalize-space($prefix_id_) = ''"><xsl:value-of select="generate-id()"/></xsl:if></xsl:variable>
11767
+ <xsl:attribute name="id"><xsl:value-of select="$prefix_id"/>_<xsl:value-of select="local-name()"/></xsl:attribute>
11735
11768
  </xsl:if>
11736
11769
  </xsl:template>
11737
11770
 
@@ -13036,6 +13069,7 @@
13036
13069
  <xsl:param name="formatted">false</xsl:param>
13037
13070
  <xsl:param name="lang"/>
13038
13071
  <xsl:param name="returnEmptyIfNotFound">false</xsl:param>
13072
+ <xsl:param name="bibdata_updated"/>
13039
13073
 
13040
13074
  <xsl:variable name="curr_lang">
13041
13075
  <xsl:choose>
@@ -13049,6 +13083,9 @@
13049
13083
 
13050
13084
  <xsl:variable name="data_value">
13051
13085
  <xsl:choose>
13086
+ <xsl:when test="$formatted = 'true' and string-length($bibdata_updated) != ''">
13087
+ <xsl:apply-templates select="xalan:nodeset($bibdata_updated)//*[local-name() = 'localized-string'][@key = $key and @language = $curr_lang]"/>
13088
+ </xsl:when>
13052
13089
  <xsl:when test="$formatted = 'true'">
13053
13090
  <xsl:apply-templates select="xalan:nodeset($bibdata)//*[local-name() = 'localized-string'][@key = $key and @language = $curr_lang]"/>
13054
13091
  </xsl:when>
@@ -13220,14 +13257,8 @@
13220
13257
  <xsl:value-of select="$src"/>
13221
13258
  </xsl:when>
13222
13259
  <xsl:otherwise>
13223
- <xsl:choose>
13224
- <xsl:when test="@extracted = 'true'"> <!-- added in mn2pdf v1.97 -->
13225
- <xsl:value-of select="concat('url(file:///', @src, ')')"/>
13226
- </xsl:when>
13227
- <xsl:otherwise>
13228
- <xsl:value-of select="concat('url(file:///',$basepath, $src, ')')"/>
13229
- </xsl:otherwise>
13230
- </xsl:choose>
13260
+ <xsl:variable name="src_external"><xsl:call-template name="getImageSrcExternal"/></xsl:variable>
13261
+ <xsl:value-of select="concat('url(file:///', $src_external, ')')"/>
13231
13262
  </xsl:otherwise>
13232
13263
  </xsl:choose>
13233
13264
  </xsl:template>
@@ -13249,15 +13280,23 @@
13249
13280
  <!-- END: insert cover page image -->
13250
13281
 
13251
13282
  <!-- https://github.com/metanorma/docs/blob/main/109.adoc -->
13283
+ <xsl:variable name="regex_ja_spec_half_width_">
13284
+ \u0028 <!-- U+0028 LEFT PARENTHESIS (() -->
13285
+ \u0029 <!-- U+0029 RIGHT PARENTHESIS ()) -->
13286
+ \u007B <!-- U+007B LEFT CURLY BRACKET ({) -->
13287
+ \u007D <!-- U+007D RIGHT CURLY BRACKET (}) -->
13288
+ \uFF62 <!-- U+FF62 HALFWIDTH LEFT CORNER BRACKET (「) -->
13289
+ \uFF63 <!-- U+FF63 HALFWIDTH RIGHT CORNER BRACKET (」) -->
13290
+ \u005B <!-- U+005B LEFT SQUARE BRACKET ([) -->
13291
+ \u005D <!-- U+005D RIGHT SQUARE BRACKET (]) -->
13292
+ </xsl:variable>
13293
+ <xsl:variable name="regex_ja_spec_half_width" select="translate(normalize-space($regex_ja_spec_half_width_), ' ', '')"/>
13252
13294
  <xsl:variable name="regex_ja_spec_">[
13253
13295
  <!-- Rotate 90° clockwise -->
13254
- \u0028 <!-- U+0028 LEFT PARENTHESIS (() -->
13296
+ <xsl:value-of select="$regex_ja_spec_half_width"/>
13255
13297
  \uFF08 <!-- U+FF08 FULLWIDTH LEFT PARENTHESIS (() -->
13256
- \u0029 <!-- U+0029 RIGHT PARENTHESIS ()) -->
13257
13298
  \uFF09 <!-- U+FF09 FULLWIDTH RIGHT PARENTHESIS ()) -->
13258
- \u007B <!-- U+007B LEFT CURLY BRACKET ({) -->
13259
13299
  \uFF5B <!-- U+FF5B FULLWIDTH LEFT CURLY BRACKET ({) -->
13260
- \u007D <!-- U+007D RIGHT CURLY BRACKET (}) -->
13261
13300
  \uFF5D <!-- U+FF5D FULLWIDTH RIGHT CURLY BRACKET (}) -->
13262
13301
  \u3014 <!-- U+3014 LEFT TORTOISE SHELL BRACKET (〔) -->
13263
13302
  \u3015 <!-- U+3015 RIGHT TORTOISE SHELL BRACKET (〕) -->
@@ -13265,21 +13304,16 @@
13265
13304
  \u3011 <!-- U+3011 RIGHT BLACK LENTICULAR BRACKET (】) -->
13266
13305
  \u300A <!-- U+300A LEFT DOUBLE ANGLE BRACKET (《) -->
13267
13306
  \u300B <!-- U+300B RIGHT DOUBLE ANGLE BRACKET (》) -->
13268
- \uFF62 <!-- U+FF62 HALFWIDTH LEFT CORNER BRACKET (「) -->
13269
13307
  \u300C <!-- U+300C LEFT CORNER BRACKET (「) -->
13270
- \uFF63 <!-- U+FF63 HALFWIDTH RIGHT CORNER BRACKET (」) -->
13271
13308
  \u300D <!-- U+300D RIGHT CORNER BRACKET (」) -->
13272
13309
  \u300E <!-- U+300E LEFT WHITE CORNER BRACKET (『) -->
13273
13310
  \u300F <!-- U+300F RIGHT WHITE CORNER BRACKET (』) -->
13274
- \u005B <!-- U+005B LEFT SQUARE BRACKET ([) -->
13275
13311
  \uFF3B <!-- U+FF3B FULLWIDTH LEFT SQUARE BRACKET ([) -->
13276
- \u005D <!-- U+005D RIGHT SQUARE BRACKET (]) -->
13277
13312
  \uFF3D <!-- U+FF3D FULLWIDTH RIGHT SQUARE BRACKET (]) -->
13278
13313
  \u3008 <!-- U+3008 LEFT ANGLE BRACKET (〈) -->
13279
13314
  \u3009 <!-- U+3009 RIGHT ANGLE BRACKET (〉) -->
13280
13315
  \u3016 <!-- U+3016 LEFT WHITE LENTICULAR BRACKET (〖) -->
13281
13316
  \u3017 <!-- U+3017 RIGHT WHITE LENTICULAR BRACKET (〗) -->
13282
-
13283
13317
  \u301A <!-- U+301A LEFT WHITE SQUARE BRACKET (〚) -->
13284
13318
  \u301B <!-- U+301B RIGHT WHITE SQUARE BRACKET (〛) -->
13285
13319
  \u301C <!-- U+301C WAVE DASH (〜) -->
@@ -13311,6 +13345,7 @@
13311
13345
  <xsl:variable name="regex_ja_spec"><xsl:value-of select="translate(normalize-space($regex_ja_spec_), ' ', '')"/></xsl:variable>
13312
13346
  <xsl:template name="insertVerticalChar">
13313
13347
  <xsl:param name="str"/>
13348
+ <xsl:param name="char_prev"/>
13314
13349
  <xsl:param name="writing-mode">lr-tb</xsl:param>
13315
13350
  <xsl:param name="reference-orientation">90</xsl:param>
13316
13351
  <xsl:param name="add_zero_width_space">false</xsl:param>
@@ -13320,53 +13355,99 @@
13320
13355
  </xsl:when>
13321
13356
  <xsl:otherwise>
13322
13357
  <xsl:if test="string-length($str) &gt; 0">
13323
- <xsl:variable name="horizontal_mode" select="normalize-space(ancestor::*[local-name() = 'span'][@class = 'horizontal'] and 1 = 1)"/>
13358
+
13359
+ <!-- <xsl:variable name="horizontal_mode" select="normalize-space(ancestor::*[local-name() = 'span'][@class = 'horizontal'] and 1 = 1)"/> -->
13324
13360
  <xsl:variable name="char" select="substring($str,1,1)"/>
13325
- <fo:inline-container text-align="center" alignment-baseline="central" width="1em" margin="0" padding="0" text-indent="0mm" last-line-end-indent="0mm" start-indent="0mm" end-indent="0mm">
13326
- <xsl:if test="normalize-space($writing-mode) != ''">
13327
- <xsl:attribute name="writing-mode"><xsl:value-of select="$writing-mode"/></xsl:attribute>
13328
- <xsl:attribute name="reference-orientation">90</xsl:attribute>
13329
- </xsl:if>
13330
- <xsl:if test="normalize-space(java:matches(java:java.lang.String.new($char), concat('(', $regex_ja_spec, '{1,})'))) = 'true'">
13331
- <xsl:attribute name="reference-orientation">0</xsl:attribute>
13332
- </xsl:if>
13333
- <xsl:if test="$char = '゜' or $char = '。' or $char = '﹒' or $char = '.'">
13334
- <!-- Rotate 180°:
13335
- U+309C KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK (゜)
13336
- U+3002 IDEOGRAPHIC FULL STOP (。)
13337
- U+FE52 SMALL FULL STOP (﹒)
13338
- U+FF0E FULLWIDTH FULL STOP ()
13339
- -->
13340
- <xsl:attribute name="reference-orientation">-90</xsl:attribute>
13341
- </xsl:if>
13342
- <fo:block-container width="1em">
13343
- <fo:block line-height="1em">
13344
- <xsl:choose>
13345
- <xsl:when test="$horizontal_mode = 'true'">
13346
- <xsl:value-of select="$str"/>
13347
- </xsl:when>
13348
- <xsl:otherwise>
13361
+ <xsl:variable name="char_next" select="substring($str,2,1)"/>
13362
+
13363
+ <xsl:variable name="char_half_width" select="normalize-space(java:matches(java:java.lang.String.new($char), concat('([', $regex_ja_spec_half_width, ']{1,})')))"/>
13364
+
13365
+ <xsl:choose>
13366
+ <xsl:when test="$char_half_width = 'true'">
13367
+ <fo:inline>
13368
+ <xsl:attribute name="baseline-shift">7%</xsl:attribute>
13369
+ <xsl:value-of select="$char"/>
13370
+ </fo:inline>
13371
+ </xsl:when>
13372
+ <xsl:otherwise>
13373
+ <!-- namespace-uri(ancestor::*[local-name() = 'title']) != '' to skip title from $contents -->
13374
+ <xsl:if test="namespace-uri(ancestor::*[local-name() = 'title']) != '' and ($char_prev = '' and ../preceding-sibling::node())">
13375
+ <fo:inline padding-left="1mm"><xsl:value-of select="$zero_width_space"/></fo:inline>
13376
+ </xsl:if>
13377
+ <fo:inline-container text-align="center" alignment-baseline="central" width="1em" margin="0" padding="0" text-indent="0mm" last-line-end-indent="0mm" start-indent="0mm" end-indent="0mm" role="SKIP" text-align-last="center">
13378
+ <xsl:if test="normalize-space($writing-mode) != ''">
13379
+ <xsl:attribute name="writing-mode"><xsl:value-of select="$writing-mode"/></xsl:attribute>
13380
+ <xsl:attribute name="reference-orientation">90</xsl:attribute>
13381
+ </xsl:if>
13382
+ <xsl:if test="normalize-space(java:matches(java:java.lang.String.new($char), concat('(', $regex_ja_spec, '{1,})'))) = 'true'">
13383
+ <xsl:attribute name="reference-orientation">0</xsl:attribute>
13384
+ </xsl:if>
13385
+ <xsl:if test="$char = '゜' or $char = '。' or $char = '﹒' or $char = '.'">
13386
+ <!-- Rotate 180°:
13387
+ U+309C KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK (゜)
13388
+ U+3002 IDEOGRAPHIC FULL STOP (。)
13389
+ U+FE52 SMALL FULL STOP (﹒)
13390
+ U+FF0E FULLWIDTH FULL STOP (.)
13391
+ -->
13392
+ <xsl:attribute name="reference-orientation">-90</xsl:attribute>
13393
+ </xsl:if>
13394
+ <fo:block-container width="1em" role="SKIP"><!-- border="0.5pt solid blue" -->
13395
+ <fo:block line-height="1em" role="SKIP">
13396
+ <!-- <xsl:choose>
13397
+ <xsl:when test="$horizontal_mode = 'true'">
13398
+ <xsl:value-of select="$str"/>
13399
+ </xsl:when>
13400
+ <xsl:otherwise>
13401
+ <xsl:value-of select="$char"/>
13402
+ </xsl:otherwise>
13403
+ </xsl:choose> -->
13349
13404
  <xsl:value-of select="$char"/>
13350
- </xsl:otherwise>
13351
- </xsl:choose>
13352
- </fo:block>
13353
- </fo:block-container>
13354
- </fo:inline-container>
13355
- <xsl:if test="$add_zero_width_space = 'true' and ($char = ',' or $char = '.' or $char = ' ' or $char = '·' or $char = ')' or $char = ']' or $char = '}')"><xsl:value-of select="$zero_width_space"/></xsl:if>
13356
-
13357
- <xsl:if test="$horizontal_mode = 'false'">
13358
- <xsl:call-template name="insertVerticalChar">
13359
- <xsl:with-param name="str" select="substring($str, 2)"/>
13360
- <xsl:with-param name="writing-mode" select="$writing-mode"/>
13361
- <xsl:with-param name="reference-orientation" select="$reference-orientation"/>
13362
- <xsl:with-param name="add_zero_width_space" select="$add_zero_width_space"/>
13363
- </xsl:call-template>
13364
- </xsl:if>
13405
+ </fo:block>
13406
+ </fo:block-container>
13407
+ </fo:inline-container>
13408
+ <xsl:if test="namespace-uri(ancestor::*[local-name() = 'title']) != '' and ($char_next != '' or ../following-sibling::node())">
13409
+ <fo:inline padding-left="1mm"><xsl:value-of select="$zero_width_space"/></fo:inline>
13410
+ </xsl:if>
13411
+ </xsl:otherwise>
13412
+ </xsl:choose>
13413
+
13414
+ <xsl:if test="$add_zero_width_space = 'true' and ($char = ',' or $char = '.' or $char = ' ' or $char = '·' or $char = ')' or $char = ']' or $char = '}' or $char = '/')"><xsl:value-of select="$zero_width_space"/></xsl:if>
13415
+ <!-- <xsl:if test="$horizontal_mode = 'false'"> -->
13416
+ <xsl:call-template name="insertVerticalChar">
13417
+ <xsl:with-param name="str" select="substring($str, 2)"/>
13418
+ <xsl:with-param name="char_prev" select="$char"/>
13419
+ <xsl:with-param name="writing-mode" select="$writing-mode"/>
13420
+ <xsl:with-param name="reference-orientation" select="$reference-orientation"/>
13421
+ <xsl:with-param name="add_zero_width_space" select="$add_zero_width_space"/>
13422
+ </xsl:call-template>
13423
+ <!-- </xsl:if> -->
13365
13424
  </xsl:if>
13366
13425
  </xsl:otherwise>
13367
13426
  </xsl:choose>
13368
13427
  </xsl:template>
13369
13428
 
13429
+ <xsl:template name="insertHorizontalChars">
13430
+ <xsl:param name="str"/>
13431
+ <xsl:param name="writing-mode">lr-tb</xsl:param>
13432
+ <xsl:param name="reference-orientation">90</xsl:param>
13433
+ <xsl:param name="add_zero_width_space">false</xsl:param>
13434
+ <xsl:choose>
13435
+ <xsl:otherwise>
13436
+ <fo:inline-container text-align="center" alignment-baseline="central" width="1em" margin="0" padding="0" text-indent="0mm" last-line-end-indent="0mm" start-indent="0mm" end-indent="0mm" role="SKIP">
13437
+ <xsl:if test="normalize-space($writing-mode) != ''">
13438
+ <xsl:attribute name="writing-mode"><xsl:value-of select="$writing-mode"/></xsl:attribute>
13439
+ <xsl:attribute name="reference-orientation">90</xsl:attribute>
13440
+ </xsl:if>
13441
+ <fo:block-container width="1em" role="SKIP"> <!-- border="0.5pt solid green" -->
13442
+ <fo:block line-height="1em" role="SKIP">
13443
+ <xsl:value-of select="$str"/>
13444
+ </fo:block>
13445
+ </fo:block-container>
13446
+ </fo:inline-container>
13447
+ </xsl:otherwise>
13448
+ </xsl:choose>
13449
+ </xsl:template>
13450
+
13370
13451
  <xsl:template name="number-to-words">
13371
13452
  <xsl:param name="number"/>
13372
13453
  <xsl:param name="first"/>
@@ -1,5 +1,5 @@
1
1
  module Metanorma
2
2
  module Cc
3
- VERSION = "2.5.8".freeze
3
+ VERSION = "2.5.9".freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metanorma-cc
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.5.8
4
+ version: 2.5.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-12-10 00:00:00.000000000 Z
11
+ date: 2024-12-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: metanorma-generic