kramdown-rfc2629 1.6.20 → 1.6.21

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: a373ab53f39fd473fa7cb1c367be9ba006d9826f6da9589237d25dacece71abb
4
- data.tar.gz: 3e3200ab44d58a086ff7548721612deeb8655253a49ff080211631cd5fbfe61e
3
+ metadata.gz: 8c26f93c43853de6883440e6a3214201def29879da0945a42681749ffe545c1e
4
+ data.tar.gz: fce8091ebcdfe69d9d96e12bca694ef8e1f66fab43ccbb6f7aeabf4f5be298f1
5
5
  SHA512:
6
- metadata.gz: f4325baddb160656c921be548f9d594d9c2079bbd03dd06036e31b9f4cf1e7f26df13de7037272fea79f4a9532b3b62cf58fccf85fefb2f5da05942d5ffbaca1
7
- data.tar.gz: f6454debd2535312ef41d24225f315810f103013b9884cecd53a73d13ae9031d7fe13778e7a34a2963208d9904d4167a86774380e6ba7cd41d8a172275b9265f
6
+ metadata.gz: b1536eaeae7bcbd548fea24c97e5a49c5482531c0ec929f410af5dda419fa4f13ed8d92cc71e2132dd931351cde97faf36d9a3ec5a57539d3c334ed4df7228d3
7
+ data.tar.gz: 5370b01327233a3f027673939f2e7e15f166bc27a81c48d3f8d82976af85b3c9c2cd219fe1c3281d364f21faf33b50f467efc18136b0cdc697739f7b82baa8c3
@@ -1,6 +1,6 @@
1
1
  spec = Gem::Specification.new do |s|
2
2
  s.name = 'kramdown-rfc2629'
3
- s.version = '1.6.20'
3
+ s.version = '1.6.21'
4
4
  s.summary = "Kramdown extension for generating RFCXML (RFC 799x)."
5
5
  s.description = %{An RFCXML (RFC 799x) generating backend for Thomas Leitner's
6
6
  "kramdown" markdown parser. Mostly useful for RFC writers.}
@@ -5,7 +5,9 @@ require 'yaml'
5
5
  ACCEPT_CITE_JSON = {"Accept" => "application/citeproc+json"}
6
6
 
7
7
  def doi_fetch_and_convert(doi, fuzzy: false, verbose: false)
8
- cite = JSON.parse(URI("https://dx.doi.org/#{doi}").open(ACCEPT_CITE_JSON).read)
8
+ doipath = doi.sub(/^([0-9.]+)_/) {"#$1/"} # convert initial _ back to /
9
+ # warn "** SUB #{doi} #{doipath}" if doi != doipath
10
+ cite = JSON.parse(URI("https://dx.doi.org/#{doipath}").open(ACCEPT_CITE_JSON).read)
9
11
  puts cite.to_yaml if verbose
10
12
  lit = {}
11
13
  ser = lit["seriesinfo"] = {}
@@ -714,6 +714,20 @@ COLORS
714
714
  [clean, irefs]
715
715
  end
716
716
 
717
+ def clean_pcdatav3(parts) # hack, will become unnecessary with v3 tables
718
+ clean = ''
719
+ parts.each do |p|
720
+ next if p.empty?
721
+ d = REXML::Document.new("<foo>#{p}</foo>")
722
+ t = REXML::XPath.each(d.root, "//text()").to_a.join
723
+ if t != p
724
+ warn "** simplified markup #{p.inspect} into #{t.inspect} in table heading"
725
+ end
726
+ clean << t
727
+ end
728
+ clean
729
+ end
730
+
717
731
  def convert_header(el, indent, opts)
718
732
  # todo: handle appendix tags
719
733
  el = el.deep_clone
@@ -892,8 +906,13 @@ COLORS
892
906
  end
893
907
  end
894
908
  if alignment
895
- res, irefs = clean_pcdata(inner_a(el, indent, opts))
896
- warn "*** lost markup #{irefs} in table heading" unless irefs.empty?
909
+ xmlres = inner_a(el, indent, opts)
910
+ if $options.v3
911
+ res = clean_pcdatav3(xmlres)
912
+ else
913
+ res, irefs = clean_pcdata(xmlres)
914
+ warn "*** lost markup #{irefs} in table heading" unless irefs.empty?
915
+ end
897
916
  "#{' '*indent}<ttcol #{widthopt}align='#{alignment}'#{el_html_attributes(el)}>#{res.empty? ? "&#160;" : res}</ttcol>\n" # XXX need clean_pcdata
898
917
  else
899
918
  res = inner(el, indent, opts)
@@ -1391,9 +1410,9 @@ COLORS
1391
1410
  end
1392
1411
  iref ||= "<iref#{html_attributes(item: item, subitem: subitem)}/>"
1393
1412
  if target
1394
- "<xref#{html_attributes(target: target, format: "none")}>#{value}</xref>#{iref}"
1413
+ "#{iref}<xref#{html_attributes(target: target, format: "none")}>#{value}</xref>"
1395
1414
  else
1396
- "#{value}#{iref}"
1415
+ "#{iref}#{value}"
1397
1416
  end
1398
1417
  end
1399
1418
 
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.6.20
4
+ version: 1.6.21
5
5
  platform: ruby
6
6
  authors:
7
7
  - Carsten Bormann
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-01-18 00:00:00.000000000 Z
11
+ date: 2023-01-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: kramdown