Skip to content

Commit 27d41f5

Browse files
committed
update initializers
1 parent ae4d046 commit 27d41f5

File tree

1 file changed

+29
-0
lines changed

1 file changed

+29
-0
lines changed

docs/config/initializers.rb

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,3 +20,32 @@
2020
# end
2121
# end
2222
end
23+
24+
require "rouge"
25+
26+
module Rouge
27+
module Lexers
28+
# These lexers don't implement the `prepend` class method so they'll raise an error if we don't skip them.
29+
problem_lexers = [
30+
::Rouge::Lexers::ConsoleLexer,
31+
::Rouge::Lexers::Escape,
32+
::Rouge::Lexers::IRBLexer,
33+
::Rouge::Lexers::PlainText
34+
]
35+
36+
::Rouge::Lexer.all.each do |lexer|
37+
next if problem_lexers.include?(lexer)
38+
39+
# Ruleset courtesy of this issue:
40+
# https://github.com/rouge-ruby/rouge/issues/642
41+
lexer.prepend :root do
42+
rule(/^\+.*$\n?/, lexer::Generic::Inserted)
43+
rule(/^-+.*$\n?/, lexer::Generic::Deleted)
44+
rule(/^!.*$\n?/, lexer::Generic::Strong)
45+
rule(/^@.*$\n?/, lexer::Generic::Subheading)
46+
rule(/^([Ii]ndex|diff).*$\n?/, lexer::Generic::Heading)
47+
rule(/^=.*$\n?/, lexer::Generic::Heading)
48+
end
49+
end
50+
end
51+
end

0 commit comments

Comments
 (0)