kramdown-rfc2629 1.0.1 → 1.0.2

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
  SHA1:
3
- metadata.gz: 27f5302b493aa86201fbd23cf1f19c756b5c4ff6
4
- data.tar.gz: ed04ef11f870f228b81e4debb3a92a3b72738e51
3
+ metadata.gz: c5b374a652c01bf5be8224ac29dce91b88ddabc2
4
+ data.tar.gz: ff8e2f02be3c2fa0c1940f47fb6a8620fbb8cc96
5
5
  SHA512:
6
- metadata.gz: 41ab3f9f24729e21c1d369ecc04216fdeea7864b23048d6a3b8e8cff77d023ac08dae4efd29bdf10b6c7de39fab35a4fd5f4682ade29d1944344e4d955163eee
7
- data.tar.gz: df968cdd4100624fe7b4f226f8b52dd6e2730d86b3287d2f3e4f87c349c928fee273e05515fe6d88bb3db2c9722c8cf8117e190015a4fd7065b42fd406f57f5f
6
+ metadata.gz: 465d42ddd5285fc636fa62bebb664b72557c8679cacfc4bcb6147a3f358e6d0dd53ebb20124aa2870348d149a6e05ac483c67e34173055f3e66525bd85b3ca25
7
+ data.tar.gz: 44bfd7348d0526f757447b6cab6a08df540215d8a4f92bdc3ca861654b705182a0ea0e7543a5e67d634e35e8e016d1b1beac22cfc76ed254e986af02b7930bf6
@@ -1,6 +1,6 @@
1
1
  spec = Gem::Specification.new do |s|
2
2
  s.name = 'kramdown-rfc2629'
3
- s.version = '1.0.1'
3
+ s.version = '1.0.2'
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.}
@@ -134,10 +134,6 @@ module Kramdown
134
134
  def convert_codeblock(el, indent, opts)
135
135
  el.attr['anchor'] ||= saner_generate_id(el.value)
136
136
  result = el.value
137
- # compensate for XML2RFC idiosyncracy by insisting on a blank line
138
- unless el.attr.delete('tight')
139
- result[0,0] = "\n" unless result[0,1] == "\n"
140
- end
141
137
  blockclass = el.attr.delete('class')
142
138
  if blockclass == 'language-tbreak'
143
139
  result = result.lines.map {|line| [line.chomp, 0]}
@@ -145,19 +141,24 @@ module Kramdown
145
141
  result.each_with_index {|pair, index|
146
142
  if pair[0] == ''
147
143
  result[spaceind][1] += 1
144
+ pair[0] = nil unless index == spaceind
148
145
  else
149
146
  spaceind = index
150
147
  end
151
148
  }
152
- $stderr.puts(result.inspect)
149
+ # $stderr.puts(result.inspect)
153
150
  result = result.map {|line, space|
154
- "<![CDATA[#{line.gsub(/^\s+/) {|s| "\u00A0" * s.size}}]]><vspace blankLines=\"#{space}\"/>"
155
- }.join("\n")
151
+ "<![CDATA[#{line.gsub(/^\s+/) {|s| "\u00A0" * s.size}}]]><vspace blankLines=\"#{space}\"/>" if line
152
+ }.compact.join("\n")
156
153
  "#{' '*indent}<t>#{result}</t>\n"
157
154
  else
158
155
  if blockclass
159
156
  $stderr.puts "*** Unimplemented block class: #{blockclass}"
160
157
  end
158
+ # compensate for XML2RFC idiosyncracy by insisting on a blank line
159
+ unless el.attr.delete('tight')
160
+ result[0,0] = "\n" unless result[0,1] == "\n"
161
+ end
161
162
  "#{' '*indent}<figure#{el_html_attributes(el)}><artwork><![CDATA[#{result}#{result =~ /\n\Z/ ? '' : "\n"}]]></artwork></figure>\n"
162
163
  end
163
164
  end
@@ -198,6 +199,7 @@ module Kramdown
198
199
 
199
200
  def convert_ul(el, indent, opts)
200
201
  style = STYLES[el.type]
202
+ opts = opts.merge(vspace: el.attr.delete('vspace'))
201
203
  if opts[:unpacked]
202
204
  "#{' '*indent}<list style='#{style}'#{el_html_attributes(el)}>\n#{inner(el, indent, opts)}#{' '*indent}</list>\n"
203
205
  else
@@ -239,7 +241,9 @@ module Kramdown
239
241
  def convert_dt(el, indent, opts) # SERIOUSLY BAD HACK:
240
242
  close = "#{' '*indent}</t>\n" * @in_dt
241
243
  @in_dt = 1
242
- "#{close}#{' '*indent}<t#{el_html_attributes(el)} hangText='#{inner(el, indent, opts)}'>\n"
244
+ vspace = opts[:vspace]
245
+ vspaceel = "<vspace blankLines='#{vspace}'/>" if vspace
246
+ "#{close}#{' '*indent}<t#{el_html_attributes(el)} hangText='#{inner(el, indent, opts)}'>#{vspaceel}\n"
243
247
  end
244
248
 
245
249
  HTML_TAGS_WITH_BODY=['div', 'script']
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kramdown-rfc2629
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Carsten Bormann