kramdown-rfc2629 1.4.1 → 1.4.6
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/README.md +1 -1
- data/bin/doilit +5 -1
- data/bin/kdrfc +4 -0
- data/bin/kramdown-rfc2629 +21 -1
- data/data/encoding-fallbacks.txt +1 -0
- data/kramdown-rfc2629.gemspec +1 -1
- data/lib/kramdown-rfc/refxml.rb +1 -0
- data/lib/kramdown-rfc2629.rb +17 -4
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4b0564f81e1af0b8fd748342c07d417a7d24a5eee8ec5a6cd64f79234ebc192a
|
4
|
+
data.tar.gz: 2f9e7421b5355b608bc5a41174317bccd4b55e95f1c2089228517003572f19e5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e0aa2949a7d5d28eacdceff68e37fae0338a7f92abab5ed21fcb99414042c528521d844d8e92d14202a0b914eec685149c69dcbdb53d3089a0f72723872d4b63
|
7
|
+
data.tar.gz: 9424d9efbe85b3ca435ff1691f052097b579ff02247af53a5b463b2eb3cf50bed3761ad4386d87a93df32e6b9a87a4924e1c47eaae0e01b2163473a9e65bf950
|
data/README.md
CHANGED
@@ -616,7 +616,7 @@ Other human-oriented markup input languages that are being used for authoring RF
|
|
616
616
|
Since kramdown version 1.0, kramdown itself is MIT licensed, which
|
617
617
|
made it possible to license kramdown-rfc2629 under the same license.
|
618
618
|
|
619
|
-
[kramdown]:
|
619
|
+
[kramdown]: https://kramdown.gettalong.org
|
620
620
|
[kdsyntax]: http://kramdown.gettalong.org/syntax.html
|
621
621
|
[kdsyntax-ial]: http://kramdown.gettalong.org/syntax.html#inline-attribute-lists
|
622
622
|
[stupid]: http://tools.ietf.org/id/draft-hartke-xmpp-stupid-00
|
data/bin/doilit
CHANGED
@@ -75,7 +75,11 @@ ARGV.each do |doi|
|
|
75
75
|
if (ct = cite["container-title"]) && ct != []
|
76
76
|
info = []
|
77
77
|
if v = cite["volume"]
|
78
|
-
|
78
|
+
vi = "vol. #{v}"
|
79
|
+
if (v = cite["journal-issue"]) && (issue = v["issue"])
|
80
|
+
vi << ", no. #{issue}"
|
81
|
+
end
|
82
|
+
info << vi
|
79
83
|
end
|
80
84
|
if p = cite["page"]
|
81
85
|
info << "pp. #{p}"
|
data/bin/kdrfc
CHANGED
@@ -127,6 +127,9 @@ BANNER
|
|
127
127
|
opts.on("-p", "--[no-]prep", "Convert xml to prepped xml") do |v|
|
128
128
|
$options.prep = v
|
129
129
|
end
|
130
|
+
opts.on("-P", "--[no-]pdf", "Convert xml to PDF") do |v|
|
131
|
+
$options.pdf = v
|
132
|
+
end
|
130
133
|
opts.on("-c", "--[no-]convert", "Convert xml to v3 xml") do |v|
|
131
134
|
$options.v2v3 = v
|
132
135
|
end
|
@@ -150,6 +153,7 @@ def process_the_xml(fn, base)
|
|
150
153
|
process_xml(fn, "#{base}.v2v3.xml", "--v2v3") if $options.v2v3
|
151
154
|
process_xml(fn, "#{base}.txt") if $options.txt || $options.idnits
|
152
155
|
process_xml(fn, "#{base}.html", "--html") if $options.html
|
156
|
+
process_xml(fn, "#{base}.pdf", "--pdf") if $options.pdf
|
153
157
|
run_idnits("#{base}.txt") if $options.idnits
|
154
158
|
end
|
155
159
|
|
data/bin/kramdown-rfc2629
CHANGED
@@ -14,7 +14,7 @@ Encoding.default_external = "UTF-8" # wake up, smell the coffee
|
|
14
14
|
|
15
15
|
def boilerplate(key)
|
16
16
|
case key.downcase
|
17
|
-
when /\Abcp14(\+)?\z/i
|
17
|
+
when /\Abcp14(\+)?(-tagged)?\z/i
|
18
18
|
ret = <<RFC8174
|
19
19
|
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
|
20
20
|
NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED",
|
@@ -28,6 +28,26 @@ These words may also appear in this document in
|
|
28
28
|
lower case as plain English words, absent their normative meanings.
|
29
29
|
PLUS
|
30
30
|
end
|
31
|
+
if $2
|
32
|
+
if $options.v3
|
33
|
+
ret << <<TAGGED
|
34
|
+
|
35
|
+
*[MUST]: <bcp14>
|
36
|
+
*[MUST NOT]: <bcp14>
|
37
|
+
*[REQUIRED]: <bcp14>
|
38
|
+
*[SHALL]: <bcp14>
|
39
|
+
*[SHALL NOT]: <bcp14>
|
40
|
+
*[SHOULD]: <bcp14>
|
41
|
+
*[SHOULD NOT]: <bcp14>
|
42
|
+
*[RECOMMENDED]: <bcp14>
|
43
|
+
*[NOT RECOMMENDED]: <bcp14>
|
44
|
+
*[MAY]: <bcp14>
|
45
|
+
*[OPTIONAL]: <bcp14>
|
46
|
+
TAGGED
|
47
|
+
else
|
48
|
+
warn "** need --v3 to tag bcp14"
|
49
|
+
end
|
50
|
+
end
|
31
51
|
ret
|
32
52
|
else
|
33
53
|
warn "** Unknwon boilerplate key: #{key}"
|
data/data/encoding-fallbacks.txt
CHANGED
data/kramdown-rfc2629.gemspec
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
spec = Gem::Specification.new do |s|
|
2
2
|
s.name = 'kramdown-rfc2629'
|
3
|
-
s.version = '1.4.
|
3
|
+
s.version = '1.4.6'
|
4
4
|
s.summary = "Kramdown extension for generating RFC 7749 XML."
|
5
5
|
s.description = %{An RFC7749 (XML2RFC) generating backend for Thomas Leitner's
|
6
6
|
"kramdown" markdown parser. Mostly useful for RFC writers.}
|
data/lib/kramdown-rfc/refxml.rb
CHANGED
data/lib/kramdown-rfc2629.rb
CHANGED
@@ -102,10 +102,16 @@ module Kramdown
|
|
102
102
|
when /\A(.*) \((#{SECTIONS_RE})\)\z/
|
103
103
|
href = $1
|
104
104
|
handle_bares($2, attr, "parens", href)
|
105
|
-
when /\A([\w.]+)<(
|
105
|
+
when /\A([\w.]+)<(.+)\z/
|
106
106
|
href = $2
|
107
107
|
attr['section'] = $1
|
108
108
|
attr['sectionFormat'] = 'bare'
|
109
|
+
when /\A<<(.+)\z/
|
110
|
+
href = $1
|
111
|
+
attr['format'] = 'title'
|
112
|
+
when /\A<(.+)\z/
|
113
|
+
href = $1
|
114
|
+
attr['format'] = 'counter'
|
109
115
|
end
|
110
116
|
end
|
111
117
|
href = href.gsub(/\A[0-9]/) { "_#{$&}" } # can't start an IDREF with a number
|
@@ -399,7 +405,7 @@ COLORS
|
|
399
405
|
# warn ["goat:", result1.inspect]
|
400
406
|
file.unlink
|
401
407
|
result1 = svg_clean(result1) unless t == "goat"
|
402
|
-
result1, err, _s = Open3.capture3("svgcheck -
|
408
|
+
result1, err, _s = Open3.capture3("svgcheck -Xqa", stdin_data: result1);
|
403
409
|
capture_croak("svgcheck", err)
|
404
410
|
# warn ["svgcheck:", result1.inspect]
|
405
411
|
if result1 == ''
|
@@ -698,7 +704,11 @@ COLORS
|
|
698
704
|
end
|
699
705
|
|
700
706
|
def convert_br(el, indent, opts)
|
701
|
-
|
707
|
+
if $options.v3
|
708
|
+
"<br />"
|
709
|
+
else
|
710
|
+
"<vspace />"
|
711
|
+
end
|
702
712
|
end
|
703
713
|
|
704
714
|
def convert_a(el, indent, opts)
|
@@ -903,7 +913,7 @@ COLORS
|
|
903
913
|
}
|
904
914
|
else
|
905
915
|
REXML::XPath.each(d.root, "/reference/format") { |x|
|
906
|
-
x.attributes["target"].sub!(%r{https?://www.ietf.org/internet-drafts/},
|
916
|
+
x.attributes["target"].sub!(%r{https?://www.ietf.org/internet-drafts/},
|
907
917
|
%{https://www.ietf.org/archive/id/}) if t == "I-D"
|
908
918
|
}
|
909
919
|
end
|
@@ -1069,6 +1079,9 @@ COLORS
|
|
1069
1079
|
title = nil if title.empty?
|
1070
1080
|
value = el.value
|
1071
1081
|
if item = title
|
1082
|
+
if item == "<bcp14>" && $options.v3
|
1083
|
+
return "<bcp14>#{el.value}</bcp14>"
|
1084
|
+
end
|
1072
1085
|
m = title.scan(Parser::RFC2629Kramdown::IREF_START)
|
1073
1086
|
if m.empty?
|
1074
1087
|
subitem = value
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kramdown-rfc2629
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.4.
|
4
|
+
version: 1.4.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Carsten Bormann
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-04-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: kramdown
|
@@ -100,7 +100,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
100
100
|
- !ruby/object:Gem::Version
|
101
101
|
version: '0'
|
102
102
|
requirements: []
|
103
|
-
rubygems_version: 3.2.
|
103
|
+
rubygems_version: 3.2.15
|
104
104
|
signing_key:
|
105
105
|
specification_version: 4
|
106
106
|
summary: Kramdown extension for generating RFC 7749 XML.
|