coradoc-adoc 2.0.13 → 2.0.14
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
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 36de3b63e2c80a4abafb35c88ca1ba80eb52603af631191e16f26d6482a5398c
|
|
4
|
+
data.tar.gz: 53026d0cf6835c5824636ffd6455f2baceecc3ffdd510cc26c8b79910c180c4f
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 8c51394ca9c3bde2a4d7c329e01648ae54d51d6e95e767a85cbaedc8aac35894fccaa50a9d46bf629477d8ac897700b70fff92d060dcbc9acad7182f92913672
|
|
7
|
+
data.tar.gz: 1bc422db9eeb898056d1a79150a1efdf81bddce0f0895cfc1760d9e6cc1953ccfc0d29aa2718da79c5e637ae1afca3565c8a08832950e4bfc0c3b102d3a4ea5a
|
|
@@ -4,25 +4,13 @@ module Coradoc
|
|
|
4
4
|
module AsciiDoc
|
|
5
5
|
module Parser
|
|
6
6
|
module Citation
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
def xref_str
|
|
12
|
-
match('[^,>]').repeat(1).as(:text)
|
|
13
|
-
end
|
|
14
|
-
|
|
15
|
-
def xref_arg
|
|
16
|
-
(str('section') | str('paragraph') | str('clause') | str('annex') | str('table')).as(:key) >>
|
|
17
|
-
match('[ =]').as(:delimiter) >>
|
|
18
|
-
match('[^,>=]').repeat(1).as(:value)
|
|
19
|
-
end
|
|
20
|
-
|
|
7
|
+
# In `<<target,text>>`, the target is everything up to the first comma
|
|
8
|
+
# or closing `>`. The text is everything else up to `>` — it can
|
|
9
|
+
# contain commas, quotes, and any other punctuation.
|
|
21
10
|
def cross_reference
|
|
22
|
-
(str('<<') >>
|
|
23
|
-
|
|
24
|
-
(str(',') >>
|
|
25
|
-
).maybe >>
|
|
11
|
+
(str('<<') >>
|
|
12
|
+
match('[^,>]').repeat(1).as(:href) >>
|
|
13
|
+
(str(',') >> match('[^>]').repeat(0).as(:text)).maybe >>
|
|
26
14
|
str('>>')
|
|
27
15
|
).as(:cross_reference)
|
|
28
16
|
end
|
|
@@ -27,20 +27,11 @@ module Coradoc
|
|
|
27
27
|
end
|
|
28
28
|
|
|
29
29
|
# Cross reference
|
|
30
|
-
rule(
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
href: simple(:href),
|
|
36
|
-
name: simple(:name)
|
|
37
|
-
) do
|
|
38
|
-
Model::Inline::CrossReference.new(href: href.to_s, args: [name.to_s])
|
|
39
|
-
end
|
|
40
|
-
|
|
41
|
-
rule(cross_reference: sequence(:xref)) do
|
|
42
|
-
args = xref.size > 1 ? xref[1..] : []
|
|
43
|
-
Model::Inline::CrossReference.new(href: xref[0], args:)
|
|
30
|
+
rule(cross_reference: subtree(:xref)) do
|
|
31
|
+
href = xref[:href].to_s
|
|
32
|
+
text = xref[:text]
|
|
33
|
+
args = text ? [text.to_s] : []
|
|
34
|
+
Model::Inline::CrossReference.new(href:, args:)
|
|
44
35
|
end
|
|
45
36
|
|
|
46
37
|
# Inline image
|
|
@@ -88,11 +79,6 @@ module Coradoc
|
|
|
88
79
|
Coradoc::AsciiDoc::Model::Inline::Footnote.new(text: text_str)
|
|
89
80
|
end
|
|
90
81
|
|
|
91
|
-
# Href arg
|
|
92
|
-
rule(href_arg: simple(:href_arg)) do
|
|
93
|
-
href_arg.to_s
|
|
94
|
-
end
|
|
95
|
-
|
|
96
82
|
# Inline formatting rules generated from a single registry.
|
|
97
83
|
# See InlineRules::FORMATTING_VARIANTS. `span` is special
|
|
98
84
|
# because it carries `text:` + `attributes:` rather than
|