asciidoctor-revealjs 5.0.1 → 5.2.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -501,167 +501,114 @@ class Asciidoctor::Revealjs::Converter < ::Asciidoctor::Converter::Base
501
501
  end
502
502
 
503
503
  def convert(node, transform = nil, opts = {})
504
- transform ||= node.node_name
504
+ meth_name = "convert_#{transform || node.node_name}"
505
505
  opts ||= {}
506
- converter = respond_to?(transform) ? self : @delegate_converter
506
+ converter = respond_to?(meth_name) ? self : @delegate_converter
507
507
 
508
508
  if opts.empty?
509
- converter.send(transform, node)
509
+ converter.send(meth_name, node)
510
510
  else
511
- converter.send(transform, node, opts)
511
+ converter.send(meth_name, node, opts)
512
512
  end
513
513
  end
514
514
 
515
- def handles?(transform)
516
- respond_to?("convert_#{transform}") || respond_to?(transform)
517
- end
518
-
519
515
  #----------------- Begin of generated transformation methods -----------------#
520
516
 
521
517
 
522
- def ruler(node, opts = {})
523
- node.extend(Helpers)
524
- node.instance_eval do
525
- converter.set_local_variables(binding, opts) unless opts.empty?
526
- _buf = ''; _buf << ("<hr>".freeze);
527
- ; _buf
528
- end
529
- end
530
-
531
- def pass(node, opts = {})
532
- node.extend(Helpers)
533
- node.instance_eval do
534
- converter.set_local_variables(binding, opts) unless opts.empty?
535
- _buf = ''; _buf << ((content).to_s);
536
- ; _buf
537
- end
538
- end
539
-
540
- def notes(node, opts = {})
518
+ def convert_title_slide(node, opts = {})
541
519
  node.extend(Helpers)
542
520
  node.instance_eval do
543
521
  converter.set_local_variables(binding, opts) unless opts.empty?
544
- _buf = ''; _buf << ("<aside class=\"notes\">".freeze); _buf << ((resolve_content).to_s);
545
- ; _buf << ("</aside>".freeze); _buf
522
+ _buf = ''; bg_image = (attr? 'title-slide-background-image') ? (image_uri(attr 'title-slide-background-image')) : nil;
523
+ ; bg_video = (attr? 'title-slide-background-video') ? (media_uri(attr 'title-slide-background-video')) : nil;
524
+ ;
525
+ ;
526
+ ;
527
+ ;
528
+ ;
529
+ ;
530
+ ;
531
+ ;
532
+ ;
533
+ ;
534
+ ;
535
+ ;
536
+ ;
537
+ ;
538
+ ;
539
+ ; _buf << ("<section".freeze); _temple_html_attributeremover1 = ''; _temple_html_attributemerger1 = []; _temple_html_attributemerger1[0] = "title"; _temple_html_attributemerger1[1] = ''; _slim_codeattributes1 = role; if Array === _slim_codeattributes1; _slim_codeattributes1 = _slim_codeattributes1.flatten; _slim_codeattributes1.map!(&:to_s); _slim_codeattributes1.reject!(&:empty?); _temple_html_attributemerger1[1] << ((_slim_codeattributes1.join(" ")).to_s); else; _temple_html_attributemerger1[1] << ((_slim_codeattributes1).to_s); end; _temple_html_attributemerger1[1]; _temple_html_attributeremover1 << ((_temple_html_attributemerger1.reject(&:empty?).join(" ")).to_s); _temple_html_attributeremover1; if !_temple_html_attributeremover1.empty?; _buf << (" class=\"".freeze); _buf << ((_temple_html_attributeremover1).to_s); _buf << ("\"".freeze); end; _buf << (" data-state=\"title\"".freeze); _slim_codeattributes2 = (attr 'title-slide-transition'); if _slim_codeattributes2; if _slim_codeattributes2 == true; _buf << (" data-transition".freeze); else; _buf << (" data-transition=\"".freeze); _buf << ((_slim_codeattributes2).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes3 = (attr 'title-slide-transition-speed'); if _slim_codeattributes3; if _slim_codeattributes3 == true; _buf << (" data-transition-speed".freeze); else; _buf << (" data-transition-speed=\"".freeze); _buf << ((_slim_codeattributes3).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes4 = (attr 'title-slide-background'); if _slim_codeattributes4; if _slim_codeattributes4 == true; _buf << (" data-background".freeze); else; _buf << (" data-background=\"".freeze); _buf << ((_slim_codeattributes4).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes5 = (attr 'title-slide-background-size'); if _slim_codeattributes5; if _slim_codeattributes5 == true; _buf << (" data-background-size".freeze); else; _buf << (" data-background-size=\"".freeze); _buf << ((_slim_codeattributes5).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes6 = bg_image; if _slim_codeattributes6; if _slim_codeattributes6 == true; _buf << (" data-background-image".freeze); else; _buf << (" data-background-image=\"".freeze); _buf << ((_slim_codeattributes6).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes7 = bg_video; if _slim_codeattributes7; if _slim_codeattributes7 == true; _buf << (" data-background-video".freeze); else; _buf << (" data-background-video=\"".freeze); _buf << ((_slim_codeattributes7).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes8 = (attr 'title-slide-background-video-loop'); if _slim_codeattributes8; if _slim_codeattributes8 == true; _buf << (" data-background-video-loop".freeze); else; _buf << (" data-background-video-loop=\"".freeze); _buf << ((_slim_codeattributes8).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes9 = (attr 'title-slide-background-video-muted'); if _slim_codeattributes9; if _slim_codeattributes9 == true; _buf << (" data-background-video-muted".freeze); else; _buf << (" data-background-video-muted=\"".freeze); _buf << ((_slim_codeattributes9).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes10 = (attr 'title-slide-background-opacity'); if _slim_codeattributes10; if _slim_codeattributes10 == true; _buf << (" data-background-opacity".freeze); else; _buf << (" data-background-opacity=\"".freeze); _buf << ((_slim_codeattributes10).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes11 = (attr 'title-slide-background-iframe'); if _slim_codeattributes11; if _slim_codeattributes11 == true; _buf << (" data-background-iframe".freeze); else; _buf << (" data-background-iframe=\"".freeze); _buf << ((_slim_codeattributes11).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes12 = (attr 'title-slide-background-color'); if _slim_codeattributes12; if _slim_codeattributes12 == true; _buf << (" data-background-color".freeze); else; _buf << (" data-background-color=\"".freeze); _buf << ((_slim_codeattributes12).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes13 = (attr 'title-slide-background-repeat'); if _slim_codeattributes13; if _slim_codeattributes13 == true; _buf << (" data-background-repeat".freeze); else; _buf << (" data-background-repeat=\"".freeze); _buf << ((_slim_codeattributes13).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes14 = (attr 'title-slide-background-position'); if _slim_codeattributes14; if _slim_codeattributes14 == true; _buf << (" data-background-position".freeze); else; _buf << (" data-background-position=\"".freeze); _buf << ((_slim_codeattributes14).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes15 = (attr 'title-slide-background-transition'); if _slim_codeattributes15; if _slim_codeattributes15 == true; _buf << (" data-background-transition".freeze); else; _buf << (" data-background-transition=\"".freeze); _buf << ((_slim_codeattributes15).to_s); _buf << ("\"".freeze); end; end; _buf << (">".freeze);
540
+ ; if (_title_obj = doctitle partition: true, use_fallback: true).subtitle?;
541
+ ; _buf << ("<h1>".freeze); _buf << ((slice_text _title_obj.title, (_slice = header.option? :slice)).to_s);
542
+ ; _buf << ("</h1><h2>".freeze); _buf << ((slice_text _title_obj.subtitle, _slice).to_s);
543
+ ; _buf << ("</h2>".freeze); else;
544
+ ; _buf << ("<h1>".freeze); _buf << ((@header.title).to_s);
545
+ ; _buf << ("</h1>".freeze); end; preamble = @document.find_by context: :preamble;
546
+ ; unless preamble.nil? or preamble.length == 0;
547
+ ; _buf << ("<div class=\"preamble\">".freeze); _buf << ((preamble.pop.content).to_s);
548
+ ; _buf << ("</div>".freeze); end; _buf << ((generate_authors(@document)).to_s);
549
+ ; _buf << ("</section>".freeze); _buf
546
550
  end
547
551
  end
548
552
 
549
- def thematic_break(node, opts = {})
553
+ def convert_inline_image(node, opts = {})
550
554
  node.extend(Helpers)
551
555
  node.instance_eval do
552
556
  converter.set_local_variables(binding, opts) unless opts.empty?
553
- _buf = ''; _buf << ("<hr>".freeze);
554
- ; _buf
557
+ _buf = ''; _slim_controls1 = html_tag('span', { :class => [@type, role, ('fragment' if (option? :step) || (attr? 'step'))], :style => ("float: #{attr :float}" if attr? :float) }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
558
+ ; _slim_controls2 << ((convert_inline_image).to_s);
559
+ ; _slim_controls2; end; _buf << ((_slim_controls1).to_s); _buf
555
560
  end
556
561
  end
557
562
 
558
- def olist(node, opts = {})
563
+ def convert_literal(node, opts = {})
559
564
  node.extend(Helpers)
560
565
  node.instance_eval do
561
566
  converter.set_local_variables(binding, opts) unless opts.empty?
562
- _buf = ''; _slim_controls1 = html_tag('div', { :id => @id, :class => ['olist', @style, role] }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
567
+ _buf = ''; _slim_controls1 = html_tag('div', { :id => id, :class => ['literalblock', role, ('fragment' if (option? :step) || (attr? 'step'))] }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
563
568
  ; if title?;
564
569
  ; _slim_controls2 << ("<div class=\"title\">".freeze); _slim_controls2 << ((title).to_s);
565
- ; _slim_controls2 << ("</div>".freeze); end; _slim_controls2 << ("<ol".freeze); _temple_html_attributeremover1 = ''; _slim_codeattributes1 = @style; if Array === _slim_codeattributes1; _slim_codeattributes1 = _slim_codeattributes1.flatten; _slim_codeattributes1.map!(&:to_s); _slim_codeattributes1.reject!(&:empty?); _temple_html_attributeremover1 << ((_slim_codeattributes1.join(" ")).to_s); else; _temple_html_attributeremover1 << ((_slim_codeattributes1).to_s); end; _temple_html_attributeremover1; if !_temple_html_attributeremover1.empty?; _slim_controls2 << (" class=\"".freeze); _slim_controls2 << ((_temple_html_attributeremover1).to_s); _slim_controls2 << ("\"".freeze); end; _slim_codeattributes2 = (attr :start); if _slim_codeattributes2; if _slim_codeattributes2 == true; _slim_controls2 << (" start".freeze); else; _slim_controls2 << (" start=\"".freeze); _slim_controls2 << ((_slim_codeattributes2).to_s); _slim_controls2 << ("\"".freeze); end; end; _slim_codeattributes3 = list_marker_keyword; if _slim_codeattributes3; if _slim_codeattributes3 == true; _slim_controls2 << (" type".freeze); else; _slim_controls2 << (" type=\"".freeze); _slim_controls2 << ((_slim_codeattributes3).to_s); _slim_controls2 << ("\"".freeze); end; end; _slim_controls2 << (">".freeze);
566
- ; items.each do |item|;
567
- ; _slim_controls2 << ("<li".freeze); _temple_html_attributeremover2 = ''; _slim_codeattributes4 = ('fragment' if (option? :step) || (has_role? 'step') || (attr? 'step')); if Array === _slim_codeattributes4; _slim_codeattributes4 = _slim_codeattributes4.flatten; _slim_codeattributes4.map!(&:to_s); _slim_codeattributes4.reject!(&:empty?); _temple_html_attributeremover2 << ((_slim_codeattributes4.join(" ")).to_s); else; _temple_html_attributeremover2 << ((_slim_codeattributes4).to_s); end; _temple_html_attributeremover2; if !_temple_html_attributeremover2.empty?; _slim_controls2 << (" class=\"".freeze); _slim_controls2 << ((_temple_html_attributeremover2).to_s); _slim_controls2 << ("\"".freeze); end; _slim_controls2 << ("><p>".freeze);
568
- ; _slim_controls2 << ((item.text).to_s);
569
- ; _slim_controls2 << ("</p>".freeze); if item.blocks?;
570
- ; _slim_controls2 << ((item.content).to_s);
571
- ; end; _slim_controls2 << ("</li>".freeze); end; _slim_controls2 << ("</ol>".freeze); _slim_controls2; end; _buf << ((_slim_controls1).to_s); _buf
570
+ ; _slim_controls2 << ("</div>".freeze); end; _slim_controls2 << ("<div class=\"content\"><pre".freeze); _temple_html_attributeremover1 = ''; _slim_codeattributes1 = (!(@document.attr? :prewrap) || (option? 'nowrap') ? 'nowrap' : nil); if Array === _slim_codeattributes1; _slim_codeattributes1 = _slim_codeattributes1.flatten; _slim_codeattributes1.map!(&:to_s); _slim_codeattributes1.reject!(&:empty?); _temple_html_attributeremover1 << ((_slim_codeattributes1.join(" ")).to_s); else; _temple_html_attributeremover1 << ((_slim_codeattributes1).to_s); end; _temple_html_attributeremover1; if !_temple_html_attributeremover1.empty?; _slim_controls2 << (" class=\"".freeze); _slim_controls2 << ((_temple_html_attributeremover1).to_s); _slim_controls2 << ("\"".freeze); end; _slim_controls2 << (">".freeze); _slim_controls2 << ((content).to_s);
571
+ ; _slim_controls2 << ("</pre></div>".freeze); _slim_controls2; end; _buf << ((_slim_controls1).to_s); _buf
572
572
  end
573
573
  end
574
574
 
575
- def inline_button(node, opts = {})
575
+ def convert_notes(node, opts = {})
576
576
  node.extend(Helpers)
577
577
  node.instance_eval do
578
578
  converter.set_local_variables(binding, opts) unless opts.empty?
579
- _buf = ''; _slim_controls1 = html_tag('b', { :class => ['button'] }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
580
- ; _slim_controls2 << ((@text).to_s);
581
- ; _slim_controls2; end; _buf << ((_slim_controls1).to_s); _buf
579
+ _buf = ''; _buf << ("<aside class=\"notes\">".freeze); _buf << ((resolve_content).to_s);
580
+ ; _buf << ("</aside>".freeze); _buf
582
581
  end
583
582
  end
584
583
 
585
- def audio(node, opts = {})
584
+ def convert_inline_button(node, opts = {})
586
585
  node.extend(Helpers)
587
586
  node.instance_eval do
588
587
  converter.set_local_variables(binding, opts) unless opts.empty?
589
- _buf = ''; _slim_controls1 = html_tag('div', { :id => @id, :class => ['audioblock', @style, role] }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
590
- ; if title?;
591
- ; _slim_controls2 << ("<div class=\"title\">".freeze); _slim_controls2 << ((captioned_title).to_s);
592
- ; _slim_controls2 << ("</div>".freeze); end; _slim_controls2 << ("<div class=\"content\"><audio".freeze);
593
- ; _slim_codeattributes1 = media_uri(attr :target); if _slim_codeattributes1; if _slim_codeattributes1 == true; _slim_controls2 << (" src".freeze); else; _slim_controls2 << (" src=\"".freeze); _slim_controls2 << ((_slim_codeattributes1).to_s); _slim_controls2 << ("\"".freeze); end; end; _slim_codeattributes2 = (option? 'autoplay'); if _slim_codeattributes2; if _slim_codeattributes2 == true; _slim_controls2 << (" autoplay".freeze); else; _slim_controls2 << (" autoplay=\"".freeze); _slim_controls2 << ((_slim_codeattributes2).to_s); _slim_controls2 << ("\"".freeze); end; end; _slim_codeattributes3 = !(option? 'nocontrols'); if _slim_codeattributes3; if _slim_codeattributes3 == true; _slim_controls2 << (" controls".freeze); else; _slim_controls2 << (" controls=\"".freeze); _slim_controls2 << ((_slim_codeattributes3).to_s); _slim_controls2 << ("\"".freeze); end; end; _slim_codeattributes4 = (option? 'loop'); if _slim_codeattributes4; if _slim_codeattributes4 == true; _slim_controls2 << (" loop".freeze); else; _slim_controls2 << (" loop=\"".freeze); _slim_controls2 << ((_slim_codeattributes4).to_s); _slim_controls2 << ("\"".freeze); end; end; _slim_controls2 << (">Your browser does not support the audio tag.</audio></div>".freeze);
594
- ;
588
+ _buf = ''; _slim_controls1 = html_tag('b', { :class => ['button'] }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
589
+ ; _slim_controls2 << ((@text).to_s);
595
590
  ; _slim_controls2; end; _buf << ((_slim_controls1).to_s); _buf
596
591
  end
597
592
  end
598
593
 
599
- def quote(node, opts = {})
600
- node.extend(Helpers)
601
- node.instance_eval do
602
- converter.set_local_variables(binding, opts) unless opts.empty?
603
- _buf = ''; _slim_controls1 = html_tag('div', { :id => @id, :class => ['quoteblock', role, ('fragment' if (option? :step) || (attr? 'step'))] }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
604
- ; if title?;
605
- ; _slim_controls2 << ("<div class=\"title\">".freeze); _slim_controls2 << ((title).to_s);
606
- ; _slim_controls2 << ("</div>".freeze); end; _slim_controls2 << ("<blockquote>".freeze); _slim_controls2 << ((content).to_s);
607
- ; _slim_controls2 << ("</blockquote>".freeze); attribution = (attr? :attribution) ? (attr :attribution) : nil;
608
- ; citetitle = (attr? :citetitle) ? (attr :citetitle) : nil;
609
- ; if attribution || citetitle;
610
- ; _slim_controls2 << ("<div class=\"attribution\">".freeze);
611
- ; if citetitle;
612
- ; _slim_controls2 << ("<cite>".freeze); _slim_controls2 << ((citetitle).to_s);
613
- ; _slim_controls2 << ("</cite>".freeze); end; if attribution;
614
- ; if citetitle;
615
- ; _slim_controls2 << ("<br>".freeze);
616
- ; end; _slim_controls2 << ("&#8212; ".freeze); _slim_controls2 << ((attribution).to_s);
617
- ; end; _slim_controls2 << ("</div>".freeze); end; _slim_controls2; end; _buf << ((_slim_controls1).to_s); _buf
618
- end
619
- end
620
-
621
- def admonition(node, opts = {})
594
+ def convert_embedded(node, opts = {})
622
595
  node.extend(Helpers)
623
596
  node.instance_eval do
624
597
  converter.set_local_variables(binding, opts) unless opts.empty?
625
- _buf = ''; if (has_role? 'aside') or (has_role? 'speaker') or (has_role? 'notes');
626
- ; _buf << ("<aside class=\"notes\">".freeze); _buf << ((resolve_content).to_s);
627
- ; _buf << ("</aside>".freeze);
628
- ; else;
629
- ; _slim_controls1 = html_tag('div', { :id => @id, :class => ['admonitionblock', (attr :name), role, ('fragment' if (option? :step) || (attr? 'step'))] }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
630
- ; _slim_controls2 << ("<table><tr><td class=\"icon\">".freeze);
598
+ _buf = ''; unless notitle || !has_header?;
599
+ ; _buf << ("<h1".freeze); _slim_codeattributes1 = @id; if _slim_codeattributes1; if _slim_codeattributes1 == true; _buf << (" id".freeze); else; _buf << (" id=\"".freeze); _buf << ((_slim_codeattributes1).to_s); _buf << ("\"".freeze); end; end; _buf << (">".freeze); _buf << ((@header.title).to_s);
600
+ ; _buf << ("</h1>".freeze); end; _buf << ((content).to_s);
601
+ ; unless !footnotes? || attr?(:nofootnotes);
602
+ ; _buf << ("<div id=\"footnotes\"><hr>".freeze);
631
603
  ;
632
- ; if @document.attr? :icons, 'font';
633
- ; icon_mapping = Hash['caution', 'fire', 'important', 'exclamation-circle', 'note', 'info-circle', 'tip', 'lightbulb-o', 'warning', 'warning'];
634
- ; _slim_controls2 << ("<i".freeze); _temple_html_attributeremover1 = ''; _slim_codeattributes1 = %(fa fa-#{icon_mapping[attr :name]}); if Array === _slim_codeattributes1; _slim_codeattributes1 = _slim_codeattributes1.flatten; _slim_codeattributes1.map!(&:to_s); _slim_codeattributes1.reject!(&:empty?); _temple_html_attributeremover1 << ((_slim_codeattributes1.join(" ")).to_s); else; _temple_html_attributeremover1 << ((_slim_codeattributes1).to_s); end; _temple_html_attributeremover1; if !_temple_html_attributeremover1.empty?; _slim_controls2 << (" class=\"".freeze); _slim_controls2 << ((_temple_html_attributeremover1).to_s); _slim_controls2 << ("\"".freeze); end; _slim_codeattributes2 = (attr :textlabel || @caption); if _slim_codeattributes2; if _slim_codeattributes2 == true; _slim_controls2 << (" title".freeze); else; _slim_controls2 << (" title=\"".freeze); _slim_controls2 << ((_slim_codeattributes2).to_s); _slim_controls2 << ("\"".freeze); end; end; _slim_controls2 << ("></i>".freeze);
635
- ; elsif @document.attr? :icons;
636
- ; _slim_controls2 << ("<img".freeze); _slim_codeattributes3 = icon_uri(attr :name); if _slim_codeattributes3; if _slim_codeattributes3 == true; _slim_controls2 << (" src".freeze); else; _slim_controls2 << (" src=\"".freeze); _slim_controls2 << ((_slim_codeattributes3).to_s); _slim_controls2 << ("\"".freeze); end; end; _slim_codeattributes4 = @caption; if _slim_codeattributes4; if _slim_codeattributes4 == true; _slim_controls2 << (" alt".freeze); else; _slim_controls2 << (" alt=\"".freeze); _slim_controls2 << ((_slim_codeattributes4).to_s); _slim_controls2 << ("\"".freeze); end; end; _slim_controls2 << (">".freeze);
637
- ; else;
638
- ; _slim_controls2 << ("<div class=\"title\">".freeze); _slim_controls2 << (((attr :textlabel) || @caption).to_s);
639
- ; _slim_controls2 << ("</div>".freeze); end; _slim_controls2 << ("</td><td class=\"content\">".freeze);
640
- ; if title?;
641
- ; _slim_controls2 << ("<div class=\"title\">".freeze); _slim_controls2 << ((title).to_s);
642
- ; _slim_controls2 << ("</div>".freeze); end; _slim_controls2 << ((content).to_s);
643
- ; _slim_controls2 << ("</td></tr></table>".freeze); _slim_controls2; end; _buf << ((_slim_controls1).to_s); end; _buf
644
- end
645
- end
646
-
647
- def outline(node, opts = {})
648
- node.extend(Helpers)
649
- node.instance_eval do
650
- converter.set_local_variables(binding, opts) unless opts.empty?
651
- _buf = ''; unless sections.empty?;
652
- ; toclevels ||= (document.attr 'toclevels', DEFAULT_TOCLEVELS).to_i;
653
- ; slevel = section_level sections.first;
654
- ; _buf << ("<ol class=\"sectlevel".freeze); _buf << ((slevel).to_s); _buf << ("\">".freeze);
655
- ; sections.each do |sec|;
656
- ; _buf << ("<li><a href=\"#".freeze);
657
- ; _buf << ((sec.id).to_s); _buf << ("\">".freeze); _buf << ((section_title sec).to_s);
658
- ; _buf << ("</a>".freeze); if (sec.level < toclevels) && (child_toc = converter.convert sec, 'outline');
659
- ; _buf << ((child_toc).to_s);
660
- ; end; _buf << ("</li>".freeze); end; _buf << ("</ol>".freeze); end; _buf
604
+ ; footnotes.each do |fn|;
605
+ ; _buf << ("<div class=\"footnote\" id=\"_footnote_".freeze); _buf << ((fn.index).to_s); _buf << ("\"><a href=\"#_footnoteref_".freeze);
606
+ ; _buf << ((fn.index).to_s); _buf << ("\">".freeze); _buf << ((fn.index).to_s); _buf << ("</a>. ".freeze); _buf << ((fn.text).to_s);
607
+ ; _buf << ("</div>".freeze); end; _buf << ("</div>".freeze); end; _buf
661
608
  end
662
609
  end
663
610
 
664
- def video(node, opts = {})
611
+ def convert_video(node, opts = {})
665
612
  node.extend(Helpers)
666
613
  node.instance_eval do
667
614
  converter.set_local_variables(binding, opts) unless opts.empty?
@@ -715,123 +662,7 @@ class Asciidoctor::Revealjs::Converter < ::Asciidoctor::Converter::Base
715
662
  end
716
663
  end
717
664
 
718
- def verse(node, opts = {})
719
- node.extend(Helpers)
720
- node.instance_eval do
721
- converter.set_local_variables(binding, opts) unless opts.empty?
722
- _buf = ''; _slim_controls1 = html_tag('div', { :id => @id, :class => ['verseblock', role, ('fragment' if (option? :step) || (attr? 'step'))] }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
723
- ; if title?;
724
- ; _slim_controls2 << ("<div class=\"title\">".freeze); _slim_controls2 << ((title).to_s);
725
- ; _slim_controls2 << ("</div>".freeze); end; _slim_controls2 << ("<pre class=\"content\">".freeze); _slim_controls2 << ((content).to_s);
726
- ; _slim_controls2 << ("</pre>".freeze); attribution = (attr? :attribution) ? (attr :attribution) : nil;
727
- ; citetitle = (attr? :citetitle) ? (attr :citetitle) : nil;
728
- ; if attribution || citetitle;
729
- ; _slim_controls2 << ("<div class=\"attribution\">".freeze);
730
- ; if citetitle;
731
- ; _slim_controls2 << ("<cite>".freeze); _slim_controls2 << ((citetitle).to_s);
732
- ; _slim_controls2 << ("</cite>".freeze); end; if attribution;
733
- ; if citetitle;
734
- ; _slim_controls2 << ("<br>".freeze);
735
- ; end; _slim_controls2 << ("&#8212; ".freeze); _slim_controls2 << ((attribution).to_s);
736
- ; end; _slim_controls2 << ("</div>".freeze); end; _slim_controls2; end; _buf << ((_slim_controls1).to_s); _buf
737
- end
738
- end
739
-
740
- def inline_menu(node, opts = {})
741
- node.extend(Helpers)
742
- node.instance_eval do
743
- converter.set_local_variables(binding, opts) unless opts.empty?
744
- _buf = ''; menu = attr 'menu';
745
- ; menuitem = attr 'menuitem';
746
- ; if !(submenus = attr 'submenus').empty?;
747
- ; _slim_controls1 = html_tag('span', { :class => ['menuseq'] }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
748
- ; _slim_controls2 << ("<span class=\"menu\">".freeze); _slim_controls2 << ((menu).to_s);
749
- ; _slim_controls2 << ("</span>&#160;&#9656;&#32;".freeze);
750
- ; _slim_controls2 << ((submenus.map {|submenu| %(<span class="submenu">#{submenu}</span>&#160;&#9656;&#32;) }.join).to_s);
751
- ; _slim_controls2 << ("<span class=\"menuitem\">".freeze); _slim_controls2 << ((menuitem).to_s);
752
- ; _slim_controls2 << ("</span>".freeze); _slim_controls2; end; _buf << ((_slim_controls1).to_s); elsif !menuitem.nil?;
753
- ; _slim_controls3 = html_tag('span', { :class => ['menuseq'] }.merge(data_attrs(@attributes))) do; _slim_controls4 = '';
754
- ; _slim_controls4 << ("<span class=\"menu\">".freeze); _slim_controls4 << ((menu).to_s);
755
- ; _slim_controls4 << ("</span>&#160;&#9656;&#32;<span class=\"menuitem\">".freeze);
756
- ; _slim_controls4 << ((menuitem).to_s);
757
- ; _slim_controls4 << ("</span>".freeze); _slim_controls4; end; _buf << ((_slim_controls3).to_s); else;
758
- ; _slim_controls5 = html_tag('span', { :class => ['menu'] }.merge(data_attrs(@attributes))) do; _slim_controls6 = '';
759
- ; _slim_controls6 << ((menu).to_s);
760
- ; _slim_controls6; end; _buf << ((_slim_controls5).to_s); end; _buf
761
- end
762
- end
763
-
764
- def toc(node, opts = {})
765
- node.extend(Helpers)
766
- node.instance_eval do
767
- converter.set_local_variables(binding, opts) unless opts.empty?
768
- _buf = '';
769
- ;
770
- ;
771
- ;
772
- ;
773
- ;
774
- ;
775
- ;
776
- ;
777
- ;
778
- ;
779
- ;
780
- ;
781
- ; _buf << ("<div id=\"toc\"".freeze); _temple_html_attributeremover1 = ''; _slim_codeattributes1 = (document.attr 'toc-class', 'toc'); if Array === _slim_codeattributes1; _slim_codeattributes1 = _slim_codeattributes1.flatten; _slim_codeattributes1.map!(&:to_s); _slim_codeattributes1.reject!(&:empty?); _temple_html_attributeremover1 << ((_slim_codeattributes1.join(" ")).to_s); else; _temple_html_attributeremover1 << ((_slim_codeattributes1).to_s); end; _temple_html_attributeremover1; if !_temple_html_attributeremover1.empty?; _buf << (" class=\"".freeze); _buf << ((_temple_html_attributeremover1).to_s); _buf << ("\"".freeze); end; _buf << ("><div id=\"toctitle\">".freeze);
782
- ; _buf << (((document.attr 'toc-title')).to_s);
783
- ; _buf << ("</div>".freeze);
784
- ; _buf << ((converter.convert document, 'outline').to_s);
785
- ; _buf << ("</div>".freeze); _buf
786
- end
787
- end
788
-
789
- def inline_kbd(node, opts = {})
790
- node.extend(Helpers)
791
- node.instance_eval do
792
- converter.set_local_variables(binding, opts) unless opts.empty?
793
- _buf = ''; if (keys = attr 'keys').size == 1;
794
- ; _slim_controls1 = html_tag('kbd', data_attrs(@attributes)) do; _slim_controls2 = '';
795
- ; _slim_controls2 << ((keys.first).to_s);
796
- ; _slim_controls2; end; _buf << ((_slim_controls1).to_s); else;
797
- ; _slim_controls3 = html_tag('span', { :class => ['keyseq'] }.merge(data_attrs(@attributes))) do; _slim_controls4 = '';
798
- ; keys.each_with_index do |key, idx|;
799
- ; unless idx.zero?;
800
- ; _slim_controls4 << ("+".freeze);
801
- ; end; _slim_controls4 << ("<kbd>".freeze); _slim_controls4 << ((key).to_s);
802
- ; _slim_controls4 << ("</kbd>".freeze); end; _slim_controls4; end; _buf << ((_slim_controls3).to_s); end; _buf
803
- end
804
- end
805
-
806
- def colist(node, opts = {})
807
- node.extend(Helpers)
808
- node.instance_eval do
809
- converter.set_local_variables(binding, opts) unless opts.empty?
810
- _buf = ''; _slim_controls1 = html_tag('div', { :id => @id, :class => ['colist', @style, role, ('fragment' if (option? :step) || (attr? 'step'))] }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
811
- ; if title?;
812
- ; _slim_controls2 << ("<div class=\"title\">".freeze); _slim_controls2 << ((title).to_s);
813
- ; _slim_controls2 << ("</div>".freeze); end; if @document.attr? :icons;
814
- ; font_icons = @document.attr? :icons, 'font';
815
- ; _slim_controls2 << ("<table>".freeze);
816
- ; items.each_with_index do |item, i|;
817
- ; num = i + 1;
818
- ; _slim_controls2 << ("<tr><td>".freeze);
819
- ;
820
- ; if font_icons;
821
- ; _slim_controls2 << ("<i class=\"conum\"".freeze); _slim_codeattributes1 = num; if _slim_codeattributes1; if _slim_codeattributes1 == true; _slim_controls2 << (" data-value".freeze); else; _slim_controls2 << (" data-value=\"".freeze); _slim_controls2 << ((_slim_codeattributes1).to_s); _slim_controls2 << ("\"".freeze); end; end; _slim_controls2 << ("></i><b>".freeze);
822
- ; _slim_controls2 << ((num).to_s);
823
- ; _slim_controls2 << ("</b>".freeze); else;
824
- ; _slim_controls2 << ("<img".freeze); _slim_codeattributes2 = icon_uri("callouts/#{num}"); if _slim_codeattributes2; if _slim_codeattributes2 == true; _slim_controls2 << (" src".freeze); else; _slim_controls2 << (" src=\"".freeze); _slim_controls2 << ((_slim_codeattributes2).to_s); _slim_controls2 << ("\"".freeze); end; end; _slim_codeattributes3 = num; if _slim_codeattributes3; if _slim_codeattributes3 == true; _slim_controls2 << (" alt".freeze); else; _slim_controls2 << (" alt=\"".freeze); _slim_controls2 << ((_slim_codeattributes3).to_s); _slim_controls2 << ("\"".freeze); end; end; _slim_controls2 << (">".freeze);
825
- ; end; _slim_controls2 << ("</td><td>".freeze); _slim_controls2 << ((item.text).to_s);
826
- ; _slim_controls2 << ("</td></tr>".freeze); end; _slim_controls2 << ("</table>".freeze); else;
827
- ; _slim_controls2 << ("<ol>".freeze);
828
- ; items.each do |item|;
829
- ; _slim_controls2 << ("<li><p>".freeze); _slim_controls2 << ((item.text).to_s);
830
- ; _slim_controls2 << ("</p></li>".freeze); end; _slim_controls2 << ("</ol>".freeze); end; _slim_controls2; end; _buf << ((_slim_controls1).to_s); _buf
831
- end
832
- end
833
-
834
- def stretch_nested_elements(node, opts = {})
665
+ def convert_stretch_nested_elements(node, opts = {})
835
666
  node.extend(Helpers)
836
667
  node.instance_eval do
837
668
  converter.set_local_variables(binding, opts) unless opts.empty?
@@ -904,54 +735,295 @@ class Asciidoctor::Revealjs::Converter < ::Asciidoctor::Converter::Base
904
735
  end
905
736
  end
906
737
 
907
- def stem(node, opts = {})
738
+ def convert_floating_title(node, opts = {})
908
739
  node.extend(Helpers)
909
740
  node.instance_eval do
910
741
  converter.set_local_variables(binding, opts) unless opts.empty?
911
- _buf = ''; open, close = Asciidoctor::BLOCK_MATH_DELIMITERS[@style.to_sym];
912
- ; equation = content.strip;
913
- ; if (@subs.nil? || @subs.empty?) && !(attr? 'subs');
914
- ; equation = sub_specialcharacters equation;
915
- ; end; unless (equation.start_with? open) && (equation.end_with? close);
916
- ; equation = %(#{open}#{equation}#{close});
917
- ; end; _slim_controls1 = html_tag('div', { :id => @id, :class => ['stemblock', role, ('fragment' if (option? :step) || (has_role? 'step') || (attr? 'step'))] }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
918
- ; if title?;
919
- ; _slim_controls2 << ("<div class=\"title\">".freeze); _slim_controls2 << ((title).to_s);
920
- ; _slim_controls2 << ("</div>".freeze); end; _slim_controls2 << ("<div class=\"content\">".freeze); _slim_controls2 << ((equation).to_s);
921
- ; _slim_controls2 << ("</div>".freeze); _slim_controls2; end; _buf << ((_slim_controls1).to_s); _buf
742
+ _buf = ''; _slim_htag_filter1 = ((level + 1)).to_s; _buf << ("<h".freeze); _buf << ((_slim_htag_filter1).to_s); _slim_codeattributes1 = id; if _slim_codeattributes1; if _slim_codeattributes1 == true; _buf << (" id".freeze); else; _buf << (" id=\"".freeze); _buf << ((_slim_codeattributes1).to_s); _buf << ("\"".freeze); end; end; _temple_html_attributeremover1 = ''; _slim_codeattributes2 = [style, role]; if Array === _slim_codeattributes2; _slim_codeattributes2 = _slim_codeattributes2.flatten; _slim_codeattributes2.map!(&:to_s); _slim_codeattributes2.reject!(&:empty?); _temple_html_attributeremover1 << ((_slim_codeattributes2.join(" ")).to_s); else; _temple_html_attributeremover1 << ((_slim_codeattributes2).to_s); end; _temple_html_attributeremover1; if !_temple_html_attributeremover1.empty?; _buf << (" class=\"".freeze); _buf << ((_temple_html_attributeremover1).to_s); _buf << ("\"".freeze); end; _buf << (">".freeze);
743
+ ; _buf << ((title).to_s);
744
+ ; _buf << ("</h".freeze); _buf << ((_slim_htag_filter1).to_s); _buf << (">".freeze); _buf
922
745
  end
923
746
  end
924
747
 
925
- def literal(node, opts = {})
748
+ def convert_admonition(node, opts = {})
926
749
  node.extend(Helpers)
927
750
  node.instance_eval do
928
751
  converter.set_local_variables(binding, opts) unless opts.empty?
929
- _buf = ''; _slim_controls1 = html_tag('div', { :id => id, :class => ['literalblock', role, ('fragment' if (option? :step) || (attr? 'step'))] }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
752
+ _buf = ''; if (has_role? 'aside') or (has_role? 'speaker') or (has_role? 'notes');
753
+ ; _buf << ("<aside class=\"notes\">".freeze); _buf << ((resolve_content).to_s);
754
+ ; _buf << ("</aside>".freeze);
755
+ ; else;
756
+ ; _slim_controls1 = html_tag('div', { :id => @id, :class => ['admonitionblock', (attr :name), role, ('fragment' if (option? :step) || (attr? 'step'))] }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
757
+ ; _slim_controls2 << ("<table><tr><td class=\"icon\">".freeze);
758
+ ;
759
+ ; if @document.attr? :icons, 'font';
760
+ ; icon_mapping = Hash['caution', 'fire', 'important', 'exclamation-circle', 'note', 'info-circle', 'tip', 'lightbulb-o', 'warning', 'warning'];
761
+ ; _slim_controls2 << ("<i".freeze); _temple_html_attributeremover1 = ''; _slim_codeattributes1 = %(fa fa-#{icon_mapping[attr :name]}); if Array === _slim_codeattributes1; _slim_codeattributes1 = _slim_codeattributes1.flatten; _slim_codeattributes1.map!(&:to_s); _slim_codeattributes1.reject!(&:empty?); _temple_html_attributeremover1 << ((_slim_codeattributes1.join(" ")).to_s); else; _temple_html_attributeremover1 << ((_slim_codeattributes1).to_s); end; _temple_html_attributeremover1; if !_temple_html_attributeremover1.empty?; _slim_controls2 << (" class=\"".freeze); _slim_controls2 << ((_temple_html_attributeremover1).to_s); _slim_controls2 << ("\"".freeze); end; _slim_codeattributes2 = (attr :textlabel || @caption); if _slim_codeattributes2; if _slim_codeattributes2 == true; _slim_controls2 << (" title".freeze); else; _slim_controls2 << (" title=\"".freeze); _slim_controls2 << ((_slim_codeattributes2).to_s); _slim_controls2 << ("\"".freeze); end; end; _slim_controls2 << ("></i>".freeze);
762
+ ; elsif @document.attr? :icons;
763
+ ; _slim_controls2 << ("<img".freeze); _slim_codeattributes3 = icon_uri(attr :name); if _slim_codeattributes3; if _slim_codeattributes3 == true; _slim_controls2 << (" src".freeze); else; _slim_controls2 << (" src=\"".freeze); _slim_controls2 << ((_slim_codeattributes3).to_s); _slim_controls2 << ("\"".freeze); end; end; _slim_codeattributes4 = @caption; if _slim_codeattributes4; if _slim_codeattributes4 == true; _slim_controls2 << (" alt".freeze); else; _slim_controls2 << (" alt=\"".freeze); _slim_controls2 << ((_slim_codeattributes4).to_s); _slim_controls2 << ("\"".freeze); end; end; _slim_controls2 << (">".freeze);
764
+ ; else;
765
+ ; _slim_controls2 << ("<div class=\"title\">".freeze); _slim_controls2 << (((attr :textlabel) || @caption).to_s);
766
+ ; _slim_controls2 << ("</div>".freeze); end; _slim_controls2 << ("</td><td class=\"content\">".freeze);
930
767
  ; if title?;
931
768
  ; _slim_controls2 << ("<div class=\"title\">".freeze); _slim_controls2 << ((title).to_s);
932
- ; _slim_controls2 << ("</div>".freeze); end; _slim_controls2 << ("<div class=\"content\"><pre".freeze); _temple_html_attributeremover1 = ''; _slim_codeattributes1 = (!(@document.attr? :prewrap) || (option? 'nowrap') ? 'nowrap' : nil); if Array === _slim_codeattributes1; _slim_codeattributes1 = _slim_codeattributes1.flatten; _slim_codeattributes1.map!(&:to_s); _slim_codeattributes1.reject!(&:empty?); _temple_html_attributeremover1 << ((_slim_codeattributes1.join(" ")).to_s); else; _temple_html_attributeremover1 << ((_slim_codeattributes1).to_s); end; _temple_html_attributeremover1; if !_temple_html_attributeremover1.empty?; _slim_controls2 << (" class=\"".freeze); _slim_controls2 << ((_temple_html_attributeremover1).to_s); _slim_controls2 << ("\"".freeze); end; _slim_controls2 << (">".freeze); _slim_controls2 << ((content).to_s);
933
- ; _slim_controls2 << ("</pre></div>".freeze); _slim_controls2; end; _buf << ((_slim_controls1).to_s); _buf
769
+ ; _slim_controls2 << ("</div>".freeze); end; _slim_controls2 << ((content).to_s);
770
+ ; _slim_controls2 << ("</td></tr></table>".freeze); _slim_controls2; end; _buf << ((_slim_controls1).to_s); end; _buf
934
771
  end
935
772
  end
936
773
 
937
- def embedded(node, opts = {})
774
+ def convert_quote(node, opts = {})
938
775
  node.extend(Helpers)
939
776
  node.instance_eval do
940
777
  converter.set_local_variables(binding, opts) unless opts.empty?
941
- _buf = ''; unless notitle || !has_header?;
942
- ; _buf << ("<h1".freeze); _slim_codeattributes1 = @id; if _slim_codeattributes1; if _slim_codeattributes1 == true; _buf << (" id".freeze); else; _buf << (" id=\"".freeze); _buf << ((_slim_codeattributes1).to_s); _buf << ("\"".freeze); end; end; _buf << (">".freeze); _buf << ((@header.title).to_s);
943
- ; _buf << ("</h1>".freeze); end; _buf << ((content).to_s);
944
- ; unless !footnotes? || attr?(:nofootnotes);
945
- ; _buf << ("<div id=\"footnotes\"><hr>".freeze);
778
+ _buf = ''; _slim_controls1 = html_tag('div', { :id => @id, :class => ['quoteblock', role, ('fragment' if (option? :step) || (attr? 'step'))] }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
779
+ ; if title?;
780
+ ; _slim_controls2 << ("<div class=\"title\">".freeze); _slim_controls2 << ((title).to_s);
781
+ ; _slim_controls2 << ("</div>".freeze); end; _slim_controls2 << ("<blockquote>".freeze); _slim_controls2 << ((content).to_s);
782
+ ; _slim_controls2 << ("</blockquote>".freeze); attribution = (attr? :attribution) ? (attr :attribution) : nil;
783
+ ; citetitle = (attr? :citetitle) ? (attr :citetitle) : nil;
784
+ ; if attribution || citetitle;
785
+ ; _slim_controls2 << ("<div class=\"attribution\">".freeze);
786
+ ; if citetitle;
787
+ ; _slim_controls2 << ("<cite>".freeze); _slim_controls2 << ((citetitle).to_s);
788
+ ; _slim_controls2 << ("</cite>".freeze); end; if attribution;
789
+ ; if citetitle;
790
+ ; _slim_controls2 << ("<br>".freeze);
791
+ ; end; _slim_controls2 << ("&#8212; ".freeze); _slim_controls2 << ((attribution).to_s);
792
+ ; end; _slim_controls2 << ("</div>".freeze); end; _slim_controls2; end; _buf << ((_slim_controls1).to_s); _buf
793
+ end
794
+ end
795
+
796
+ def convert_olist(node, opts = {})
797
+ node.extend(Helpers)
798
+ node.instance_eval do
799
+ converter.set_local_variables(binding, opts) unless opts.empty?
800
+ _buf = ''; _slim_controls1 = html_tag('div', { :id => @id, :class => ['olist', @style, role] }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
801
+ ; if title?;
802
+ ; _slim_controls2 << ("<div class=\"title\">".freeze); _slim_controls2 << ((title).to_s);
803
+ ; _slim_controls2 << ("</div>".freeze); end; _slim_controls2 << ("<ol".freeze); _temple_html_attributeremover1 = ''; _slim_codeattributes1 = @style; if Array === _slim_codeattributes1; _slim_codeattributes1 = _slim_codeattributes1.flatten; _slim_codeattributes1.map!(&:to_s); _slim_codeattributes1.reject!(&:empty?); _temple_html_attributeremover1 << ((_slim_codeattributes1.join(" ")).to_s); else; _temple_html_attributeremover1 << ((_slim_codeattributes1).to_s); end; _temple_html_attributeremover1; if !_temple_html_attributeremover1.empty?; _slim_controls2 << (" class=\"".freeze); _slim_controls2 << ((_temple_html_attributeremover1).to_s); _slim_controls2 << ("\"".freeze); end; _slim_codeattributes2 = (attr :start); if _slim_codeattributes2; if _slim_codeattributes2 == true; _slim_controls2 << (" start".freeze); else; _slim_controls2 << (" start=\"".freeze); _slim_controls2 << ((_slim_codeattributes2).to_s); _slim_controls2 << ("\"".freeze); end; end; _slim_codeattributes3 = list_marker_keyword; if _slim_codeattributes3; if _slim_codeattributes3 == true; _slim_controls2 << (" type".freeze); else; _slim_controls2 << (" type=\"".freeze); _slim_controls2 << ((_slim_codeattributes3).to_s); _slim_controls2 << ("\"".freeze); end; end; _slim_controls2 << (">".freeze);
804
+ ; items.each do |item|;
805
+ ; _slim_controls2 << ("<li".freeze); _temple_html_attributeremover2 = ''; _slim_codeattributes4 = ('fragment' if (option? :step) || (has_role? 'step') || (attr? 'step')); if Array === _slim_codeattributes4; _slim_codeattributes4 = _slim_codeattributes4.flatten; _slim_codeattributes4.map!(&:to_s); _slim_codeattributes4.reject!(&:empty?); _temple_html_attributeremover2 << ((_slim_codeattributes4.join(" ")).to_s); else; _temple_html_attributeremover2 << ((_slim_codeattributes4).to_s); end; _temple_html_attributeremover2; if !_temple_html_attributeremover2.empty?; _slim_controls2 << (" class=\"".freeze); _slim_controls2 << ((_temple_html_attributeremover2).to_s); _slim_controls2 << ("\"".freeze); end; _slim_controls2 << ("><p>".freeze);
806
+ ; _slim_controls2 << ((item.text).to_s);
807
+ ; _slim_controls2 << ("</p>".freeze); if item.blocks?;
808
+ ; _slim_controls2 << ((item.content).to_s);
809
+ ; end; _slim_controls2 << ("</li>".freeze); end; _slim_controls2 << ("</ol>".freeze); _slim_controls2; end; _buf << ((_slim_controls1).to_s); _buf
810
+ end
811
+ end
812
+
813
+ def convert_inline_footnote(node, opts = {})
814
+ node.extend(Helpers)
815
+ node.instance_eval do
816
+ converter.set_local_variables(binding, opts) unless opts.empty?
817
+ _buf = ''; footnote = slide_footnote(self);
818
+ ; index = footnote.attr(:index);
819
+ ; id = footnote.id;
820
+ ; if @type == :xref;
821
+ ; _slim_controls1 = html_tag('sup', { :class => ['footnoteref'] }.merge(data_attrs(footnote.attributes))) do; _slim_controls2 = '';
822
+ ; _slim_controls2 << ("[<span class=\"footnote\" title=\"View footnote.\">".freeze);
823
+ ; _slim_controls2 << ((index).to_s);
824
+ ; _slim_controls2 << ("</span>]".freeze);
825
+ ; _slim_controls2; end; _buf << ((_slim_controls1).to_s); else;
826
+ ; _slim_controls3 = html_tag('sup', { :id => ("_footnote_#{id}" if id), :class => ['footnote'] }.merge(data_attrs(footnote.attributes))) do; _slim_controls4 = '';
827
+ ; _slim_controls4 << ("[<span class=\"footnote\" title=\"View footnote.\">".freeze);
828
+ ; _slim_controls4 << ((index).to_s);
829
+ ; _slim_controls4 << ("</span>]".freeze);
830
+ ; _slim_controls4; end; _buf << ((_slim_controls3).to_s); end; _buf
831
+ end
832
+ end
833
+
834
+ def convert_preamble(node, opts = {})
835
+ node.extend(Helpers)
836
+ node.instance_eval do
837
+ converter.set_local_variables(binding, opts) unless opts.empty?
838
+ _buf = '';
946
839
  ;
947
- ; footnotes.each do |fn|;
948
- ; _buf << ("<div class=\"footnote\" id=\"_footnote_".freeze); _buf << ((fn.index).to_s); _buf << ("\"><a href=\"#_footnoteref_".freeze);
949
- ; _buf << ((fn.index).to_s); _buf << ("\">".freeze); _buf << ((fn.index).to_s); _buf << ("</a>. ".freeze); _buf << ((fn.text).to_s);
950
- ; _buf << ("</div>".freeze); end; _buf << ("</div>".freeze); end; _buf
840
+ ; _buf
841
+ end
842
+ end
843
+
844
+ def convert_inline_menu(node, opts = {})
845
+ node.extend(Helpers)
846
+ node.instance_eval do
847
+ converter.set_local_variables(binding, opts) unless opts.empty?
848
+ _buf = ''; menu = attr 'menu';
849
+ ; menuitem = attr 'menuitem';
850
+ ; if !(submenus = attr 'submenus').empty?;
851
+ ; _slim_controls1 = html_tag('span', { :class => ['menuseq'] }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
852
+ ; _slim_controls2 << ("<span class=\"menu\">".freeze); _slim_controls2 << ((menu).to_s);
853
+ ; _slim_controls2 << ("</span>&#160;&#9656;&#32;".freeze);
854
+ ; _slim_controls2 << ((submenus.map {|submenu| %(<span class="submenu">#{submenu}</span>&#160;&#9656;&#32;) }.join).to_s);
855
+ ; _slim_controls2 << ("<span class=\"menuitem\">".freeze); _slim_controls2 << ((menuitem).to_s);
856
+ ; _slim_controls2 << ("</span>".freeze); _slim_controls2; end; _buf << ((_slim_controls1).to_s); elsif !menuitem.nil?;
857
+ ; _slim_controls3 = html_tag('span', { :class => ['menuseq'] }.merge(data_attrs(@attributes))) do; _slim_controls4 = '';
858
+ ; _slim_controls4 << ("<span class=\"menu\">".freeze); _slim_controls4 << ((menu).to_s);
859
+ ; _slim_controls4 << ("</span>&#160;&#9656;&#32;<span class=\"menuitem\">".freeze);
860
+ ; _slim_controls4 << ((menuitem).to_s);
861
+ ; _slim_controls4 << ("</span>".freeze); _slim_controls4; end; _buf << ((_slim_controls3).to_s); else;
862
+ ; _slim_controls5 = html_tag('span', { :class => ['menu'] }.merge(data_attrs(@attributes))) do; _slim_controls6 = '';
863
+ ; _slim_controls6 << ((menu).to_s);
864
+ ; _slim_controls6; end; _buf << ((_slim_controls5).to_s); end; _buf
865
+ end
866
+ end
867
+
868
+ def convert_colist(node, opts = {})
869
+ node.extend(Helpers)
870
+ node.instance_eval do
871
+ converter.set_local_variables(binding, opts) unless opts.empty?
872
+ _buf = ''; _slim_controls1 = html_tag('div', { :id => @id, :class => ['colist', @style, role] }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
873
+ ; if title?;
874
+ ; _slim_controls2 << ("<div class=\"title\">".freeze); _slim_controls2 << ((title).to_s);
875
+ ; _slim_controls2 << ("</div>".freeze); end; if @document.attr? :icons;
876
+ ; font_icons = @document.attr? :icons, 'font';
877
+ ; _slim_controls2 << ("<table>".freeze);
878
+ ; items.each_with_index do |item, i|;
879
+ ; num = i + 1;
880
+ ; _slim_controls2 << ("<tr".freeze); _temple_html_attributeremover1 = ''; _slim_codeattributes1 = ('fragment' if (option? :step) || (has_role? 'step') || (attr? 'step')); if Array === _slim_codeattributes1; _slim_codeattributes1 = _slim_codeattributes1.flatten; _slim_codeattributes1.map!(&:to_s); _slim_codeattributes1.reject!(&:empty?); _temple_html_attributeremover1 << ((_slim_codeattributes1.join(" ")).to_s); else; _temple_html_attributeremover1 << ((_slim_codeattributes1).to_s); end; _temple_html_attributeremover1; if !_temple_html_attributeremover1.empty?; _slim_controls2 << (" class=\"".freeze); _slim_controls2 << ((_temple_html_attributeremover1).to_s); _slim_controls2 << ("\"".freeze); end; _slim_controls2 << ("><td>".freeze);
881
+ ;
882
+ ; if font_icons;
883
+ ; _slim_controls2 << ("<i class=\"conum\"".freeze); _slim_codeattributes2 = num; if _slim_codeattributes2; if _slim_codeattributes2 == true; _slim_controls2 << (" data-value".freeze); else; _slim_controls2 << (" data-value=\"".freeze); _slim_controls2 << ((_slim_codeattributes2).to_s); _slim_controls2 << ("\"".freeze); end; end; _slim_controls2 << ("></i><b>".freeze);
884
+ ; _slim_controls2 << ((num).to_s);
885
+ ; _slim_controls2 << ("</b>".freeze); else;
886
+ ; _slim_controls2 << ("<img".freeze); _slim_codeattributes3 = icon_uri("callouts/#{num}"); if _slim_codeattributes3; if _slim_codeattributes3 == true; _slim_controls2 << (" src".freeze); else; _slim_controls2 << (" src=\"".freeze); _slim_controls2 << ((_slim_codeattributes3).to_s); _slim_controls2 << ("\"".freeze); end; end; _slim_codeattributes4 = num; if _slim_codeattributes4; if _slim_codeattributes4 == true; _slim_controls2 << (" alt".freeze); else; _slim_controls2 << (" alt=\"".freeze); _slim_controls2 << ((_slim_codeattributes4).to_s); _slim_controls2 << ("\"".freeze); end; end; _slim_controls2 << (">".freeze);
887
+ ; end; _slim_controls2 << ("</td><td>".freeze); _slim_controls2 << ((item.text).to_s);
888
+ ; _slim_controls2 << ("</td></tr>".freeze); end; _slim_controls2 << ("</table>".freeze); else;
889
+ ; _slim_controls2 << ("<ol>".freeze);
890
+ ; items.each do |item|;
891
+ ; _slim_controls2 << ("<li".freeze); _temple_html_attributeremover2 = ''; _slim_codeattributes5 = ('fragment' if (option? :step) || (has_role? 'step') || (attr? 'step')); if Array === _slim_codeattributes5; _slim_codeattributes5 = _slim_codeattributes5.flatten; _slim_codeattributes5.map!(&:to_s); _slim_codeattributes5.reject!(&:empty?); _temple_html_attributeremover2 << ((_slim_codeattributes5.join(" ")).to_s); else; _temple_html_attributeremover2 << ((_slim_codeattributes5).to_s); end; _temple_html_attributeremover2; if !_temple_html_attributeremover2.empty?; _slim_controls2 << (" class=\"".freeze); _slim_controls2 << ((_temple_html_attributeremover2).to_s); _slim_controls2 << ("\"".freeze); end; _slim_controls2 << ("><p>".freeze);
892
+ ; _slim_controls2 << ((item.text).to_s);
893
+ ; _slim_controls2 << ("</p></li>".freeze); end; _slim_controls2 << ("</ol>".freeze); end; _slim_controls2; end; _buf << ((_slim_controls1).to_s); _buf
894
+ end
895
+ end
896
+
897
+ def convert_paragraph(node, opts = {})
898
+ node.extend(Helpers)
899
+ node.instance_eval do
900
+ converter.set_local_variables(binding, opts) unless opts.empty?
901
+ _buf = ''; _slim_controls1 = html_tag('div', { :id => @id, :class => ['paragraph', role, ('fragment' if (option? :step) || (attr? 'step'))] }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
902
+ ; if title?;
903
+ ; _slim_controls2 << ("<div class=\"title\">".freeze); _slim_controls2 << ((title).to_s);
904
+ ; _slim_controls2 << ("</div>".freeze); end; if has_role? 'small';
905
+ ; _slim_controls2 << ("<small>".freeze); _slim_controls2 << ((content).to_s);
906
+ ; _slim_controls2 << ("</small>".freeze); else;
907
+ ; _slim_controls2 << ("<p>".freeze); _slim_controls2 << ((content).to_s);
908
+ ; _slim_controls2 << ("</p>".freeze); end; _slim_controls2; end; _buf << ((_slim_controls1).to_s); _buf
909
+ end
910
+ end
911
+
912
+ def convert_listing(node, opts = {})
913
+ node.extend(Helpers)
914
+ node.instance_eval do
915
+ converter.set_local_variables(binding, opts) unless opts.empty?
916
+ _buf = ''; nowrap = (option? 'nowrap') || !(document.attr? 'prewrap');
917
+ ; if @style == 'source';
918
+ ; syntax_hl = document.syntax_highlighter;
919
+ ; lang = attr :language;
920
+ ; if syntax_hl;
921
+ ; doc_attrs = document.attributes;
922
+ ; css_mode = (doc_attrs[%(#{syntax_hl.name}-css)] || :class).to_sym;
923
+ ; style = doc_attrs[%(#{syntax_hl.name}-style)];
924
+ ; opts = syntax_hl.highlight? ? { css_mode: css_mode, style: style } : {};
925
+ ; opts[:nowrap] = nowrap;
926
+ ; end;
927
+ ; end; _slim_controls1 = html_tag('div', { :id => id, :class => ['listingblock', role, ('fragment' if (option? :step) || (attr? 'step'))] }.merge(data_attrs(@attributes.reject {|key, _| key == 'data-id' }))) do; _slim_controls2 = '';
928
+ ; if title?;
929
+ ; _slim_controls2 << ("<div class=\"title\">".freeze); _slim_controls2 << ((captioned_title).to_s);
930
+ ; _slim_controls2 << ("</div>".freeze); end; _slim_controls2 << ("<div class=\"content\">".freeze);
931
+ ; if syntax_hl;
932
+ ; _slim_controls2 << (((syntax_hl.format self, lang, opts)).to_s);
933
+ ; else;
934
+ ; if @style == 'source';
935
+ ; _slim_controls2 << ("<pre".freeze); _temple_html_attributeremover1 = ''; _slim_codeattributes1 = ['highlight', ('nowrap' if nowrap)]; if Array === _slim_codeattributes1; _slim_codeattributes1 = _slim_codeattributes1.flatten; _slim_codeattributes1.map!(&:to_s); _slim_codeattributes1.reject!(&:empty?); _temple_html_attributeremover1 << ((_slim_codeattributes1.join(" ")).to_s); else; _temple_html_attributeremover1 << ((_slim_codeattributes1).to_s); end; _temple_html_attributeremover1; if !_temple_html_attributeremover1.empty?; _slim_controls2 << (" class=\"".freeze); _slim_controls2 << ((_temple_html_attributeremover1).to_s); _slim_controls2 << ("\"".freeze); end; _slim_controls2 << ("><code".freeze);
936
+ ; _temple_html_attributeremover2 = ''; _slim_codeattributes2 = [("language-#{lang}" if lang)]; if Array === _slim_codeattributes2; _slim_codeattributes2 = _slim_codeattributes2.flatten; _slim_codeattributes2.map!(&:to_s); _slim_codeattributes2.reject!(&:empty?); _temple_html_attributeremover2 << ((_slim_codeattributes2.join(" ")).to_s); else; _temple_html_attributeremover2 << ((_slim_codeattributes2).to_s); end; _temple_html_attributeremover2; if !_temple_html_attributeremover2.empty?; _slim_controls2 << (" class=\"".freeze); _slim_controls2 << ((_temple_html_attributeremover2).to_s); _slim_controls2 << ("\"".freeze); end; _slim_codeattributes3 = ("#{lang}" if lang); if _slim_codeattributes3; if _slim_codeattributes3 == true; _slim_controls2 << (" data-lang".freeze); else; _slim_controls2 << (" data-lang=\"".freeze); _slim_controls2 << ((_slim_codeattributes3).to_s); _slim_controls2 << ("\"".freeze); end; end; _slim_controls2 << (">".freeze);
937
+ ; _slim_controls2 << ((content || '').to_s);
938
+ ; _slim_controls2 << ("</code></pre>".freeze); else;
939
+ ; _slim_controls2 << ("<pre".freeze); _temple_html_attributeremover3 = ''; _slim_codeattributes4 = [('nowrap' if nowrap)]; if Array === _slim_codeattributes4; _slim_codeattributes4 = _slim_codeattributes4.flatten; _slim_codeattributes4.map!(&:to_s); _slim_codeattributes4.reject!(&:empty?); _temple_html_attributeremover3 << ((_slim_codeattributes4.join(" ")).to_s); else; _temple_html_attributeremover3 << ((_slim_codeattributes4).to_s); end; _temple_html_attributeremover3; if !_temple_html_attributeremover3.empty?; _slim_controls2 << (" class=\"".freeze); _slim_controls2 << ((_temple_html_attributeremover3).to_s); _slim_controls2 << ("\"".freeze); end; _slim_controls2 << (">".freeze);
940
+ ; _slim_controls2 << ((content || '').to_s);
941
+ ; _slim_controls2 << ("</pre>".freeze); end; end; _slim_controls2 << ("</div>".freeze); _slim_controls2; end; _buf << ((_slim_controls1).to_s); _buf
942
+ end
943
+ end
944
+
945
+ def convert_inline_indexterm(node, opts = {})
946
+ node.extend(Helpers)
947
+ node.instance_eval do
948
+ converter.set_local_variables(binding, opts) unless opts.empty?
949
+ _buf = ''; if @type == :visible;
950
+ ; _buf << ((@text).to_s);
951
+ ; end; _buf
952
+ end
953
+ end
954
+
955
+ def convert_table(node, opts = {})
956
+ node.extend(Helpers)
957
+ node.instance_eval do
958
+ converter.set_local_variables(binding, opts) unless opts.empty?
959
+ _buf = ''; classes = ['tableblock', "frame-#{attr :frame, 'all'}", "grid-#{attr :grid, 'all'}", role, ('fragment' if (option? :step) || (attr? 'step'))];
960
+ ; styles = [("width:#{attr :tablepcwidth}%" unless option? 'autowidth'), ("float:#{attr :float}" if attr? :float)].compact.join('; ');
961
+ ; _slim_controls1 = html_tag('table', { :id => @id, :class => classes, :style => styles }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
962
+ ; if title?;
963
+ ; _slim_controls2 << ("<caption class=\"title\">".freeze); _slim_controls2 << ((captioned_title).to_s);
964
+ ; _slim_controls2 << ("</caption>".freeze); end; unless (attr :rowcount).zero?;
965
+ ; _slim_controls2 << ("<colgroup>".freeze);
966
+ ; if option? 'autowidth';
967
+ ; @columns.each do;
968
+ ; _slim_controls2 << ("<col>".freeze);
969
+ ; end; else;
970
+ ; @columns.each do |col|;
971
+ ; _slim_controls2 << ("<col style=\"width:".freeze); _slim_controls2 << ((col.attr :colpcwidth).to_s); _slim_controls2 << ("%\">".freeze);
972
+ ; end; end; _slim_controls2 << ("</colgroup>".freeze); [:head, :foot, :body].select {|tblsec| !@rows[tblsec].empty? }.each do |tblsec|;
973
+ ;
974
+ ; _slim_controls2 << ("<t".freeze); _slim_controls2 << ((tblsec).to_s); _slim_controls2 << (">".freeze);
975
+ ; @rows[tblsec].each do |row|;
976
+ ; _slim_controls2 << ("<tr>".freeze);
977
+ ; row.each do |cell|;
978
+ ;
979
+ ; if tblsec == :head;
980
+ ; cell_content = cell.text;
981
+ ; else;
982
+ ; case cell.style;
983
+ ; when :literal;
984
+ ; cell_content = cell.text;
985
+ ; else;
986
+ ; cell_content = cell.content;
987
+ ; end; end; _slim_controls3 = html_tag(tblsec == :head || cell.style == :header ? 'th' : 'td',
988
+ :class=>['tableblock', "halign-#{cell.attr :halign}", "valign-#{cell.attr :valign}"],
989
+ :colspan=>cell.colspan, :rowspan=>cell.rowspan,
990
+ :style=>((@document.attr? :cellbgcolor) ? %(background-color:#{@document.attr :cellbgcolor};) : nil)) do; _slim_controls4 = '';
991
+ ; if tblsec == :head;
992
+ ; _slim_controls4 << ((cell_content).to_s);
993
+ ; else;
994
+ ; case cell.style;
995
+ ; when :asciidoc;
996
+ ; _slim_controls4 << ("<div>".freeze); _slim_controls4 << ((cell_content).to_s);
997
+ ; _slim_controls4 << ("</div>".freeze); when :literal;
998
+ ; _slim_controls4 << ("<div class=\"literal\"><pre>".freeze); _slim_controls4 << ((cell_content).to_s);
999
+ ; _slim_controls4 << ("</pre></div>".freeze); when :header;
1000
+ ; cell_content.each do |text|;
1001
+ ; _slim_controls4 << ("<p class=\"tableblock header\">".freeze); _slim_controls4 << ((text).to_s);
1002
+ ; _slim_controls4 << ("</p>".freeze); end; else;
1003
+ ; cell_content.each do |text|;
1004
+ ; _slim_controls4 << ("<p class=\"tableblock\">".freeze); _slim_controls4 << ((text).to_s);
1005
+ ; _slim_controls4 << ("</p>".freeze); end; end; end; _slim_controls4; end; _slim_controls2 << ((_slim_controls3).to_s); end; _slim_controls2 << ("</tr>".freeze); end; end; end; _slim_controls2; end; _buf << ((_slim_controls1).to_s); _buf
1006
+ end
1007
+ end
1008
+
1009
+ def convert_sidebar(node, opts = {})
1010
+ node.extend(Helpers)
1011
+ node.instance_eval do
1012
+ converter.set_local_variables(binding, opts) unless opts.empty?
1013
+ _buf = ''; if (has_role? 'aside') or (has_role? 'speaker') or (has_role? 'notes');
1014
+ ; _buf << ("<aside class=\"notes\">".freeze); _buf << ((resolve_content).to_s);
1015
+ ; _buf << ("</aside>".freeze);
1016
+ ; else;
1017
+ ; _slim_controls1 = html_tag('div', { :id => @id, :class => ['sidebarblock', role, ('fragment' if (option? :step) || (has_role? 'step') || (attr? 'step'))] }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
1018
+ ; _slim_controls2 << ("<div class=\"content\">".freeze);
1019
+ ; if title?;
1020
+ ; _slim_controls2 << ("<div class=\"title\">".freeze); _slim_controls2 << ((title).to_s);
1021
+ ; _slim_controls2 << ("</div>".freeze); end; _slim_controls2 << ((content).to_s);
1022
+ ; _slim_controls2 << ("</div>".freeze); _slim_controls2; end; _buf << ((_slim_controls1).to_s); end; _buf
951
1023
  end
952
1024
  end
953
1025
 
954
- def document(node, opts = {})
1026
+ def convert_document(node, opts = {})
955
1027
  node.extend(Helpers)
956
1028
  node.instance_eval do
957
1029
  converter.set_local_variables(binding, opts) unless opts.empty?
@@ -1293,109 +1365,67 @@ class Asciidoctor::Revealjs::Converter < ::Asciidoctor::Converter::Base
1293
1365
  ;
1294
1366
  ; end; unless (docinfo_content = (docinfo :footer, '.html')).empty?;
1295
1367
  ; _buf << ((docinfo_content).to_s);
1296
- ; end; _buf << ("</body></html>".freeze); _buf
1297
- end
1298
- end
1299
-
1300
- def sidebar(node, opts = {})
1301
- node.extend(Helpers)
1302
- node.instance_eval do
1303
- converter.set_local_variables(binding, opts) unless opts.empty?
1304
- _buf = ''; if (has_role? 'aside') or (has_role? 'speaker') or (has_role? 'notes');
1305
- ; _buf << ("<aside class=\"notes\">".freeze); _buf << ((resolve_content).to_s);
1306
- ; _buf << ("</aside>".freeze);
1307
- ; else;
1308
- ; _slim_controls1 = html_tag('div', { :id => @id, :class => ['sidebarblock', role, ('fragment' if (option? :step) || (has_role? 'step') || (attr? 'step'))] }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
1309
- ; _slim_controls2 << ("<div class=\"content\">".freeze);
1310
- ; if title?;
1311
- ; _slim_controls2 << ("<div class=\"title\">".freeze); _slim_controls2 << ((title).to_s);
1312
- ; _slim_controls2 << ("</div>".freeze); end; _slim_controls2 << ((content).to_s);
1313
- ; _slim_controls2 << ("</div>".freeze); _slim_controls2; end; _buf << ((_slim_controls1).to_s); end; _buf
1368
+ ; end; _buf << ("</body></html>".freeze); _buf
1314
1369
  end
1315
1370
  end
1316
1371
 
1317
- def inline_break(node, opts = {})
1372
+ def convert_outline(node, opts = {})
1318
1373
  node.extend(Helpers)
1319
1374
  node.instance_eval do
1320
1375
  converter.set_local_variables(binding, opts) unless opts.empty?
1321
- _buf = ''; _buf << ((@text).to_s);
1322
- ; _buf << ("<br>".freeze);
1323
- ; _buf
1376
+ _buf = ''; unless sections.empty?;
1377
+ ; toclevels ||= (document.attr 'toclevels', DEFAULT_TOCLEVELS).to_i;
1378
+ ; slevel = section_level sections.first;
1379
+ ; _buf << ("<ol class=\"sectlevel".freeze); _buf << ((slevel).to_s); _buf << ("\">".freeze);
1380
+ ; sections.each do |sec|;
1381
+ ; _buf << ("<li><a href=\"#".freeze);
1382
+ ; _buf << ((sec.id).to_s); _buf << ("\">".freeze); _buf << ((section_title sec).to_s);
1383
+ ; _buf << ("</a>".freeze); if (sec.level < toclevels) && (child_toc = converter.convert sec, 'outline');
1384
+ ; _buf << ((child_toc).to_s);
1385
+ ; end; _buf << ("</li>".freeze); end; _buf << ("</ol>".freeze); end; _buf
1324
1386
  end
1325
1387
  end
1326
1388
 
1327
- def inline_indexterm(node, opts = {})
1389
+ def convert_inline_anchor(node, opts = {})
1328
1390
  node.extend(Helpers)
1329
1391
  node.instance_eval do
1330
1392
  converter.set_local_variables(binding, opts) unless opts.empty?
1331
- _buf = ''; if @type == :visible;
1332
- ; _buf << ((@text).to_s);
1333
- ; end; _buf
1393
+ _buf = ''; case @type;
1394
+ ; when :xref;
1395
+ ; refid = (attr :refid) || @target;
1396
+ ; _slim_controls1 = html_tag('a', { :href => @target, :class => [role, ('fragment' if (option? :step) || (attr? 'step'))].compact }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
1397
+ ; _slim_controls2 << (((@text || @document.references[:ids].fetch(refid, "[#{refid}]")).tr_s("\n", ' ')).to_s);
1398
+ ; _slim_controls2; end; _buf << ((_slim_controls1).to_s); when :ref;
1399
+ ; _buf << ((html_tag('a', { :id => @target }.merge(data_attrs(@attributes)))).to_s);
1400
+ ; when :bibref;
1401
+ ; _buf << ((html_tag('a', { :id => @target }.merge(data_attrs(@attributes)))).to_s);
1402
+ ; _buf << ("[".freeze); _buf << ((@target).to_s); _buf << ("]".freeze);
1403
+ ; else;
1404
+ ; _slim_controls3 = html_tag('a', { :href => @target, :class => [role, ('fragment' if (option? :step) || (attr? 'step'))].compact, :target => (attr :window), 'data-preview-link' => (bool_data_attr :preview) }.merge(data_attrs(@attributes))) do; _slim_controls4 = '';
1405
+ ; _slim_controls4 << ((@text).to_s);
1406
+ ; _slim_controls4; end; _buf << ((_slim_controls3).to_s); end; _buf
1334
1407
  end
1335
1408
  end
1336
1409
 
1337
- def dlist(node, opts = {})
1410
+ def convert_stem(node, opts = {})
1338
1411
  node.extend(Helpers)
1339
1412
  node.instance_eval do
1340
1413
  converter.set_local_variables(binding, opts) unless opts.empty?
1341
- _buf = ''; case @style;
1342
- ; when 'qanda';
1343
- ; _slim_controls1 = html_tag('div', { :id => @id, :class => ['qlist', @style, role] }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
1414
+ _buf = ''; open, close = Asciidoctor::BLOCK_MATH_DELIMITERS[@style.to_sym];
1415
+ ; equation = content.strip;
1416
+ ; if (@subs.nil? || @subs.empty?) && !(attr? 'subs');
1417
+ ; equation = sub_specialcharacters equation;
1418
+ ; end; unless (equation.start_with? open) && (equation.end_with? close);
1419
+ ; equation = %(#{open}#{equation}#{close});
1420
+ ; end; _slim_controls1 = html_tag('div', { :id => @id, :class => ['stemblock', role, ('fragment' if (option? :step) || (has_role? 'step') || (attr? 'step'))] }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
1344
1421
  ; if title?;
1345
1422
  ; _slim_controls2 << ("<div class=\"title\">".freeze); _slim_controls2 << ((title).to_s);
1346
- ; _slim_controls2 << ("</div>".freeze); end; _slim_controls2 << ("<ol>".freeze);
1347
- ; items.each do |questions, answer|;
1348
- ; _slim_controls2 << ("<li>".freeze);
1349
- ; [*questions].each do |question|;
1350
- ; _slim_controls2 << ("<p><em>".freeze); _slim_controls2 << ((question.text).to_s);
1351
- ; _slim_controls2 << ("</em></p>".freeze); end; unless answer.nil?;
1352
- ; if answer.text?;
1353
- ; _slim_controls2 << ("<p>".freeze); _slim_controls2 << ((answer.text).to_s);
1354
- ; _slim_controls2 << ("</p>".freeze); end; if answer.blocks?;
1355
- ; _slim_controls2 << ((answer.content).to_s);
1356
- ; end; end; _slim_controls2 << ("</li>".freeze); end; _slim_controls2 << ("</ol>".freeze); _slim_controls2; end; _buf << ((_slim_controls1).to_s); when 'horizontal';
1357
- ; _slim_controls3 = html_tag('div', { :id => @id, :class => ['hdlist', role] }.merge(data_attrs(@attributes))) do; _slim_controls4 = '';
1358
- ; if title?;
1359
- ; _slim_controls4 << ("<div class=\"title\">".freeze); _slim_controls4 << ((title).to_s);
1360
- ; _slim_controls4 << ("</div>".freeze); end; _slim_controls4 << ("<table>".freeze);
1361
- ; if (attr? :labelwidth) || (attr? :itemwidth);
1362
- ; _slim_controls4 << ("<colgroup><col".freeze);
1363
- ; _slim_codeattributes1 = ((attr? :labelwidth) ? %(width:#{(attr :labelwidth).chomp '%'}%;) : nil); if _slim_codeattributes1; if _slim_codeattributes1 == true; _slim_controls4 << (" style".freeze); else; _slim_controls4 << (" style=\"".freeze); _slim_controls4 << ((_slim_codeattributes1).to_s); _slim_controls4 << ("\"".freeze); end; end; _slim_controls4 << ("><col".freeze);
1364
- ; _slim_codeattributes2 = ((attr? :itemwidth) ? %(width:#{(attr :itemwidth).chomp '%'}%;) : nil); if _slim_codeattributes2; if _slim_codeattributes2 == true; _slim_controls4 << (" style".freeze); else; _slim_controls4 << (" style=\"".freeze); _slim_controls4 << ((_slim_codeattributes2).to_s); _slim_controls4 << ("\"".freeze); end; end; _slim_controls4 << ("></colgroup>".freeze);
1365
- ; end; items.each do |terms, dd|;
1366
- ; _slim_controls4 << ("<tr><td".freeze);
1367
- ; _temple_html_attributeremover1 = ''; _slim_codeattributes3 = ['hdlist1',('strong' if option? 'strong')]; if Array === _slim_codeattributes3; _slim_codeattributes3 = _slim_codeattributes3.flatten; _slim_codeattributes3.map!(&:to_s); _slim_codeattributes3.reject!(&:empty?); _temple_html_attributeremover1 << ((_slim_codeattributes3.join(" ")).to_s); else; _temple_html_attributeremover1 << ((_slim_codeattributes3).to_s); end; _temple_html_attributeremover1; if !_temple_html_attributeremover1.empty?; _slim_controls4 << (" class=\"".freeze); _slim_controls4 << ((_temple_html_attributeremover1).to_s); _slim_controls4 << ("\"".freeze); end; _slim_controls4 << (">".freeze);
1368
- ; terms = [*terms];
1369
- ; last_term = terms.last;
1370
- ; terms.each do |dt|;
1371
- ; _slim_controls4 << ((dt.text).to_s);
1372
- ; if dt != last_term;
1373
- ; _slim_controls4 << ("<br>".freeze);
1374
- ; end; end; _slim_controls4 << ("</td><td class=\"hdlist2\">".freeze);
1375
- ; unless dd.nil?;
1376
- ; if dd.text?;
1377
- ; _slim_controls4 << ("<p>".freeze); _slim_controls4 << ((dd.text).to_s);
1378
- ; _slim_controls4 << ("</p>".freeze); end; if dd.blocks?;
1379
- ; _slim_controls4 << ((dd.content).to_s);
1380
- ; end; end; _slim_controls4 << ("</td></tr>".freeze); end; _slim_controls4 << ("</table>".freeze); _slim_controls4; end; _buf << ((_slim_controls3).to_s); else;
1381
- ; _slim_controls5 = html_tag('div', { :id => @id, :class => ['dlist', @style, role] }.merge(data_attrs(@attributes))) do; _slim_controls6 = '';
1382
- ; if title?;
1383
- ; _slim_controls6 << ("<div class=\"title\">".freeze); _slim_controls6 << ((title).to_s);
1384
- ; _slim_controls6 << ("</div>".freeze); end; _slim_controls6 << ("<dl>".freeze);
1385
- ; items.each do |terms, dd|;
1386
- ; [*terms].each do |dt|;
1387
- ; _slim_controls6 << ("<dt".freeze); _temple_html_attributeremover2 = ''; _slim_codeattributes4 = ('hdlist1' unless @style); if Array === _slim_codeattributes4; _slim_codeattributes4 = _slim_codeattributes4.flatten; _slim_codeattributes4.map!(&:to_s); _slim_codeattributes4.reject!(&:empty?); _temple_html_attributeremover2 << ((_slim_codeattributes4.join(" ")).to_s); else; _temple_html_attributeremover2 << ((_slim_codeattributes4).to_s); end; _temple_html_attributeremover2; if !_temple_html_attributeremover2.empty?; _slim_controls6 << (" class=\"".freeze); _slim_controls6 << ((_temple_html_attributeremover2).to_s); _slim_controls6 << ("\"".freeze); end; _slim_controls6 << (">".freeze); _slim_controls6 << ((dt.text).to_s);
1388
- ; _slim_controls6 << ("</dt>".freeze); end; unless dd.nil?;
1389
- ; _slim_controls6 << ("<dd>".freeze);
1390
- ; if dd.text?;
1391
- ; _slim_controls6 << ("<p>".freeze); _slim_controls6 << ((dd.text).to_s);
1392
- ; _slim_controls6 << ("</p>".freeze); end; if dd.blocks?;
1393
- ; _slim_controls6 << ((dd.content).to_s);
1394
- ; end; _slim_controls6 << ("</dd>".freeze); end; end; _slim_controls6 << ("</dl>".freeze); _slim_controls6; end; _buf << ((_slim_controls5).to_s); end; _buf
1423
+ ; _slim_controls2 << ("</div>".freeze); end; _slim_controls2 << ("<div class=\"content\">".freeze); _slim_controls2 << ((equation).to_s);
1424
+ ; _slim_controls2 << ("</div>".freeze); _slim_controls2; end; _buf << ((_slim_controls1).to_s); _buf
1395
1425
  end
1396
1426
  end
1397
1427
 
1398
- def ulist(node, opts = {})
1428
+ def convert_ulist(node, opts = {})
1399
1429
  node.extend(Helpers)
1400
1430
  node.instance_eval do
1401
1431
  converter.set_local_variables(binding, opts) unless opts.empty?
@@ -1428,7 +1458,34 @@ class Asciidoctor::Revealjs::Converter < ::Asciidoctor::Converter::Base
1428
1458
  end
1429
1459
  end
1430
1460
 
1431
- def page_break(node, opts = {})
1461
+ def convert_inline_break(node, opts = {})
1462
+ node.extend(Helpers)
1463
+ node.instance_eval do
1464
+ converter.set_local_variables(binding, opts) unless opts.empty?
1465
+ _buf = ''; _buf << ((@text).to_s);
1466
+ ; _buf << ("<br>".freeze);
1467
+ ; _buf
1468
+ end
1469
+ end
1470
+
1471
+ def convert_inline_kbd(node, opts = {})
1472
+ node.extend(Helpers)
1473
+ node.instance_eval do
1474
+ converter.set_local_variables(binding, opts) unless opts.empty?
1475
+ _buf = ''; if (keys = attr 'keys').size == 1;
1476
+ ; _slim_controls1 = html_tag('kbd', data_attrs(@attributes)) do; _slim_controls2 = '';
1477
+ ; _slim_controls2 << ((keys.first).to_s);
1478
+ ; _slim_controls2; end; _buf << ((_slim_controls1).to_s); else;
1479
+ ; _slim_controls3 = html_tag('span', { :class => ['keyseq'] }.merge(data_attrs(@attributes))) do; _slim_controls4 = '';
1480
+ ; keys.each_with_index do |key, idx|;
1481
+ ; unless idx.zero?;
1482
+ ; _slim_controls4 << ("+".freeze);
1483
+ ; end; _slim_controls4 << ("<kbd>".freeze); _slim_controls4 << ((key).to_s);
1484
+ ; _slim_controls4 << ("</kbd>".freeze); end; _slim_controls4; end; _buf << ((_slim_controls3).to_s); end; _buf
1485
+ end
1486
+ end
1487
+
1488
+ def convert_page_break(node, opts = {})
1432
1489
  node.extend(Helpers)
1433
1490
  node.instance_eval do
1434
1491
  converter.set_local_variables(binding, opts) unless opts.empty?
@@ -1437,125 +1494,127 @@ class Asciidoctor::Revealjs::Converter < ::Asciidoctor::Converter::Base
1437
1494
  end
1438
1495
  end
1439
1496
 
1440
- def table(node, opts = {})
1497
+ def convert_thematic_break(node, opts = {})
1441
1498
  node.extend(Helpers)
1442
1499
  node.instance_eval do
1443
1500
  converter.set_local_variables(binding, opts) unless opts.empty?
1444
- _buf = ''; classes = ['tableblock', "frame-#{attr :frame, 'all'}", "grid-#{attr :grid, 'all'}", role, ('fragment' if (option? :step) || (attr? 'step'))];
1445
- ; styles = [("width:#{attr :tablepcwidth}%" unless option? 'autowidth'), ("float:#{attr :float}" if attr? :float)].compact.join('; ');
1446
- ; _slim_controls1 = html_tag('table', { :id => @id, :class => classes, :style => styles }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
1447
- ; if title?;
1448
- ; _slim_controls2 << ("<caption class=\"title\">".freeze); _slim_controls2 << ((captioned_title).to_s);
1449
- ; _slim_controls2 << ("</caption>".freeze); end; unless (attr :rowcount).zero?;
1450
- ; _slim_controls2 << ("<colgroup>".freeze);
1451
- ; if option? 'autowidth';
1452
- ; @columns.each do;
1453
- ; _slim_controls2 << ("<col>".freeze);
1454
- ; end; else;
1455
- ; @columns.each do |col|;
1456
- ; _slim_controls2 << ("<col style=\"width:".freeze); _slim_controls2 << ((col.attr :colpcwidth).to_s); _slim_controls2 << ("%\">".freeze);
1457
- ; end; end; _slim_controls2 << ("</colgroup>".freeze); [:head, :foot, :body].select {|tblsec| !@rows[tblsec].empty? }.each do |tblsec|;
1458
- ;
1459
- ; _slim_controls2 << ("<t".freeze); _slim_controls2 << ((tblsec).to_s); _slim_controls2 << (">".freeze);
1460
- ; @rows[tblsec].each do |row|;
1461
- ; _slim_controls2 << ("<tr>".freeze);
1462
- ; row.each do |cell|;
1463
- ;
1464
- ; if tblsec == :head;
1465
- ; cell_content = cell.text;
1466
- ; else;
1467
- ; case cell.style;
1468
- ; when :literal;
1469
- ; cell_content = cell.text;
1470
- ; else;
1471
- ; cell_content = cell.content;
1472
- ; end; end; _slim_controls3 = html_tag(tblsec == :head || cell.style == :header ? 'th' : 'td',
1473
- :class=>['tableblock', "halign-#{cell.attr :halign}", "valign-#{cell.attr :valign}"],
1474
- :colspan=>cell.colspan, :rowspan=>cell.rowspan,
1475
- :style=>((@document.attr? :cellbgcolor) ? %(background-color:#{@document.attr :cellbgcolor};) : nil)) do; _slim_controls4 = '';
1476
- ; if tblsec == :head;
1477
- ; _slim_controls4 << ((cell_content).to_s);
1501
+ _buf = ''; _buf << ("<hr>".freeze);
1502
+ ; _buf
1503
+ end
1504
+ end
1505
+
1506
+ def convert_inline_callout(node, opts = {})
1507
+ node.extend(Helpers)
1508
+ node.instance_eval do
1509
+ converter.set_local_variables(binding, opts) unless opts.empty?
1510
+ _buf = ''; if @document.attr? :icons, 'font';
1511
+ ; _buf << ("<i class=\"conum\"".freeze); _slim_codeattributes1 = @text; if _slim_codeattributes1; if _slim_codeattributes1 == true; _buf << (" data-value".freeze); else; _buf << (" data-value=\"".freeze); _buf << ((_slim_codeattributes1).to_s); _buf << ("\"".freeze); end; end; _buf << ("></i><b>".freeze);
1512
+ ; _buf << (("(#{@text})").to_s);
1513
+ ; _buf << ("</b>".freeze); elsif @document.attr? :icons;
1514
+ ; _buf << ("<img".freeze); _slim_codeattributes2 = icon_uri("callouts/#{@text}"); if _slim_codeattributes2; if _slim_codeattributes2 == true; _buf << (" src".freeze); else; _buf << (" src=\"".freeze); _buf << ((_slim_codeattributes2).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes3 = @text; if _slim_codeattributes3; if _slim_codeattributes3 == true; _buf << (" alt".freeze); else; _buf << (" alt=\"".freeze); _buf << ((_slim_codeattributes3).to_s); _buf << ("\"".freeze); end; end; _buf << (">".freeze);
1478
1515
  ; else;
1479
- ; case cell.style;
1480
- ; when :asciidoc;
1481
- ; _slim_controls4 << ("<div>".freeze); _slim_controls4 << ((cell_content).to_s);
1482
- ; _slim_controls4 << ("</div>".freeze); when :literal;
1483
- ; _slim_controls4 << ("<div class=\"literal\"><pre>".freeze); _slim_controls4 << ((cell_content).to_s);
1484
- ; _slim_controls4 << ("</pre></div>".freeze); when :header;
1485
- ; cell_content.each do |text|;
1486
- ; _slim_controls4 << ("<p class=\"tableblock header\">".freeze); _slim_controls4 << ((text).to_s);
1487
- ; _slim_controls4 << ("</p>".freeze); end; else;
1488
- ; cell_content.each do |text|;
1489
- ; _slim_controls4 << ("<p class=\"tableblock\">".freeze); _slim_controls4 << ((text).to_s);
1490
- ; _slim_controls4 << ("</p>".freeze); end; end; end; _slim_controls4; end; _slim_controls2 << ((_slim_controls3).to_s); end; _slim_controls2 << ("</tr>".freeze); end; end; end; _slim_controls2; end; _buf << ((_slim_controls1).to_s); _buf
1516
+ ; _buf << ("<b>".freeze); _buf << (("(#{@text})").to_s);
1517
+ ; _buf << ("</b>".freeze); end; _buf
1491
1518
  end
1492
1519
  end
1493
1520
 
1494
- def preamble(node, opts = {})
1521
+ def convert_ruler(node, opts = {})
1495
1522
  node.extend(Helpers)
1496
1523
  node.instance_eval do
1497
1524
  converter.set_local_variables(binding, opts) unless opts.empty?
1498
- _buf = '';
1499
- ;
1525
+ _buf = ''; _buf << ("<hr>".freeze);
1500
1526
  ; _buf
1501
1527
  end
1502
1528
  end
1503
1529
 
1504
- def listing(node, opts = {})
1530
+ def convert_image(node, opts = {})
1505
1531
  node.extend(Helpers)
1506
1532
  node.instance_eval do
1507
1533
  converter.set_local_variables(binding, opts) unless opts.empty?
1508
- _buf = ''; nowrap = (option? 'nowrap') || !(document.attr? 'prewrap');
1509
- ; if @style == 'source';
1510
- ; syntax_hl = document.syntax_highlighter;
1511
- ; lang = attr :language;
1512
- ; if syntax_hl;
1513
- ; doc_attrs = document.attributes;
1514
- ; css_mode = (doc_attrs[%(#{syntax_hl.name}-css)] || :class).to_sym;
1515
- ; style = doc_attrs[%(#{syntax_hl.name}-style)];
1516
- ; opts = syntax_hl.highlight? ? { css_mode: css_mode, style: style } : {};
1517
- ; opts[:nowrap] = nowrap;
1518
- ; end;
1519
- ; end; _slim_controls1 = html_tag('div', { :id => id, :class => ['listingblock', role, ('fragment' if (option? :step) || (attr? 'step'))] }.merge(data_attrs(@attributes.reject {|key, _| key == 'data-id' }))) do; _slim_controls2 = '';
1534
+ _buf = ''; unless attributes[1] == 'background' || attributes[1] == 'canvas';
1535
+ ; inline_style = [("text-align: #{attr :align}" if attr? :align),("float: #{attr :float}" if attr? :float)].compact.join('; ');
1536
+ ; _slim_controls1 = html_tag('div', { :id => @id, :class => ['imageblock', role, ('fragment' if (option? :step) || (attr? 'step'))], :style => inline_style }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
1537
+ ; _slim_controls2 << ((convert_image).to_s);
1538
+ ; _slim_controls2; end; _buf << ((_slim_controls1).to_s); if title?;
1539
+ ; _buf << ("<div class=\"title\">".freeze); _buf << ((captioned_title).to_s);
1540
+ ; _buf << ("</div>".freeze); end; end; _buf
1541
+ end
1542
+ end
1543
+
1544
+ def convert_example(node, opts = {})
1545
+ node.extend(Helpers)
1546
+ node.instance_eval do
1547
+ converter.set_local_variables(binding, opts) unless opts.empty?
1548
+ _buf = ''; _slim_controls1 = html_tag('div', { :id => @id, :class => ['exampleblock', role, ('fragment' if (option? :step) || (attr? 'step'))] }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
1520
1549
  ; if title?;
1521
1550
  ; _slim_controls2 << ("<div class=\"title\">".freeze); _slim_controls2 << ((captioned_title).to_s);
1522
- ; _slim_controls2 << ("</div>".freeze); end; _slim_controls2 << ("<div class=\"content\">".freeze);
1523
- ; if syntax_hl;
1524
- ; _slim_controls2 << (((syntax_hl.format self, lang, opts)).to_s);
1551
+ ; _slim_controls2 << ("</div>".freeze); end; _slim_controls2 << ("<div class=\"content\">".freeze); _slim_controls2 << ((content).to_s);
1552
+ ; _slim_controls2 << ("</div>".freeze); _slim_controls2; end; _buf << ((_slim_controls1).to_s); _buf
1553
+ end
1554
+ end
1555
+
1556
+ def convert_toc(node, opts = {})
1557
+ node.extend(Helpers)
1558
+ node.instance_eval do
1559
+ converter.set_local_variables(binding, opts) unless opts.empty?
1560
+ _buf = '';
1561
+ ;
1562
+ ;
1563
+ ;
1564
+ ;
1565
+ ;
1566
+ ;
1567
+ ;
1568
+ ;
1569
+ ;
1570
+ ;
1571
+ ;
1572
+ ;
1573
+ ; _buf << ("<div id=\"toc\"".freeze); _temple_html_attributeremover1 = ''; _slim_codeattributes1 = (document.attr 'toc-class', 'toc'); if Array === _slim_codeattributes1; _slim_codeattributes1 = _slim_codeattributes1.flatten; _slim_codeattributes1.map!(&:to_s); _slim_codeattributes1.reject!(&:empty?); _temple_html_attributeremover1 << ((_slim_codeattributes1.join(" ")).to_s); else; _temple_html_attributeremover1 << ((_slim_codeattributes1).to_s); end; _temple_html_attributeremover1; if !_temple_html_attributeremover1.empty?; _buf << (" class=\"".freeze); _buf << ((_temple_html_attributeremover1).to_s); _buf << ("\"".freeze); end; _buf << ("><div id=\"toctitle\">".freeze);
1574
+ ; _buf << (((document.attr 'toc-title')).to_s);
1575
+ ; _buf << ("</div>".freeze);
1576
+ ; _buf << ((converter.convert document, 'outline').to_s);
1577
+ ; _buf << ("</div>".freeze); _buf
1578
+ end
1579
+ end
1580
+
1581
+ def convert_open(node, opts = {})
1582
+ node.extend(Helpers)
1583
+ node.instance_eval do
1584
+ converter.set_local_variables(binding, opts) unless opts.empty?
1585
+ _buf = ''; if @style == 'abstract';
1586
+ ; if @parent == @document && @document.doctype == 'book';
1587
+ ; puts 'asciidoctor: WARNING: abstract block cannot be used in a document without a title when doctype is book. Excluding block content.';
1588
+ ; else;
1589
+ ; _slim_controls1 = html_tag('div', { :id => @id, :class => ['quoteblock', 'abstract', role, ('fragment' if (option? :step) || (attr? 'step'))] }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
1590
+ ; if title?;
1591
+ ; _slim_controls2 << ("<div class=\"title\">".freeze); _slim_controls2 << ((title).to_s);
1592
+ ; _slim_controls2 << ("</div>".freeze); end; _slim_controls2 << ("<blockquote>".freeze); _slim_controls2 << ((content).to_s);
1593
+ ; _slim_controls2 << ("</blockquote>".freeze); _slim_controls2; end; _buf << ((_slim_controls1).to_s); end; elsif @style == 'partintro' && (@level != 0 || @parent.context != :section || @document.doctype != 'book');
1594
+ ; puts 'asciidoctor: ERROR: partintro block can only be used when doctype is book and it\'s a child of a book part. Excluding block content.';
1595
+ ; else;
1596
+ ; if (has_role? 'aside') or (has_role? 'speaker') or (has_role? 'notes');
1597
+ ; _buf << ("<aside class=\"notes\">".freeze); _buf << ((resolve_content).to_s);
1598
+ ; _buf << ("</aside>".freeze);
1525
1599
  ; else;
1526
- ; if @style == 'source';
1527
- ; _slim_controls2 << ("<pre".freeze); _temple_html_attributeremover1 = ''; _slim_codeattributes1 = ['highlight', ('nowrap' if nowrap)]; if Array === _slim_codeattributes1; _slim_codeattributes1 = _slim_codeattributes1.flatten; _slim_codeattributes1.map!(&:to_s); _slim_codeattributes1.reject!(&:empty?); _temple_html_attributeremover1 << ((_slim_codeattributes1.join(" ")).to_s); else; _temple_html_attributeremover1 << ((_slim_codeattributes1).to_s); end; _temple_html_attributeremover1; if !_temple_html_attributeremover1.empty?; _slim_controls2 << (" class=\"".freeze); _slim_controls2 << ((_temple_html_attributeremover1).to_s); _slim_controls2 << ("\"".freeze); end; _slim_controls2 << ("><code".freeze);
1528
- ; _temple_html_attributeremover2 = ''; _slim_codeattributes2 = [("language-#{lang}" if lang)]; if Array === _slim_codeattributes2; _slim_codeattributes2 = _slim_codeattributes2.flatten; _slim_codeattributes2.map!(&:to_s); _slim_codeattributes2.reject!(&:empty?); _temple_html_attributeremover2 << ((_slim_codeattributes2.join(" ")).to_s); else; _temple_html_attributeremover2 << ((_slim_codeattributes2).to_s); end; _temple_html_attributeremover2; if !_temple_html_attributeremover2.empty?; _slim_controls2 << (" class=\"".freeze); _slim_controls2 << ((_temple_html_attributeremover2).to_s); _slim_controls2 << ("\"".freeze); end; _slim_codeattributes3 = ("#{lang}" if lang); if _slim_codeattributes3; if _slim_codeattributes3 == true; _slim_controls2 << (" data-lang".freeze); else; _slim_controls2 << (" data-lang=\"".freeze); _slim_controls2 << ((_slim_codeattributes3).to_s); _slim_controls2 << ("\"".freeze); end; end; _slim_controls2 << (">".freeze);
1529
- ; _slim_controls2 << ((content || '').to_s);
1530
- ; _slim_controls2 << ("</code></pre>".freeze); else;
1531
- ; _slim_controls2 << ("<pre".freeze); _temple_html_attributeremover3 = ''; _slim_codeattributes4 = [('nowrap' if nowrap)]; if Array === _slim_codeattributes4; _slim_codeattributes4 = _slim_codeattributes4.flatten; _slim_codeattributes4.map!(&:to_s); _slim_codeattributes4.reject!(&:empty?); _temple_html_attributeremover3 << ((_slim_codeattributes4.join(" ")).to_s); else; _temple_html_attributeremover3 << ((_slim_codeattributes4).to_s); end; _temple_html_attributeremover3; if !_temple_html_attributeremover3.empty?; _slim_controls2 << (" class=\"".freeze); _slim_controls2 << ((_temple_html_attributeremover3).to_s); _slim_controls2 << ("\"".freeze); end; _slim_controls2 << (">".freeze);
1532
- ; _slim_controls2 << ((content || '').to_s);
1533
- ; _slim_controls2 << ("</pre>".freeze); end; end; _slim_controls2 << ("</div>".freeze); _slim_controls2; end; _buf << ((_slim_controls1).to_s); _buf
1600
+ ; _slim_controls3 = html_tag('div', { :id => @id, :class => ['openblock', (@style != 'open' ? @style : nil), role, ('fragment' if (option? :step) || (attr? 'step'))] }.merge(data_attrs(@attributes))) do; _slim_controls4 = '';
1601
+ ; if title?;
1602
+ ; _slim_controls4 << ("<div class=\"title\">".freeze); _slim_controls4 << ((title).to_s);
1603
+ ; _slim_controls4 << ("</div>".freeze); end; _slim_controls4 << ("<div class=\"content\">".freeze); _slim_controls4 << ((content).to_s);
1604
+ ; _slim_controls4 << ("</div>".freeze); _slim_controls4; end; _buf << ((_slim_controls3).to_s); end; end; _buf
1534
1605
  end
1535
1606
  end
1536
1607
 
1537
- def inline_anchor(node, opts = {})
1608
+ def convert_pass(node, opts = {})
1538
1609
  node.extend(Helpers)
1539
1610
  node.instance_eval do
1540
1611
  converter.set_local_variables(binding, opts) unless opts.empty?
1541
- _buf = ''; case @type;
1542
- ; when :xref;
1543
- ; refid = (attr :refid) || @target;
1544
- ; _slim_controls1 = html_tag('a', { :href => @target, :class => [role, ('fragment' if (option? :step) || (attr? 'step'))].compact }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
1545
- ; _slim_controls2 << (((@text || @document.references[:ids].fetch(refid, "[#{refid}]")).tr_s("\n", ' ')).to_s);
1546
- ; _slim_controls2; end; _buf << ((_slim_controls1).to_s); when :ref;
1547
- ; _buf << ((html_tag('a', { :id => @target }.merge(data_attrs(@attributes)))).to_s);
1548
- ; when :bibref;
1549
- ; _buf << ((html_tag('a', { :id => @target }.merge(data_attrs(@attributes)))).to_s);
1550
- ; _buf << ("[".freeze); _buf << ((@target).to_s); _buf << ("]".freeze);
1551
- ; else;
1552
- ; _slim_controls3 = html_tag('a', { :href => @target, :class => [role, ('fragment' if (option? :step) || (attr? 'step'))].compact, :target => (attr :window), 'data-preview-link' => (bool_data_attr :preview) }.merge(data_attrs(@attributes))) do; _slim_controls4 = '';
1553
- ; _slim_controls4 << ((@text).to_s);
1554
- ; _slim_controls4; end; _buf << ((_slim_controls3).to_s); end; _buf
1612
+ _buf = ''; _buf << ((content).to_s);
1613
+ ; _buf
1555
1614
  end
1556
1615
  end
1557
1616
 
1558
- def section(node, opts = {})
1617
+ def convert_section(node, opts = {})
1559
1618
  node.extend(Helpers)
1560
1619
  node.instance_eval do
1561
1620
  converter.set_local_variables(binding, opts) unless opts.empty?
@@ -1630,7 +1689,8 @@ class Asciidoctor::Revealjs::Converter < ::Asciidoctor::Converter::Base
1630
1689
  ;
1631
1690
  ;
1632
1691
  ;
1633
- ; _buf << ("<section".freeze); _slim_codeattributes1 = (titleless ? nil : id); if _slim_codeattributes1; if _slim_codeattributes1 == true; _buf << (" id".freeze); else; _buf << (" id=\"".freeze); _buf << ((_slim_codeattributes1).to_s); _buf << ("\"".freeze); end; end; _temple_html_attributeremover1 = ''; _slim_codeattributes2 = roles; if Array === _slim_codeattributes2; _slim_codeattributes2 = _slim_codeattributes2.flatten; _slim_codeattributes2.map!(&:to_s); _slim_codeattributes2.reject!(&:empty?); _temple_html_attributeremover1 << ((_slim_codeattributes2.join(" ")).to_s); else; _temple_html_attributeremover1 << ((_slim_codeattributes2).to_s); end; _temple_html_attributeremover1; if !_temple_html_attributeremover1.empty?; _buf << (" class=\"".freeze); _buf << ((_temple_html_attributeremover1).to_s); _buf << ("\"".freeze); end; _slim_codeattributes3 = (attr 'transition'); if _slim_codeattributes3; if _slim_codeattributes3 == true; _buf << (" data-transition".freeze); else; _buf << (" data-transition=\"".freeze); _buf << ((_slim_codeattributes3).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes4 = (attr 'transition-speed'); if _slim_codeattributes4; if _slim_codeattributes4 == true; _buf << (" data-transition-speed".freeze); else; _buf << (" data-transition-speed=\"".freeze); _buf << ((_slim_codeattributes4).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes5 = data_background_color; if _slim_codeattributes5; if _slim_codeattributes5 == true; _buf << (" data-background-color".freeze); else; _buf << (" data-background-color=\"".freeze); _buf << ((_slim_codeattributes5).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes6 = data_background_image; if _slim_codeattributes6; if _slim_codeattributes6 == true; _buf << (" data-background-image".freeze); else; _buf << (" data-background-image=\"".freeze); _buf << ((_slim_codeattributes6).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes7 = (data_background_size || attr('background-size')); if _slim_codeattributes7; if _slim_codeattributes7 == true; _buf << (" data-background-size".freeze); else; _buf << (" data-background-size=\"".freeze); _buf << ((_slim_codeattributes7).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes8 = (data_background_repeat || attr('background-repeat')); if _slim_codeattributes8; if _slim_codeattributes8 == true; _buf << (" data-background-repeat".freeze); else; _buf << (" data-background-repeat=\"".freeze); _buf << ((_slim_codeattributes8).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes9 = (data_background_transition || attr('background-transition')); if _slim_codeattributes9; if _slim_codeattributes9 == true; _buf << (" data-background-transition".freeze); else; _buf << (" data-background-transition=\"".freeze); _buf << ((_slim_codeattributes9).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes10 = (data_background_position || attr('background-position')); if _slim_codeattributes10; if _slim_codeattributes10 == true; _buf << (" data-background-position".freeze); else; _buf << (" data-background-position=\"".freeze); _buf << ((_slim_codeattributes10).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes11 = (attr "background-iframe"); if _slim_codeattributes11; if _slim_codeattributes11 == true; _buf << (" data-background-iframe".freeze); else; _buf << (" data-background-iframe=\"".freeze); _buf << ((_slim_codeattributes11).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes12 = data_background_video; if _slim_codeattributes12; if _slim_codeattributes12 == true; _buf << (" data-background-video".freeze); else; _buf << (" data-background-video=\"".freeze); _buf << ((_slim_codeattributes12).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes13 = ((attr? 'background-video-loop') || (option? 'loop')); if _slim_codeattributes13; if _slim_codeattributes13 == true; _buf << (" data-background-video-loop".freeze); else; _buf << (" data-background-video-loop=\"".freeze); _buf << ((_slim_codeattributes13).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes14 = ((attr? 'background-video-muted') || (option? 'muted')); if _slim_codeattributes14; if _slim_codeattributes14 == true; _buf << (" data-background-video-muted".freeze); else; _buf << (" data-background-video-muted=\"".freeze); _buf << ((_slim_codeattributes14).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes15 = (attr "background-opacity"); if _slim_codeattributes15; if _slim_codeattributes15 == true; _buf << (" data-background-opacity".freeze); else; _buf << (" data-background-opacity=\"".freeze); _buf << ((_slim_codeattributes15).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes16 = (attr "autoslide"); if _slim_codeattributes16; if _slim_codeattributes16 == true; _buf << (" data-autoslide".freeze); else; _buf << (" data-autoslide=\"".freeze); _buf << ((_slim_codeattributes16).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes17 = (attr 'state'); if _slim_codeattributes17; if _slim_codeattributes17 == true; _buf << (" data-state".freeze); else; _buf << (" data-state=\"".freeze); _buf << ((_slim_codeattributes17).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes18 = ((attr? 'auto-animate') || (option? 'auto-animate')); if _slim_codeattributes18; if _slim_codeattributes18 == true; _buf << (" data-auto-animate".freeze); else; _buf << (" data-auto-animate=\"".freeze); _buf << ((_slim_codeattributes18).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes19 = ((attr 'auto-animate-easing') || (option? 'auto-animate-easing')); if _slim_codeattributes19; if _slim_codeattributes19 == true; _buf << (" data-auto-animate-easing".freeze); else; _buf << (" data-auto-animate-easing=\"".freeze); _buf << ((_slim_codeattributes19).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes20 = ((attr 'auto-animate-unmatched') || (option? 'auto-animate-unmatched')); if _slim_codeattributes20; if _slim_codeattributes20 == true; _buf << (" data-auto-animate-unmatched".freeze); else; _buf << (" data-auto-animate-unmatched=\"".freeze); _buf << ((_slim_codeattributes20).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes21 = ((attr 'auto-animate-duration') || (option? 'auto-animate-duration')); if _slim_codeattributes21; if _slim_codeattributes21 == true; _buf << (" data-auto-animate-duration".freeze); else; _buf << (" data-auto-animate-duration=\"".freeze); _buf << ((_slim_codeattributes21).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes22 = (attr 'auto-animate-id'); if _slim_codeattributes22; if _slim_codeattributes22 == true; _buf << (" data-auto-animate-id".freeze); else; _buf << (" data-auto-animate-id=\"".freeze); _buf << ((_slim_codeattributes22).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes23 = ((attr? 'auto-animate-restart') || (option? 'auto-animate-restart')); if _slim_codeattributes23; if _slim_codeattributes23 == true; _buf << (" data-auto-animate-restart".freeze); else; _buf << (" data-auto-animate-restart=\"".freeze); _buf << ((_slim_codeattributes23).to_s); _buf << ("\"".freeze); end; end; _buf << (">".freeze);
1692
+ ;
1693
+ ; _buf << ("<section".freeze); _slim_codeattributes1 = (titleless ? nil : id); if _slim_codeattributes1; if _slim_codeattributes1 == true; _buf << (" id".freeze); else; _buf << (" id=\"".freeze); _buf << ((_slim_codeattributes1).to_s); _buf << ("\"".freeze); end; end; _temple_html_attributeremover1 = ''; _slim_codeattributes2 = roles; if Array === _slim_codeattributes2; _slim_codeattributes2 = _slim_codeattributes2.flatten; _slim_codeattributes2.map!(&:to_s); _slim_codeattributes2.reject!(&:empty?); _temple_html_attributeremover1 << ((_slim_codeattributes2.join(" ")).to_s); else; _temple_html_attributeremover1 << ((_slim_codeattributes2).to_s); end; _temple_html_attributeremover1; if !_temple_html_attributeremover1.empty?; _buf << (" class=\"".freeze); _buf << ((_temple_html_attributeremover1).to_s); _buf << ("\"".freeze); end; _slim_codeattributes3 = (attr "background-gradient"); if _slim_codeattributes3; if _slim_codeattributes3 == true; _buf << (" data-background-gradient".freeze); else; _buf << (" data-background-gradient=\"".freeze); _buf << ((_slim_codeattributes3).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes4 = (attr 'transition'); if _slim_codeattributes4; if _slim_codeattributes4 == true; _buf << (" data-transition".freeze); else; _buf << (" data-transition=\"".freeze); _buf << ((_slim_codeattributes4).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes5 = (attr 'transition-speed'); if _slim_codeattributes5; if _slim_codeattributes5 == true; _buf << (" data-transition-speed".freeze); else; _buf << (" data-transition-speed=\"".freeze); _buf << ((_slim_codeattributes5).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes6 = data_background_color; if _slim_codeattributes6; if _slim_codeattributes6 == true; _buf << (" data-background-color".freeze); else; _buf << (" data-background-color=\"".freeze); _buf << ((_slim_codeattributes6).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes7 = data_background_image; if _slim_codeattributes7; if _slim_codeattributes7 == true; _buf << (" data-background-image".freeze); else; _buf << (" data-background-image=\"".freeze); _buf << ((_slim_codeattributes7).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes8 = (data_background_size || attr('background-size')); if _slim_codeattributes8; if _slim_codeattributes8 == true; _buf << (" data-background-size".freeze); else; _buf << (" data-background-size=\"".freeze); _buf << ((_slim_codeattributes8).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes9 = (data_background_repeat || attr('background-repeat')); if _slim_codeattributes9; if _slim_codeattributes9 == true; _buf << (" data-background-repeat".freeze); else; _buf << (" data-background-repeat=\"".freeze); _buf << ((_slim_codeattributes9).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes10 = (data_background_transition || attr('background-transition')); if _slim_codeattributes10; if _slim_codeattributes10 == true; _buf << (" data-background-transition".freeze); else; _buf << (" data-background-transition=\"".freeze); _buf << ((_slim_codeattributes10).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes11 = (data_background_position || attr('background-position')); if _slim_codeattributes11; if _slim_codeattributes11 == true; _buf << (" data-background-position".freeze); else; _buf << (" data-background-position=\"".freeze); _buf << ((_slim_codeattributes11).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes12 = (attr "background-iframe"); if _slim_codeattributes12; if _slim_codeattributes12 == true; _buf << (" data-background-iframe".freeze); else; _buf << (" data-background-iframe=\"".freeze); _buf << ((_slim_codeattributes12).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes13 = data_background_video; if _slim_codeattributes13; if _slim_codeattributes13 == true; _buf << (" data-background-video".freeze); else; _buf << (" data-background-video=\"".freeze); _buf << ((_slim_codeattributes13).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes14 = ((attr? 'background-video-loop') || (option? 'loop')); if _slim_codeattributes14; if _slim_codeattributes14 == true; _buf << (" data-background-video-loop".freeze); else; _buf << (" data-background-video-loop=\"".freeze); _buf << ((_slim_codeattributes14).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes15 = ((attr? 'background-video-muted') || (option? 'muted')); if _slim_codeattributes15; if _slim_codeattributes15 == true; _buf << (" data-background-video-muted".freeze); else; _buf << (" data-background-video-muted=\"".freeze); _buf << ((_slim_codeattributes15).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes16 = (attr "background-opacity"); if _slim_codeattributes16; if _slim_codeattributes16 == true; _buf << (" data-background-opacity".freeze); else; _buf << (" data-background-opacity=\"".freeze); _buf << ((_slim_codeattributes16).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes17 = (attr "autoslide"); if _slim_codeattributes17; if _slim_codeattributes17 == true; _buf << (" data-autoslide".freeze); else; _buf << (" data-autoslide=\"".freeze); _buf << ((_slim_codeattributes17).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes18 = (attr 'state'); if _slim_codeattributes18; if _slim_codeattributes18 == true; _buf << (" data-state".freeze); else; _buf << (" data-state=\"".freeze); _buf << ((_slim_codeattributes18).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes19 = ((attr? 'auto-animate') || (option? 'auto-animate')); if _slim_codeattributes19; if _slim_codeattributes19 == true; _buf << (" data-auto-animate".freeze); else; _buf << (" data-auto-animate=\"".freeze); _buf << ((_slim_codeattributes19).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes20 = ((attr 'auto-animate-easing') || (option? 'auto-animate-easing')); if _slim_codeattributes20; if _slim_codeattributes20 == true; _buf << (" data-auto-animate-easing".freeze); else; _buf << (" data-auto-animate-easing=\"".freeze); _buf << ((_slim_codeattributes20).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes21 = ((attr 'auto-animate-unmatched') || (option? 'auto-animate-unmatched')); if _slim_codeattributes21; if _slim_codeattributes21 == true; _buf << (" data-auto-animate-unmatched".freeze); else; _buf << (" data-auto-animate-unmatched=\"".freeze); _buf << ((_slim_codeattributes21).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes22 = ((attr 'auto-animate-duration') || (option? 'auto-animate-duration')); if _slim_codeattributes22; if _slim_codeattributes22 == true; _buf << (" data-auto-animate-duration".freeze); else; _buf << (" data-auto-animate-duration=\"".freeze); _buf << ((_slim_codeattributes22).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes23 = (attr 'auto-animate-id'); if _slim_codeattributes23; if _slim_codeattributes23 == true; _buf << (" data-auto-animate-id".freeze); else; _buf << (" data-auto-animate-id=\"".freeze); _buf << ((_slim_codeattributes23).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes24 = ((attr? 'auto-animate-restart') || (option? 'auto-animate-restart')); if _slim_codeattributes24; if _slim_codeattributes24 == true; _buf << (" data-auto-animate-restart".freeze); else; _buf << (" data-auto-animate-restart=\"".freeze); _buf << ((_slim_codeattributes24).to_s); _buf << ("\"".freeze); end; end; _buf << (">".freeze);
1634
1694
  ; unless hide_title;
1635
1695
  ; _buf << ("<h2>".freeze); _buf << ((section_title).to_s);
1636
1696
  ; _buf << ("</h2>".freeze); end; if parent_section_with_vertical_slides;
@@ -1668,184 +1728,122 @@ class Asciidoctor::Revealjs::Converter < ::Asciidoctor::Converter::Base
1668
1728
  end
1669
1729
  end
1670
1730
 
1671
- def open(node, opts = {})
1731
+ def convert_inline_quoted(node, opts = {})
1672
1732
  node.extend(Helpers)
1673
1733
  node.instance_eval do
1674
1734
  converter.set_local_variables(binding, opts) unless opts.empty?
1675
- _buf = ''; if @style == 'abstract';
1676
- ; if @parent == @document && @document.doctype == 'book';
1677
- ; puts 'asciidoctor: WARNING: abstract block cannot be used in a document without a title when doctype is book. Excluding block content.';
1678
- ; else;
1679
- ; _slim_controls1 = html_tag('div', { :id => @id, :class => ['quoteblock', 'abstract', role, ('fragment' if (option? :step) || (attr? 'step'))] }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
1680
- ; if title?;
1681
- ; _slim_controls2 << ("<div class=\"title\">".freeze); _slim_controls2 << ((title).to_s);
1682
- ; _slim_controls2 << ("</div>".freeze); end; _slim_controls2 << ("<blockquote>".freeze); _slim_controls2 << ((content).to_s);
1683
- ; _slim_controls2 << ("</blockquote>".freeze); _slim_controls2; end; _buf << ((_slim_controls1).to_s); end; elsif @style == 'partintro' && (@level != 0 || @parent.context != :section || @document.doctype != 'book');
1684
- ; puts 'asciidoctor: ERROR: partintro block can only be used when doctype is book and it\'s a child of a book part. Excluding block content.';
1735
+ _buf = ''; quote_tags = { emphasis: 'em', strong: 'strong', monospaced: 'code', superscript: 'sup', subscript: 'sub' };
1736
+ ; if (quote_tag = quote_tags[@type]);
1737
+ ; _buf << ((html_tag(quote_tag, { :id => @id, :class => [role, ('fragment' if (option? :step) || (attr? 'step'))].compact }.merge(data_attrs(@attributes)), @text)).to_s);
1685
1738
  ; else;
1686
- ; if (has_role? 'aside') or (has_role? 'speaker') or (has_role? 'notes');
1687
- ; _buf << ("<aside class=\"notes\">".freeze); _buf << ((resolve_content).to_s);
1688
- ; _buf << ("</aside>".freeze);
1739
+ ; case @type;
1740
+ ; when :double;
1741
+ ; _buf << ((inline_text_container("&#8220;#{@text}&#8221;")).to_s);
1742
+ ; when :single;
1743
+ ; _buf << ((inline_text_container("&#8216;#{@text}&#8217;")).to_s);
1744
+ ; when :asciimath, :latexmath;
1745
+ ; open, close = Asciidoctor::INLINE_MATH_DELIMITERS[@type];
1746
+ ; _buf << ((inline_text_container("#{open}#{@text}#{close}")).to_s);
1689
1747
  ; else;
1690
- ; _slim_controls3 = html_tag('div', { :id => @id, :class => ['openblock', (@style != 'open' ? @style : nil), role, ('fragment' if (option? :step) || (attr? 'step'))] }.merge(data_attrs(@attributes))) do; _slim_controls4 = '';
1691
- ; if title?;
1692
- ; _slim_controls4 << ("<div class=\"title\">".freeze); _slim_controls4 << ((title).to_s);
1693
- ; _slim_controls4 << ("</div>".freeze); end; _slim_controls4 << ("<div class=\"content\">".freeze); _slim_controls4 << ((content).to_s);
1694
- ; _slim_controls4 << ("</div>".freeze); _slim_controls4; end; _buf << ((_slim_controls3).to_s); end; end; _buf
1695
- end
1696
- end
1697
-
1698
- def inline_footnote(node, opts = {})
1699
- node.extend(Helpers)
1700
- node.instance_eval do
1701
- converter.set_local_variables(binding, opts) unless opts.empty?
1702
- _buf = ''; footnote = slide_footnote(self);
1703
- ; index = footnote.attr(:index);
1704
- ; id = footnote.id;
1705
- ; if @type == :xref;
1706
- ; _slim_controls1 = html_tag('sup', { :class => ['footnoteref'] }.merge(data_attrs(footnote.attributes))) do; _slim_controls2 = '';
1707
- ; _slim_controls2 << ("[<span class=\"footnote\" title=\"View footnote.\">".freeze);
1708
- ; _slim_controls2 << ((index).to_s);
1709
- ; _slim_controls2 << ("</span>]".freeze);
1710
- ; _slim_controls2; end; _buf << ((_slim_controls1).to_s); else;
1711
- ; _slim_controls3 = html_tag('sup', { :id => ("_footnote_#{id}" if id), :class => ['footnote'] }.merge(data_attrs(footnote.attributes))) do; _slim_controls4 = '';
1712
- ; _slim_controls4 << ("[<span class=\"footnote\" title=\"View footnote.\">".freeze);
1713
- ; _slim_controls4 << ((index).to_s);
1714
- ; _slim_controls4 << ("</span>]".freeze);
1715
- ; _slim_controls4; end; _buf << ((_slim_controls3).to_s); end; _buf
1716
- end
1717
- end
1718
-
1719
- def image(node, opts = {})
1720
- node.extend(Helpers)
1721
- node.instance_eval do
1722
- converter.set_local_variables(binding, opts) unless opts.empty?
1723
- _buf = ''; unless attributes[1] == 'background' || attributes[1] == 'canvas';
1724
- ; inline_style = [("text-align: #{attr :align}" if attr? :align),("float: #{attr :float}" if attr? :float)].compact.join('; ');
1725
- ; _slim_controls1 = html_tag('div', { :id => @id, :class => ['imageblock', role, ('fragment' if (option? :step) || (attr? 'step'))], :style => inline_style }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
1726
- ; _slim_controls2 << ((convert_image).to_s);
1727
- ; _slim_controls2; end; _buf << ((_slim_controls1).to_s); if title?;
1728
- ; _buf << ("<div class=\"title\">".freeze); _buf << ((captioned_title).to_s);
1729
- ; _buf << ("</div>".freeze); end; end; _buf
1730
- end
1731
- end
1732
-
1733
- def title_slide(node, opts = {})
1734
- node.extend(Helpers)
1735
- node.instance_eval do
1736
- converter.set_local_variables(binding, opts) unless opts.empty?
1737
- _buf = ''; bg_image = (attr? 'title-slide-background-image') ? (image_uri(attr 'title-slide-background-image')) : nil;
1738
- ; bg_video = (attr? 'title-slide-background-video') ? (media_uri(attr 'title-slide-background-video')) : nil;
1739
- ;
1740
- ;
1741
- ;
1742
- ;
1743
- ;
1744
- ;
1745
- ;
1746
- ;
1747
- ;
1748
- ;
1749
- ;
1750
- ;
1751
- ;
1752
- ;
1753
- ;
1754
- ; _buf << ("<section".freeze); _temple_html_attributeremover1 = ''; _temple_html_attributemerger1 = []; _temple_html_attributemerger1[0] = "title"; _temple_html_attributemerger1[1] = ''; _slim_codeattributes1 = role; if Array === _slim_codeattributes1; _slim_codeattributes1 = _slim_codeattributes1.flatten; _slim_codeattributes1.map!(&:to_s); _slim_codeattributes1.reject!(&:empty?); _temple_html_attributemerger1[1] << ((_slim_codeattributes1.join(" ")).to_s); else; _temple_html_attributemerger1[1] << ((_slim_codeattributes1).to_s); end; _temple_html_attributemerger1[1]; _temple_html_attributeremover1 << ((_temple_html_attributemerger1.reject(&:empty?).join(" ")).to_s); _temple_html_attributeremover1; if !_temple_html_attributeremover1.empty?; _buf << (" class=\"".freeze); _buf << ((_temple_html_attributeremover1).to_s); _buf << ("\"".freeze); end; _buf << (" data-state=\"title\"".freeze); _slim_codeattributes2 = (attr 'title-slide-transition'); if _slim_codeattributes2; if _slim_codeattributes2 == true; _buf << (" data-transition".freeze); else; _buf << (" data-transition=\"".freeze); _buf << ((_slim_codeattributes2).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes3 = (attr 'title-slide-transition-speed'); if _slim_codeattributes3; if _slim_codeattributes3 == true; _buf << (" data-transition-speed".freeze); else; _buf << (" data-transition-speed=\"".freeze); _buf << ((_slim_codeattributes3).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes4 = (attr 'title-slide-background'); if _slim_codeattributes4; if _slim_codeattributes4 == true; _buf << (" data-background".freeze); else; _buf << (" data-background=\"".freeze); _buf << ((_slim_codeattributes4).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes5 = (attr 'title-slide-background-size'); if _slim_codeattributes5; if _slim_codeattributes5 == true; _buf << (" data-background-size".freeze); else; _buf << (" data-background-size=\"".freeze); _buf << ((_slim_codeattributes5).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes6 = bg_image; if _slim_codeattributes6; if _slim_codeattributes6 == true; _buf << (" data-background-image".freeze); else; _buf << (" data-background-image=\"".freeze); _buf << ((_slim_codeattributes6).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes7 = bg_video; if _slim_codeattributes7; if _slim_codeattributes7 == true; _buf << (" data-background-video".freeze); else; _buf << (" data-background-video=\"".freeze); _buf << ((_slim_codeattributes7).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes8 = (attr 'title-slide-background-video-loop'); if _slim_codeattributes8; if _slim_codeattributes8 == true; _buf << (" data-background-video-loop".freeze); else; _buf << (" data-background-video-loop=\"".freeze); _buf << ((_slim_codeattributes8).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes9 = (attr 'title-slide-background-video-muted'); if _slim_codeattributes9; if _slim_codeattributes9 == true; _buf << (" data-background-video-muted".freeze); else; _buf << (" data-background-video-muted=\"".freeze); _buf << ((_slim_codeattributes9).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes10 = (attr 'title-slide-background-opacity'); if _slim_codeattributes10; if _slim_codeattributes10 == true; _buf << (" data-background-opacity".freeze); else; _buf << (" data-background-opacity=\"".freeze); _buf << ((_slim_codeattributes10).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes11 = (attr 'title-slide-background-iframe'); if _slim_codeattributes11; if _slim_codeattributes11 == true; _buf << (" data-background-iframe".freeze); else; _buf << (" data-background-iframe=\"".freeze); _buf << ((_slim_codeattributes11).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes12 = (attr 'title-slide-background-color'); if _slim_codeattributes12; if _slim_codeattributes12 == true; _buf << (" data-background-color".freeze); else; _buf << (" data-background-color=\"".freeze); _buf << ((_slim_codeattributes12).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes13 = (attr 'title-slide-background-repeat'); if _slim_codeattributes13; if _slim_codeattributes13 == true; _buf << (" data-background-repeat".freeze); else; _buf << (" data-background-repeat=\"".freeze); _buf << ((_slim_codeattributes13).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes14 = (attr 'title-slide-background-position'); if _slim_codeattributes14; if _slim_codeattributes14 == true; _buf << (" data-background-position".freeze); else; _buf << (" data-background-position=\"".freeze); _buf << ((_slim_codeattributes14).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes15 = (attr 'title-slide-background-transition'); if _slim_codeattributes15; if _slim_codeattributes15 == true; _buf << (" data-background-transition".freeze); else; _buf << (" data-background-transition=\"".freeze); _buf << ((_slim_codeattributes15).to_s); _buf << ("\"".freeze); end; end; _buf << (">".freeze);
1755
- ; if (_title_obj = doctitle partition: true, use_fallback: true).subtitle?;
1756
- ; _buf << ("<h1>".freeze); _buf << ((slice_text _title_obj.title, (_slice = header.option? :slice)).to_s);
1757
- ; _buf << ("</h1><h2>".freeze); _buf << ((slice_text _title_obj.subtitle, _slice).to_s);
1758
- ; _buf << ("</h2>".freeze); else;
1759
- ; _buf << ("<h1>".freeze); _buf << ((@header.title).to_s);
1760
- ; _buf << ("</h1>".freeze); end; preamble = @document.find_by context: :preamble;
1761
- ; unless preamble.nil? or preamble.length == 0;
1762
- ; _buf << ("<div class=\"preamble\">".freeze); _buf << ((preamble.pop.content).to_s);
1763
- ; _buf << ("</div>".freeze); end; _buf << ((generate_authors(@document)).to_s);
1764
- ; _buf << ("</section>".freeze); _buf
1748
+ ; _buf << ((inline_text_container(@text)).to_s);
1749
+ ; end; end; _buf
1765
1750
  end
1766
1751
  end
1767
1752
 
1768
- def paragraph(node, opts = {})
1753
+ def convert_dlist(node, opts = {})
1769
1754
  node.extend(Helpers)
1770
1755
  node.instance_eval do
1771
1756
  converter.set_local_variables(binding, opts) unless opts.empty?
1772
- _buf = ''; _slim_controls1 = html_tag('div', { :id => @id, :class => ['paragraph', role, ('fragment' if (option? :step) || (attr? 'step'))] }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
1757
+ _buf = ''; case @style;
1758
+ ; when 'qanda';
1759
+ ; _slim_controls1 = html_tag('div', { :id => @id, :class => ['qlist', @style, role] }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
1773
1760
  ; if title?;
1774
1761
  ; _slim_controls2 << ("<div class=\"title\">".freeze); _slim_controls2 << ((title).to_s);
1775
- ; _slim_controls2 << ("</div>".freeze); end; if has_role? 'small';
1776
- ; _slim_controls2 << ("<small>".freeze); _slim_controls2 << ((content).to_s);
1777
- ; _slim_controls2 << ("</small>".freeze); else;
1778
- ; _slim_controls2 << ("<p>".freeze); _slim_controls2 << ((content).to_s);
1779
- ; _slim_controls2 << ("</p>".freeze); end; _slim_controls2; end; _buf << ((_slim_controls1).to_s); _buf
1780
- end
1781
- end
1782
-
1783
- def floating_title(node, opts = {})
1784
- node.extend(Helpers)
1785
- node.instance_eval do
1786
- converter.set_local_variables(binding, opts) unless opts.empty?
1787
- _buf = ''; _slim_htag_filter1 = ((level + 1)).to_s; _buf << ("<h".freeze); _buf << ((_slim_htag_filter1).to_s); _slim_codeattributes1 = id; if _slim_codeattributes1; if _slim_codeattributes1 == true; _buf << (" id".freeze); else; _buf << (" id=\"".freeze); _buf << ((_slim_codeattributes1).to_s); _buf << ("\"".freeze); end; end; _temple_html_attributeremover1 = ''; _slim_codeattributes2 = [style, role]; if Array === _slim_codeattributes2; _slim_codeattributes2 = _slim_codeattributes2.flatten; _slim_codeattributes2.map!(&:to_s); _slim_codeattributes2.reject!(&:empty?); _temple_html_attributeremover1 << ((_slim_codeattributes2.join(" ")).to_s); else; _temple_html_attributeremover1 << ((_slim_codeattributes2).to_s); end; _temple_html_attributeremover1; if !_temple_html_attributeremover1.empty?; _buf << (" class=\"".freeze); _buf << ((_temple_html_attributeremover1).to_s); _buf << ("\"".freeze); end; _buf << (">".freeze);
1788
- ; _buf << ((title).to_s);
1789
- ; _buf << ("</h".freeze); _buf << ((_slim_htag_filter1).to_s); _buf << (">".freeze); _buf
1790
- end
1791
- end
1792
-
1793
- def inline_callout(node, opts = {})
1794
- node.extend(Helpers)
1795
- node.instance_eval do
1796
- converter.set_local_variables(binding, opts) unless opts.empty?
1797
- _buf = ''; if @document.attr? :icons, 'font';
1798
- ; _buf << ("<i class=\"conum\"".freeze); _slim_codeattributes1 = @text; if _slim_codeattributes1; if _slim_codeattributes1 == true; _buf << (" data-value".freeze); else; _buf << (" data-value=\"".freeze); _buf << ((_slim_codeattributes1).to_s); _buf << ("\"".freeze); end; end; _buf << ("></i><b>".freeze);
1799
- ; _buf << (("(#{@text})").to_s);
1800
- ; _buf << ("</b>".freeze); elsif @document.attr? :icons;
1801
- ; _buf << ("<img".freeze); _slim_codeattributes2 = icon_uri("callouts/#{@text}"); if _slim_codeattributes2; if _slim_codeattributes2 == true; _buf << (" src".freeze); else; _buf << (" src=\"".freeze); _buf << ((_slim_codeattributes2).to_s); _buf << ("\"".freeze); end; end; _slim_codeattributes3 = @text; if _slim_codeattributes3; if _slim_codeattributes3 == true; _buf << (" alt".freeze); else; _buf << (" alt=\"".freeze); _buf << ((_slim_codeattributes3).to_s); _buf << ("\"".freeze); end; end; _buf << (">".freeze);
1802
- ; else;
1803
- ; _buf << ("<b>".freeze); _buf << (("(#{@text})").to_s);
1804
- ; _buf << ("</b>".freeze); end; _buf
1762
+ ; _slim_controls2 << ("</div>".freeze); end; _slim_controls2 << ("<ol>".freeze);
1763
+ ; items.each do |questions, answer|;
1764
+ ; _slim_controls2 << ("<li>".freeze);
1765
+ ; [*questions].each do |question|;
1766
+ ; _slim_controls2 << ("<p><em>".freeze); _slim_controls2 << ((question.text).to_s);
1767
+ ; _slim_controls2 << ("</em></p>".freeze); end; unless answer.nil?;
1768
+ ; if answer.text?;
1769
+ ; _slim_controls2 << ("<p>".freeze); _slim_controls2 << ((answer.text).to_s);
1770
+ ; _slim_controls2 << ("</p>".freeze); end; if answer.blocks?;
1771
+ ; _slim_controls2 << ((answer.content).to_s);
1772
+ ; end; end; _slim_controls2 << ("</li>".freeze); end; _slim_controls2 << ("</ol>".freeze); _slim_controls2; end; _buf << ((_slim_controls1).to_s); when 'horizontal';
1773
+ ; _slim_controls3 = html_tag('div', { :id => @id, :class => ['hdlist', role] }.merge(data_attrs(@attributes))) do; _slim_controls4 = '';
1774
+ ; if title?;
1775
+ ; _slim_controls4 << ("<div class=\"title\">".freeze); _slim_controls4 << ((title).to_s);
1776
+ ; _slim_controls4 << ("</div>".freeze); end; _slim_controls4 << ("<table>".freeze);
1777
+ ; if (attr? :labelwidth) || (attr? :itemwidth);
1778
+ ; _slim_controls4 << ("<colgroup><col".freeze);
1779
+ ; _slim_codeattributes1 = ((attr? :labelwidth) ? %(width:#{(attr :labelwidth).chomp '%'}%;) : nil); if _slim_codeattributes1; if _slim_codeattributes1 == true; _slim_controls4 << (" style".freeze); else; _slim_controls4 << (" style=\"".freeze); _slim_controls4 << ((_slim_codeattributes1).to_s); _slim_controls4 << ("\"".freeze); end; end; _slim_controls4 << ("><col".freeze);
1780
+ ; _slim_codeattributes2 = ((attr? :itemwidth) ? %(width:#{(attr :itemwidth).chomp '%'}%;) : nil); if _slim_codeattributes2; if _slim_codeattributes2 == true; _slim_controls4 << (" style".freeze); else; _slim_controls4 << (" style=\"".freeze); _slim_controls4 << ((_slim_codeattributes2).to_s); _slim_controls4 << ("\"".freeze); end; end; _slim_controls4 << ("></colgroup>".freeze);
1781
+ ; end; items.each do |terms, dd|;
1782
+ ; _slim_controls4 << ("<tr><td".freeze);
1783
+ ; _temple_html_attributeremover1 = ''; _slim_codeattributes3 = ['hdlist1',('strong' if option? 'strong')]; if Array === _slim_codeattributes3; _slim_codeattributes3 = _slim_codeattributes3.flatten; _slim_codeattributes3.map!(&:to_s); _slim_codeattributes3.reject!(&:empty?); _temple_html_attributeremover1 << ((_slim_codeattributes3.join(" ")).to_s); else; _temple_html_attributeremover1 << ((_slim_codeattributes3).to_s); end; _temple_html_attributeremover1; if !_temple_html_attributeremover1.empty?; _slim_controls4 << (" class=\"".freeze); _slim_controls4 << ((_temple_html_attributeremover1).to_s); _slim_controls4 << ("\"".freeze); end; _slim_controls4 << (">".freeze);
1784
+ ; terms = [*terms];
1785
+ ; last_term = terms.last;
1786
+ ; terms.each do |dt|;
1787
+ ; _slim_controls4 << ((dt.text).to_s);
1788
+ ; if dt != last_term;
1789
+ ; _slim_controls4 << ("<br>".freeze);
1790
+ ; end; end; _slim_controls4 << ("</td><td class=\"hdlist2\">".freeze);
1791
+ ; unless dd.nil?;
1792
+ ; if dd.text?;
1793
+ ; _slim_controls4 << ("<p>".freeze); _slim_controls4 << ((dd.text).to_s);
1794
+ ; _slim_controls4 << ("</p>".freeze); end; if dd.blocks?;
1795
+ ; _slim_controls4 << ((dd.content).to_s);
1796
+ ; end; end; _slim_controls4 << ("</td></tr>".freeze); end; _slim_controls4 << ("</table>".freeze); _slim_controls4; end; _buf << ((_slim_controls3).to_s); else;
1797
+ ; _slim_controls5 = html_tag('div', { :id => @id, :class => ['dlist', @style, role] }.merge(data_attrs(@attributes))) do; _slim_controls6 = '';
1798
+ ; if title?;
1799
+ ; _slim_controls6 << ("<div class=\"title\">".freeze); _slim_controls6 << ((title).to_s);
1800
+ ; _slim_controls6 << ("</div>".freeze); end; _slim_controls6 << ("<dl>".freeze);
1801
+ ; items.each do |terms, dd|;
1802
+ ; [*terms].each do |dt|;
1803
+ ; _slim_controls6 << ("<dt".freeze); _temple_html_attributeremover2 = ''; _slim_codeattributes4 = ('hdlist1' unless @style); if Array === _slim_codeattributes4; _slim_codeattributes4 = _slim_codeattributes4.flatten; _slim_codeattributes4.map!(&:to_s); _slim_codeattributes4.reject!(&:empty?); _temple_html_attributeremover2 << ((_slim_codeattributes4.join(" ")).to_s); else; _temple_html_attributeremover2 << ((_slim_codeattributes4).to_s); end; _temple_html_attributeremover2; if !_temple_html_attributeremover2.empty?; _slim_controls6 << (" class=\"".freeze); _slim_controls6 << ((_temple_html_attributeremover2).to_s); _slim_controls6 << ("\"".freeze); end; _slim_controls6 << (">".freeze); _slim_controls6 << ((dt.text).to_s);
1804
+ ; _slim_controls6 << ("</dt>".freeze); end; unless dd.nil?;
1805
+ ; _slim_controls6 << ("<dd>".freeze);
1806
+ ; if dd.text?;
1807
+ ; _slim_controls6 << ("<p>".freeze); _slim_controls6 << ((dd.text).to_s);
1808
+ ; _slim_controls6 << ("</p>".freeze); end; if dd.blocks?;
1809
+ ; _slim_controls6 << ((dd.content).to_s);
1810
+ ; end; _slim_controls6 << ("</dd>".freeze); end; end; _slim_controls6 << ("</dl>".freeze); _slim_controls6; end; _buf << ((_slim_controls5).to_s); end; _buf
1805
1811
  end
1806
1812
  end
1807
1813
 
1808
- def inline_image(node, opts = {})
1814
+ def convert_audio(node, opts = {})
1809
1815
  node.extend(Helpers)
1810
1816
  node.instance_eval do
1811
1817
  converter.set_local_variables(binding, opts) unless opts.empty?
1812
- _buf = ''; _slim_controls1 = html_tag('span', { :class => [@type, role, ('fragment' if (option? :step) || (attr? 'step'))], :style => ("float: #{attr :float}" if attr? :float) }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
1813
- ; _slim_controls2 << ((convert_inline_image).to_s);
1818
+ _buf = ''; _slim_controls1 = html_tag('div', { :id => @id, :class => ['audioblock', @style, role] }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
1819
+ ; if title?;
1820
+ ; _slim_controls2 << ("<div class=\"title\">".freeze); _slim_controls2 << ((captioned_title).to_s);
1821
+ ; _slim_controls2 << ("</div>".freeze); end; _slim_controls2 << ("<div class=\"content\"><audio".freeze);
1822
+ ; _slim_codeattributes1 = media_uri(attr :target); if _slim_codeattributes1; if _slim_codeattributes1 == true; _slim_controls2 << (" src".freeze); else; _slim_controls2 << (" src=\"".freeze); _slim_controls2 << ((_slim_codeattributes1).to_s); _slim_controls2 << ("\"".freeze); end; end; _slim_codeattributes2 = (option? 'autoplay'); if _slim_codeattributes2; if _slim_codeattributes2 == true; _slim_controls2 << (" autoplay".freeze); else; _slim_controls2 << (" autoplay=\"".freeze); _slim_controls2 << ((_slim_codeattributes2).to_s); _slim_controls2 << ("\"".freeze); end; end; _slim_codeattributes3 = !(option? 'nocontrols'); if _slim_codeattributes3; if _slim_codeattributes3 == true; _slim_controls2 << (" controls".freeze); else; _slim_controls2 << (" controls=\"".freeze); _slim_controls2 << ((_slim_codeattributes3).to_s); _slim_controls2 << ("\"".freeze); end; end; _slim_codeattributes4 = (option? 'loop'); if _slim_codeattributes4; if _slim_codeattributes4 == true; _slim_controls2 << (" loop".freeze); else; _slim_controls2 << (" loop=\"".freeze); _slim_controls2 << ((_slim_codeattributes4).to_s); _slim_controls2 << ("\"".freeze); end; end; _slim_controls2 << (">Your browser does not support the audio tag.</audio></div>".freeze);
1823
+ ;
1814
1824
  ; _slim_controls2; end; _buf << ((_slim_controls1).to_s); _buf
1815
1825
  end
1816
1826
  end
1817
1827
 
1818
- def inline_quoted(node, opts = {})
1819
- node.extend(Helpers)
1820
- node.instance_eval do
1821
- converter.set_local_variables(binding, opts) unless opts.empty?
1822
- _buf = ''; quote_tags = { emphasis: 'em', strong: 'strong', monospaced: 'code', superscript: 'sup', subscript: 'sub' };
1823
- ; if (quote_tag = quote_tags[@type]);
1824
- ; _buf << ((html_tag(quote_tag, { :id => @id, :class => [role, ('fragment' if (option? :step) || (attr? 'step'))].compact }.merge(data_attrs(@attributes)), @text)).to_s);
1825
- ; else;
1826
- ; case @type;
1827
- ; when :double;
1828
- ; _buf << ((inline_text_container("&#8220;#{@text}&#8221;")).to_s);
1829
- ; when :single;
1830
- ; _buf << ((inline_text_container("&#8216;#{@text}&#8217;")).to_s);
1831
- ; when :asciimath, :latexmath;
1832
- ; open, close = Asciidoctor::INLINE_MATH_DELIMITERS[@type];
1833
- ; _buf << ((inline_text_container("#{open}#{@text}#{close}")).to_s);
1834
- ; else;
1835
- ; _buf << ((inline_text_container(@text)).to_s);
1836
- ; end; end; _buf
1837
- end
1838
- end
1839
-
1840
- def example(node, opts = {})
1828
+ def convert_verse(node, opts = {})
1841
1829
  node.extend(Helpers)
1842
1830
  node.instance_eval do
1843
1831
  converter.set_local_variables(binding, opts) unless opts.empty?
1844
- _buf = ''; _slim_controls1 = html_tag('div', { :id => @id, :class => ['exampleblock', role, ('fragment' if (option? :step) || (attr? 'step'))] }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
1832
+ _buf = ''; _slim_controls1 = html_tag('div', { :id => @id, :class => ['verseblock', role, ('fragment' if (option? :step) || (attr? 'step'))] }.merge(data_attrs(@attributes))) do; _slim_controls2 = '';
1845
1833
  ; if title?;
1846
- ; _slim_controls2 << ("<div class=\"title\">".freeze); _slim_controls2 << ((captioned_title).to_s);
1847
- ; _slim_controls2 << ("</div>".freeze); end; _slim_controls2 << ("<div class=\"content\">".freeze); _slim_controls2 << ((content).to_s);
1848
- ; _slim_controls2 << ("</div>".freeze); _slim_controls2; end; _buf << ((_slim_controls1).to_s); _buf
1834
+ ; _slim_controls2 << ("<div class=\"title\">".freeze); _slim_controls2 << ((title).to_s);
1835
+ ; _slim_controls2 << ("</div>".freeze); end; _slim_controls2 << ("<pre class=\"content\">".freeze); _slim_controls2 << ((content).to_s);
1836
+ ; _slim_controls2 << ("</pre>".freeze); attribution = (attr? :attribution) ? (attr :attribution) : nil;
1837
+ ; citetitle = (attr? :citetitle) ? (attr :citetitle) : nil;
1838
+ ; if attribution || citetitle;
1839
+ ; _slim_controls2 << ("<div class=\"attribution\">".freeze);
1840
+ ; if citetitle;
1841
+ ; _slim_controls2 << ("<cite>".freeze); _slim_controls2 << ((citetitle).to_s);
1842
+ ; _slim_controls2 << ("</cite>".freeze); end; if attribution;
1843
+ ; if citetitle;
1844
+ ; _slim_controls2 << ("<br>".freeze);
1845
+ ; end; _slim_controls2 << ("&#8212; ".freeze); _slim_controls2 << ((attribution).to_s);
1846
+ ; end; _slim_controls2 << ("</div>".freeze); end; _slim_controls2; end; _buf << ((_slim_controls1).to_s); _buf
1849
1847
  end
1850
1848
  end
1851
1849
  #------------------ End of generated transformation methods ------------------#