kramdown-rfc2629 1.0.8 → 1.0.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
  SHA1:
3
- metadata.gz: 57df3f27d6d000562d03f985dc891fe74f347fa4
4
- data.tar.gz: 072195d9032c685855ae86d519f2222fa64d3f07
3
+ metadata.gz: e7c5ddf316ea84b1de6f2ffd16a773e0bbcf5849
4
+ data.tar.gz: f925558c2e8faa8eda467cba5d4a63b56403ceaa
5
5
  SHA512:
6
- metadata.gz: f7abb9e0af9fee9f99376973ab21bef6cd0f94994d25fe4d0a2f2cf4210410e541fdf166ba4b01248c652518f131062465bbd82efdf65359e1b4566a6b9f7e74
7
- data.tar.gz: 714c6786daf0e777e4a3c70f3b207a5838ed2c2cd7628197acb5e1097f791218ddd2f55d20f8862fcd37a44ab25aaad3fe809efeaca57139d56cbba470ccad7d
6
+ metadata.gz: 2269314b10a3a436dcad7f85b12e81fda55948c1d3ce04b48eead0d54afc8b4080468f55663d5b139bb21d0510075370a45c9e908fb272d3c74b30c747929891
7
+ data.tar.gz: b3e24004d7f0979c46ce5e472f0d6c05bb67b7c6edfe805ed6727a99aac96a807d7564b8e7074fe016ec6a06e6c09568e5101460f7df33425a2efe67073fc689
data/bin/kramdown-rfc2629 CHANGED
@@ -220,12 +220,11 @@ def bibtagsys(bib)
220
220
  rfc4d = "%04d" % $1.to_i
221
221
  [bib.upcase,
222
222
  "http://xml.resource.org/public/rfc/bibxml/reference.RFC.#{rfc4d}.xml"]
223
- elsif bib =~ /\AI-D\./i
224
- [bib,
225
- "http://xml.resource.org/public/rfc/bibxml3/reference.#{bib}.xml"]
226
- elsif bib =~ /\AW3C\./i
227
- [bib,
228
- "http://xml.resource.org/public/rfc/bibxml4/reference.#{bib}.xml"]
223
+ elsif bib =~ /\A([-A-Z0-9]+)\./ &&
224
+ dir = Kramdown::Converter::Rfc2629::XML_RESOURCE_ORG_MAP[$1]
225
+ bib1 = bib.gsub(/\A[0-9]/) { "_#{$&}" } # can't start an ID with a number
226
+ [bib1,
227
+ "http://xml.resource.org/public/rfc/#{dir}/reference.#{bib}.xml"]
229
228
  end
230
229
  end
231
230
 
@@ -1,10 +1,10 @@
1
1
  spec = Gem::Specification.new do |s|
2
2
  s.name = 'kramdown-rfc2629'
3
- s.version = '1.0.8'
3
+ s.version = '1.0.9'
4
4
  s.summary = "Kramdown extension for generating RFC 2629 XML."
5
5
  s.description = %{An RFC2629 (XML2RFC) generating backend for Thomas Leitner's
6
6
  "kramdown" markdown parser. Mostly useful for RFC writers.}
7
- s.add_dependency('kramdown', '~> 1.2.0')
7
+ s.add_dependency('kramdown', '~> 1.3.0')
8
8
  s.files = Dir['lib/**/*.rb'] + %w(README.md kramdown-rfc2629.gemspec bin/kramdown-rfc2629 data/kramdown-rfc2629.erb)
9
9
  s.require_path = 'lib'
10
10
  s.executables = ['kramdown-rfc2629']
@@ -13,7 +13,7 @@
13
13
  raise "sorry, 1.8 was last decade" unless RUBY_VERSION >= '1.9'
14
14
 
15
15
  # this version also works with kramdown 0.12, 0.13, 0.14, but 1.x has the right license
16
- gem 'kramdown', '~> 1.2.0'
16
+ gem 'kramdown', '~> 1.3.0'
17
17
  require 'kramdown'
18
18
 
19
19
  require 'rexml/parsers/baseparser'
@@ -42,6 +42,7 @@ module Kramdown
42
42
  def parse_xref
43
43
  @src.pos += @src.matched_size
44
44
  href = @src[1]
45
+ href = href.gsub(/\A[0-9]/) { "_#{$&}" } # can't start an IDREF with a number
45
46
  el = Element.new(:xref, nil, {'target' => href})
46
47
  @tree.children << el
47
48
  end
@@ -366,6 +367,20 @@ module Kramdown
366
367
  File.read(fn)
367
368
  end
368
369
 
370
+ XML_RESOURCE_ORG_MAP = {
371
+ "RFC" => "bibxml", "I-D" => "bibxml3", "W3C" => "bibxml4", "3GPP" => "bibxml5",
372
+ "ANSI" => "bibxml2",
373
+ "CCITT" => "bibxml2",
374
+ "FIPS" => "bibxml2",
375
+ "IANA" => "bibxml2",
376
+ "IEEE" => "bibxml2",
377
+ "ISO" => "bibxml2",
378
+ "ITU" => "bibxml2",
379
+ "NIST" => "bibxml2",
380
+ "OASIS" => "bibxml2",
381
+ "PKCS" => "bibxml2",
382
+ }
383
+
369
384
  def convert_img(el, indent, opts) # misuse the tag!
370
385
  if a = el.attr
371
386
  alt = a.delete('alt').strip
@@ -376,14 +391,15 @@ module Kramdown
376
391
  end
377
392
  if alt == ":include:" # Really bad misuse of tag...
378
393
  to_insert = ""
379
- anchor.scan(/(W3C|[A-Z-]+)[.]?([A-Za-z0-9-]+)/) do |t, n|
394
+ anchor.scan(/(W3C|3GPP|[A-Z-]+)[.]?([A-Za-z0-9.-]+)/) do |t, n|
380
395
  fn = "reference.#{t}.#{n}.xml"
381
- sub = { "RFC" => "bibxml", "I-D" => "bibxml3", "W3C" => "bibxml4" }[t]
396
+ sub = XML_RESOURCE_ORG_MAP[t]
382
397
  puts "Huh: ${fn}" unless sub
383
398
  url = "http://xml.resource.org/public/rfc/#{sub}/#{fn}"
384
399
  to_insert = get_and_cache_resource(url)
385
400
  end
386
- to_insert.gsub(/<\?xml version='1.0' encoding='UTF-8'\?>/, '')
401
+ to_insert.gsub(/<\?xml version=["']1.0["'] encoding=["']UTF-8["']\?>/, '').
402
+ gsub(/(anchor=["'])([0-9])/) { "#{$1}_#{$2}"} # can't start an ID with a number
387
403
  else
388
404
  "<xref#{el_html_attributes(el)}>#{alt}</xref>"
389
405
  end
metadata CHANGED
@@ -1,29 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kramdown-rfc2629
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.8
4
+ version: 1.0.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Carsten Bormann
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-09-09 00:00:00.000000000 Z
11
+ date: 2014-02-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: kramdown
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 1.2.0
19
+ version: 1.3.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ~>
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 1.2.0
26
+ version: 1.3.0
27
27
  description: |-
28
28
  An RFC2629 (XML2RFC) generating backend for Thomas Leitner's
29
29
  "kramdown" markdown parser. Mostly useful for RFC writers.
@@ -33,11 +33,11 @@ executables:
33
33
  extensions: []
34
34
  extra_rdoc_files: []
35
35
  files:
36
- - lib/kramdown-rfc2629.rb
37
36
  - README.md
38
- - kramdown-rfc2629.gemspec
39
37
  - bin/kramdown-rfc2629
40
38
  - data/kramdown-rfc2629.erb
39
+ - kramdown-rfc2629.gemspec
40
+ - lib/kramdown-rfc2629.rb
41
41
  homepage: http://github.com/cabo/kramdown-rfc2629
42
42
  licenses:
43
43
  - MIT
@@ -48,18 +48,18 @@ require_paths:
48
48
  - lib
49
49
  required_ruby_version: !ruby/object:Gem::Requirement
50
50
  requirements:
51
- - - '>='
51
+ - - ">="
52
52
  - !ruby/object:Gem::Version
53
53
  version: 1.9.2
54
54
  required_rubygems_version: !ruby/object:Gem::Requirement
55
55
  requirements:
56
- - - '>='
56
+ - - ">="
57
57
  - !ruby/object:Gem::Version
58
58
  version: '0'
59
59
  requirements:
60
60
  - wget
61
61
  rubyforge_project:
62
- rubygems_version: 2.0.7
62
+ rubygems_version: 2.2.0
63
63
  signing_key:
64
64
  specification_version: 4
65
65
  summary: Kramdown extension for generating RFC 2629 XML.