metanorma-utils 1.8.3 → 1.8.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/utils/main.rb +17 -10
- data/lib/utils/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: acea881df59c64c2137792a3fc9bbb5a36d09dd43fc5fa6d0e3b066b3bbb60da
|
4
|
+
data.tar.gz: 00fc04e75a5eec309ed1a1d62633e7c9358e93adbf0558f12bad11fa069d4441
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2ba485eb93b52444caa930e05dc185f8506fc1d68c70483f43593e560e63ab418aeea60375e579363b120a7864046daefe4cd6ded9769491990748a88570cf83
|
7
|
+
data.tar.gz: c16aecbe71a3acdede53591130d310f9745fc3b8d59a7624250d36ab93468a0f16ecc05b6251c10d6dac34bab792fd15fb0344a2cd30e606f4166b4d5ed045af
|
data/lib/utils/main.rb
CHANGED
@@ -4,6 +4,7 @@ require "sterile"
|
|
4
4
|
require "htmlentities"
|
5
5
|
require "nokogiri"
|
6
6
|
require "csv"
|
7
|
+
require_relative "../sterile/sterile"
|
7
8
|
|
8
9
|
module Metanorma
|
9
10
|
module Utils
|
@@ -34,21 +35,26 @@ module Metanorma
|
|
34
35
|
docfile.nil? ? "./" : "#{Pathname.new(docfile).parent}/"
|
35
36
|
end
|
36
37
|
|
37
|
-
|
38
|
+
CJK = "\\p{Han}|\\p{Bopomofo}|\\p{Hangul}|\\p{Hiragana}|\\p{Katakana}"
|
39
|
+
.freeze
|
40
|
+
|
41
|
+
# TODO needs internationalisation of quote
|
38
42
|
def smartformat(text)
|
39
|
-
HTMLEntities.new.
|
40
|
-
|
41
|
-
|
42
|
-
.gsub("--", "—"),
|
43
|
-
)
|
44
|
-
.smart_format, :basic
|
43
|
+
ret = HTMLEntities.new.decode(
|
44
|
+
text.gsub(/ --? /, " — ")
|
45
|
+
.gsub("--", "—"),
|
45
46
|
)
|
47
|
+
ret = ret.gsub(%r{(#{CJK})(["'])}o, "\\1\u200a\\2")
|
48
|
+
.gsub(%r{(["'])(#{CJK})}o, "\\1\u200a\\2")
|
49
|
+
ret = ret.smart_format
|
50
|
+
ret = ret.gsub(%r{(#{CJK})\u200a}o, "\\1")
|
51
|
+
.gsub(%r{\u200a(#{CJK})}o, "\\1")
|
52
|
+
HTMLEntities.new.encode(ret, :basic)
|
46
53
|
end
|
47
54
|
|
48
55
|
def endash_date(elem)
|
49
56
|
elem.traverse do |n|
|
50
|
-
|
51
|
-
|
57
|
+
n.text? or next
|
52
58
|
n.replace(n.text.gsub(/\s+--?\s+/, "–").gsub("--", "–"))
|
53
59
|
end
|
54
60
|
end
|
@@ -133,7 +139,8 @@ module Metanorma
|
|
133
139
|
# if punct fails, try break on camel case, with soft hyphen
|
134
140
|
# break regardless every LONGSTRING_THRESHOLD * LONGSTR_NOPUNCT,
|
135
141
|
# with soft hyphen
|
136
|
-
def break_up_long_str(text, threshold = LONGSTR_THRESHOLD,
|
142
|
+
def break_up_long_str(text, threshold = LONGSTR_THRESHOLD,
|
143
|
+
nopunct = LONGSTR_NOPUNCT)
|
137
144
|
/^\s*$/.match?(text) and return text
|
138
145
|
text.split(/(?=(?:\s|-))/).map do |w|
|
139
146
|
if /^\s*$/.match(text) || (w.size < threshold) then w
|
data/lib/utils/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: metanorma-utils
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.8.
|
4
|
+
version: 1.8.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ribose Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-07-
|
11
|
+
date: 2024-07-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: asciidoctor
|