Sha256: 8e8e3d9d47f796eb177e1c8997bf0b6bff212f778d7122141766a6b050074c83

Contents?: true

Size: 701 Bytes

Versions: 4

Compression:

Stored size: 701 Bytes

Contents

#require 'singleton'

module ArtiMark
  class BlockImageParser
    include BaseParser, Singleton
    def accept?(lines)
      lex_line_command(lines[0])[:cmd] =~ /image/
    end

    def parse(lines, r, syntax)
      lexed = lex_line_command(lines[0])
      raise 'HeadParser called for #{lines[0]}' unless lexed[:cmd] =~ /image/
      lines.shift
      lexed[:cls] << 'img-wrap' if lexed[:cls].size == 0
      src = lexed[:params][0].strip
      alt = lexed[:params][1].strip
      caption = lexed[:text].strip

      r << "<div#{class_string(lexed[:cls])}><img src='#{src}' alt='#{alt}' />"
      r << "<p>#{caption}</p>" if !caption.nil?  && caption.size > 0
      r << "</div>\n"
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
arti_mark-0.0.1.beta3 lib/arti_mark/block_image_parser.rb
arti_mark-0.0.1.beta2 lib/arti_mark/block_image_parser.rb
arti_mark-0.0.1.beta1 lib/arti_mark/block_image_parser.rb
arti_mark-0.0.1.beta0 lib/arti_mark/block_image_parser.rb