summaryrefslogtreecommitdiff
path: root/lib/redcarpet/render
diff options
context:
space:
mode:
authorRobert Speicher <rspeicher@gmail.com>2015-08-27 13:09:01 -0700
committerRobert Speicher <rspeicher@gmail.com>2015-08-27 14:17:26 -0700
commit4340dd3eeb6fdda83b729c16cba29239b8ed9f43 (patch)
treef583b7a81cfbd47a7ec393397d17e37dee759539 /lib/redcarpet/render
parent10ee826847f956a235952fbb41d5ba589927b862 (diff)
downloadgitlab-ce-4340dd3eeb6fdda83b729c16cba29239b8ed9f43.tar.gz
Decouple Gitlab::Markdown from the GitlabMarkdownHelper
This module is now the sole source of knowledge for *how* we render Markdown (and GFM).
Diffstat (limited to 'lib/redcarpet/render')
-rw-r--r--lib/redcarpet/render/gitlab_html.rb45
1 files changed, 0 insertions, 45 deletions
diff --git a/lib/redcarpet/render/gitlab_html.rb b/lib/redcarpet/render/gitlab_html.rb
deleted file mode 100644
index 9cb8e91d6e3..00000000000
--- a/lib/redcarpet/render/gitlab_html.rb
+++ /dev/null
@@ -1,45 +0,0 @@
-require 'active_support/core_ext/string/output_safety'
-
-class Redcarpet::Render::GitlabHTML < Redcarpet::Render::HTML
- attr_reader :template
- alias_method :h, :template
-
- def initialize(template, options = {})
- @template = template
- @options = options.dup
-
- @options.reverse_merge!(
- # Handled further down the line by Gitlab::Markdown::SanitizationFilter
- escape_html: false,
- project: @template.instance_variable_get("@project")
- )
-
- super(options)
- end
-
- def normal_text(text)
- ERB::Util.html_escape_once(text)
- end
-
- # Stolen from Rouge::Plugins::Redcarpet as this module is not required
- # from Rouge's gem root.
- def block_code(code, language)
- lexer = Rouge::Lexer.find_fancy(language, code) || Rouge::Lexers::PlainText
-
- # XXX HACK: Redcarpet strips hard tabs out of code blocks,
- # so we assume you're not using leading spaces that aren't tabs,
- # and just replace them here.
- if lexer.tag == 'make'
- code.gsub!(/^ /, "\t")
- end
-
- formatter = Rouge::Formatters::HTMLGitlab.new(
- cssclass: "code highlight js-syntax-highlight #{lexer.tag}"
- )
- formatter.format(lexer.lex(code))
- end
-
- def postprocess(full_document)
- h.gfm(full_document, @options)
- end
-end