kramdown-rfc2629 1.4.10 → 1.4.11

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: e94ef372b40394892134b787b7deb9a1c69060622452f6d7eb41d0165346de14
4
- data.tar.gz: 55e0579bc857461d2ca7502957853264e4b176f5760b79e0dacdd3245a9f132c
3
+ metadata.gz: 550eb712315978bfe6985b74bce8ed0c2c8d69c94ecd0e78e3950d8822644aed
4
+ data.tar.gz: 5b51583ad31b2c00d9e490e983b6465a51fb84a334fff1ea42e24212f0d24968
5
5
  SHA512:
6
- metadata.gz: 53a957d89977260a054963342c8ef5d2aa9e270689fc6f78e1abed296489a18cb12a66c1b8ddfad6404599180c3cc61cd271e83a969064e272d39ec3b1a5373d
7
- data.tar.gz: 6f2af11238cb255f3f1506fa6bf31264dc8224972a68c41a33a99e0722e3e91db5f7296d37d460dddf301d90a8ec400ba14d9b8d04938415832c93089cdef8c5
6
+ metadata.gz: 9033a5b37fa0fdc30bce1c4d02d987d96f895dfad5b3adb6419bd5bad4c5fbd0074edcaa0de955fc1857764d159df8f54b4a7bd4ef4720c3f9b0edc3645ebdd4
7
+ data.tar.gz: ee00920f4806f49f74d36343218453f8e886fd93f12949b37dbc92fabeab6947237065f997fa13218ded3b492a5d7a4c40901d9707f7973d28b8318f4dfcbcca
@@ -1,6 +1,6 @@
1
1
  spec = Gem::Specification.new do |s|
2
2
  s.name = 'kramdown-rfc2629'
3
- s.version = '1.4.10'
3
+ s.version = '1.4.11'
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.}
@@ -363,6 +363,19 @@ COLORS
363
363
  end
364
364
  end
365
365
 
366
+ def svg_clean_kgt(s)
367
+ d = REXML::Document.new(s)
368
+ REXML::XPath.each(d.root, "//rect|//line|//path") do |x|
369
+ x.attributes["fill"] = "none"
370
+ x.attributes["stroke"] = "black"
371
+ x.attributes["stroke-width"] = "1.5"
372
+ end
373
+ d.to_s
374
+ rescue => detail
375
+ warn "*** Can't clean SVG: #{detail}"
376
+ d
377
+ end
378
+
366
379
  def svg_clean(s) # expensive, risky
367
380
  d = REXML::Document.new(s)
368
381
  REXML::XPath.each(d.root, "//*[@shape-rendering]") { |x| x.attributes["shape-rendering"] = nil } #; warn x.inspect }
@@ -407,9 +420,12 @@ COLORS
407
420
  file = Tempfile.new("kramdown-rfc")
408
421
  file.write(result)
409
422
  file.close
423
+ dont_clean = false
424
+ dont_check = false
410
425
  case t
411
426
  when "goat"
412
427
  result1, err, _s = Open3.capture3("goat #{file.path}", stdin_data: result);
428
+ dont_clean = true
413
429
  when "ditaa" # XXX: This needs some form of option-setting
414
430
  result1, err, _s = Open3.capture3("ditaa #{file.path} --svg -o -", stdin_data: result);
415
431
  when "mscgen"
@@ -424,18 +440,27 @@ COLORS
424
440
  result1, err, _s = Open3.capture3("plantuml -pipe -tsvg", stdin_data: plantuml);
425
441
  result, err1, _s = Open3.capture3("plantuml -pipe -tutxt", stdin_data: plantuml) if t == "plantuml-utxt"
426
442
  err << err1.to_s
443
+ when "railroad", "railroad-utf8"
444
+ result1, err1, _s = Open3.capture3("kgt -l abnf -e svg", stdin_data: result);
445
+ result1 = svg_clean_kgt(result1); dont_clean = true
446
+ result, err, _s = Open3.capture3("kgt -l abnf -e rr#{t == "railroad" ? "text" : "utf8"}",
447
+ stdin_data: result);
448
+ err << err1.to_s
427
449
  when "math"
428
450
  result1, err, _s = Open3.capture3("tex2svg --font STIX --speech=false #{Shellwords.escape(' ' << result)}");
429
451
  result, err1, _s = Open3.capture3("asciitex -f #{file.path}")
430
452
  err << err1
431
453
  end
432
454
  capture_croak(t, err)
433
- # warn ["goat:", result1.inspect]
455
+ # warn ["text:", result.inspect]
456
+ # warn ["svg:", result1.inspect]
434
457
  file.unlink
435
- result1 = svg_clean(result1) unless t == "goat"
436
- result1, err, _s = Open3.capture3("svgcheck -Xqa", stdin_data: result1);
437
- capture_croak("svgcheck", err)
438
- # warn ["svgcheck:", result1.inspect]
458
+ result1 = svg_clean(result1) unless dont_clean
459
+ unless dont_check
460
+ result1, err, _s = Open3.capture3("svgcheck -Xqa", stdin_data: result1);
461
+ # warn ["svgcheck:", result1.inspect]
462
+ capture_croak("svgcheck", err)
463
+ end
439
464
  if result1 == ''
440
465
  warn "*** could not create svg for #{result.inspect[0...20]}..."
441
466
  exit 65 # EX_DATAERR
@@ -490,7 +515,8 @@ COLORS
490
515
  end
491
516
  end
492
517
  case t
493
- when "goat", "ditaa", "mscgen", "plantuml", "plantuml-utxt", "mermaid", "math"
518
+ when "goat", "ditaa", "mscgen", "plantuml", "plantuml-utxt",
519
+ "railroad", "railroad-utf8", "mermaid", "math"
494
520
  if gi
495
521
  warn "*** Can't set GI #{gi} for composite SVG artset"
496
522
  end
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.10
4
+ version: 1.4.11
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-05-05 00:00:00.000000000 Z
11
+ date: 2021-05-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: kramdown