Sha256: 7ca7904daae1d1cb6535a69f245f3c358222e2da5b5879cd9ffae705b35597d2
Contents?: true
Size: 894 Bytes
Versions: 1
Compression:
Stored size: 894 Bytes
Contents
require 'asciidoctor/html5s/version' require 'asciidoctor/extensions' unless RUBY_PLATFORM == 'opal' module Asciidoctor::Html5s # This extension moves every callout list immediately following listing block # to instance variable +@html5s_colist+ inside the listing block. # The aim is to render callout list as part of the corresponding listing. class AttachedColistTreeprocessor < ::Asciidoctor::Extensions::Treeprocessor def process(document) document.find_by(context: :colist) do |colist| blocks = colist.parent.blocks colist_idx = blocks.find_index(colist) prev_block = blocks[colist_idx - 1] if colist_idx if prev_block && prev_block.node_name == 'listing' blocks.delete_at(colist_idx) # mutates node's blocks list! prev_block.instance_variable_set(:@html5s_colist, colist) end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
asciidoctor-html5s-0.1.0.beta.5 | lib/asciidoctor/html5s/attached_colist_treeprocessor.rb |