Module: Jazzy::Markdown

Defined in:
lib/jazzy/jazzy_markdown.rb

Defined Under Namespace

Modules: Footnotes Classes: JazzyCopyright, JazzyDeclarationHTML, JazzyHTML

Constant Summary collapse

REDCARPET_OPTIONS =

rubocop:enable Metrics/ClassLength

{
  autolink: true,
  fenced_code_blocks: true,
  no_intra_emphasis: true,
  strikethrough: true,
  space_after_headers: false,
  tables: true,
  lax_spacing: true,
  footnotes: true,
}.freeze

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.has_mathObject

Returns the value of attribute has_math.



10
11
12
# File 'lib/jazzy/jazzy_markdown.rb', line 10

def has_math
  @has_math
end

Class Method Details



292
293
294
295
296
297
# File 'lib/jazzy/jazzy_markdown.rb', line 292

def self.copyright_markdown
  @copyright_markdown ||= Redcarpet::Markdown.new(
    JazzyCopyright,
    REDCARPET_OPTIONS,
  )
end

.markdownObject



260
261
262
# File 'lib/jazzy/jazzy_markdown.rb', line 260

def self.markdown
  @markdown ||= Redcarpet::Markdown.new(renderer, REDCARPET_OPTIONS)
end

.render(markdown_text, default_language = nil) ⇒ Object

Produces <p>-delimited block content



265
266
267
268
269
# File 'lib/jazzy/jazzy_markdown.rb', line 265

def self.render(markdown_text, default_language = nil)
  renderer.reset
  renderer.default_language = default_language
  markdown.render(markdown_text)
end


299
300
301
# File 'lib/jazzy/jazzy_markdown.rb', line 299

def self.render_copyright(markdown_text)
  copyright_markdown.render(markdown_text)
end

.render_inline(markdown_text, default_language = nil) ⇒ Object

Produces <span>-delimited inline content



272
273
274
275
# File 'lib/jazzy/jazzy_markdown.rb', line 272

def self.render_inline(markdown_text, default_language = nil)
  render(markdown_text, default_language)
    .sub(%r{^<p>(.*)</p>$}, '<span>\1</span>')
end

.rendered_parametersObject



281
282
283
# File 'lib/jazzy/jazzy_markdown.rb', line 281

def self.rendered_parameters
  renderer.parameters
end

.rendered_returnsObject



277
278
279
# File 'lib/jazzy/jazzy_markdown.rb', line 277

def self.rendered_returns
  renderer.returns
end

.rendererObject



256
257
258
# File 'lib/jazzy/jazzy_markdown.rb', line 256

def self.renderer
  @renderer ||= JazzyDeclarationHTML.new
end