rouge 4.1.3 → 4.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (97) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +10 -7
  3. data/LICENSE +2 -1
  4. data/lib/rouge/cli.rb +4 -5
  5. data/lib/rouge/demos/bicep +10 -0
  6. data/lib/rouge/demos/cobol +103 -0
  7. data/lib/rouge/demos/codeowners +6 -0
  8. data/lib/rouge/demos/gjs +23 -0
  9. data/lib/rouge/demos/gts +36 -0
  10. data/lib/rouge/demos/iecst +21 -0
  11. data/lib/rouge/demos/json5 +12 -0
  12. data/lib/rouge/demos/mojo +10 -0
  13. data/lib/rouge/demos/p4 +99 -0
  14. data/lib/rouge/demos/svelte +29 -0
  15. data/lib/rouge/formatters/html_legacy.rb +0 -3
  16. data/lib/rouge/guessers/disambiguation.rb +24 -3
  17. data/lib/rouge/lexer.rb +8 -6
  18. data/lib/rouge/lexers/ada.rb +5 -5
  19. data/lib/rouge/lexers/bicep.rb +111 -0
  20. data/lib/rouge/lexers/bpf.rb +10 -10
  21. data/lib/rouge/lexers/brainfuck.rb +1 -0
  22. data/lib/rouge/lexers/clean.rb +4 -4
  23. data/lib/rouge/lexers/cobol.rb +137 -0
  24. data/lib/rouge/lexers/codeowners.rb +30 -0
  25. data/lib/rouge/lexers/cpp.rb +5 -4
  26. data/lib/rouge/lexers/crystal.rb +17 -17
  27. data/lib/rouge/lexers/csharp.rb +37 -34
  28. data/lib/rouge/lexers/css.rb +192 -150
  29. data/lib/rouge/lexers/dart.rb +1 -1
  30. data/lib/rouge/lexers/docker.rb +2 -2
  31. data/lib/rouge/lexers/ecl.rb +2 -2
  32. data/lib/rouge/lexers/eiffel.rb +1 -1
  33. data/lib/rouge/lexers/elixir.rb +5 -1
  34. data/lib/rouge/lexers/gdscript.rb +4 -4
  35. data/lib/rouge/lexers/ghc_cmm.rb +3 -3
  36. data/lib/rouge/lexers/gjs.rb +39 -0
  37. data/lib/rouge/lexers/go.rb +7 -5
  38. data/lib/rouge/lexers/groovy.rb +6 -4
  39. data/lib/rouge/lexers/gts.rb +39 -0
  40. data/lib/rouge/lexers/hcl.rb +1 -0
  41. data/lib/rouge/lexers/html.rb +1 -1
  42. data/lib/rouge/lexers/iecst.rb +92 -0
  43. data/lib/rouge/lexers/ini.rb +7 -5
  44. data/lib/rouge/lexers/java.rb +1 -1
  45. data/lib/rouge/lexers/javascript.rb +4 -4
  46. data/lib/rouge/lexers/json5.rb +74 -0
  47. data/lib/rouge/lexers/julia.rb +3 -2
  48. data/lib/rouge/lexers/kotlin.rb +1 -1
  49. data/lib/rouge/lexers/lua.rb +24 -3
  50. data/lib/rouge/lexers/make.rb +5 -1
  51. data/lib/rouge/lexers/markdown.rb +2 -1
  52. data/lib/rouge/lexers/mathematica.rb +1 -1
  53. data/lib/rouge/lexers/meson.rb +0 -1
  54. data/lib/rouge/lexers/mojo.rb +35 -0
  55. data/lib/rouge/lexers/nasm.rb +5 -4
  56. data/lib/rouge/lexers/nginx.rb +1 -0
  57. data/lib/rouge/lexers/objective_c/common.rb +0 -2
  58. data/lib/rouge/lexers/objective_c.rb +1 -1
  59. data/lib/rouge/lexers/ocl.rb +2 -2
  60. data/lib/rouge/lexers/openedge.rb +0 -2
  61. data/lib/rouge/lexers/p4.rb +81 -0
  62. data/lib/rouge/lexers/php/keywords.rb +86 -136
  63. data/lib/rouge/lexers/php.rb +42 -2
  64. data/lib/rouge/lexers/plsql.rb +5 -5
  65. data/lib/rouge/lexers/python.rb +59 -32
  66. data/lib/rouge/lexers/robot_framework.rb +1 -1
  67. data/lib/rouge/lexers/ruby.rb +21 -21
  68. data/lib/rouge/lexers/sass/common.rb +1 -1
  69. data/lib/rouge/lexers/scala.rb +5 -2
  70. data/lib/rouge/lexers/sql.rb +1 -1
  71. data/lib/rouge/lexers/svelte.rb +91 -0
  72. data/lib/rouge/lexers/syzlang.rb +0 -1
  73. data/lib/rouge/lexers/tcl.rb +7 -2
  74. data/lib/rouge/lexers/terraform.rb +4 -3
  75. data/lib/rouge/lexers/toml.rb +56 -45
  76. data/lib/rouge/lexers/ttcn3.rb +0 -2
  77. data/lib/rouge/lexers/typescript/common.rb +9 -0
  78. data/lib/rouge/lexers/xojo.rb +6 -6
  79. data/lib/rouge/lexers/yang.rb +1 -1
  80. data/lib/rouge/regex_lexer.rb +13 -0
  81. data/lib/rouge/tex_theme_renderer.rb +1 -1
  82. data/lib/rouge/themes/base16.rb +23 -18
  83. data/lib/rouge/themes/bw.rb +1 -0
  84. data/lib/rouge/themes/colorful.rb +1 -0
  85. data/lib/rouge/themes/github.rb +1 -0
  86. data/lib/rouge/themes/gruvbox.rb +4 -1
  87. data/lib/rouge/themes/igor_pro.rb +3 -0
  88. data/lib/rouge/themes/magritte.rb +1 -0
  89. data/lib/rouge/themes/molokai.rb +2 -1
  90. data/lib/rouge/themes/monokai.rb +2 -1
  91. data/lib/rouge/themes/monokai_sublime.rb +4 -3
  92. data/lib/rouge/themes/pastie.rb +1 -0
  93. data/lib/rouge/themes/thankful_eyes.rb +1 -0
  94. data/lib/rouge/themes/tulip.rb +1 -0
  95. data/lib/rouge/token.rb +2 -1
  96. data/lib/rouge/version.rb +1 -1
  97. metadata +23 -6
@@ -11,61 +11,56 @@ module Rouge
11
11
  filenames '*.toml', 'Pipfile', 'poetry.lock'
12
12
  mimetypes 'text/x-toml'
13
13
 
14
- # bare keys and quoted keys
15
- identifier = %r/(?:\S+|"[^"]+"|'[^']+')/
16
-
17
- state :basic do
18
- rule %r/\s+/, Text
19
- rule %r/#.*?$/, Comment
20
- rule %r/(true|false)/, Keyword::Constant
21
-
22
- rule %r/(#{identifier})(\s*)(=)(\s*)(\{)/ do
23
- groups Name::Namespace, Text, Operator, Text, Punctuation
24
- push :inline
25
- end
26
-
27
- rule %r/\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}Z/, Literal::Date
28
-
29
- rule %r/[+-]?\d+(?:_\d+)*\.\d+(?:_\d+)*(?:[eE][+-]?\d+(?:_\d+)*)?/, Num::Float
30
- rule %r/[+-]?\d+(?:_\d+)*[eE][+-]?\d+(?:_\d+)*/, Num::Float
31
- rule %r/[+-]?(?:nan|inf)/, Num::Float
32
-
33
- rule %r/0x\h+(?:_\h+)*/, Num::Hex
34
- rule %r/0o[0-7]+(?:_[0-7]+)*/, Num::Oct
35
- rule %r/0b[01]+(?:_[01]+)*/, Num::Bin
36
- rule %r/[+-]?\d+(?:_\d+)*/, Num::Integer
37
- end
38
-
39
14
  state :root do
40
- mixin :basic
15
+ mixin :whitespace
41
16
 
42
- rule %r/(?<!=)\s*\[.*?\]+/, Name::Namespace
17
+ mixin :key
43
18
 
44
- rule %r/(#{identifier})(\s*)(=)/ do
45
- groups Name::Property, Text, Punctuation
19
+ rule %r/(=)(\s*)/ do
20
+ groups Operator, Text::Whitespace
46
21
  push :value
47
22
  end
48
- end
49
23
 
50
- state :value do
51
- rule %r/\n/, Text, :pop!
52
- mixin :content
24
+ rule %r/\[\[?/, Keyword, :table_key
53
25
  end
54
26
 
55
- state :content do
56
- mixin :basic
27
+ state :key do
28
+ rule %r/[A-Za-z0-9_-]+/, Name
57
29
 
58
- rule %r/(#{identifier})(\s*)(=)/ do
59
- groups Name::Property, Text, Punctuation
60
- end
30
+ rule %r/"/, Str, :dq
31
+ rule %r/'/, Str, :sq
32
+ rule %r/\./, Punctuation
33
+ end
34
+
35
+ state :table_key do
36
+ rule %r/[A-Za-z0-9_-]+/, Name
61
37
 
62
- rule %r/"""/, Str, :mdq
63
38
  rule %r/"/, Str, :dq
64
- rule %r/'''/, Str, :msq
65
39
  rule %r/'/, Str, :sq
66
- mixin :esc_str
67
- rule %r/\,/, Punctuation
68
- rule %r/\[/, Punctuation, :array
40
+ rule %r/\./, Keyword
41
+ rule %r/\]\]?/, Keyword, :pop!
42
+ rule %r/[ \t]+/, Text::Whitespace
43
+ end
44
+
45
+ state :value do
46
+ rule %r/\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}Z/, Literal::Date, :pop!
47
+ rule %r/\d\d:\d\d:\d\d(\.\d+)?/, Literal::Date, :pop!
48
+ rule %r/[+-]?\d+(?:_\d+)*\.\d+(?:_\d+)*(?:[eE][+-]?\d+(?:_\d+)*)?/, Num::Float, :pop!
49
+ rule %r/[+-]?\d+(?:_\d+)*[eE][+-]?\d+(?:_\d+)*/, Num::Float, :pop!
50
+ rule %r/[+-]?(?:nan|inf)/, Num::Float, :pop!
51
+ rule %r/0x\h+(?:_\h+)*/, Num::Hex, :pop!
52
+ rule %r/0o[0-7]+(?:_[0-7]+)*/, Num::Oct, :pop!
53
+ rule %r/0b[01]+(?:_[01]+)*/, Num::Bin, :pop!
54
+ rule %r/[+-]?\d+(?:_\d+)*/, Num::Integer, :pop!
55
+
56
+ rule %r/"""/, Str, [:pop!, :mdq]
57
+ rule %r/"/, Str, [:pop!, :dq]
58
+ rule %r/'''/, Str, [:pop!, :msq]
59
+ rule %r/'/, Str, [:pop!, :sq]
60
+
61
+ rule %r/(true|false)/, Keyword::Constant, :pop!
62
+ rule %r/\[/, Punctuation, [:pop!, :array]
63
+ rule %r/\{/, Punctuation, [:pop!, :inline]
69
64
  end
70
65
 
71
66
  state :dq do
@@ -99,15 +94,31 @@ module Rouge
99
94
  end
100
95
 
101
96
  state :array do
102
- mixin :content
97
+ mixin :whitespace
98
+ rule %r/,/, Punctuation
99
+
103
100
  rule %r/\]/, Punctuation, :pop!
101
+
102
+ rule %r//, Token, :value
104
103
  end
105
104
 
106
105
  state :inline do
107
- mixin :content
106
+ rule %r/[ \t]+/, Text::Whitespace
108
107
 
108
+ mixin :key
109
+ rule %r/(=)(\s*)/ do
110
+ groups Punctuation, Text::Whitespace
111
+ push :value
112
+ end
113
+
114
+ rule %r/,/, Punctuation
109
115
  rule %r/\}/, Punctuation, :pop!
110
116
  end
117
+
118
+ state :whitespace do
119
+ rule %r/\s+/, Text
120
+ rule %r/#.*?$/, Comment
121
+ end
111
122
  end
112
123
  end
113
124
  end
@@ -46,8 +46,6 @@ module Rouge
46
46
  )
47
47
  end
48
48
 
49
- # optional comment or whitespace
50
- ws = %r((?:\s|//.*?\n|/[*].*?[*]/)+)
51
49
  id = /[a-zA-Z_]\w*/
52
50
  digit = /\d_+\d|\d/
53
51
  bin_digit = /[01]_+[01]|[01]/
@@ -37,6 +37,15 @@ module Rouge
37
37
  base.prepend :root do
38
38
  rule %r/[?][.]/, base::Punctuation
39
39
  rule %r/[?]{2}/, base::Operator
40
+
41
+ # Positive Examples:
42
+ # const cat = { name: "Garfield" } satisfies Person;
43
+ # import {something as thingy} from 'module'
44
+ # export { foo as default }
45
+ # ...spreadOperator as const;
46
+ # Negative Example:
47
+ # cy.get('kitten').as('friend')
48
+ rule %r{(?<![_$[:alnum:]])(?:(?<=\.\.\.)|(?<!\.))(?:(as)|(satisfies))\s+}, base::Keyword::Declaration
40
49
  end
41
50
 
42
51
  base.prepend :statement do
@@ -12,20 +12,20 @@ module Rouge
12
12
 
13
13
  keywords = %w(
14
14
  addhandler aggregates array asc assigns attributes begin break
15
- byref byval call case catch class const continue char ctype declare
15
+ byref byval call case catch class const continue color ctype declare
16
16
  delegate dim do downto each else elseif end enum event exception
17
17
  exit extends false finally for function global goto if
18
18
  implements inherits interface lib loop mod module
19
19
  new next nil object of optional paramarray
20
20
  private property protected public raise raiseevent rect redim
21
21
  removehandler return select shared soft static step sub super
22
- then to true try until using uend uhile
22
+ then to true try until using var wend while
23
23
  )
24
24
 
25
25
  keywords_type = %w(
26
- boolean cfstringref cgfloat cstring curency date double int8 int16
27
- int32 int64 integer ostype pstring ptr short single
28
- single string structure variant uinteger uint8 uint16 uint32 uint64
26
+ boolean byte cfstringref cgfloat cstring currency date datetime double int8 int16
27
+ int32 int64 integer ostype pair pstring ptr short single
28
+ string structure variant uinteger uint8 uint16 uint32 uint64
29
29
  ushort windowptr wstring
30
30
  )
31
31
 
@@ -37,7 +37,7 @@ module Rouge
37
37
  rule %r/\s+/, Text::Whitespace
38
38
 
39
39
  rule %r/rem\b.*?$/i, Comment::Single
40
- rule %r([//'].*$), Comment::Single
40
+ rule %r((?://|').*$), Comment::Single
41
41
  rule %r/\#tag Note.*?\#tag EndNote/mi, Comment::Preproc
42
42
  rule %r/\s*[#].*$/x, Comment::Preproc
43
43
 
@@ -10,7 +10,7 @@ module Rouge
10
10
  filenames '*.yang'
11
11
  mimetypes 'application/yang'
12
12
 
13
- id = /[\w_-]+(?=[^\w\-\:])\b/
13
+ id = /[\w-]+(?=[^\w\-\:])\b/
14
14
 
15
15
  #Keywords from RFC7950 ; oriented at BNF style
16
16
  def self.top_stmts_keywords
@@ -166,6 +166,19 @@ module Rouge
166
166
  puts " yielding: #{tok.qualname}, #{stream[0].inspect}" if @debug
167
167
  @output_stream.call(tok, stream[0])
168
168
  end
169
+ when Array
170
+ proc do |stream|
171
+ puts " yielding: #{tok.qualname}, #{stream[0].inspect}" if @debug
172
+ @output_stream.call(tok, stream[0])
173
+ for i_next_state in next_state do
174
+ next @stack.pop if i_next_state == :pop!
175
+ next @stack.push(@stack.last) if i_next_state == :push
176
+
177
+ state = @states[i_next_state] || self.class.get_state(i_next_state)
178
+ puts " pushing :#{state.name}" if @debug
179
+ @stack.push(state)
180
+ end
181
+ end
169
182
  else
170
183
  raise "invalid next state: #{next_state.inspect}"
171
184
  end
@@ -109,7 +109,7 @@ END
109
109
  end
110
110
 
111
111
  def render_blank(tok, &b)
112
- out = "\\expandafter\\def#{token_name(tok)}#1{#1}"
112
+ "\\expandafter\\def#{token_name(tok)}#1{#1}"
113
113
  end
114
114
 
115
115
  def render_style(tok, style, &b)
@@ -3,27 +3,28 @@
3
3
 
4
4
  module Rouge
5
5
  module Themes
6
- # default base16 theme
7
- # by Chris Kempson (http://chriskempson.com)
6
+ # author Chris Kempson
7
+ # base16 default dark
8
+ # https://github.com/chriskempson/base16-default-schemes
8
9
  class Base16 < CSSTheme
9
10
  name 'base16'
10
11
 
11
- palette base00: "#151515"
12
- palette base01: "#202020"
13
- palette base02: "#303030"
14
- palette base03: "#505050"
15
- palette base04: "#b0b0b0"
16
- palette base05: "#d0d0d0"
17
- palette base06: "#e0e0e0"
18
- palette base07: "#f5f5f5"
19
- palette base08: "#ac4142"
20
- palette base09: "#d28445"
21
- palette base0A: "#f4bf75"
22
- palette base0B: "#90a959"
23
- palette base0C: "#75b5aa"
24
- palette base0D: "#6a9fb5"
25
- palette base0E: "#aa759f"
26
- palette base0F: "#8f5536"
12
+ palette base00: "#181818"
13
+ palette base01: "#282828"
14
+ palette base02: "#383838"
15
+ palette base03: "#585858"
16
+ palette base04: "#b8b8b8"
17
+ palette base05: "#d8d8d8"
18
+ palette base06: "#e8e8e8"
19
+ palette base07: "#f8f8f8"
20
+ palette base08: "#ab4642"
21
+ palette base09: "#dc9656"
22
+ palette base0A: "#f7ca88"
23
+ palette base0B: "#a1b56c"
24
+ palette base0C: "#86c1b9"
25
+ palette base0D: "#7cafc2"
26
+ palette base0E: "#ba8baf"
27
+ palette base0F: "#a16946"
27
28
 
28
29
  extend HasModes
29
30
 
@@ -60,6 +61,10 @@ module Rouge
60
61
  style Generic::Deleted, :fg => :base08
61
62
  style Generic::Heading, :fg => :base0D, :bg => :base00, :bold => true
62
63
 
64
+ style Generic::Emph, :italic => true
65
+ style Generic::EmphStrong, :italic => true, :bold => true
66
+ style Generic::Strong, :bold => true
67
+
63
68
  style Keyword, :fg => :base0E
64
69
  style Keyword::Constant,
65
70
  Keyword::Type, :fg => :base09
@@ -33,6 +33,7 @@ module Rouge
33
33
  style Generic::Heading, :bold => true
34
34
  style Generic::Subheading, :bold => true
35
35
  style Generic::Emph, :italic => true
36
+ style Generic::EmphStrong, :italic => true, :bold => true
36
37
  style Generic::Strong, :bold => true
37
38
  style Generic::Prompt, :bold => true
38
39
 
@@ -58,6 +58,7 @@ module Rouge
58
58
  style Generic::Inserted, :fg => "#00A000"
59
59
  style Generic::Error, :fg => "#FF0000"
60
60
  style Generic::Emph, :italic => true
61
+ style Generic::EmphStrong, :italic => true, :bold => true
61
62
  style Generic::Strong, :bold => true
62
63
  style Generic::Prompt, :fg => "#c65d09", :bold => true
63
64
  style Generic::Output, :fg => "#888"
@@ -111,6 +111,7 @@ module Rouge
111
111
  Name::Tag, :fg => :tag
112
112
 
113
113
  style Generic::Inserted, :fg => :fgInserted, :bg => :bgInserted
114
+ style Generic::EmphStrong, :italic => true, :bold => true
114
115
 
115
116
  style Keyword::Constant,
116
117
  Literal,
@@ -140,6 +140,10 @@ module Rouge
140
140
  style Generic::Deleted, :fg => :red, :bg => :bg0
141
141
  style Generic::Heading, :fg => :green, :bold => true
142
142
 
143
+ style Generic::Emph, :italic => true
144
+ style Generic::EmphStrong, :italic => true, :bold => true
145
+ style Generic::Strong, :bold => true
146
+
143
147
  style Keyword, :fg => :red
144
148
  style Keyword::Constant, :fg => :purple
145
149
  style Keyword::Type, :fg => :yellow
@@ -164,7 +168,6 @@ module Rouge
164
168
  style Literal::Number, :fg => :purple
165
169
 
166
170
  style Literal::String::Symbol, :fg => :blue
167
-
168
171
  end
169
172
  end
170
173
  end
@@ -10,6 +10,9 @@ module Rouge
10
10
  style Comment::Preproc, :fg => '#CC00A3'
11
11
  style Comment::Special, :fg => '#CC00A3'
12
12
  style Comment, :fg => '#FF0000'
13
+ style Generic::Emph, :italic => true
14
+ style Generic::EmphStrong, :italic => true, :bold => true
15
+ style Generic::Strong, :bold => true
13
16
  style Keyword::Constant, :fg => '#C34E00'
14
17
  style Keyword::Declaration, :fg => '#0000FF'
15
18
  style Keyword::Reserved, :fg => '#007575'
@@ -41,6 +41,7 @@ module Rouge
41
41
  style Generic::Deleted, :fg => :cherry
42
42
  style Generic::Inserted, :fg => :forest
43
43
  style Generic::Emph, :italic => true
44
+ style Generic::EmphStrong, :italic => true, :bold => true
44
45
  style Generic::Strong, :bold => true
45
46
  style Generic::Traceback, :fg => :black, :bg => :lavender
46
47
  style Keyword::Constant, :fg => :forest, :bold => true
@@ -25,7 +25,8 @@ module Rouge
25
25
  style Error, :fg => :white, :bg => :grey
26
26
  style Generic::Inserted, :fg => :green
27
27
  style Generic::Deleted, :fg => :red
28
- style Generic::Emph, :fg => :black, :italic => true
28
+ style Generic::Emph, :italic => true
29
+ style Generic::EmphStrong, :italic => true, :bold => true
29
30
  style Generic::Error,
30
31
  Generic::Traceback, :fg => :red
31
32
  style Generic::Heading, :fg => :grey
@@ -35,7 +35,8 @@ module Rouge
35
35
  style Error, :fg => :carmine, :bg => :very_dark
36
36
  style Generic::Inserted, :fg => :white, :bg => :dimgreen
37
37
  style Generic::Deleted, :fg => :white, :bg => :dimred
38
- style Generic::Emph, :fg => :black, :italic => true
38
+ style Generic::Emph, :italic => true
39
+ style Generic::EmphStrong, :italic => true, :bold => true
39
40
  style Generic::Error,
40
41
  Generic::Traceback, :fg => :dark_red
41
42
  style Generic::Heading, :fg => :grey
@@ -30,7 +30,9 @@ module Rouge
30
30
  style Literal::String::Regex, :fg => :orange
31
31
  style Generic::Output, :fg => :dark_grey
32
32
  style Generic::Prompt, :fg => :emperor
33
- style Generic::Strong, :bold => false
33
+ style Generic::Emph, :italic => true
34
+ style Generic::EmphStrong, :italic => true, :bold => true
35
+ style Generic::Strong, :bold => true
34
36
  style Generic::Subheading, :fg => :light_grey
35
37
  style Name::Builtin, :fg => :orange
36
38
  style Comment::Multiline,
@@ -42,8 +44,7 @@ module Rouge
42
44
  Generic::Error,
43
45
  Generic::Traceback, :fg => :carmine
44
46
  style Generic::Deleted,
45
- Generic::Inserted,
46
- Generic::Emph, :fg => :dark
47
+ Generic::Inserted, :fg => :dark
47
48
  style Keyword::Constant,
48
49
  Keyword::Declaration,
49
50
  Keyword::Reserved,
@@ -22,6 +22,7 @@ module Rouge
22
22
  style Generic::Inserted, :fg => '#000000', :bg => '#ddffdd'
23
23
 
24
24
  style Generic::Emph, :italic => true
25
+ style Generic::EmphStrong, :italic => true, :bold => true
25
26
  style Generic::Strong, :bold => true
26
27
 
27
28
  style Generic::Lineno, :fg => '#888888'
@@ -38,6 +38,7 @@ module Rouge
38
38
  style Generic::Deleted, :fg => :scarletred2
39
39
  style Generic::Inserted, :fg => :go_get_it
40
40
  style Generic::Emph, :italic => true
41
+ style Generic::EmphStrong, :italic => true, :bold => true
41
42
  style Generic::Strong, :bold => true
42
43
  style Generic::Traceback, :fg => :eggshell_cloud, :bg => :slate_blue
43
44
  style Keyword::Constant, :fg => :pink_merengue, :bold => true
@@ -33,6 +33,7 @@ module Rouge
33
33
  style Generic::Deleted, :fg => :red
34
34
  style Generic::Inserted, :fg => :green
35
35
  style Generic::Emph, :italic => true
36
+ style Generic::EmphStrong, :italic => true, :bold => true
36
37
  style Generic::Strong, :bold => true
37
38
  style Generic::Traceback,
38
39
  Generic::Lineno, :fg => :white, :bg => :purple
data/lib/rouge/token.rb CHANGED
@@ -172,15 +172,16 @@ module Rouge
172
172
  token :Generic, 'g' do
173
173
  token :Deleted, 'gd'
174
174
  token :Emph, 'ge'
175
+ token :EmphStrong, 'ges'
175
176
  token :Error, 'gr'
176
177
  token :Heading, 'gh'
177
178
  token :Inserted, 'gi'
179
+ token :Lineno, 'gl'
178
180
  token :Output, 'go'
179
181
  token :Prompt, 'gp'
180
182
  token :Strong, 'gs'
181
183
  token :Subheading, 'gu'
182
184
  token :Traceback, 'gt'
183
- token :Lineno, 'gl'
184
185
  end
185
186
 
186
187
  # convenience
data/lib/rouge/version.rb CHANGED
@@ -3,6 +3,6 @@
3
3
 
4
4
  module Rouge
5
5
  def self.version
6
- "4.1.3"
6
+ "4.7.0"
7
7
  end
8
8
  end
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rouge
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.1.3
4
+ version: 4.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeanine Adkisson
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2023-07-31 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies: []
13
12
  description: Rouge aims to a be a simple, easy-to-extend drop-in replacement for pygments.
14
13
  email:
@@ -36,6 +35,7 @@ files:
36
35
  - lib/rouge/demos/batchfile
37
36
  - lib/rouge/demos/bbcbasic
38
37
  - lib/rouge/demos/bibtex
38
+ - lib/rouge/demos/bicep
39
39
  - lib/rouge/demos/biml
40
40
  - lib/rouge/demos/bpf
41
41
  - lib/rouge/demos/brainfuck
@@ -49,6 +49,8 @@ files:
49
49
  - lib/rouge/demos/clojure
50
50
  - lib/rouge/demos/cmake
51
51
  - lib/rouge/demos/cmhg
52
+ - lib/rouge/demos/cobol
53
+ - lib/rouge/demos/codeowners
52
54
  - lib/rouge/demos/coffeescript
53
55
  - lib/rouge/demos/common_lisp
54
56
  - lib/rouge/demos/conf
@@ -89,11 +91,13 @@ files:
89
91
  - lib/rouge/demos/ghc-cmm
90
92
  - lib/rouge/demos/ghc-core
91
93
  - lib/rouge/demos/gherkin
94
+ - lib/rouge/demos/gjs
92
95
  - lib/rouge/demos/glsl
93
96
  - lib/rouge/demos/go
94
97
  - lib/rouge/demos/gradle
95
98
  - lib/rouge/demos/graphql
96
99
  - lib/rouge/demos/groovy
100
+ - lib/rouge/demos/gts
97
101
  - lib/rouge/demos/hack
98
102
  - lib/rouge/demos/haml
99
103
  - lib/rouge/demos/handlebars
@@ -108,6 +112,7 @@ files:
108
112
  - lib/rouge/demos/hylang
109
113
  - lib/rouge/demos/idlang
110
114
  - lib/rouge/demos/idris
115
+ - lib/rouge/demos/iecst
111
116
  - lib/rouge/demos/igorpro
112
117
  - lib/rouge/demos/ini
113
118
  - lib/rouge/demos/io
@@ -123,6 +128,7 @@ files:
123
128
  - lib/rouge/demos/jsl
124
129
  - lib/rouge/demos/json
125
130
  - lib/rouge/demos/json-doc
131
+ - lib/rouge/demos/json5
126
132
  - lib/rouge/demos/jsonnet
127
133
  - lib/rouge/demos/jsp
128
134
  - lib/rouge/demos/jsx
@@ -147,6 +153,7 @@ files:
147
153
  - lib/rouge/demos/matlab
148
154
  - lib/rouge/demos/meson
149
155
  - lib/rouge/demos/minizinc
156
+ - lib/rouge/demos/mojo
150
157
  - lib/rouge/demos/moonscript
151
158
  - lib/rouge/demos/mosel
152
159
  - lib/rouge/demos/msgtrans
@@ -163,6 +170,7 @@ files:
163
170
  - lib/rouge/demos/ocl
164
171
  - lib/rouge/demos/openedge
165
172
  - lib/rouge/demos/opentype_feature_file
173
+ - lib/rouge/demos/p4
166
174
  - lib/rouge/demos/pascal
167
175
  - lib/rouge/demos/perl
168
176
  - lib/rouge/demos/php
@@ -210,6 +218,7 @@ files:
210
218
  - lib/rouge/demos/stan
211
219
  - lib/rouge/demos/stata
212
220
  - lib/rouge/demos/supercollider
221
+ - lib/rouge/demos/svelte
213
222
  - lib/rouge/demos/swift
214
223
  - lib/rouge/demos/systemd
215
224
  - lib/rouge/demos/syzlang
@@ -277,6 +286,7 @@ files:
277
286
  - lib/rouge/lexers/batchfile.rb
278
287
  - lib/rouge/lexers/bbcbasic.rb
279
288
  - lib/rouge/lexers/bibtex.rb
289
+ - lib/rouge/lexers/bicep.rb
280
290
  - lib/rouge/lexers/biml.rb
281
291
  - lib/rouge/lexers/bpf.rb
282
292
  - lib/rouge/lexers/brainfuck.rb
@@ -290,6 +300,8 @@ files:
290
300
  - lib/rouge/lexers/clojure.rb
291
301
  - lib/rouge/lexers/cmake.rb
292
302
  - lib/rouge/lexers/cmhg.rb
303
+ - lib/rouge/lexers/cobol.rb
304
+ - lib/rouge/lexers/codeowners.rb
293
305
  - lib/rouge/lexers/coffeescript.rb
294
306
  - lib/rouge/lexers/common_lisp.rb
295
307
  - lib/rouge/lexers/conf.rb
@@ -331,11 +343,13 @@ files:
331
343
  - lib/rouge/lexers/ghc_core.rb
332
344
  - lib/rouge/lexers/gherkin.rb
333
345
  - lib/rouge/lexers/gherkin/keywords.rb
346
+ - lib/rouge/lexers/gjs.rb
334
347
  - lib/rouge/lexers/glsl.rb
335
348
  - lib/rouge/lexers/go.rb
336
349
  - lib/rouge/lexers/gradle.rb
337
350
  - lib/rouge/lexers/graphql.rb
338
351
  - lib/rouge/lexers/groovy.rb
352
+ - lib/rouge/lexers/gts.rb
339
353
  - lib/rouge/lexers/hack.rb
340
354
  - lib/rouge/lexers/haml.rb
341
355
  - lib/rouge/lexers/handlebars.rb
@@ -350,6 +364,7 @@ files:
350
364
  - lib/rouge/lexers/hylang.rb
351
365
  - lib/rouge/lexers/idlang.rb
352
366
  - lib/rouge/lexers/idris.rb
367
+ - lib/rouge/lexers/iecst.rb
353
368
  - lib/rouge/lexers/igorpro.rb
354
369
  - lib/rouge/lexers/ini.rb
355
370
  - lib/rouge/lexers/io.rb
@@ -364,6 +379,7 @@ files:
364
379
  - lib/rouge/lexers/jinja.rb
365
380
  - lib/rouge/lexers/jsl.rb
366
381
  - lib/rouge/lexers/json.rb
382
+ - lib/rouge/lexers/json5.rb
367
383
  - lib/rouge/lexers/json_doc.rb
368
384
  - lib/rouge/lexers/jsonnet.rb
369
385
  - lib/rouge/lexers/jsp.rb
@@ -395,6 +411,7 @@ files:
395
411
  - lib/rouge/lexers/matlab/keywords.rb
396
412
  - lib/rouge/lexers/meson.rb
397
413
  - lib/rouge/lexers/minizinc.rb
414
+ - lib/rouge/lexers/mojo.rb
398
415
  - lib/rouge/lexers/moonscript.rb
399
416
  - lib/rouge/lexers/mosel.rb
400
417
  - lib/rouge/lexers/msgtrans.rb
@@ -413,6 +430,7 @@ files:
413
430
  - lib/rouge/lexers/ocl.rb
414
431
  - lib/rouge/lexers/openedge.rb
415
432
  - lib/rouge/lexers/opentype_feature_file.rb
433
+ - lib/rouge/lexers/p4.rb
416
434
  - lib/rouge/lexers/pascal.rb
417
435
  - lib/rouge/lexers/perl.rb
418
436
  - lib/rouge/lexers/php.rb
@@ -463,6 +481,7 @@ files:
463
481
  - lib/rouge/lexers/stan.rb
464
482
  - lib/rouge/lexers/stata.rb
465
483
  - lib/rouge/lexers/supercollider.rb
484
+ - lib/rouge/lexers/svelte.rb
466
485
  - lib/rouge/lexers/swift.rb
467
486
  - lib/rouge/lexers/systemd.rb
468
487
  - lib/rouge/lexers/syzlang.rb
@@ -528,7 +547,6 @@ metadata:
528
547
  changelog_uri: https://github.com/rouge-ruby/rouge/blob/master/CHANGELOG.md
529
548
  documentation_uri: https://rouge-ruby.github.io/docs/
530
549
  source_code_uri: https://github.com/rouge-ruby/rouge
531
- post_install_message:
532
550
  rdoc_options: []
533
551
  require_paths:
534
552
  - lib
@@ -543,8 +561,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
543
561
  - !ruby/object:Gem::Version
544
562
  version: '0'
545
563
  requirements: []
546
- rubygems_version: 3.4.13
547
- signing_key:
564
+ rubygems_version: 3.6.7
548
565
  specification_version: 4
549
566
  summary: A pure-ruby colorizer based on pygments
550
567
  test_files: []