'a'           Name
'.'           Operator
'each'        Name
'{'           Punctuation
'|'           Operator
'el'          Name
'|'           Operator
'anz'         Name
'['           Operator
'el'          Name
']'           Operator
'='           Operator
'anz'         Name
'['           Operator
'el'          Name
']'           Operator
'?'           Punctuation
'anz'         Name
'['           Operator
'el'          Name
']'           Operator
'+'           Operator
'1'           Literal.Number.Integer
':'           Punctuation
'1'           Literal.Number.Integer
'}'           Punctuation
'\n'          Text.Whitespace

'while'       Keyword
' '           Text.Whitespace
'x'           Name
'<'           Operator
'10000'       Literal.Number.Integer
'\n'          Text.Whitespace

'#a bis f dienen dazu die Nachbarschaft festzulegen. Man stelle sich die #Zahl von 1 bis 64 im Binärcode vor 1 bedeutet an 0 aus' Comment.Single
'\n  '        Text.Whitespace
'b'           Name
'='           Operator
'('           Punctuation
'p'           Name.Builtin
'['           Operator
'x'           Name
']'           Operator
'%'           Operator
'32'          Literal.Number.Integer
')'           Punctuation
'/'           Operator
'16'          Literal.Number.Integer
'<'           Operator
'1'           Literal.Number.Integer
' '           Text.Whitespace
'?'           Operator
' '           Text.Whitespace
'0'           Literal.Number.Integer
' '           Text.Whitespace
':'           Punctuation
' '           Text.Whitespace
'1'           Literal.Number.Integer
'\n\n  '      Text.Whitespace
'('           Punctuation
'x'           Name
'-'           Operator
'102'         Literal.Number.Integer
'>'           Operator
'='           Operator
'0'           Literal.Number.Integer
'?'           Operator
' '           Text.Whitespace
'n'           Name
'['           Operator
'x'           Name
'-'           Operator
'102'         Literal.Number.Integer
']'           Operator
'.'           Operator
'to_i'        Name
' '           Text.Whitespace
':'           Punctuation
' '           Text.Whitespace
'0'           Literal.Number.Integer
')'           Punctuation
'*'           Operator
'a'           Name
'+'           Operator
'('           Punctuation
'x'           Name
'-'           Operator
'101'         Literal.Number.Integer
'>'           Operator
'='           Operator
'0'           Literal.Number.Integer
'?'           Operator
'n'           Name
'['           Operator
'x'           Name
'-'           Operator
'101'         Literal.Number.Integer
']'           Operator
'.'           Operator
'to_i'        Name
' '           Text.Whitespace
':'           Punctuation
' '           Text.Whitespace
'0'           Literal.Number.Integer
')'           Punctuation
'*'           Operator
'e'           Name
'+'           Operator
'n'           Name
'['           Operator
'x'           Name
'-'           Operator
'100'         Literal.Number.Integer
']'           Operator
'.'           Operator
'to_i'        Name
'+'           Operator
'('           Punctuation
'x'           Name
'-'           Operator
'99'          Literal.Number.Integer
'>'           Operator
'='           Operator
'0'           Literal.Number.Integer
'?'           Operator
' '           Text.Whitespace
'n'           Name
'['           Operator
'x'           Name
'-'           Operator
'99'          Literal.Number.Integer
']'           Operator
'.'           Operator
'to_i'        Name
' '           Text.Whitespace
':'           Punctuation
' '           Text.Whitespace
'0'           Literal.Number.Integer
')'           Punctuation
'*'           Operator
'f'           Name
'+'           Operator
'('           Punctuation
'x'           Name
'-'           Operator
'98'          Literal.Number.Integer
'>'           Operator
'='           Operator
'0'           Literal.Number.Integer
'?'           Operator
' '           Text.Whitespace
'n'           Name
'['           Operator
'x'           Name
'-'           Operator
'98'          Literal.Number.Integer
']'           Operator
'.'           Operator
'to_i'        Name
' '           Text.Whitespace
':'           Punctuation
' '           Text.Whitespace
'0'           Literal.Number.Integer
')'           Punctuation
'*'           Operator
'a'           Name
'+'           Operator
'\n  '        Text.Whitespace
'n'           Name
'['           Operator
'x'           Name
'+'           Operator
'199'         Literal.Number.Integer
']'           Operator
'.'           Operator
'to_i'        Name
'*'           Operator
'b'           Name
'+'           Operator
'n'           Name
'['           Operator
'x'           Name
'+'           Operator
'200'         Literal.Number.Integer
']'           Operator
'.'           Operator
'to_i'        Name
'*'           Operator
'd'           Name
'+'           Operator
'n'           Name
'['           Operator
'x'           Name
'+'           Operator
'201'         Literal.Number.Integer
']'           Operator
'.'           Operator
'to_i'        Name
'*'           Operator
'b'           Name
'\n\n'        Text.Whitespace

'#und die Ausgabe folgt' Comment.Single
'\n'          Text.Whitespace

'g'           Name
'='           Operator
'%w{'         Literal.String.Other
'}'           Literal.String.Other
'\n'          Text.Whitespace

'x'           Name
'='           Operator
'0'           Literal.Number.Integer
'\n\n'        Text.Whitespace

'#leere regex' Comment.Single
'\n'          Text.Whitespace

'test'        Name.Builtin
' '           Text.Whitespace
'/'           Literal.String.Regex
'/'           Literal.String.Regex
','           Punctuation
' '           Text.Whitespace
'123'         Literal.Number.Integer
'\n\n'        Text.Whitespace

'while'       Keyword
' '           Text.Whitespace
'x'           Name
'<'           Operator
'100'         Literal.Number.Integer
'\n '         Text.Whitespace
'puts'        Name.Builtin
'"'           Literal.String.Double
'#{'          Literal.String.Interpol
'g'           Name
'['           Operator
'x'           Name
']'           Operator
'}'           Literal.String.Interpol
'"'           Literal.String.Double
'\n '         Text.Whitespace
'x'           Name
'+='          Operator
'1'           Literal.Number.Integer
'\n'          Text.Whitespace

'end'         Keyword
'\n\n'        Text.Whitespace

'puts'        Name.Builtin
'"'           Literal.String.Double
'"'           Literal.String.Double
'\n'          Text.Whitespace

'sleep'       Name.Builtin
'('           Punctuation
'10'          Literal.Number.Integer
')'           Punctuation
'\n\n'        Text.Whitespace

'1'           Literal.Number.Integer
'E1E1'        Name.Constant
'\n'          Text.Whitespace

'puts'        Name.Builtin
' '           Text.Whitespace
'30'          Literal.Number.Integer
'.'           Operator
'send'        Name
'('           Punctuation
':/'          Literal.String.Symbol
','           Punctuation
' '           Text.Whitespace
'5'           Literal.Number.Integer
')'           Punctuation
' '           Text.Whitespace
'# prints 6'  Comment.Single
'\n\n'        Text.Whitespace

'# fun with class attributes' Comment.Single
'\n'          Text.Whitespace

'class'       Keyword
' '           Text.Whitespace
'Foo'         Name.Class
'\n  '        Text.Whitespace
'def'         Keyword
' '           Text.Whitespace
'self'        Name.Class
'.'           Operator
'blub'        Name.Function
' '           Text.Whitespace
'x'           Name
'\n    '      Text.Whitespace
'if'          Keyword
' '           Text.Whitespace
'not'         Operator.Word
' '           Text.Whitespace
'x'           Name
'.'           Operator
'nil?'        Name
'\n      '    Text.Whitespace
'self'        Name.Builtin
'.'           Operator
'new'         Name
'\n    '      Text.Whitespace
'end'         Keyword
'\n  '        Text.Whitespace
'end'         Keyword
'\n  '        Text.Whitespace
'def'         Keyword
' '           Text.Whitespace
'another_way_to_get_class' Name.Function
'\n    '      Text.Whitespace
'self'        Name.Builtin
'.'           Operator
'class'       Name
'\n  '        Text.Whitespace
'end'         Keyword
'\n'          Text.Whitespace

'end'         Keyword
'\n\n'        Text.Whitespace

'# ruby 1.9 "call operator"' Comment.Single
'\n'          Text.Whitespace

'a'           Name
' '           Text.Whitespace
'='           Operator
' '           Text.Whitespace
'Proc'        Name.Constant
'.'           Operator
'new'         Name
' '           Text.Whitespace
'{'           Punctuation
' '           Text.Whitespace
'42'          Literal.Number.Integer
' '           Text.Whitespace
'}'           Punctuation
'\n'          Text.Whitespace

'a'           Name
'.'           Operator
'('           Punctuation
')'           Punctuation
'\n\n'        Text.Whitespace

'"'           Literal.String.Double
'instance variables can be ' Literal.String.Double
'#@included'  Literal.String.Interpol
', '          Literal.String.Double
'#@@class_variables' Literal.String.Interpol
'\\n'         Literal.String.Escape
' and '       Literal.String.Double
'#$globals'   Literal.String.Interpol
' as well.'   Literal.String.Double
'"'           Literal.String.Double
'\n'          Text.Whitespace

'`'           Literal.String.Backtick
'instance variables can be ' Literal.String.Backtick
'#@included'  Literal.String.Interpol
', '          Literal.String.Backtick
'#@@class_variables' Literal.String.Interpol
'\\n'         Literal.String.Escape
' and '       Literal.String.Backtick
'#$globals'   Literal.String.Interpol
' as well.'   Literal.String.Backtick
'`'           Literal.String.Backtick
'\n'          Text.Whitespace

"'"           Literal.String.Single
'instance variables can be ' Literal.String.Single
'#@included'  Literal.String.Interpol
', '          Literal.String.Single
'#@@class_variables' Literal.String.Interpol
'\\n'         Literal.String.Escape
' and '       Literal.String.Single
'#$globals'   Literal.String.Interpol
' as well.'   Literal.String.Single
"'"           Literal.String.Single
'\n'          Text.Whitespace

'/'           Literal.String.Regex
'instance variables can be ' Literal.String.Regex
'#@included'  Literal.String.Interpol
', '          Literal.String.Regex
'#@@class_variables' Literal.String.Interpol
'\\'          Literal.String.Regex
'n and '      Literal.String.Regex
'#$globals'   Literal.String.Interpol
' as well.'   Literal.String.Regex
'/mousenix'   Literal.String.Regex
'\n'          Text.Whitespace

':"'          Literal.String.Symbol
'instance variables can be ' Literal.String.Symbol
'#@included'  Literal.String.Interpol
', '          Literal.String.Symbol
'#@@class_variables' Literal.String.Interpol
'\\n'         Literal.String.Escape
' and '       Literal.String.Symbol
'#$globals'   Literal.String.Interpol
' as well.'   Literal.String.Symbol
'"'           Literal.String.Symbol
'\n'          Text.Whitespace

":'instance variables can be #@included, #@@class_variables\\n and #$globals as well.'" Literal.String.Symbol
'\n'          Text.Whitespace

"%'"          Literal.String.Other
'instance variables can be ' Literal.String.Other
'#@included'  Literal.String.Interpol
', '          Literal.String.Other
'#@@class_variables' Literal.String.Interpol
'\\'          Literal.String.Other
'n and '      Literal.String.Other
'#$globals'   Literal.String.Interpol
' as well.'   Literal.String.Other
"'"           Literal.String.Other
'\n'          Text.Whitespace

"%q'instance variables can be #@included, #@@class_variables\\n and #$globals as well.'" Literal.String.Other
'\n'          Text.Whitespace

"%Q'"         Literal.String.Other
'instance variables can be ' Literal.String.Other
'#@included'  Literal.String.Interpol
', '          Literal.String.Other
'#@@class_variables' Literal.String.Interpol
'\\'          Literal.String.Other
'n and '      Literal.String.Other
'#$globals'   Literal.String.Interpol
' as well.'   Literal.String.Other
"'"           Literal.String.Other
'\n'          Text.Whitespace

"%w'instance variables can be #@included, #@@class_variables\\n and #$globals as well.'" Literal.String.Other
'\n'          Text.Whitespace

"%W'"         Literal.String.Other
'instance variables can be ' Literal.String.Other
'#@included'  Literal.String.Interpol
', '          Literal.String.Other
'#@@class_variables' Literal.String.Interpol
'\\'          Literal.String.Other
'n and '      Literal.String.Other
'#$globals'   Literal.String.Interpol
' as well.'   Literal.String.Other
"'"           Literal.String.Other
'\n'          Text.Whitespace

"%s'instance variables can be #@included, #@@class_variables\\n and #$globals as well.'" Literal.String.Other
'\n'          Text.Whitespace

"%r'"         Literal.String.Regex
'instance variables can be ' Literal.String.Regex
'#@included'  Literal.String.Interpol
', '          Literal.String.Regex
'#@@class_variables' Literal.String.Interpol
'\\'          Literal.String.Regex
'n and '      Literal.String.Regex
'#$globals'   Literal.String.Interpol
' as well.'   Literal.String.Regex
"'"           Literal.String.Regex
'\n'          Text.Whitespace

"%x'"         Literal.String.Other
'instance variables can be ' Literal.String.Other
'#@included'  Literal.String.Interpol
', '          Literal.String.Other
'#@@class_variables' Literal.String.Interpol
'\\'          Literal.String.Other
'n and '      Literal.String.Other
'#$globals'   Literal.String.Interpol
' as well.'   Literal.String.Other
"'"           Literal.String.Other
'\n\n'        Text.Whitespace

'#%W[ but #@0illegal_values look strange.]' Comment.Single
'\n\n'        Text.Whitespace

'%s#ruby allows strange#' Literal.String.Other
'{'           Punctuation
'constructs'  Name
'}'           Punctuation
'\n'          Text.Whitespace

'%s#ruby allows strange#' Literal.String.Other
'$constructs' Name.Variable.Global
'\n'          Text.Whitespace

'%s#ruby allows strange#' Literal.String.Other
'@@constructs' Name.Variable.Class
'\n\n'        Text.Whitespace

'##################################################################' Comment.Single
'\n'          Text.Whitespace

'# HEREDOCS'  Comment.Single
'\n'          Text.Whitespace

'foo'         Name
'('           Punctuation
'<<-'         Operator
''            Literal.String.Heredoc
'A'           Literal.String.Delimiter
''            Literal.String.Heredoc
','           Punctuation
' '           Text.Whitespace
'<<-'         Operator
''            Literal.String.Heredoc
'B'           Literal.String.Delimiter
''            Literal.String.Heredoc
')'           Punctuation
'\n'          Text.Whitespace

'this is the text of a\n' Literal.String.Heredoc

'A\n'         Literal.String.Delimiter

'and this is the text of b\n' Literal.String.Heredoc

'B\n'         Literal.String.Delimiter

'\n'          Text.Whitespace

'a'           Name
' '           Text.Whitespace
'='           Operator
' '           Text.Whitespace
'<<'          Operator
'"'           Literal.String.Heredoc
'EOF'         Literal.String.Delimiter
'"'           Literal.String.Heredoc
'\n'          Text.Whitespace

'This is a multiline #$here document\n' Literal.String.Heredoc

'terminated by EOF on a line by itself\n' Literal.String.Heredoc

'EOF\n'       Literal.String.Delimiter

'\n'          Text.Whitespace

'a'           Name
' '           Text.Whitespace
'='           Operator
' '           Text.Whitespace
'<<'          Operator
"'"           Literal.String.Heredoc
'EOF'         Literal.String.Delimiter
"'"           Literal.String.Heredoc
'\n'          Text.Whitespace

'This is a multiline #$here document\n' Literal.String.Heredoc

'terminated by EOF on a line by itself\n' Literal.String.Heredoc

'EOF\n'       Literal.String.Delimiter

'\n'          Text.Whitespace

'b'           Name
'='           Operator
'('           Punctuation
'p'           Name.Builtin
'['           Operator
'x'           Name
']'           Operator
' '           Text.Whitespace
'%'           Operator
'32'          Literal.Number.Integer
')'           Punctuation
'/'           Operator
'16'          Literal.Number.Integer
'<'           Operator
'1'           Literal.Number.Integer
' '           Text.Whitespace
'?'           Operator
' '           Text.Whitespace
'0'           Literal.Number.Integer
' '           Text.Whitespace
':'           Punctuation
' '           Text.Whitespace
'1'           Literal.Number.Integer
'\n\n'        Text.Whitespace

'<<'          Operator
'"'           Literal.String.Heredoc
''            Literal.String.Delimiter
'"'           Literal.String.Heredoc
'\n'          Text.Whitespace

'#{test}\n'   Literal.String.Heredoc

'#@bla\n'     Literal.String.Heredoc

'#die suppe!!!\n' Literal.String.Heredoc

'\\xfffff\n'  Literal.String.Heredoc

'\n'          Literal.String.Delimiter

'\n'          Text.Whitespace

'super'       Keyword
' '           Text.Whitespace
'<<-'         Operator
''            Literal.String.Heredoc
'EOE'         Literal.String.Delimiter
''            Literal.String.Heredoc
' '           Text.Whitespace
'%'           Operator
' '           Text.Whitespace
'['           Operator
'\n'          Text.Whitespace

'    foo\n'   Literal.String.Heredoc

'EOE\n'       Literal.String.Delimiter

'\n'          Text.Whitespace

'<<'          Operator
''            Literal.String.Heredoc
'X'           Literal.String.Delimiter
''            Literal.String.Heredoc
'\n'          Text.Whitespace

'X\n'         Literal.String.Delimiter

'X'           Name
'\n\n'        Text.Whitespace

'%s('         Literal.String.Other
'uninter'     Literal.String.Other
'\\)'         Literal.String.Other
'pre'         Literal.String.Other
'\\'          Literal.String.Other
'ted'         Literal.String.Other
')'           Literal.String.Other
'            ' Text.Whitespace
'# comment here' Comment.Single
'\n'          Text.Whitespace

'%q('         Literal.String.Other
'uninter'     Literal.String.Other
'\\)'         Literal.String.Other
'pre'         Literal.String.Other
'\\'          Literal.String.Other
'ted'         Literal.String.Other
')'           Literal.String.Other
'            ' Text.Whitespace
'# comment here' Comment.Single
'\n'          Text.Whitespace

'%Q('         Literal.String.Other
'inter'       Literal.String.Other
'\\)'         Literal.String.Other
'pre'         Literal.String.Other
'\\t'         Literal.String.Escape
'ed'          Literal.String.Other
')'           Literal.String.Other
'              ' Text.Whitespace
'# comment here' Comment.Single
'\n'          Text.Whitespace

':"'          Literal.String.Symbol
'inter'       Literal.String.Symbol
'\\'          Literal.String.Symbol
')pre'        Literal.String.Symbol
'\\t'         Literal.String.Escape
'ed'          Literal.String.Symbol
'"'           Literal.String.Symbol
'               ' Text.Whitespace
'# comment here' Comment.Single
'\n'          Text.Whitespace

":'uninter\\'pre\\ted'" Literal.String.Symbol
'             ' Text.Whitespace
'# comment here' Comment.Single
'\n\n'        Text.Whitespace

'%q['         Literal.String.Other
'haha! '      Literal.String.Other
'['           Literal.String.Other
'nesting '    Literal.String.Other
'['           Literal.String.Other
'rocks'       Literal.String.Other
']'           Literal.String.Other
' ! '         Literal.String.Other
']'           Literal.String.Other
' '           Literal.String.Other
']'           Literal.String.Other
' '           Text.Whitespace
'# commeht here' Comment.Single
'\n\n\n'      Text.Whitespace

'##################################################################' Comment.Single
'\n'          Text.Whitespace

'class'       Keyword
'                                                  ' Text.Whitespace
'NP'          Name.Class
'\n'          Text.Whitespace

'def'         Keyword
'  '          Text.Whitespace
'initialize'  Name.Function
' '           Text.Whitespace
'a'           Name
'='           Operator
'@p'          Name.Variable.Instance
'='           Operator
'['           Operator
']'           Operator
','           Punctuation
' '           Text.Whitespace
'b'           Name
'='           Operator
'@b'          Name.Variable.Instance
'='           Operator
'['           Operator
']'           Operator
';'           Punctuation
'                      ' Text.Whitespace
'end'         Keyword
'\n'          Text.Whitespace

'def'         Keyword
' '           Text.Whitespace
'+@'          Name.Function
';'           Punctuation
'@b'          Name.Variable.Instance
'<<'          Operator
'1'           Literal.Number.Integer
';'           Punctuation
'b2c'         Name
' '           Text.Whitespace
'end'         Keyword
';'           Punctuation
'def'         Keyword
'-@'          Name.Function
';'           Punctuation
'@b'          Name.Variable.Instance
'<<'          Operator
'0'           Literal.Number.Integer
';'           Punctuation
'b2c'         Name
'                   ' Text.Whitespace
'end'         Keyword
'\n'          Text.Whitespace

'def'         Keyword
'  '          Text.Whitespace
'b2c'         Name.Function
';'           Punctuation
'if'          Keyword
' '           Text.Whitespace
'@b'          Name.Variable.Instance
'.'           Operator
'size'        Name
'=='          Operator
'8'           Literal.Number.Integer
';'           Punctuation
'c'           Name
'='           Operator
'0'           Literal.Number.Integer
';'           Punctuation
'@b'          Name.Variable.Instance
'.'           Operator
'each'        Name
'{'           Punctuation
'|'           Operator
'b'           Name
'|'           Operator
'c'           Name
'<<'          Operator
'='           Operator
'1'           Literal.Number.Integer
';'           Punctuation
'c'           Name
'|='          Operator
'b'           Name
'}'           Punctuation
';'           Punctuation
'send'        Name.Builtin
'('           Punctuation
'\n     '     Text.Whitespace
"'"           Literal.String.Single
'lave'        Literal.String.Single
"'"           Literal.String.Single
'.'           Operator
'reverse'     Name
','           Punctuation
'('           Punctuation
'@p'          Name.Variable.Instance
'.'           Operator
'join'        Name
')'           Punctuation
')'           Punctuation
'if'          Keyword
' '           Text.Whitespace
'c'           Name
'=='          Operator
'0'           Literal.Number.Integer
';'           Punctuation
'@p'          Name.Variable.Instance
'<<'          Operator
' '           Text.Whitespace
'c'           Name
'.'           Operator
'chr'         Name
';'           Punctuation
'@b'          Name.Variable.Instance
'='           Operator
'['           Operator
']'           Operator
' '           Text.Whitespace
'end'         Keyword
'\n     '     Text.Whitespace
'self'        Name.Builtin
' '           Text.Whitespace
'end'         Keyword
' '           Text.Whitespace
'end'         Keyword
' '           Text.Whitespace
';'           Punctuation
' '           Text.Whitespace
'begin'       Keyword
' '           Text.Whitespace
'_'           Name
' '           Text.Whitespace
'='           Operator
' '           Text.Whitespace
'NP'          Name.Constant
'.'           Operator
'new'         Name
'                   ' Text.Whitespace
'end'         Keyword
'\n\n\n'      Text.Whitespace

'# Regexes'   Comment.Single
'\n'          Text.Whitespace

'/'           Literal.String.Regex
'\nthis is a\nmutliline\nregex\n' Literal.String.Regex

'/'           Literal.String.Regex
'\n\n'        Text.Whitespace

'this'        Name
' '           Text.Whitespace
'/'           Literal.String.Regex
'is a\nmultiline regex too' Literal.String.Regex
'/'           Literal.String.Regex
'\n\n'        Text.Whitespace

'also'        Name
' '           Text.Whitespace
'/'           Literal.String.Regex
'4\nis one'   Literal.String.Regex
'/'           Literal.String.Regex
'\n\n'        Text.Whitespace

'this'        Name
'('           Punctuation
'/'           Literal.String.Regex
'\ntoo\n'     Literal.String.Regex

'/'           Literal.String.Regex
')'           Punctuation
'\n\n'        Text.Whitespace

'# this not'  Comment.Single
'\n'          Text.Whitespace

'2'           Literal.Number.Integer
' '           Text.Whitespace
'/'           Operator
'4'           Literal.Number.Integer
'\n'          Text.Whitespace

'asfsadf'     Name
'/'           Operator
'\n\n\n'      Text.Whitespace

'#from: http://coderay.rubychan.de/rays/show/383' Comment.Single
'\n'          Text.Whitespace

'class'       Keyword
' '           Text.Whitespace
'Object'      Name.Class
'\n  '        Text.Whitespace
'alias'       Keyword
'  '          Text.Whitespace
':xeq'        Literal.String.Symbol
' '           Text.Whitespace
':`'          Literal.String.Symbol
'\n  '        Text.Whitespace
'def'         Keyword
' '           Text.Whitespace
'`'           Name.Function
'('           Punctuation
'cmd'         Name
','           Punctuation
' '           Text.Whitespace
'p2'          Name
')'           Punctuation
'\n    '      Text.Whitespace
'self'        Name.Builtin
'.'           Operator
'method'      Name
'('           Punctuation
'cmd'         Name
'.'           Operator
'to_sym'      Name
')'           Punctuation
'.'           Operator
'call'        Name
'('           Punctuation
'p2'          Name
')'           Punctuation
'\n  '        Text.Whitespace
'end'         Keyword
'\n'          Text.Whitespace

'end'         Keyword
'\n'          Text.Whitespace

'p'           Name.Builtin
' '           Text.Whitespace
'['           Operator
'1'           Literal.Number.Integer
','           Punctuation
'2'           Literal.Number.Integer
','           Punctuation
'3'           Literal.Number.Integer
']'           Operator
'.'           Operator
'`'           Name.Operator
'('           Punctuation
"'"           Literal.String.Single
'concat'      Literal.String.Single
"'"           Literal.String.Single
','           Punctuation
' '           Text.Whitespace
'['           Operator
'4'           Literal.Number.Integer
','           Punctuation
'5'           Literal.Number.Integer
','           Punctuation
'6'           Literal.Number.Integer
']'           Operator
')'           Punctuation
' '           Text.Whitespace
'# => [1, 2, 3, 4, 5, 6]' Comment.Single
'\n'          Text.Whitespace

'p'           Name.Builtin
' '           Text.Whitespace
'['           Operator
'1'           Literal.Number.Integer
','           Punctuation
'2'           Literal.Number.Integer
','           Punctuation
'3'           Literal.Number.Integer
']'           Operator
'.'           Operator
'`'           Name.Operator
'('           Punctuation
':concat'     Literal.String.Symbol
','           Punctuation
' '           Text.Whitespace
'['           Operator
'4'           Literal.Number.Integer
','           Punctuation
'5'           Literal.Number.Integer
','           Punctuation
'6'           Literal.Number.Integer
']'           Operator
')'           Punctuation
' '           Text.Whitespace
'# => [1, 2, 3, 4, 5, 6]' Comment.Single
'\n'          Text.Whitespace

'p'           Name.Builtin
' '           Text.Whitespace
'"'           Literal.String.Double
'Hurra! '     Literal.String.Double
'"'           Literal.String.Double
'.'           Operator
'`'           Name.Operator
'('           Punctuation
':*'          Literal.String.Symbol
','           Punctuation
' '           Text.Whitespace
'3'           Literal.Number.Integer
')'           Punctuation
' '           Text.Whitespace
'# => "Hurra! Hurra! Hurra! "' Comment.Single
'\n'          Text.Whitespace

'p'           Name.Builtin
' '           Text.Whitespace
'"'           Literal.String.Double
'Hurra! '     Literal.String.Double
'"'           Literal.String.Double
'.'           Operator
'`'           Name.Operator
'('           Punctuation
"'"           Literal.String.Single
'*'           Literal.String.Single
"'"           Literal.String.Single
','           Punctuation
' '           Text.Whitespace
'3'           Literal.Number.Integer
')'           Punctuation
' '           Text.Whitespace
'# => "Hurra! Hurra! Hurra! "' Comment.Single
'\n'          Text.Whitespace

'# Leider geht nicht die Wunschform' Comment.Single
'\n'          Text.Whitespace

'# [1,2,3] `concat` [4,5,6]' Comment.Single
'\n\n'        Text.Whitespace

'class'       Keyword
' '           Text.Whitespace
'Object'      Name.Class
'\n  '        Text.Whitespace
'@@infixops'  Name.Variable.Class
' '           Text.Whitespace
'='           Operator
' '           Text.Whitespace
'['           Operator
']'           Operator
'\n  '        Text.Whitespace
'alias'       Keyword
' '           Text.Whitespace
':xeq'        Literal.String.Symbol
' '           Text.Whitespace
':`'          Literal.String.Symbol
'\n  '        Text.Whitespace
'def'         Keyword
' '           Text.Whitespace
'addinfix'    Name.Function
'('           Punctuation
'operator'    Name
')'           Punctuation
'\n    '      Text.Whitespace
'@@infixops'  Name.Variable.Class
' '           Text.Whitespace
'<<'          Operator
' '           Text.Whitespace
'operator'    Name
'\n  '        Text.Whitespace
'end'         Keyword
'\n  '        Text.Whitespace
'def'         Keyword
' '           Text.Whitespace
'`'           Name.Function
'('           Punctuation
'expression'  Name
')'           Punctuation
'\n    '      Text.Whitespace
'@@infixops'  Name.Variable.Class
'.'           Operator
'each'        Name
'{'           Punctuation
'|'           Operator
'op'          Name
'|'           Operator
'break'       Keyword
' '           Text.Whitespace
'if'          Keyword
' '           Text.Whitespace
'expression'  Name
'.'           Operator
'match'       Name
'('           Punctuation
'/'           Literal.String.Regex
'^(.*?) ('    Literal.String.Regex
'#{'          Literal.String.Interpol
'op'          Name
'}'           Literal.String.Interpol
') (.*)$'     Literal.String.Regex
'/'           Literal.String.Regex
')'           Punctuation
'}'           Punctuation
'\n    '      Text.Whitespace
'raise'       Keyword
' '           Text.Whitespace
'"'           Literal.String.Double
'unknown infix operator in expression: ' Literal.String.Double
'#{'          Literal.String.Interpol
'expression'  Name
'}'           Literal.String.Interpol
'"'           Literal.String.Double
' '           Text.Whitespace
'if'          Keyword
' '           Text.Whitespace
'$2'          Name.Variable.Global
' '           Text.Whitespace
'=='          Operator
' '           Text.Whitespace
'nil'         Keyword.Pseudo
'\n    '      Text.Whitespace
'eval'        Name.Builtin
'('           Punctuation
'$1'          Name.Variable.Global
')'           Punctuation
'.'           Operator
'method'      Name
'('           Punctuation
'$2'          Name.Variable.Global
'.'           Operator
'to_sym'      Name
')'           Punctuation
'.'           Operator
'call'        Name
'('           Punctuation
'eval'        Name.Builtin
'('           Punctuation
'$3'          Name.Variable.Global
')'           Punctuation
')'           Punctuation
'\n  '        Text.Whitespace
'end'         Keyword
'\n'          Text.Whitespace

'end'         Keyword
'\n'          Text.Whitespace

'addinfix'    Name
'('           Punctuation
'"'           Literal.String.Double
'concat'      Literal.String.Double
'"'           Literal.String.Double
')'           Punctuation
'\n'          Text.Whitespace

'p'           Name.Builtin
' '           Text.Whitespace
'`'           Literal.String.Backtick
'[1,2,3] concat [4,5,6]' Literal.String.Backtick
'`'           Literal.String.Backtick
' '           Text.Whitespace
'# => [1, 2, 3, 4, 5, 6]' Comment.Single
'\n\n\n'      Text.Whitespace

'# HEREDOC FUN!!!!!!!1111' Comment.Single
'\n'          Text.Whitespace

'foo'         Name
'('           Punctuation
'<<'          Operator
''            Literal.String.Heredoc
'A'           Literal.String.Delimiter
''            Literal.String.Heredoc
','           Punctuation
' '           Text.Whitespace
'<<-'         Operator
''            Literal.String.Heredoc
'B'           Literal.String.Delimiter
''            Literal.String.Heredoc
','           Punctuation
' '           Text.Whitespace
'<<'          Operator
''            Literal.String.Heredoc
'C'           Literal.String.Delimiter
''            Literal.String.Heredoc
')'           Punctuation
'\n'          Text.Whitespace

'this is the text of a\n' Literal.String.Heredoc

'   A!!!!\n'  Literal.String.Heredoc

'A\n'         Literal.String.Delimiter

'and this is text of B!!!!!!111\n' Literal.String.Heredoc

'   B\n'      Literal.String.Delimiter

'and here some C\n' Literal.String.Heredoc

'C\n'         Literal.String.Delimiter
