rouge 3.2.1 → 3.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (195) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +2 -0
  3. data/bin/rougify +1 -0
  4. data/lib/rouge.rb +1 -0
  5. data/lib/rouge/cli.rb +2 -1
  6. data/lib/rouge/demos/jsp +29 -0
  7. data/lib/rouge/demos/m68k +16 -0
  8. data/lib/rouge/demos/mathematica +8 -0
  9. data/lib/rouge/demos/sqf +14 -0
  10. data/lib/rouge/formatter.rb +2 -1
  11. data/lib/rouge/formatters/html.rb +1 -0
  12. data/lib/rouge/formatters/html_inline.rb +1 -0
  13. data/lib/rouge/formatters/html_legacy.rb +1 -0
  14. data/lib/rouge/formatters/html_linewise.rb +1 -0
  15. data/lib/rouge/formatters/html_pygments.rb +2 -0
  16. data/lib/rouge/formatters/html_table.rb +2 -1
  17. data/lib/rouge/formatters/null.rb +1 -0
  18. data/lib/rouge/formatters/terminal256.rb +1 -0
  19. data/lib/rouge/guesser.rb +2 -0
  20. data/lib/rouge/guessers/disambiguation.rb +5 -0
  21. data/lib/rouge/guessers/filename.rb +2 -0
  22. data/lib/rouge/guessers/glob_mapping.rb +2 -0
  23. data/lib/rouge/guessers/mimetype.rb +2 -0
  24. data/lib/rouge/guessers/modeline.rb +2 -0
  25. data/lib/rouge/guessers/source.rb +2 -0
  26. data/lib/rouge/guessers/util.rb +2 -0
  27. data/lib/rouge/lexer.rb +1 -0
  28. data/lib/rouge/lexers/abap.rb +2 -0
  29. data/lib/rouge/lexers/actionscript.rb +1 -0
  30. data/lib/rouge/lexers/apache.rb +2 -0
  31. data/lib/rouge/lexers/apiblueprint.rb +2 -0
  32. data/lib/rouge/lexers/apple_script.rb +2 -0
  33. data/lib/rouge/lexers/awk.rb +1 -0
  34. data/lib/rouge/lexers/biml.rb +2 -0
  35. data/lib/rouge/lexers/bsl.rb +1 -0
  36. data/lib/rouge/lexers/c.rb +1 -0
  37. data/lib/rouge/lexers/ceylon.rb +1 -0
  38. data/lib/rouge/lexers/cfscript.rb +1 -0
  39. data/lib/rouge/lexers/clojure.rb +1 -0
  40. data/lib/rouge/lexers/cmake.rb +1 -0
  41. data/lib/rouge/lexers/coffeescript.rb +1 -0
  42. data/lib/rouge/lexers/common_lisp.rb +1 -0
  43. data/lib/rouge/lexers/conf.rb +1 -0
  44. data/lib/rouge/lexers/console.rb +1 -0
  45. data/lib/rouge/lexers/coq.rb +1 -0
  46. data/lib/rouge/lexers/cpp.rb +1 -0
  47. data/lib/rouge/lexers/crystal.rb +1 -0
  48. data/lib/rouge/lexers/csharp.rb +1 -0
  49. data/lib/rouge/lexers/css.rb +1 -0
  50. data/lib/rouge/lexers/d.rb +1 -0
  51. data/lib/rouge/lexers/dart.rb +1 -0
  52. data/lib/rouge/lexers/diff.rb +2 -0
  53. data/lib/rouge/lexers/digdag.rb +2 -0
  54. data/lib/rouge/lexers/docker.rb +1 -0
  55. data/lib/rouge/lexers/dot.rb +1 -0
  56. data/lib/rouge/lexers/eiffel.rb +1 -0
  57. data/lib/rouge/lexers/elixir.rb +2 -1
  58. data/lib/rouge/lexers/elm.rb +1 -0
  59. data/lib/rouge/lexers/erb.rb +1 -0
  60. data/lib/rouge/lexers/erlang.rb +1 -0
  61. data/lib/rouge/lexers/factor.rb +1 -0
  62. data/lib/rouge/lexers/fortran.rb +2 -0
  63. data/lib/rouge/lexers/fsharp.rb +2 -1
  64. data/lib/rouge/lexers/gherkin.rb +1 -0
  65. data/lib/rouge/lexers/gherkin/keywords.rb +2 -0
  66. data/lib/rouge/lexers/glsl.rb +1 -0
  67. data/lib/rouge/lexers/go.rb +1 -0
  68. data/lib/rouge/lexers/gradle.rb +1 -0
  69. data/lib/rouge/lexers/graphql.rb +1 -0
  70. data/lib/rouge/lexers/groovy.rb +1 -0
  71. data/lib/rouge/lexers/hack.rb +1 -0
  72. data/lib/rouge/lexers/haml.rb +1 -0
  73. data/lib/rouge/lexers/handlebars.rb +1 -0
  74. data/lib/rouge/lexers/haskell.rb +1 -0
  75. data/lib/rouge/lexers/hcl.rb +1 -0
  76. data/lib/rouge/lexers/html.rb +1 -0
  77. data/lib/rouge/lexers/http.rb +1 -0
  78. data/lib/rouge/lexers/hylang.rb +1 -0
  79. data/lib/rouge/lexers/idlang.rb +2 -0
  80. data/lib/rouge/lexers/igorpro.rb +1 -0
  81. data/lib/rouge/lexers/ini.rb +1 -0
  82. data/lib/rouge/lexers/io.rb +1 -0
  83. data/lib/rouge/lexers/irb.rb +1 -0
  84. data/lib/rouge/lexers/java.rb +1 -0
  85. data/lib/rouge/lexers/javascript.rb +1 -0
  86. data/lib/rouge/lexers/jinja.rb +1 -0
  87. data/lib/rouge/lexers/json.rb +1 -0
  88. data/lib/rouge/lexers/json_doc.rb +1 -0
  89. data/lib/rouge/lexers/jsonnet.rb +1 -0
  90. data/lib/rouge/lexers/jsp.rb +120 -0
  91. data/lib/rouge/lexers/jsx.rb +2 -0
  92. data/lib/rouge/lexers/julia.rb +1 -0
  93. data/lib/rouge/lexers/kotlin.rb +64 -16
  94. data/lib/rouge/lexers/lasso.rb +1 -0
  95. data/lib/rouge/lexers/liquid.rb +1 -0
  96. data/lib/rouge/lexers/literate_coffeescript.rb +1 -0
  97. data/lib/rouge/lexers/literate_haskell.rb +1 -0
  98. data/lib/rouge/lexers/llvm.rb +1 -0
  99. data/lib/rouge/lexers/lua.rb +1 -0
  100. data/lib/rouge/lexers/lua/builtins.rb +2 -0
  101. data/lib/rouge/lexers/m68k.rb +144 -0
  102. data/lib/rouge/lexers/make.rb +1 -0
  103. data/lib/rouge/lexers/markdown.rb +1 -0
  104. data/lib/rouge/lexers/mathematica.rb +96 -0
  105. data/lib/rouge/lexers/mathematica/builtins.rb +13 -0
  106. data/lib/rouge/lexers/matlab.rb +1 -0
  107. data/lib/rouge/lexers/matlab/builtins.rb +2 -0
  108. data/lib/rouge/lexers/moonscript.rb +1 -0
  109. data/lib/rouge/lexers/mosel.rb +1 -0
  110. data/lib/rouge/lexers/mxml.rb +1 -0
  111. data/lib/rouge/lexers/nasm.rb +1 -0
  112. data/lib/rouge/lexers/nginx.rb +1 -0
  113. data/lib/rouge/lexers/nim.rb +1 -0
  114. data/lib/rouge/lexers/nix.rb +1 -0
  115. data/lib/rouge/lexers/objective_c.rb +2 -1
  116. data/lib/rouge/lexers/ocaml.rb +1 -0
  117. data/lib/rouge/lexers/pascal.rb +1 -0
  118. data/lib/rouge/lexers/perl.rb +1 -0
  119. data/lib/rouge/lexers/php.rb +1 -0
  120. data/lib/rouge/lexers/php/builtins.rb +2 -0
  121. data/lib/rouge/lexers/plain_text.rb +1 -0
  122. data/lib/rouge/lexers/plist.rb +2 -0
  123. data/lib/rouge/lexers/pony.rb +1 -0
  124. data/lib/rouge/lexers/powershell.rb +1 -0
  125. data/lib/rouge/lexers/praat.rb +1 -0
  126. data/lib/rouge/lexers/prolog.rb +2 -0
  127. data/lib/rouge/lexers/prometheus.rb +2 -0
  128. data/lib/rouge/lexers/properties.rb +1 -0
  129. data/lib/rouge/lexers/protobuf.rb +1 -0
  130. data/lib/rouge/lexers/puppet.rb +2 -1
  131. data/lib/rouge/lexers/python.rb +35 -20
  132. data/lib/rouge/lexers/q.rb +2 -0
  133. data/lib/rouge/lexers/qml.rb +1 -0
  134. data/lib/rouge/lexers/r.rb +1 -0
  135. data/lib/rouge/lexers/racket.rb +2 -0
  136. data/lib/rouge/lexers/ruby.rb +3 -1
  137. data/lib/rouge/lexers/rust.rb +7 -1
  138. data/lib/rouge/lexers/sass.rb +1 -0
  139. data/lib/rouge/lexers/sass/common.rb +1 -0
  140. data/lib/rouge/lexers/scala.rb +1 -0
  141. data/lib/rouge/lexers/scheme.rb +1 -0
  142. data/lib/rouge/lexers/scss.rb +1 -0
  143. data/lib/rouge/lexers/sed.rb +1 -0
  144. data/lib/rouge/lexers/shell.rb +1 -0
  145. data/lib/rouge/lexers/sieve.rb +1 -0
  146. data/lib/rouge/lexers/slim.rb +1 -0
  147. data/lib/rouge/lexers/smalltalk.rb +1 -0
  148. data/lib/rouge/lexers/smarty.rb +1 -0
  149. data/lib/rouge/lexers/sml.rb +1 -0
  150. data/lib/rouge/lexers/sqf.rb +109 -0
  151. data/lib/rouge/lexers/sqf/commands.rb +15 -0
  152. data/lib/rouge/lexers/sql.rb +1 -0
  153. data/lib/rouge/lexers/swift.rb +2 -1
  154. data/lib/rouge/lexers/tap.rb +2 -0
  155. data/lib/rouge/lexers/tcl.rb +1 -0
  156. data/lib/rouge/lexers/terraform.rb +1 -0
  157. data/lib/rouge/lexers/tex.rb +1 -0
  158. data/lib/rouge/lexers/toml.rb +1 -0
  159. data/lib/rouge/lexers/tsx.rb +1 -0
  160. data/lib/rouge/lexers/tulip.rb +2 -0
  161. data/lib/rouge/lexers/turtle.rb +1 -0
  162. data/lib/rouge/lexers/twig.rb +1 -0
  163. data/lib/rouge/lexers/typescript.rb +1 -0
  164. data/lib/rouge/lexers/typescript/common.rb +1 -0
  165. data/lib/rouge/lexers/vala.rb +1 -0
  166. data/lib/rouge/lexers/vb.rb +1 -0
  167. data/lib/rouge/lexers/verilog.rb +1 -0
  168. data/lib/rouge/lexers/vhdl.rb +1 -0
  169. data/lib/rouge/lexers/viml.rb +1 -0
  170. data/lib/rouge/lexers/viml/keywords.rb +2 -0
  171. data/lib/rouge/lexers/vue.rb +2 -0
  172. data/lib/rouge/lexers/wollok.rb +1 -0
  173. data/lib/rouge/lexers/xml.rb +1 -0
  174. data/lib/rouge/lexers/yaml.rb +1 -0
  175. data/lib/rouge/plugins/redcarpet.rb +1 -0
  176. data/lib/rouge/regex_lexer.rb +1 -0
  177. data/lib/rouge/template_lexer.rb +1 -0
  178. data/lib/rouge/text_analyzer.rb +1 -0
  179. data/lib/rouge/theme.rb +1 -0
  180. data/lib/rouge/themes/base16.rb +1 -0
  181. data/lib/rouge/themes/colorful.rb +1 -0
  182. data/lib/rouge/themes/github.rb +1 -0
  183. data/lib/rouge/themes/gruvbox.rb +1 -0
  184. data/lib/rouge/themes/igor_pro.rb +1 -0
  185. data/lib/rouge/themes/molokai.rb +1 -0
  186. data/lib/rouge/themes/monokai.rb +1 -0
  187. data/lib/rouge/themes/monokai_sublime.rb +2 -0
  188. data/lib/rouge/themes/pastie.rb +1 -0
  189. data/lib/rouge/themes/thankful_eyes.rb +1 -0
  190. data/lib/rouge/themes/tulip.rb +1 -0
  191. data/lib/rouge/token.rb +1 -0
  192. data/lib/rouge/util.rb +1 -0
  193. data/lib/rouge/version.rb +2 -1
  194. data/rouge.gemspec +2 -0
  195. metadata +13 -3
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
2
3
 
3
4
  module Rouge
4
5
  module Lexers
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
2
3
 
3
4
  module Rouge
4
5
  module Lexers
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
2
3
 
3
4
  module Rouge
4
5
  module Lexers
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
2
3
 
3
4
  module Rouge
4
5
  module Lexers
@@ -13,6 +14,7 @@ module Rouge
13
14
  state :basic do
14
15
  rule /\s+/, Text
15
16
  rule /^#.*/, Comment::Single
17
+ rule /%.*/, Comment::Single
16
18
  rule /\/\*/, Comment::Multiline, :nested_comment
17
19
 
18
20
  rule /[\[\](){}|.,;!]/, Punctuation
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Rouge
2
4
  module Lexers
3
5
  class Prometheus < RegexLexer
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
2
3
 
3
4
  module Rouge
4
5
  module Lexers
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
2
3
 
3
4
  module Rouge
4
5
  module Lexers
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
2
3
 
3
4
  module Rouge
4
5
  module Lexers
@@ -67,7 +68,7 @@ module Rouge
67
68
  rule /(in|and|or)\b/, Operator::Word
68
69
  rule /[=!<>]=/, Operator
69
70
  rule /[=!]~/, Operator, :regex_allowed
70
- rule %r([<>!+*/-]), Operator
71
+ rule %r([=<>!+*/-]), Operator
71
72
 
72
73
  rule /(class|include)(\s*)(#{qualname})/ do
73
74
  groups Keyword, Text, Name::Class
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
2
3
 
3
4
  module Rouge
4
5
  module Lexers
@@ -19,18 +20,18 @@ module Rouge
19
20
  assert break continue del elif else except exec
20
21
  finally for global if lambda pass print raise
21
22
  return try while yield as with from import yield
22
- async await
23
+ async await nonlocal
23
24
  )
24
25
  end
25
26
 
26
27
  def self.builtins
27
28
  @builtins ||= %w(
28
- __import__ abs all any apply basestring bin bool buffer
29
+ __import__ abs all any apply ascii basestring bin bool buffer
29
30
  bytearray bytes callable chr classmethod cmp coerce compile
30
31
  complex delattr dict dir divmod enumerate eval execfile exit
31
- file filter float frozenset getattr globals hasattr hash hex id
32
+ file filter float format frozenset getattr globals hasattr hash hex id
32
33
  input int intern isinstance issubclass iter len list locals
33
- long map max min next object oct open ord pow property range
34
+ long map max memoryview min next object oct open ord pow property range
34
35
  raw_input reduce reload repr reversed round set setattr slice
35
36
  sorted staticmethod str sum super tuple type unichr unicode
36
37
  vars xrange zip
@@ -44,15 +45,21 @@ module Rouge
44
45
  def self.exceptions
45
46
  @exceptions ||= %w(
46
47
  ArithmeticError AssertionError AttributeError
47
- BaseException DeprecationWarning EOFError EnvironmentError
48
- Exception FloatingPointError FutureWarning GeneratorExit IOError
49
- ImportError ImportWarning IndentationError IndexError KeyError
50
- KeyboardInterrupt LookupError MemoryError NameError
51
- NotImplemented NotImplementedError OSError OverflowError
52
- OverflowWarning PendingDeprecationWarning ReferenceError
53
- RuntimeError RuntimeWarning StandardError StopIteration
54
- SyntaxError SyntaxWarning SystemError SystemExit TabError
55
- TypeError UnboundLocalError UnicodeDecodeError
48
+ BaseException BlockingIOError BrokenPipeError BufferError
49
+ BytesWarning ChildProcessError ConnectionAbortedError
50
+ ConnectionError ConnectionRefusedError ConnectionResetError
51
+ DeprecationWarning EOFError EnvironmentError
52
+ Exception FileExistsError FileNotFoundError
53
+ FloatingPointError FutureWarning GeneratorExit IOError
54
+ ImportError ImportWarning IndentationError IndexError
55
+ InterruptedError IsADirectoryError KeyError KeyboardInterrupt
56
+ LookupError MemoryError ModuleNotFoundError NameError
57
+ NotADirectoryError NotImplemented NotImplementedError OSError
58
+ OverflowError OverflowWarning PendingDeprecationWarning
59
+ ProcessLookupError RecursionError ReferenceError ResourceWarning
60
+ RuntimeError RuntimeWarning StandardError StopAsyncIteration
61
+ StopIteration SyntaxError SyntaxWarning SystemError SystemExit
62
+ TabError TimeoutError TypeError UnboundLocalError UnicodeDecodeError
56
63
  UnicodeEncodeError UnicodeError UnicodeTranslateError
57
64
  UnicodeWarning UserWarning ValueError VMSError Warning
58
65
  WindowsError ZeroDivisionError
@@ -68,13 +75,15 @@ module Rouge
68
75
  end
69
76
 
70
77
  rule /[^\S\n]+/, Text
71
- rule /#.*$/, Comment
78
+ rule %r(#(.*)?\n?), Comment::Single
72
79
  rule /[\[\]{}:(),;]/, Punctuation
73
80
  rule /\\\n/, Text
74
81
  rule /\\/, Text
75
82
 
76
83
  rule /(in|is|and|or|not)\b/, Operator::Word
77
- rule /!=|==|<<|>>|[-~+\/*%=<>&^|.]/, Operator
84
+ rule /(<<|>>|\/\/|\*\*)=?/, Operator
85
+ rule /[-~+\/*%=<>&^|@]=?|!=/, Operator
86
+ rule /\.(?![0-9])/, Operator # so it doesn't match float literals
78
87
 
79
88
  rule /(from)((?:\\\s|\s)+)(#{dotted_identifier})((?:\\\s|\s)+)(import)/ do
80
89
  groups Keyword::Namespace,
@@ -128,12 +137,18 @@ module Rouge
128
137
 
129
138
  rule identifier, Name
130
139
 
131
- rule /(\d+\.\d*|\d*\.\d+)(e[+-]?[0-9]+)?/i, Num::Float
132
- rule /\d+e[+-]?[0-9]+/i, Num::Float
133
- rule /0[0-7]+/, Num::Oct
134
- rule /0x[a-f0-9]+/i, Num::Hex
140
+ digits = /[0-9](_?[0-9])*/
141
+ decimal = /((#{digits})?\.#{digits}|#{digits}\.)/
142
+ exponent = /e[+-]?#{digits}/i
143
+ rule /#{decimal}(#{exponent})?j?/i, Num::Float
144
+ rule /#{digits}#{exponent}j?/i, Num::Float
145
+ rule /#{digits}j/i, Num::Float
146
+
147
+ rule /0b(_?[0-1])+/i, Num::Bin
148
+ rule /0o(_?[0-7])+/i, Num::Oct
149
+ rule /0x(_?[a-f0-9])+/i, Num::Hex
135
150
  rule /\d+L/, Num::Integer::Long
136
- rule /\d+/, Num::Integer
151
+ rule /([1-9](_?[0-9])*|0(_?0)*)/, Num::Integer
137
152
  end
138
153
 
139
154
  state :funcname do
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Rouge
2
4
  module Lexers
3
5
  class Q < RegexLexer
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
2
3
 
3
4
  module Rouge
4
5
  module Lexers
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
2
3
 
3
4
  module Rouge
4
5
  module Lexers
@@ -1,4 +1,6 @@
1
1
  # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
3
+
2
4
  module Rouge
3
5
  module Lexers
4
6
  class Racket < RegexLexer
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
2
3
 
3
4
  module Rouge
4
5
  module Lexers
@@ -9,7 +10,8 @@ module Rouge
9
10
  aliases 'rb'
10
11
  filenames '*.rb', '*.ruby', '*.rbw', '*.rake', '*.gemspec', '*.podspec',
11
12
  'Rakefile', 'Guardfile', 'Gemfile', 'Capfile', 'Podfile',
12
- 'Vagrantfile', '*.ru', '*.prawn', 'Berksfile', '*.arb'
13
+ 'Vagrantfile', '*.ru', '*.prawn', 'Berksfile', '*.arb',
14
+ 'Dangerfile'
13
15
 
14
16
  mimetypes 'text/x-ruby', 'application/x-ruby'
15
17
 
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
2
3
 
3
4
  module Rouge
4
5
  module Lexers
@@ -6,7 +7,12 @@ module Rouge
6
7
  title "Rust"
7
8
  desc 'The Rust programming language (rust-lang.org)'
8
9
  tag 'rust'
9
- aliases 'rs'
10
+ aliases 'rs',
11
+ # So that directives from https://github.com/budziq/rust-skeptic
12
+ # do not prevent highlighting.
13
+ 'rust,no_run', 'rs,no_run',
14
+ 'rust,ignore', 'rs,ignore',
15
+ 'rust,should_panic', 'rs,should_panic'
10
16
  filenames '*.rs'
11
17
  mimetypes 'text/x-rust'
12
18
 
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
2
3
 
3
4
  module Rouge
4
5
  module Lexers
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
2
3
 
3
4
  module Rouge
4
5
  module Lexers
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 #
2
+ # frozen_string_literal: true
2
3
 
3
4
  module Rouge
4
5
  module Lexers
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
2
3
 
3
4
  module Rouge
4
5
  module Lexers
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
2
3
 
3
4
  module Rouge
4
5
  module Lexers
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
2
3
 
3
4
  module Rouge
4
5
  module Lexers
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
2
3
 
3
4
  module Rouge
4
5
  module Lexers
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
2
3
 
3
4
  module Rouge
4
5
  module Lexers
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
2
3
 
3
4
  module Rouge
4
5
  module Lexers
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
2
3
 
3
4
  module Rouge
4
5
  module Lexers
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
2
3
 
3
4
  module Rouge
4
5
  module Lexers
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
2
3
 
3
4
  module Rouge
4
5
  module Lexers
@@ -0,0 +1,109 @@
1
+ # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
3
+
4
+ module Rouge
5
+ module Lexers
6
+ class SQF < RegexLexer
7
+ tag "sqf"
8
+ filenames "*.sqf"
9
+
10
+ title "SQF"
11
+ desc "Status Quo Function, a Real Virtuality engine scripting language"
12
+
13
+ def self.wordoperators
14
+ @wordoperators ||= Set.new %w(
15
+ and or not
16
+ )
17
+ end
18
+
19
+ def self.initializers
20
+ @initializers ||= Set.new %w(
21
+ private param params
22
+ )
23
+ end
24
+
25
+ def self.controlflow
26
+ @controlflow ||= Set.new %w(
27
+ if then else exitwith switch do case default while for from to step
28
+ foreach
29
+ )
30
+ end
31
+
32
+ def self.constants
33
+ @constants ||= Set.new %w(
34
+ true false player confignull controlnull displaynull grpnull
35
+ locationnull netobjnull objnull scriptnull tasknull teammembernull
36
+ )
37
+ end
38
+
39
+ def self.namespaces
40
+ @namespaces ||= Set.new %w(
41
+ currentnamespace missionnamespace parsingnamespace profilenamespace
42
+ uinamespace
43
+ )
44
+ end
45
+
46
+ def self.diag_commands
47
+ @diag_commands ||= Set.new %w(
48
+ diag_activemissionfsms diag_activesqfscripts diag_activesqsscripts
49
+ diag_activescripts diag_captureframe diag_captureframetofile
50
+ diag_captureslowframe diag_codeperformance diag_drawmode diag_enable
51
+ diag_enabled diag_fps diag_fpsmin diag_frameno diag_lightnewload
52
+ diag_list diag_log diag_logslowframe diag_mergeconfigfile
53
+ diag_recordturretlimits diag_setlightnew diag_ticktime diag_toggle
54
+ )
55
+ end
56
+
57
+ def self.commands
58
+ load Pathname.new(__FILE__).dirname.join("sqf/commands.rb")
59
+ @commands = self.commands
60
+ end
61
+
62
+ state :root do
63
+ # Whitespace
64
+ rule %r"\s+", Text
65
+
66
+ # Preprocessor instructions
67
+ rule %r"/\*.*?\*/"m, Comment::Multiline
68
+ rule %r"//.*\n", Comment::Single
69
+ rule %r"#(define|undef|if(n)?def|else|endif|include)", Comment::Preproc
70
+ rule %r"\\\r?\n", Comment::Preproc
71
+ rule %r"__(EVAL|EXEC|LINE__|FILE__)", Name::Builtin
72
+
73
+ # Literals
74
+ rule %r"\".*?\"", Literal::String
75
+ rule %r"'.*?'", Literal::String
76
+ rule %r"(\$|0x)[0-9a-fA-F]+", Literal::Number::Hex
77
+ rule %r"[0-9]+(\.)?(e[0-9]+)?", Literal::Number::Float
78
+
79
+ # Symbols
80
+ rule %r"[\!\%\&\*\+\-\/\<\=\>\^\|\#]", Operator
81
+ rule %r"[\(\)\{\}\[\]\,\:\;]", Punctuation
82
+
83
+ # Identifiers (variables and functions)
84
+ rule %r"[a-zA-Z0-9_]+" do |m|
85
+ name = m[0].downcase
86
+ if self.class.wordoperators.include? name
87
+ token Operator::Word
88
+ elsif self.class.initializers.include? name
89
+ token Keyword::Declaration
90
+ elsif self.class.controlflow.include? name
91
+ token Keyword::Reserved
92
+ elsif self.class.constants.include? name
93
+ token Keyword::Constant
94
+ elsif self.class.namespaces.include? name
95
+ token Keyword::Namespace
96
+ elsif self.class.diag_commands.include? name
97
+ token Name::Function
98
+ elsif self.class.commands.include? name
99
+ token Name::Function
100
+ elsif %r"_.+" =~ name
101
+ token Name::Variable
102
+ else
103
+ token Name::Variable::Global
104
+ end
105
+ end
106
+ end
107
+ end
108
+ end
109
+ end
@@ -0,0 +1,15 @@
1
+ # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
3
+
4
+ # automatically generated by `rake builtins:sqf`
5
+ module Rouge
6
+ module Lexers
7
+ class SQF < RegexLexer
8
+ def self.commands
9
+ @commands = Set.new %w(
10
+ abs acos actionids actionkeys actionkeysimages actionkeysnames actionkeysnamesarray actionname activateaddons activatekey add3denconnection add3deneventhandler addcamshake addforcegeneratorrtd additempool addmagazinepool addmissioneventhandler addmusiceventhandler addswitchableunit addtoremainscollector addweaponpool admin agent agltoasl aimpos airdensityrtd airplanethrottle airportside aisfinishheal alive allcontrols allmissionobjects allsimpleobjects allturrets allturrets allvariables allvariables allvariables allvariables allvariables allvariables allvariables animationnames animationstate asin asltoagl asltoatl assert assignedcargo assignedcommander assigneddriver assignedgunner assigneditems assignedtarget assignedteam assignedvehicle assignedvehiclerole atan atg atltoasl attachedobject attachedobjects attachedto attackenabled backpack backpackcargo backpackcontainer backpackitems backpackmagazines behaviour binocular boundingbox boundingboxreal boundingcenter breakout breakto buldozer_enableroaddiag buldozer_loadnewroads buttonaction buttonaction buttonsetaction call camcommitted camdestroy cameraeffectenablehud camerainterest campreloaded camtarget camusenvg cancelsimpletaskdestination canfire canmove canstand cantriggerdynamicsimulation canunloadincombat captive captivenum case cbchecked ceil channelenabled checkaifeature classname clear3deninventory clearallitemsfrombackpack clearbackpackcargo clearbackpackcargoglobal cleargroupicons clearitemcargo clearitemcargoglobal clearmagazinecargo clearmagazinecargoglobal clearoverlay clearweaponcargo clearweaponcargoglobal closedialog closeoverlay collapseobjecttree collect3denhistory collectivertd combatmode commander commandgetout commandstop comment commitoverlay compile compilefinal completedfsm composetext confighierarchy configname configproperties configsourceaddonlist configsourcemod configsourcemodlist copytoclipboard cos count count count create3dencomposition create3denentity createagent createcenter createdialog creatediarylink creategeardialog creategroup createguardedpoint createlocation createmarker createmarkerlocal createmine createsimpleobject createsoundsource createteam createtrigger createvehicle createvehiclecrew crew ctaddheader ctaddrow ctclear ctcursel ctheadercount ctrlactivate ctrlangle ctrlautoscrolldelay ctrlautoscrollrewind ctrlautoscrollspeed ctrlchecked ctrlclassname ctrlcommitted ctrldelete ctrlenable ctrlenabled ctrlenabled ctrlfade ctrlhtmlloaded ctrlidc ctrlidd ctrlmapanimclear ctrlmapanimcommit ctrlmapanimdone ctrlmapmouseover ctrlmapscale ctrlmodel ctrlmodeldirandup ctrlmodelscale ctrlparent ctrlparentcontrolsgroup ctrlposition ctrlscale ctrlsetfocus ctrlsettext ctrlshow ctrlshown ctrltext ctrltext ctrltextheight ctrltextsecondary ctrltextwidth ctrltype ctrlvisible ctrowcount curatoraddons curatorcameraarea curatorcameraareaceiling curatoreditableobjects curatoreditingarea curatoreditingareatype curatorpoints curatorregisteredobjects curatorwaypointcost currentcommand currentmagazine currentmagazinedetail currentmuzzle currenttask currenttasks currentthrowable currentvisionmode currentwaypoint currentweapon currentweaponmode currentzeroing cutobj cutrsc cuttext damage datetonumber deactivatekey debriefingtext debuglog default deg delete3denentities deletecenter deletecollection deletegroup deleteidentity deletelocation deletemarker deletemarkerlocal deletesite deletestatus deleteteam deletevehicle deletewaypoint detach detectedmines diag_captureframe diag_captureframetofile diag_captureslowframe diag_codeperformance diag_dynamicsimulationend diag_lightnewload diag_log diag_logslowframe diag_setlightnew didjipowner difficultyenabled difficultyoption direction direction disablemapindicators disableremotesensors disableuserinput displayparent dissolveteam do3denaction dogetout dostop drawicon3d drawline3d driver drop dynamicsimulationdistance dynamicsimulationdistancecoef dynamicsimulationenabled dynamicsimulationenabled echo edit3denmissionattributes effectivecommander enableaudiofeature enablecamshake enablecaustics enabledebriefingstats enablediaglegend enabledynamicsimulationsystem enableengineartillery enableenvironment enableradio enablesatnormalondetail enablesaving enablesentences enablestressdamage enableteamswitch enabletraffic enableweapondisassembly endmission enginesisonrtd enginespowerrtd enginesrpmrtd enginestorquertd entities entities estimatedtimeleft everybackpack everycontainer execfsm execvm exp expecteddestination exportjipmessages eyedirection eyepos face faction failmission fillweaponsfrompool finddisplay finite firstbackpack flag flaganimationphase flagowner flagside flagtexture fleeing floor for for forceatpositionrtd forcegeneratorrtd forcemap forcerespawn format formation formation formationdirection formationleader formationmembers formationposition formationtask formattext formleader fromeditor fuel fullcrew fullcrew gearidcammocount gearslotammocount gearslotdata get3denactionstate get3denconnections get3denentity get3denentityid get3dengrid get3denlayerentities get3denselected getaimingcoef getallenvsoundcontrollers getallhitpointsdamage getallownedmines getallsoundcontrollers getammocargo getanimaimprecision getanimspeedcoef getarray getartilleryammo getassignedcuratorlogic getassignedcuratorunit getbackpackcargo getbleedingremaining getburningvalue getcameraviewdirection getcenterofmass getconnecteduav getcontainermaxload getcustomaimcoef getdammage getdescription getdir getdirvisual getdlcassetsusagebyname getdlcs getdlcusagetime geteditorcamera geteditormode getenginetargetrpmrtd getfatigue getfieldmanualstartpage getforcedflagtexture getfuelcargo getgroupiconparams getgroupicons getitemcargo getmagazinecargo getmarkercolor getmarkerpos getmarkersize getmarkertype getmass getmissionconfig getmissionconfigvalue getmissionlayerentities getmodelinfo getnumber getobjectdlc getobjectmaterials getobjecttextures getobjecttype getoxygenremaining getpersonuseddlcs getpilotcameradirection getpilotcameraposition getpilotcamerarotation getpilotcameratarget getplatenumber getplayerchannel getplayerscores getplayeruid getpos getpos getposasl getposaslvisual getposaslw getposatl getposatlvisual getposvisual getposworld getpylonmagazines getrepaircargo getrotorbrakertd getshotparents getslingload getstamina getstatvalue getsuppression getterrainheightasl gettext gettrimoffsetrtd getunitloadout getunitloadout getunitloadout getusermfdtext getusermfdvalue getvehiclecargo getweaponcargo getweaponsway getwingsorientationrtd getwingspositionrtd getwppos goggles goto group groupfromnetid groupid groupowner groupselectedunits gunner handgunitems handgunmagazine handgunweapon handshit haspilotcamera hcallgroups hcleader hcremoveallgroups hcselected hcshowbar headgear hidebody hideobject hideobjectglobal hint hintc hintcadet hintsilent hmd hostmission if image importallgroups importance incapacitatedstate inflamed infopanel infopanels ingameuiseteventhandler inheritsfrom inputaction isabletobreathe isagent isaimprecisionenabled isarray isautohoveron isautonomous isautostartupenabledrtd isautotrimonrtd isbleeding isburning isclass iscollisionlighton iscopilotenabled isdamageallowed isdlcavailable isengineon isforcedwalk isformationleader isgroupdeletedwhenempty ishidden isinremainscollector iskeyactive islaseron islighton islocalized ismanualfire ismarkedforcollection isnil isnull isnull isnull isnull isnull isnull isnull isnull isnull isnumber isobjecthidden isobjectrtd isonroad isplayer isrealtime isshowing3dicons issimpleobject issprintallowed isstaminaenabled istext istouchingground isturnedout isuavconnected isvehiclecargo isvehicleradaron iswalking isweapondeployed isweaponrested itemcargo items itemswithmagazines keyimage keyname landresult lasertarget lbadd lbclear lbclear lbcolor lbcolorright lbcursel lbcursel lbdata lbdelete lbpicture lbpictureright lbselection lbsetcolor lbsetcolorright lbsetcursel lbsetdata lbsetpicture lbsetpicturecolor lbsetpicturecolordisabled lbsetpicturecolorselected lbsetpictureright lbsetselectcolor lbsetselectcolorright lbsettext lbsettooltip lbsetvalue lbsize lbsize lbsort lbsort lbsort lbsortbyvalue lbsortbyvalue lbtext lbtextright lbvalue leader leader leader leaderboarddeinit leaderboardgetrows leaderboardinit leaderboardrequestrowsfriends leaderboardrequestrowsglobal leaderboardrequestrowsglobalarounduser leaderboardsrequestuploadscore leaderboardsrequestuploadscorekeepbest leaderboardstate lifestate lightdetachobject lightison linearconversion lineintersects lineintersectsobjs lineintersectssurfaces lineintersectswith list listremotetargets listvehiclesensors ln lnbaddarray lnbaddcolumn lnbaddrow lnbclear lnbclear lnbcolor lnbcolorright lnbcurselrow lnbcurselrow lnbdata lnbdeletecolumn lnbdeleterow lnbgetcolumnsposition lnbgetcolumnsposition lnbpicture lnbpictureright lnbsetcolor lnbsetcolorright lnbsetcolumnspos lnbsetcurselrow lnbsetdata lnbsetpicture lnbsetpicturecolor lnbsetpicturecolorright lnbsetpicturecolorselected lnbsetpicturecolorselectedright lnbsetpictureright lnbsettext lnbsettextright lnbsetvalue lnbsize lnbsize lnbsort lnbsortbyvalue lnbtext lnbtextright lnbvalue load loadabs loadbackpack loadfile loaduniform loadvest local local localize locationposition locked lockeddriver lockidentity log lognetwork lognetworkterminate magazinecargo magazines magazinesallturrets magazinesammo magazinesammocargo magazinesammofull magazinesdetail magazinesdetailbackpack magazinesdetailuniform magazinesdetailvest mapanimadd mapcenteroncamera mapgridposition markeralpha markerbrush markercolor markerdir markerpos markershape markersize markertext markertype members menuaction menuadd menuchecked menuclear menuclear menucollapse menudata menudelete menuenable menuenabled menuexpand menuhover menuhover menupicture menusetaction menusetcheck menusetdata menusetpicture menusetvalue menushortcut menushortcuttext menusize menusort menutext menuurl menuvalue mineactive modparams moonphase morale move3dencamera moveout movetime movetocompleted movetofailed name name namesound nearestbuilding nearestbuilding nearestlocation nearestlocations nearestlocationwithdubbing nearestobject nearestobjects nearestterrainobjects needreload netid netid nextmenuitemindex not numberofenginesrtd numbertodate objectcurators objectfromnetid objectparent onbriefinggroup onbriefingnotes onbriefingplan onbriefingteamswitch oncommandmodechanged oneachframe ongroupiconclick ongroupiconoverenter ongroupiconoverleave onhcgroupselectionchanged onmapsingleclick onplayerconnected onplayerdisconnected onpreloadfinished onpreloadstarted onteamswitch opendlcpage openmap openmap opensteamapp openyoutubevideo owner param params parsenumber parsenumber parsesimplearray parsetext pickweaponpool pitch playableslotsnumber playersnumber playmission playmusic playmusic playscriptedmission playsound playsound playsound3d position position positioncameratoworld ppeffectcommitted ppeffectcommitted ppeffectcreate ppeffectdestroy ppeffectdestroy ppeffectenabled precision preloadcamera preloadsound preloadtitleobj preloadtitlersc preprocessfile preprocessfilelinenumbers primaryweapon primaryweaponitems primaryweaponmagazine priority private processdiarylink progressloadingscreen progressposition publicvariable publicvariableserver putweaponpool queryitemspool querymagazinepool queryweaponpool rad radiochannelcreate random random rank rankid rating rectangular registeredtasks reload reloadenabled remoteexec remoteexeccall remove3denconnection remove3deneventhandler remove3denlayer removeall3deneventhandlers removeallactions removeallassigneditems removeallcontainers removeallcuratoraddons removeallcuratorcameraareas removeallcuratoreditingareas removeallhandgunitems removeallitems removeallitemswithmagazines removeallmissioneventhandlers removeallmusiceventhandlers removeallownedmines removeallprimaryweaponitems removeallweapons removebackpack removebackpackglobal removefromremainscollector removegoggles removeheadgear removemissioneventhandler removemusiceventhandler removeswitchableunit removeuniform removevest requiredversion resetsubgroupdirection resources restarteditorcamera reverse roadat roadsconnectedto roledescription ropeattachedobjects ropeattachedto ropeattachenabled ropecreate ropecut ropedestroy ropeendposition ropelength ropes ropeunwind ropeunwound rotorsforcesrtd rotorsrpmrtd round save3deninventory saveoverlay savevar scopename score scoreside screenshot screentoworld scriptdone scriptname scudstate secondaryweapon secondaryweaponitems secondaryweaponmagazine selectbestplaces selectededitorobjects selectionnames selectmax selectmin selectplayer selectrandom selectrandomweighted sendaumessage sendudpmessage servercommand servercommandavailable servercommandexecutable set3denattributes set3dengrid set3deniconsvisible set3denlinesvisible set3denmissionattributes set3denmodelsvisible set3denselected setacctime setaperture setaperturenew setarmorypoints setcamshakedefparams setcamshakeparams setcompassoscillation setcurrentchannel setcustommissiondata setdate setdefaultcamera setdetailmapblendpars setgroupiconsselectable setgroupiconsvisible sethorizonparallaxcoef sethudmovementlevels setinfopanel setlocalwindparams setmouseposition setmusiceventhandler setobjectviewdistance setobjectviewdistance setplayable setplayerrespawntime setshadowdistance setsimulweatherlayers setstaminascheme setstatvalue setsystemofunits setterraingrid settimemultiplier settrafficdensity settrafficdistance settrafficgap settrafficspeed setviewdistance setwind setwinddir showchat showcinemaborder showcommandingmenu showcompass showcuratorcompass showgps showhud showhud showmap showpad showradio showscoretable showsubtitles showuavfeed showwarrant showwatch showwaypoints side side side simpletasks simulationenabled simulclouddensity simulcloudocclusion simulinclouds sin size sizeof skill skiptime sleep sliderposition sliderposition sliderrange sliderrange slidersetposition slidersetrange slidersetspeed sliderspeed sliderspeed soldiermagazines someammo speaker speed speedmode sqrt squadparams stance startloadingscreen stopenginertd stopped str supportinfo surfaceiswater surfacenormal surfacetype switch switchcamera synchronizedobjects synchronizedtriggers synchronizedwaypoints synchronizedwaypoints systemchat tan taskalwaysvisible taskchildren taskcompleted taskcustomdata taskdescription taskdestination taskhint taskmarkeroffset taskparent taskresult taskstate tasktype teammember teamname teamtype terminate terrainintersect terrainintersectasl terrainintersectatasl text text textlog textlogformat tg throw titlecut titlefadeout titleobj titlersc titletext toarray tofixed tolower tostring toupper triggeractivated triggeractivation triggerarea triggerattachedvehicle triggerstatements triggertext triggertimeout triggertimeoutcurrent triggertype try tvadd tvclear tvclear tvcollapse tvcollapseall tvcollapseall tvcount tvcursel tvcursel tvdata tvdelete tvexpand tvexpandall tvexpandall tvpicture tvpictureright tvsetcursel tvsetdata tvsetpicture tvsetpicturecolor tvsetpictureright tvsetpicturerightcolor tvsettext tvsettooltip tvsetvalue tvsort tvsortbyvalue tvtext tvtooltip tvvalue type type typename typeof uavcontrol uisleep unassigncurator unassignteam unassignvehicle underwater uniform uniformcontainer uniformitems uniformmagazines unitaddons unitaimposition unitaimpositionvisual unitbackpack unitisuav unitpos unitready unitrecoilcoefficient units units unlockachievement updateobjecttree useaiopermapobstructiontest useaisteeringcomponent vectordir vectordirvisual vectormagnitude vectormagnitudesqr vectornormalized vectorup vectorupvisual vehicle vehiclecargoenabled vehiclereceiveremotetargets vehiclereportownposition vehiclereportremotetargets vehiclevarname velocity velocitymodelspace verifysignature vest vestcontainer vestitems vestmagazines visibleposition visiblepositionasl waituntil waypointattachedobject waypointattachedvehicle waypointbehaviour waypointcombatmode waypointcompletionradius waypointdescription waypointforcebehaviour waypointformation waypointhouseposition waypointloiterradius waypointloitertype waypointname waypointposition waypoints waypointscript waypointsenableduav waypointshow waypointspeed waypointstatements waypointtimeout waypointtimeoutcurrent waypointtype waypointvisible weaponcargo weaponinertia weaponlowered weapons weaponsitems weaponsitemscargo weaponstate weaponstate weightrtd wfsidetext wfsidetext wfsidetext while wingsforcesrtd with worldtoscreen action actionparams add3denlayer addaction addbackpack addbackpackcargo addbackpackcargoglobal addbackpackglobal addcuratoraddons addcuratorcameraarea addcuratoreditableobjects addcuratoreditingarea addcuratorpoints addeditorobject addeventhandler addforce addgoggles addgroupicon addhandgunitem addheadgear additem additemcargo additemcargoglobal additemtobackpack additemtouniform additemtovest addlivestats addmagazine addmagazine addmagazineammocargo addmagazinecargo addmagazinecargoglobal addmagazineglobal addmagazines addmagazineturret addmenu addmenuitem addmpeventhandler addownedmine addplayerscores addprimaryweaponitem addpublicvariableeventhandler addpublicvariableeventhandler addrating addresources addscore addscoreside addsecondaryweaponitem addteammember addtorque adduniform addvehicle addvest addwaypoint addweapon addweaponcargo addweaponcargoglobal addweaponglobal addweaponitem addweaponturret aimedattarget allow3dmode allowcrewinimmobile allowcuratorlogicignoreareas allowdamage allowdammage allowfileoperations allowfleeing allowgetin allowsprint ammo ammoonpylon and and animate animatebay animatedoor animatepylon animatesource animationphase animationsourcephase append apply arrayintersect assignascargo assignascargoindex assignascommander assignasdriver assignasgunner assignasturret assigncurator assignitem assignteam assigntoairport atan2 attachobject attachto backpackspacefor breakout buildingexit buildingpos buttonsetaction call callextension callextension camcommand camcommit camcommitprepared camconstuctionsetparams camcreate cameraeffect campreload campreparebank campreparedir campreparedive campreparefocus campreparefov campreparefovrange campreparepos campreparerelpos campreparetarget campreparetarget camsetbank camsetdir camsetdive camsetfocus camsetfov camsetfovrange camsetpos camsetrelpos camsettarget camsettarget canadd canadditemtobackpack canadditemtouniform canadditemtovest canslingload canvehiclecargo catch cbsetchecked checkvisibility clear3denattribute closedisplay commandartilleryfire commandchat commandfire commandfollow commandfsm commandmove commandradio commandsuppressivefire commandtarget commandwatch commandwatch configclasses confirmsensortarget connectterminaltouav controlsgroupctrl copywaypoints count countenemy countfriendly countside counttype countunknown create3denentity creatediaryrecord creatediarysubject createdisplay createmenu createmissiondisplay createmissiondisplay creatempcampaigndisplay createsimpletask createsite createtask createunit createunit createvehicle createvehiclelocal ctdata ctfindheaderrows ctfindrowheader ctheadercontrols ctremoveheaders ctremoverows ctrladdeventhandler ctrlchecked ctrlcommit ctrlcreate ctrlenable ctrlmapanimadd ctrlmapcursor ctrlmapscreentoworld ctrlmapworldtoscreen ctrlremovealleventhandlers ctrlremoveeventhandler ctrlsetactivecolor ctrlsetangle ctrlsetautoscrolldelay ctrlsetautoscrollrewind ctrlsetautoscrollspeed ctrlsetbackgroundcolor ctrlsetchecked ctrlsetchecked ctrlsetdisabledcolor ctrlseteventhandler ctrlsetfade ctrlsetfont ctrlsetfonth1 ctrlsetfonth1b ctrlsetfonth2 ctrlsetfonth2b ctrlsetfonth3 ctrlsetfonth3b ctrlsetfonth4 ctrlsetfonth4b ctrlsetfonth5 ctrlsetfonth5b ctrlsetfonth6 ctrlsetfonth6b ctrlsetfontheight ctrlsetfontheighth1 ctrlsetfontheighth2 ctrlsetfontheighth3 ctrlsetfontheighth4 ctrlsetfontheighth5 ctrlsetfontheighth6 ctrlsetfontheightsecondary ctrlsetfontp ctrlsetfontp ctrlsetfontpb ctrlsetfontsecondary ctrlsetforegroundcolor ctrlsetmodel ctrlsetmodeldirandup ctrlsetmodelscale ctrlsetpixelprecision ctrlsetpixelprecision ctrlsetposition ctrlsetscale ctrlsetstructuredtext ctrlsettext ctrlsettextcolor ctrlsettextcolorsecondary ctrlsettextsecondary ctrlsettooltip ctrlsettooltipcolorbox ctrlsettooltipcolorshade ctrlsettooltipcolortext ctrlshow ctrowcontrols ctsetcursel ctsetdata ctsetheadertemplate ctsetrowtemplate ctsetvalue ctvalue curatorcoef currentmagazinedetailturret currentmagazineturret currentweaponturret customchat customradio cutfadeout cutfadeout cutobj cutobj cutrsc cutrsc cuttext cuttext debugfsm deleteat deleteeditorobject deletegroupwhenempty deleterange deleteresources deletevehiclecrew diarysubjectexists directsay disableai disablecollisionwith disableconversation disablenvgequipment disabletiequipment disableuavconnectability displayaddeventhandler displayctrl displayremovealleventhandlers displayremoveeventhandler displayseteventhandler distance distance distance distance distance2d distancesqr distancesqr distancesqr distancesqr do do do do doartilleryfire dofire dofollow dofsm domove doorphase dosuppressivefire dotarget dowatch dowatch drawarrow drawellipse drawicon drawline drawlink drawlocation drawpolygon drawrectangle drawtriangle editobject editorseteventhandler else emptypositions enableai enableaifeature enableaimprecision enableattack enableautostartuprtd enableautotrimrtd enablechannel enablechannel enablecollisionwith enablecopilot enabledynamicsimulation enabledynamicsimulation enablefatigue enablegunlights enableinfopanelcomponent enableirlasers enablemimics enablepersonturret enablereload enableropeattach enablesimulation enablesimulationglobal enablestamina enableuavconnectability enableuavwaypoints enablevehiclecargo enablevehiclesensor enableweapondisassembly engineon evalobjectargument exec execeditorscript execfsm execvm exitwith fademusic faderadio fadesound fadespeech find find findcover findeditorobject findeditorobject findemptyposition findemptypositionready findif findnearestenemy fire fire fireattarget flyinheight flyinheightasl forceadduniform forceflagtexture forcefollowroad forcespeed forcewalk forceweaponfire foreach foreachmember foreachmemberagent foreachmemberteam forgettarget from get3denattribute get3denattribute get3denattribute get3denattribute get3denattribute get3denmissionattribute getartilleryeta getcargoindex getcompatiblepylonmagazines getcompatiblepylonmagazines getdir geteditorobjectscope getenvsoundcontroller getfriend getfsmvariable getgroupicon gethidefrom gethit gethitindex gethitpointdamage getobjectargument getobjectchildren getobjectproxy getpos getreldir getrelpos getsoundcontroller getsoundcontrollerresult getspeed getunittrait getvariable getvariable getvariable getvariable getvariable getvariable getvariable getvariable getvariable getvariable getvariable getvariable getvariable getvariable glanceat globalchat globalradio groupchat groupradio groupselectunit hasweapon hcgroupparams hcremovegroup hcselectgroup hcsetgroup hideobject hideobjectglobal hideselection hintc hintc hintc htmlload in in in inarea inarea inarea inarea inarea inareaarray inareaarray inareaarray inareaarray inflame infopanelcomponentenabled infopanelcomponents inpolygon inrangeofartillery inserteditorobject intersect isequalto isequaltype isequaltypeall isequaltypeany isequaltypearray isequaltypeparams isflashlighton isflatempty isirlaseron iskindof iskindof iskindof issensortargetconfirmed isuavconnectable isuniformallowed isvehiclesensorenabled join joinas joinassilent joinsilent joinstring kbadddatabase kbadddatabasetargets kbaddtopic kbhastopic kbreact kbremovetopic kbtell kbwassaid knowsabout knowsabout land landat lbadd lbcolor lbcolorright lbdata lbdelete lbisselected lbpicture lbpictureright lbsetcolor lbsetcolorright lbsetcursel lbsetdata lbsetpicture lbsetpicturecolor lbsetpicturecolordisabled lbsetpicturecolorselected lbsetpictureright lbsetpicturerightcolor lbsetpicturerightcolordisabled lbsetpicturerightcolorselected lbsetselectcolor lbsetselectcolorright lbsetselected lbsettext lbsettextright lbsettooltip lbsetvalue lbtext lbtextright lbvalue leavevehicle leavevehicle lightattachobject limitspeed linkitem listobjects lnbaddcolumn lnbaddrow lnbcolor lnbcolorright lnbdata lnbdeletecolumn lnbdeleterow lnbpicture lnbpictureright lnbsetcolor lnbsetcolorright lnbsetcolumnspos lnbsetcurselrow lnbsetdata lnbsetpicture lnbsetpicturecolor lnbsetpicturecolorright lnbsetpicturecolorselected lnbsetpicturecolorselectedright lnbsetpictureright lnbsettext lnbsettextright lnbsetvalue lnbsort lnbsortbyvalue lnbtext lnbtextright lnbvalue loadidentity loadmagazine loadoverlay loadstatus lock lock lockcamerato lockcargo lockcargo lockdriver lockedcargo lockedturret lockturret lockwp lookat lookatpos magazinesturret magazineturretammo mapcenteroncamera max menuaction menuadd menuchecked menucollapse menudata menudelete menuenable menuenabled menuexpand menupicture menusetaction menusetcheck menusetdata menusetpicture menusetvalue menushortcut menushortcuttext menusize menusort menutext menuurl menuvalue min minedetectedby mod modeltoworld modeltoworldvisual modeltoworldvisualworld modeltoworldworld move moveinany moveincargo moveincargo moveincommander moveindriver moveingunner moveinturret moveobjecttoend moveto nearentities nearestobject nearestobject nearobjects nearobjectsready nearroads nearsupplies neartargets newoverlay nmenuitems objstatus ondoubleclick onmapsingleclick onshownewobject or or ordergetin param params playaction playactionnow playgesture playmove playmovenow posscreentoworld posworldtoscreen ppeffectadjust ppeffectadjust ppeffectcommit ppeffectcommit ppeffectcommit ppeffectenable ppeffectenable ppeffectenable ppeffectforceinnvg preloadobject progresssetposition publicvariableclient pushback pushbackunique radiochanneladd radiochannelremove radiochannelsetcallsign radiochannelsetlabel random registertask remotecontrol remoteexec remoteexeccall removeaction removealleventhandlers removeallmpeventhandlers removecuratoraddons removecuratorcameraarea removecuratoreditableobjects removecuratoreditingarea removedrawicon removedrawlinks removeeventhandler removegroupicon removehandgunitem removeitem removeitemfrombackpack removeitemfromuniform removeitemfromvest removeitems removemagazine removemagazineglobal removemagazines removemagazinesturret removemagazineturret removemenuitem removemenuitem removempeventhandler removeownedmine removeprimaryweaponitem removesecondaryweaponitem removesimpletask removeteammember removeweapon removeweaponattachmentcargo removeweaponcargo removeweaponglobal removeweaponturret reportremotetarget resize respawnvehicle reveal reveal revealmine ropeattachto ropedetach saveidentity savestatus say say say2d say2d say3d say3d select select select select select select selectdiarysubject selecteditorobject selectionposition selectleader selectrandomweighted selectweapon selectweaponturret sendsimplecommand sendtask sendtaskresult servercommand set set3denattribute set3denlayer set3denlogictype set3denmissionattribute set3denobjecttype setactualcollectivertd setairplanethrottle setairportside setammo setammocargo setammoonpylon setanimspeedcoef setattributes setautonomous setbehaviour setbleedingremaining setbrakesrtd setcamerainterest setcamuseti setcaptive setcenterofmass setcollisionlight setcombatmode setcombatmode setconvoyseparation setcuratorcameraareaceiling setcuratorcoef setcuratoreditingareatype setcuratorwaypointcost setcurrenttask setcurrentwaypoint setcustomaimcoef setcustomweightrtd setdamage setdammage setdebriefingtext setdestination setdir setdirection setdrawicon setdriveonpath setdropinterval setdynamicsimulationdistance setdynamicsimulationdistancecoef seteditormode seteditorobjectscope seteffectcondition setenginerpmrtd setface setfaceanimation setfatigue setfeaturetype setflaganimationphase setflagowner setflagside setflagtexture setfog setforcegeneratorrtd setformation setformation setformationtask setformdir setfriend setfromeditor setfsmvariable setfuel setfuelcargo setgroupicon setgroupiconparams setgroupid setgroupidglobal setgroupowner setgusts sethidebehind sethit sethitindex sethitpointdamage setidentity setimportance setleader setlightambient setlightattenuation setlightbrightness setlightcolor setlightdaylight setlightflaremaxdistance setlightflaresize setlightintensity setlightnings setlightuseflare setmagazineturretammo setmarkeralpha setmarkeralphalocal setmarkerbrush setmarkerbrushlocal setmarkercolor setmarkercolorlocal setmarkerdir setmarkerdirlocal setmarkerpos setmarkerposlocal setmarkershape setmarkershapelocal setmarkersize setmarkersizelocal setmarkertext setmarkertextlocal setmarkertype setmarkertypelocal setmass setmimic setmusiceffect setname setname setname setnamesound setobjectarguments setobjectmaterial setobjectmaterialglobal setobjectproxy setobjecttexture setobjecttextureglobal setovercast setowner setoxygenremaining setparticlecircle setparticleclass setparticlefire setparticleparams setparticlerandom setpilotcameradirection setpilotcamerarotation setpilotcameratarget setpilotlight setpipeffect setpitch setplatenumber setpos setposasl setposasl2 setposaslw setposatl setposition setposworld setpylonloadout setpylonspriority setradiomsg setrain setrainbow setrandomlip setrank setrectangular setrepaircargo setrotorbrakertd setshotparents setside setsimpletaskalwaysvisible setsimpletaskcustomdata setsimpletaskdescription setsimpletaskdestination setsimpletasktarget setsimpletasktype setsize setskill setskill setslingload setsoundeffect setspeaker setspeech setspeedmode setstamina setsuppression settargetage settaskmarkeroffset settaskresult settaskstate settext settitleeffect settriggeractivation settriggerarea settriggerstatements settriggertext settriggertimeout settriggertype settype setunconscious setunitability setunitloadout setunitloadout setunitloadout setunitpos setunitposweak setunitrank setunitrecoilcoefficient setunittrait setunloadincombat setuseractiontext setusermfdtext setusermfdvalue setvariable setvariable setvariable setvariable setvariable setvariable setvariable setvariable setvectordir setvectordirandup setvectorup setvehicleammo setvehicleammodef setvehiclearmor setvehiclecargo setvehicleid setvehiclelock setvehicleposition setvehicleradar setvehiclereceiveremotetargets setvehiclereportownposition setvehiclereportremotetargets setvehicletipars setvehiclevarname setvelocity setvelocitymodelspace setvelocitytransformation setvisibleiftreecollapsed setwantedrpmrtd setwaves setwaypointbehaviour setwaypointcombatmode setwaypointcompletionradius setwaypointdescription setwaypointforcebehaviour setwaypointformation setwaypointhouseposition setwaypointloiterradius setwaypointloitertype setwaypointname setwaypointposition setwaypointscript setwaypointspeed setwaypointstatements setwaypointtimeout setwaypointtype setwaypointvisible setweaponreloadingtime setwinddir setwindforce setwindstr setwingforcescalertd setwppos show3dicons showlegend showneweditorobject showwaypoint sidechat sideradio skill skillfinal slidersetposition slidersetrange slidersetspeed sort spawn splitstring step stop suppressfor swimindepth switchaction switchcamera switchgesture switchlight switchmove synchronizeobjectsadd synchronizeobjectsremove synchronizetrigger synchronizewaypoint synchronizewaypoint targetknowledge targets targetsaggregate targetsquery then then throw to tofixed triggerattachobject triggerattachvehicle triggerdynamicsimulation try turretlocal turretowner turretunit tvadd tvcollapse tvcount tvdata tvdelete tvexpand tvpicture tvpictureright tvsetcolor tvsetcursel tvsetdata tvsetpicture tvsetpicturecolor tvsetpicturecolordisabled tvsetpicturecolorselected tvsetpictureright tvsetpicturerightcolor tvsetpicturerightcolordisabled tvsetpicturerightcolorselected tvsetselectcolor tvsettext tvsettooltip tvsetvalue tvsort tvsortbyvalue tvtext tvtooltip tvvalue unassignitem unitsbelowheight unitsbelowheight unlinkitem unregistertask updatedrawicon updatemenuitem useaudiotimeformoves vectoradd vectorcos vectorcrossproduct vectordiff vectordistance vectordistancesqr vectordotproduct vectorfromto vectormodeltoworld vectormodeltoworldvisual vectormultiply vectorworldtomodel vectorworldtomodelvisual vehiclechat vehicleradio waypointattachobject waypointattachvehicle weaponaccessories weaponaccessoriescargo weapondirection weaponsturret worldtomodel worldtomodelvisual acctime activatedaddons agents airdensitycurvertd all3denentities allairports allcurators allcutlayers alldead alldeadmen alldisplays allgroups allmapmarkers allmines allplayers allsites allunits allunitsuav armorypoints benchmark blufor briefingname buldozer_isenabledroaddiag buldozer_reloadopermap cadetmode cameraon cameraview campaignconfigfile cansuspend cheatsenabled civilian clearforcesrtd clearitempool clearmagazinepool clearradio clearweaponpool clientowner commandingmenu configfile confignull controlnull copyfromclipboard curatorcamera curatormouseover curatorselected current3denoperation currentchannel currentnamespace cursorobject cursortarget date daytime diag_activemissionfsms diag_activescripts diag_activesqfscripts diag_activesqsscripts diag_fps diag_fpsmin diag_frameno diag_ticktime dialog didjip difficulty difficultyenabledrtd disabledebriefingstats disableserialization displaynull distributionregion dynamicsimulationsystemenabled east enableenddialog endl endloadingscreen environmentenabled estimatedendservertime exit false finishmissioninit fog fogforecast fogparams forcedmap forceend forceweatherchange freelook get3dencamera get3deniconsvisible get3denlinesvisible get3denmouseover getartillerycomputersettings getclientstate getclientstatenumber getcursorobjectparams getdlcassetsusage getelevationoffset getmissiondlcs getmissionlayers getmouseposition getmusicplayedtime getobjectviewdistance getremotesensorsdisabled getresolution getshadowdistance getterraingrid gettotaldlcusagetime groupiconselectable groupiconsvisible grpnull gusts halt hasinterface hcshownbar hudmovementlevels humidity independent initambientlife is3den is3denmultiplayer isautotest isdedicated isfilepatchingenabled isinstructorfigureenabled ismultiplayer ismultiplayersolo ispipenabled isremoteexecuted isremoteexecutedjip isserver issteammission isstreamfriendlyuienabled isstressdamageenabled istuthintsenabled isuicontext language librarycredits librarydisclaimers lightnings linebreak loadgame locationnull logentities mapanimclear mapanimcommit mapanimdone markasfinishedonsteam missionconfigfile missiondifficulty missionname missionnamespace missionstart missionversion moonintensity musicvolume netobjnull nextweatherchange nil objnull opencuratorinterface opfor overcast overcastforecast parsingnamespace particlesquality pi pixelgrid pixelgridbase pixelgridnouiscale pixelh pixelw playableunits player playerrespawntime playerside productversion profilename profilenamespace profilenamesteam radiovolume rain rainbow remoteexecutedowner resetcamshake resistance reversedmousey runinitscript safezoneh safezonew safezonewabs safezonex safezonexabs safezoney savegame savejoysticks saveprofilenamespace savingenabled scriptnull selectnoplayer servername servertime shownartillerycomputer shownchat showncompass showncuratorcompass showngps shownhud shownmap shownpad shownradio shownscoretable shownuavfeed shownwarrant shownwatch sideambientlife sideempty sideenemy sidefriendly sidelogic sideunknown simulweathersync slingloadassistantshown soundvolume sunormoon switchableunits systemofunits tasknull teammembernull teams teamswitch teamswitchenabled time timemultiplier true uinamespace userinputdisabled vehicles viewdistance visiblecompass visiblegps visiblemap visiblescoretable visiblewatch waves west wind winddir windrtd windstr worldname worldsize
11
+ )
12
+ end
13
+ end
14
+ end
15
+ end
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
2
3
 
3
4
  module Rouge
4
5
  module Lexers