class HatenablogPublisher::Generator::Body
Constants
- IMAGE_PATTERN
Attributes
context[R]
options[R]
Public Class Methods
new(context, options)
click to toggle source
# File lib/hatenablog_publisher/generator/body.rb, line 8 def initialize(context, options) @context = context @options = options end
Public Instance Methods
generate()
click to toggle source
# File lib/hatenablog_publisher/generator/body.rb, line 13 def generate markdown = @context.text.dup replaced_markdown = remove_textlint_comment(replace_image(markdown)) CGI.escapeHTML(replaced_markdown) end
remove_textlint_comment(markdown)
click to toggle source
# File lib/hatenablog_publisher/generator/body.rb, line 21 def remove_textlint_comment(markdown) markdown.gsub(/^<!--\s+textlint-(enable|disable).*-->\n/, '') end
replace_image(markdown)
click to toggle source
# File lib/hatenablog_publisher/generator/body.rb, line 25 def replace_image(markdown) markdown.gsub(IMAGE_PATTERN) do |s| image_name = Regexp.last_match(1) if image_name.match('^http') s else "\n\n" + @context.image_syntax(image_name) end end end