summaryrefslogtreecommitdiff
path: root/lib/gitlab/asciidoc/syntax_highlighter/html_pipeline_adapter.rb
blob: 3ada3f947eeb0b09d81f5a6654643b94e368adea (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# frozen_string_literal: true

module Gitlab
  module Asciidoc
    module SyntaxHighlighter
      class HtmlPipelineAdapter < Asciidoctor::SyntaxHighlighter::Base
        register_for 'gitlab-html-pipeline'

        def format(node, lang, opts)
          if Feature.enabled?(:use_cmark_renderer, default_enabled: :yaml)
            %(<pre #{lang ? %[lang="#{lang}"] : ''}><code>#{node.content}</code></pre>)
          else
            %(<pre><code #{lang ? %[ lang="#{lang}"] : ''}>#{node.content}</code></pre>)
          end
        end
      end
    end
  end
end