diff options
author | Rubén Dávila <Ruben@GitLab.com> | 2015-12-15 18:09:09 -0500 |
---|---|---|
committer | Rubén Dávila <rdavila84@gmail.com> | 2015-12-28 18:31:27 -0500 |
commit | 34657b821ae597de76ffd5a70d2b0b298dc270ed (patch) | |
tree | b1aa6974c5631b0df71e5640329212216aeb10cf /lib | |
parent | 3a227b5abb0c794e95dd9153e3616c5d81aa06f8 (diff) | |
download | gitlab-ce-34657b821ae597de76ffd5a70d2b0b298dc270ed.tar.gz |
Add syntax highlighting to diff view. #3945
Diffstat (limited to 'lib')
-rw-r--r-- | lib/rouge/lexers/gitlab_diff.rb | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/lib/rouge/lexers/gitlab_diff.rb b/lib/rouge/lexers/gitlab_diff.rb new file mode 100644 index 00000000000..e136d47df00 --- /dev/null +++ b/lib/rouge/lexers/gitlab_diff.rb @@ -0,0 +1,20 @@ +Rouge::Token::Tokens.token(:InlineDiff, 'idiff') + +module Rouge + module Lexers + class GitlabDiff < RegexLexer + title "GitLab Diff" + tag 'gitlab_diff' + + state :root do + rule %r{<span class='idiff'>(.*?)</span>} do |match| + token InlineDiff, match[1] + end + + rule /(?:(?!<span).)*/ do + delegate option(:parent_lexer) + end + end + end + end +end |