Class: Qiita::Markdown::Filters::SyntaxHighlight::Highlighter
- Inherits:
-
Object
- Object
- Qiita::Markdown::Filters::SyntaxHighlight::Highlighter
- Defined in:
- lib/qiita/markdown/filters/syntax_highlight.rb
Class Method Summary collapse
Instance Method Summary collapse
- #call ⇒ Object
-
#initialize(default_language: nil, node: nil, specific_language: nil) ⇒ Highlighter
constructor
A new instance of Highlighter.
Constructor Details
#initialize(default_language: nil, node: nil, specific_language: nil) ⇒ Highlighter
Returns a new instance of Highlighter.
50 51 52 53 54 |
# File 'lib/qiita/markdown/filters/syntax_highlight.rb', line 50 def initialize(default_language: nil, node: nil, specific_language: nil) @default_language = default_language @node = node @specific_language = specific_language end |
Class Method Details
.call(**args) ⇒ Object
46 47 48 |
# File 'lib/qiita/markdown/filters/syntax_highlight.rb', line 46 def self.call(**args) new(**args).call end |
Instance Method Details
#call ⇒ Object
56 57 58 59 60 61 62 |
# File 'lib/qiita/markdown/filters/syntax_highlight.rb', line 56 def call outer = Nokogiri::HTML.fragment(%(<div class="code-frame" data-lang="#{language}">)) frame = outer.at("div") frame.add_child(filename_node) if filename frame.add_child(highlighted_node) @node.replace(outer) end |