Module: Nexmo::Markdown::Concerns::PrismCodeSnippet
- Included in:
- BlockEscapeFilter, Nexmo::Markdown::CodeFilter, TabFilter, VoltaRender
- Defined in:
- lib/nexmo_markdown_renderer/filters/concerns/prism_code_snippet.rb
Instance Method Summary collapse
- #code_language_to_prism(code_language) ⇒ Object
- #code_snippet_body(lexer, body, options = {}) ⇒ Object
- #prism_css_classes(lexer) ⇒ Object
Instance Method Details
#code_language_to_prism(code_language) ⇒ Object
12 13 14 |
# File 'lib/nexmo_markdown_renderer/filters/concerns/prism_code_snippet.rb', line 12 def code_language_to_prism(code_language) code_language == 'objective_c' && 'objectivec' || code_language end |
#code_snippet_body(lexer, body, options = {}) ⇒ Object
6 7 8 9 10 |
# File 'lib/nexmo_markdown_renderer/filters/concerns/prism_code_snippet.rb', line 6 def code_snippet_body(lexer, body, = {}) <<~HEREDOC <pre class="#{prism_css_classes(lexer)}" data-lang="#{code_language_to_prism(lexer.tag)}" data-section="code" data-block="#{[:block]}"><code>#{body.chomp}</code></pre> HEREDOC end |
#prism_css_classes(lexer) ⇒ Object
16 17 18 19 |
# File 'lib/nexmo_markdown_renderer/filters/concerns/prism_code_snippet.rb', line 16 def prism_css_classes(lexer) code_language = code_language_to_prism(lexer.tag) "main-code Vlt-prism--dark language-#{code_language}" end |