rouge 3.2.0 → 3.18.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (316) hide show
  1. checksums.yaml +5 -5
  2. data/Gemfile +17 -3
  3. data/bin/rougify +1 -0
  4. data/lib/rouge.rb +67 -43
  5. data/lib/rouge/cli.rb +84 -17
  6. data/lib/rouge/demos/ada +26 -0
  7. data/lib/rouge/demos/apex +9 -0
  8. data/lib/rouge/demos/armasm +12 -0
  9. data/lib/rouge/demos/batchfile +3 -0
  10. data/lib/rouge/demos/bbcbasic +6 -0
  11. data/lib/rouge/demos/bpf +7 -0
  12. data/lib/rouge/demos/brainfuck +5 -0
  13. data/lib/rouge/demos/clean +6 -0
  14. data/lib/rouge/demos/cmhg +8 -0
  15. data/lib/rouge/demos/csvs +8 -0
  16. data/lib/rouge/demos/cuda +11 -0
  17. data/lib/rouge/demos/cypher +5 -0
  18. data/lib/rouge/demos/cython +6 -0
  19. data/lib/rouge/demos/datastudio +21 -0
  20. data/lib/rouge/demos/ecl +18 -0
  21. data/lib/rouge/demos/eex +1 -0
  22. data/lib/rouge/demos/epp +4 -0
  23. data/lib/rouge/demos/escape +3 -0
  24. data/lib/rouge/demos/freefem +16 -0
  25. data/lib/rouge/demos/gdscript +18 -0
  26. data/lib/rouge/demos/ghc-cmm +23 -0
  27. data/lib/rouge/demos/ghc-core +26 -0
  28. data/lib/rouge/demos/haxe +5 -0
  29. data/lib/rouge/demos/hocon +8 -0
  30. data/lib/rouge/demos/hql +5 -0
  31. data/lib/rouge/demos/isbl +4 -0
  32. data/lib/rouge/demos/jsl +3 -0
  33. data/lib/rouge/demos/jsp +29 -0
  34. data/lib/rouge/demos/liquid +0 -1
  35. data/lib/rouge/demos/lustre +6 -0
  36. data/lib/rouge/demos/lutin +18 -0
  37. data/lib/rouge/demos/m68k +16 -0
  38. data/lib/rouge/demos/magik +6 -0
  39. data/lib/rouge/demos/mason +22 -0
  40. data/lib/rouge/demos/mathematica +8 -0
  41. data/lib/rouge/demos/minizinc +23 -0
  42. data/lib/rouge/demos/msgtrans +4 -0
  43. data/lib/rouge/demos/nasm +6 -6
  44. data/lib/rouge/demos/nesasm +11 -0
  45. data/lib/rouge/demos/objective_cpp +17 -0
  46. data/lib/rouge/demos/openedge +4 -0
  47. data/lib/rouge/demos/opentype_feature_file +6 -0
  48. data/lib/rouge/demos/plist +1 -132
  49. data/lib/rouge/demos/powershell +12 -48
  50. data/lib/rouge/demos/q +6 -0
  51. data/lib/rouge/demos/reasonml +12 -0
  52. data/lib/rouge/demos/rego +8 -0
  53. data/lib/rouge/demos/robot_framework +27 -0
  54. data/lib/rouge/demos/sas +13 -0
  55. data/lib/rouge/demos/slice +10 -0
  56. data/lib/rouge/demos/solidity +13 -0
  57. data/lib/rouge/demos/sparql +6 -0
  58. data/lib/rouge/demos/sqf +14 -0
  59. data/lib/rouge/demos/supercollider +11 -0
  60. data/lib/rouge/demos/terraform +0 -15
  61. data/lib/rouge/demos/ttcn3 +6 -0
  62. data/lib/rouge/demos/vcl +12 -0
  63. data/lib/rouge/demos/xojo +14 -0
  64. data/lib/rouge/demos/xpath +2 -0
  65. data/lib/rouge/demos/xquery +22 -0
  66. data/lib/rouge/demos/yang +17 -0
  67. data/lib/rouge/formatter.rb +39 -2
  68. data/lib/rouge/formatters/html.rb +21 -2
  69. data/lib/rouge/formatters/html_inline.rb +1 -0
  70. data/lib/rouge/formatters/html_legacy.rb +1 -0
  71. data/lib/rouge/formatters/html_line_table.rb +53 -0
  72. data/lib/rouge/formatters/html_linewise.rb +7 -11
  73. data/lib/rouge/formatters/html_pygments.rb +2 -0
  74. data/lib/rouge/formatters/html_table.rb +21 -31
  75. data/lib/rouge/formatters/null.rb +1 -0
  76. data/lib/rouge/formatters/terminal256.rb +23 -5
  77. data/lib/rouge/formatters/terminal_truecolor.rb +37 -0
  78. data/lib/rouge/formatters/tex.rb +92 -0
  79. data/lib/rouge/guesser.rb +2 -0
  80. data/lib/rouge/guessers/disambiguation.rb +35 -0
  81. data/lib/rouge/guessers/filename.rb +2 -0
  82. data/lib/rouge/guessers/glob_mapping.rb +3 -1
  83. data/lib/rouge/guessers/mimetype.rb +2 -0
  84. data/lib/rouge/guessers/modeline.rb +3 -1
  85. data/lib/rouge/guessers/source.rb +3 -1
  86. data/lib/rouge/guessers/util.rb +2 -0
  87. data/lib/rouge/lexer.rb +71 -15
  88. data/lib/rouge/lexers/abap.rb +13 -11
  89. data/lib/rouge/lexers/actionscript.rb +35 -34
  90. data/lib/rouge/lexers/ada.rb +162 -0
  91. data/lib/rouge/lexers/apache.rb +13 -15
  92. data/lib/rouge/lexers/apache/keywords.rb +15 -0
  93. data/lib/rouge/lexers/apex.rb +126 -0
  94. data/lib/rouge/lexers/apiblueprint.rb +2 -0
  95. data/lib/rouge/lexers/apple_script.rb +17 -14
  96. data/lib/rouge/lexers/armasm.rb +145 -0
  97. data/lib/rouge/lexers/awk.rb +26 -25
  98. data/lib/rouge/lexers/batchfile.rb +164 -0
  99. data/lib/rouge/lexers/bbcbasic.rb +112 -0
  100. data/lib/rouge/lexers/biml.rb +6 -4
  101. data/lib/rouge/lexers/bpf.rb +118 -0
  102. data/lib/rouge/lexers/brainfuck.rb +53 -0
  103. data/lib/rouge/lexers/bsl.rb +13 -12
  104. data/lib/rouge/lexers/c.rb +35 -57
  105. data/lib/rouge/lexers/ceylon.rb +7 -34
  106. data/lib/rouge/lexers/cfscript.rb +27 -26
  107. data/lib/rouge/lexers/clean.rb +156 -0
  108. data/lib/rouge/lexers/clojure.rb +15 -14
  109. data/lib/rouge/lexers/cmake.rb +16 -14
  110. data/lib/rouge/lexers/cmhg.rb +34 -0
  111. data/lib/rouge/lexers/coffeescript.rb +90 -49
  112. data/lib/rouge/lexers/common_lisp.rb +39 -38
  113. data/lib/rouge/lexers/conf.rb +7 -6
  114. data/lib/rouge/lexers/console.rb +92 -38
  115. data/lib/rouge/lexers/coq.rb +27 -23
  116. data/lib/rouge/lexers/cpp.rb +24 -13
  117. data/lib/rouge/lexers/crystal.rb +71 -70
  118. data/lib/rouge/lexers/csharp.rb +29 -29
  119. data/lib/rouge/lexers/css.rb +24 -23
  120. data/lib/rouge/lexers/csvs.rb +44 -0
  121. data/lib/rouge/lexers/cuda.rb +35 -0
  122. data/lib/rouge/lexers/cypher.rb +108 -0
  123. data/lib/rouge/lexers/cython.rb +151 -0
  124. data/lib/rouge/lexers/d.rb +64 -63
  125. data/lib/rouge/lexers/dart.rb +34 -33
  126. data/lib/rouge/lexers/datastudio.rb +138 -0
  127. data/lib/rouge/lexers/diff.rb +10 -4
  128. data/lib/rouge/lexers/digdag.rb +3 -1
  129. data/lib/rouge/lexers/docker.rb +12 -11
  130. data/lib/rouge/lexers/dot.rb +19 -18
  131. data/lib/rouge/lexers/ecl.rb +175 -0
  132. data/lib/rouge/lexers/eex.rb +52 -0
  133. data/lib/rouge/lexers/eiffel.rb +21 -20
  134. data/lib/rouge/lexers/elixir.rb +52 -36
  135. data/lib/rouge/lexers/elm.rb +30 -29
  136. data/lib/rouge/lexers/epp.rb +51 -0
  137. data/lib/rouge/lexers/erb.rb +5 -4
  138. data/lib/rouge/lexers/erlang.rb +1 -0
  139. data/lib/rouge/lexers/escape.rb +58 -0
  140. data/lib/rouge/lexers/factor.rb +41 -40
  141. data/lib/rouge/lexers/fortran.rb +34 -32
  142. data/lib/rouge/lexers/freefem.rb +240 -0
  143. data/lib/rouge/lexers/fsharp.rb +33 -31
  144. data/lib/rouge/lexers/gdscript.rb +171 -0
  145. data/lib/rouge/lexers/ghc_cmm.rb +340 -0
  146. data/lib/rouge/lexers/ghc_core.rb +151 -0
  147. data/lib/rouge/lexers/gherkin.rb +17 -14
  148. data/lib/rouge/lexers/gherkin/keywords.rb +2 -0
  149. data/lib/rouge/lexers/glsl.rb +2 -5
  150. data/lib/rouge/lexers/go.rb +3 -2
  151. data/lib/rouge/lexers/gradle.rb +1 -0
  152. data/lib/rouge/lexers/graphql.rb +78 -60
  153. data/lib/rouge/lexers/groovy.rb +24 -25
  154. data/lib/rouge/lexers/hack.rb +2 -1
  155. data/lib/rouge/lexers/haml.rb +26 -29
  156. data/lib/rouge/lexers/handlebars.rb +32 -20
  157. data/lib/rouge/lexers/haskell.rb +67 -65
  158. data/lib/rouge/lexers/haxe.rb +246 -0
  159. data/lib/rouge/lexers/hcl.rb +26 -25
  160. data/lib/rouge/lexers/hocon.rb +86 -0
  161. data/lib/rouge/lexers/hql.rb +139 -0
  162. data/lib/rouge/lexers/html.rb +33 -31
  163. data/lib/rouge/lexers/http.rb +10 -9
  164. data/lib/rouge/lexers/hylang.rb +15 -14
  165. data/lib/rouge/lexers/idlang.rb +34 -32
  166. data/lib/rouge/lexers/igorpro.rb +32 -31
  167. data/lib/rouge/lexers/ini.rb +13 -12
  168. data/lib/rouge/lexers/io.rb +10 -9
  169. data/lib/rouge/lexers/irb.rb +6 -5
  170. data/lib/rouge/lexers/isbl.rb +97 -0
  171. data/lib/rouge/lexers/isbl/builtins.rb +17 -0
  172. data/lib/rouge/lexers/java.rb +29 -25
  173. data/lib/rouge/lexers/javascript.rb +58 -61
  174. data/lib/rouge/lexers/jinja.rb +39 -22
  175. data/lib/rouge/lexers/jsl.rb +55 -0
  176. data/lib/rouge/lexers/json.rb +54 -11
  177. data/lib/rouge/lexers/json_doc.rb +8 -5
  178. data/lib/rouge/lexers/jsonnet.rb +19 -18
  179. data/lib/rouge/lexers/jsp.rb +120 -0
  180. data/lib/rouge/lexers/jsx.rb +18 -16
  181. data/lib/rouge/lexers/julia.rb +182 -58
  182. data/lib/rouge/lexers/kotlin.rb +78 -26
  183. data/lib/rouge/lexers/lasso.rb +54 -58
  184. data/lib/rouge/lexers/lasso/keywords.rb +14 -0
  185. data/lib/rouge/lexers/liquid.rb +116 -118
  186. data/lib/rouge/lexers/literate_coffeescript.rb +3 -2
  187. data/lib/rouge/lexers/literate_haskell.rb +6 -5
  188. data/lib/rouge/lexers/llvm.rb +66 -49
  189. data/lib/rouge/lexers/lua.rb +43 -4
  190. data/lib/rouge/lexers/lua/builtins.rb +2 -0
  191. data/lib/rouge/lexers/lustre.rb +79 -0
  192. data/lib/rouge/lexers/lutin.rb +33 -0
  193. data/lib/rouge/lexers/m68k.rb +143 -0
  194. data/lib/rouge/lexers/magik.rb +127 -0
  195. data/lib/rouge/lexers/make.rb +57 -34
  196. data/lib/rouge/lexers/markdown.rb +67 -39
  197. data/lib/rouge/lexers/mason.rb +110 -0
  198. data/lib/rouge/lexers/mathematica.rb +96 -0
  199. data/lib/rouge/lexers/mathematica/builtins.rb +13 -0
  200. data/lib/rouge/lexers/matlab.rb +26 -17
  201. data/lib/rouge/lexers/matlab/builtins.rb +4 -4
  202. data/lib/rouge/lexers/minizinc.rb +87 -0
  203. data/lib/rouge/lexers/moonscript.rb +4 -3
  204. data/lib/rouge/lexers/mosel.rb +64 -63
  205. data/lib/rouge/lexers/msgtrans.rb +26 -0
  206. data/lib/rouge/lexers/mxml.rb +19 -18
  207. data/lib/rouge/lexers/nasm.rb +43 -169
  208. data/lib/rouge/lexers/nesasm.rb +78 -0
  209. data/lib/rouge/lexers/nginx.rb +15 -14
  210. data/lib/rouge/lexers/nim.rb +4 -2
  211. data/lib/rouge/lexers/nix.rb +44 -43
  212. data/lib/rouge/lexers/objective_c.rb +5 -178
  213. data/lib/rouge/lexers/objective_c/common.rb +184 -0
  214. data/lib/rouge/lexers/objective_cpp.rb +31 -0
  215. data/lib/rouge/lexers/ocaml.rb +29 -64
  216. data/lib/rouge/lexers/ocaml/common.rb +53 -0
  217. data/lib/rouge/lexers/openedge.rb +429 -0
  218. data/lib/rouge/lexers/opentype_feature_file.rb +113 -0
  219. data/lib/rouge/lexers/pascal.rb +6 -5
  220. data/lib/rouge/lexers/perl.rb +102 -67
  221. data/lib/rouge/lexers/php.rb +91 -53
  222. data/lib/rouge/lexers/php/builtins.rb +183 -174
  223. data/lib/rouge/lexers/plain_text.rb +2 -1
  224. data/lib/rouge/lexers/plist.rb +16 -14
  225. data/lib/rouge/lexers/pony.rb +21 -20
  226. data/lib/rouge/lexers/powershell.rb +190 -638
  227. data/lib/rouge/lexers/praat.rb +76 -75
  228. data/lib/rouge/lexers/prolog.rb +27 -19
  229. data/lib/rouge/lexers/prometheus.rb +32 -30
  230. data/lib/rouge/lexers/properties.rb +13 -12
  231. data/lib/rouge/lexers/protobuf.rb +23 -22
  232. data/lib/rouge/lexers/puppet.rb +33 -32
  233. data/lib/rouge/lexers/python.rb +124 -99
  234. data/lib/rouge/lexers/q.rb +17 -14
  235. data/lib/rouge/lexers/qml.rb +13 -12
  236. data/lib/rouge/lexers/r.rb +13 -13
  237. data/lib/rouge/lexers/racket.rb +47 -22
  238. data/lib/rouge/lexers/reasonml.rb +65 -0
  239. data/lib/rouge/lexers/rego.rb +45 -0
  240. data/lib/rouge/lexers/robot_framework.rb +249 -0
  241. data/lib/rouge/lexers/ruby.rb +88 -71
  242. data/lib/rouge/lexers/rust.rb +45 -44
  243. data/lib/rouge/lexers/sas.rb +563 -0
  244. data/lib/rouge/lexers/sass.rb +9 -8
  245. data/lib/rouge/lexers/sass/common.rb +41 -40
  246. data/lib/rouge/lexers/scala.rb +67 -40
  247. data/lib/rouge/lexers/scheme.rb +19 -18
  248. data/lib/rouge/lexers/scss.rb +4 -3
  249. data/lib/rouge/lexers/sed.rb +31 -30
  250. data/lib/rouge/lexers/shell.rb +67 -55
  251. data/lib/rouge/lexers/sieve.rb +10 -9
  252. data/lib/rouge/lexers/slice.rb +32 -0
  253. data/lib/rouge/lexers/slim.rb +27 -26
  254. data/lib/rouge/lexers/smalltalk.rb +34 -33
  255. data/lib/rouge/lexers/smarty.rb +20 -19
  256. data/lib/rouge/lexers/sml.rb +68 -67
  257. data/lib/rouge/lexers/solidity.rb +185 -0
  258. data/lib/rouge/lexers/sparql.rb +129 -0
  259. data/lib/rouge/lexers/sqf.rb +109 -0
  260. data/lib/rouge/lexers/sqf/commands.rb +15 -0
  261. data/lib/rouge/lexers/sql.rb +47 -26
  262. data/lib/rouge/lexers/supercollider.rb +116 -0
  263. data/lib/rouge/lexers/swift.rb +49 -44
  264. data/lib/rouge/lexers/tap.rb +22 -20
  265. data/lib/rouge/lexers/tcl.rb +28 -27
  266. data/lib/rouge/lexers/terraform.rb +37 -13
  267. data/lib/rouge/lexers/tex.rb +20 -19
  268. data/lib/rouge/lexers/toml.rb +59 -20
  269. data/lib/rouge/lexers/tsx.rb +1 -0
  270. data/lib/rouge/lexers/ttcn3.rb +119 -0
  271. data/lib/rouge/lexers/tulip.rb +38 -36
  272. data/lib/rouge/lexers/turtle.rb +36 -38
  273. data/lib/rouge/lexers/twig.rb +1 -0
  274. data/lib/rouge/lexers/typescript.rb +12 -0
  275. data/lib/rouge/lexers/typescript/common.rb +1 -0
  276. data/lib/rouge/lexers/vala.rb +19 -18
  277. data/lib/rouge/lexers/varnish.rb +168 -0
  278. data/lib/rouge/lexers/vb.rb +28 -27
  279. data/lib/rouge/lexers/verilog.rb +27 -28
  280. data/lib/rouge/lexers/vhdl.rb +12 -11
  281. data/lib/rouge/lexers/viml.rb +15 -14
  282. data/lib/rouge/lexers/viml/keywords.rb +2 -0
  283. data/lib/rouge/lexers/vue.rb +15 -10
  284. data/lib/rouge/lexers/wollok.rb +27 -26
  285. data/lib/rouge/lexers/xml.rb +18 -21
  286. data/lib/rouge/lexers/xojo.rb +61 -0
  287. data/lib/rouge/lexers/xpath.rb +332 -0
  288. data/lib/rouge/lexers/xquery.rb +145 -0
  289. data/lib/rouge/lexers/yaml.rb +64 -61
  290. data/lib/rouge/lexers/yang.rb +147 -0
  291. data/lib/rouge/plugins/redcarpet.rb +9 -2
  292. data/lib/rouge/regex_lexer.rb +27 -25
  293. data/lib/rouge/template_lexer.rb +1 -0
  294. data/lib/rouge/tex_theme_renderer.rb +132 -0
  295. data/lib/rouge/text_analyzer.rb +1 -0
  296. data/lib/rouge/theme.rb +5 -0
  297. data/lib/rouge/themes/base16.rb +1 -0
  298. data/lib/rouge/themes/bw.rb +41 -0
  299. data/lib/rouge/themes/colorful.rb +1 -0
  300. data/lib/rouge/themes/github.rb +1 -0
  301. data/lib/rouge/themes/gruvbox.rb +1 -0
  302. data/lib/rouge/themes/igor_pro.rb +1 -0
  303. data/lib/rouge/themes/magritte.rb +78 -0
  304. data/lib/rouge/themes/molokai.rb +1 -0
  305. data/lib/rouge/themes/monokai.rb +1 -0
  306. data/lib/rouge/themes/monokai_sublime.rb +4 -1
  307. data/lib/rouge/themes/pastie.rb +2 -1
  308. data/lib/rouge/themes/thankful_eyes.rb +2 -1
  309. data/lib/rouge/themes/tulip.rb +2 -1
  310. data/lib/rouge/token.rb +31 -22
  311. data/lib/rouge/util.rb +3 -2
  312. data/lib/rouge/version.rb +2 -1
  313. data/rouge.gemspec +6 -3
  314. metadata +130 -8
  315. data/lib/rouge/lexers/apache/keywords.yml +0 -764
  316. data/lib/rouge/lexers/lasso/keywords.yml +0 -446
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
2
3
 
3
4
  module Rouge
4
5
  module Lexers
@@ -39,28 +40,28 @@ module Rouge
39
40
  )
40
41
 
41
42
  state :whitespace do
42
- rule /[\s\t\r\n]+/m, Text
43
+ rule %r/\s+/m, Text
43
44
  end
44
45
 
45
46
  state :root do
46
47
  mixin :whitespace
47
- rule /"""/, Str::Doc, :docstring
48
- rule %r{//(.*?)\n}, Comment::Single
48
+ rule %r/"""/, Str::Doc, :docstring
49
+ rule %r{//.*}, Comment::Single
49
50
  rule %r{/(\\\n)?[*](.|\n)*?[*](\\\n)?/}, Comment::Multiline
50
- rule /"/, Str, :string
51
+ rule %r/"/, Str, :string
51
52
  rule %r([~!%^&*+=\|?:<>/-]), Operator
52
- rule /(true|false|NULL)\b/, Name::Constant
53
+ rule %r/(true|false|NULL)\b/, Name::Constant
53
54
  rule %r{(?:[A-Z_][a-zA-Z0-9_]*)}, Name::Class
54
- rule /[()\[\],.';]/, Punctuation
55
+ rule %r/[()\[\],.';]/, Punctuation
55
56
 
56
57
  # Numbers
57
- rule /0[xX]([0-9a-fA-F_]*\.[0-9a-fA-F_]+|[0-9a-fA-F_]+)[pP][+\-]?[0-9_]+[fFL]?[i]?/, Num::Float
58
- rule /[0-9_]+(\.[0-9_]+[eE][+\-]?[0-9_]+|\.[0-9_]*|[eE][+\-]?[0-9_]+)[fFL]?[i]?/, Num::Float
59
- rule /\.(0|[1-9][0-9_]*)([eE][+\-]?[0-9_]+)?[fFL]?[i]?/, Num::Float
60
- rule /0[xX][0-9a-fA-F_]+/, Num::Hex
61
- rule /(0|[1-9][0-9_]*)([LUu]|Lu|LU|uL|UL)?/, Num::Integer
58
+ rule %r/0[xX]([0-9a-fA-F_]*\.[0-9a-fA-F_]+|[0-9a-fA-F_]+)[pP][+\-]?[0-9_]+[fFL]?[i]?/, Num::Float
59
+ rule %r/[0-9_]+(\.[0-9_]+[eE][+\-]?[0-9_]+|\.[0-9_]*|[eE][+\-]?[0-9_]+)[fFL]?[i]?/, Num::Float
60
+ rule %r/\.(0|[1-9][0-9_]*)([eE][+\-]?[0-9_]+)?[fFL]?[i]?/, Num::Float
61
+ rule %r/0[xX][0-9a-fA-F_]+/, Num::Hex
62
+ rule %r/(0|[1-9][0-9_]*)([LUu]|Lu|LU|uL|UL)?/, Num::Integer
62
63
 
63
- rule /[a-z_][a-z0-9_]*/io do |m|
64
+ rule %r/[a-z_][a-z0-9_]*/io do |m|
64
65
  match = m[0]
65
66
 
66
67
  if capabilities.include?(match)
@@ -76,17 +77,17 @@ module Rouge
76
77
  end
77
78
 
78
79
  state :string do
79
- rule /"/, Str, :pop!
80
- rule /\\([\\abfnrtv"']|x[a-fA-F0-9]{2,4}|[0-7]{1,3})/, Str::Escape
81
- rule /[^\\"\n]+/, Str
82
- rule /\\\n/, Str
83
- rule /\\/, Str # stray backslash
80
+ rule %r/"/, Str, :pop!
81
+ rule %r/\\([\\abfnrtv"']|x[a-fA-F0-9]{2,4}|[0-7]{1,3})/, Str::Escape
82
+ rule %r/[^\\"\n]+/, Str
83
+ rule %r/\\\n/, Str
84
+ rule %r/\\/, Str # stray backslash
84
85
  end
85
86
 
86
87
  state :docstring do
87
- rule /"""/, Str::Doc, :pop!
88
- rule /\n/, Str::Doc
89
- rule /./, Str::Doc
88
+ rule %r/"""/, Str::Doc, :pop!
89
+ rule %r/\n/, Str::Doc
90
+ rule %r/./, Str::Doc
90
91
  end
91
92
  end
92
93
  end
@@ -1,677 +1,229 @@
1
1
  # -*- coding: utf-8 -*- #
2
+ # frozen_string_literal: true
2
3
 
3
4
  module Rouge
4
5
  module Lexers
5
- load_lexer 'shell.rb'
6
6
 
7
- class Powershell < Shell
7
+ class Powershell < RegexLexer
8
8
  title 'powershell'
9
9
  desc 'powershell'
10
10
  tag 'powershell'
11
- aliases 'posh'
11
+ aliases 'posh', 'microsoftshell', 'msshell'
12
12
  filenames '*.ps1', '*.psm1', '*.psd1', '*.psrc', '*.pssc'
13
13
  mimetypes 'text/x-powershell'
14
14
 
15
+ # https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_functions_cmdletbindingattribute?view=powershell-6
15
16
  ATTRIBUTES = %w(
16
- CmdletBinding ConfirmImpact DefaultParameterSetName HelpURI SupportsPaging
17
- SupportsShouldProcess PositionalBinding
17
+ ConfirmImpact DefaultParameterSetName HelpURI PositionalBinding
18
+ SupportsPaging SupportsShouldProcess
19
+ )
20
+
21
+ # https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_automatic_variables?view=powershell-6
22
+ AUTO_VARS = %w(
23
+ \$\$ \$\? \$\^ \$_
24
+ \$args \$ConsoleFileName \$Error \$Event \$EventArgs \$EventSubscriber
25
+ \$ExecutionContext \$false \$foreach \$HOME \$Host \$input \$IsCoreCLR
26
+ \$IsLinux \$IsMacOS \$IsWindows \$LastExitCode \$Matches \$MyInvocation
27
+ \$NestedPromptLevel \$null \$PID \$PROFILE \$PSBoundParameters \$PSCmdlet
28
+ \$PSCommandPath \$PSCulture \$PSDebugContext \$PSHOME \$PSItem
29
+ \$PSScriptRoot \$PSSenderInfo \$PSUICulture \$PSVersionTable \$PWD
30
+ \$REPORTERRORSHOWEXCEPTIONCLASS \$REPORTERRORSHOWINNEREXCEPTION
31
+ \$REPORTERRORSHOWSOURCE \$REPORTERRORSHOWSTACKTRACE
32
+ \$SENDER \$ShellId \$StackTrace \$switch \$this \$true
18
33
  ).join('|')
19
34
 
35
+ # https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_reserved_words?view=powershell-6
20
36
  KEYWORDS = %w(
21
- Begin Exit Process Break Filter Return Catch Finally Sequence Class For
22
- Switch Continue ForEach Throw Data From Trap Define Function Try Do If
23
- Until DynamicParam In Using Else InlineScript Var ElseIf Parallel While
24
- End Param Workflow
37
+ assembly exit process base filter public begin finally return break for
38
+ sequence catch foreach static class from switch command function throw
39
+ configuration hidden trap continue if try data in type define
40
+ inlinescript until do interface using dynamicparam module var else
41
+ namespace while elseif parallel workflow end param enum private
25
42
  ).join('|')
26
43
 
44
+ # https://devblogs.microsoft.com/scripting/powertip-find-a-list-of-powershell-type-accelerators/
45
+ # ([PSObject].Assembly.GetType("System.Management.Automation.TypeAccelerators")::Get).Keys -join ' '
27
46
  KEYWORDS_TYPE = %w(
28
- bool byte char decimal double float int long object sbyte
29
- short string uint ulong ushort
47
+ Alias AllowEmptyCollection AllowEmptyString AllowNull ArgumentCompleter
48
+ array bool byte char CmdletBinding datetime decimal double DscResource
49
+ float single guid hashtable int int32 int16 long int64 ciminstance
50
+ cimclass cimtype cimconverter IPEndpoint NullString OutputType
51
+ ObjectSecurity Parameter PhysicalAddress pscredential PSDefaultValue
52
+ pslistmodifier psobject pscustomobject psprimitivedictionary ref
53
+ PSTypeNameAttribute regex DscProperty sbyte string SupportsWildcards
54
+ switch cultureinfo bigint securestring timespan uint16 uint32 uint64
55
+ uri ValidateCount ValidateDrive ValidateLength ValidateNotNull
56
+ ValidateNotNullOrEmpty ValidatePattern ValidateRange ValidateScript
57
+ ValidateSet ValidateTrustedData ValidateUserDrive version void
58
+ ipaddress DscLocalConfigurationManager WildcardPattern X509Certificate
59
+ X500DistinguishedName xml CimSession adsi adsisearcher wmiclass wmi
60
+ wmisearcher mailaddress scriptblock psvariable type psmoduleinfo
61
+ powershell runspacefactory runspace initialsessionstate psscriptmethod
62
+ psscriptproperty psnoteproperty psaliasproperty psvariableproperty
30
63
  ).join('|')
31
64
 
32
65
  OPERATORS = %w(
33
- -split -isplit -csplit -join -is -isnot -as -eq -ieq -ceq -ne -ine
34
- -cne -gt -igt -cgt -ge -ige -cge -lt -ilt -clt -le -ile -cle -like
35
- -ilike -clike -notlike -inotlike -cnotlike -match -imatch -cmatch
36
- -notmatch -inotmatch -cnotmatch -contains -icontains -ccontains
37
- -notcontains -inotcontains -cnotcontains -replace -ireplace
38
- -creplace -band -bor -bxor -and -or -xor \. & = \+= -= \*= \/= %=
66
+ -split -isplit -csplit -join -is -isnot -as -eq -ieq -ceq -ne -ine -cne
67
+ -gt -igt -cgt -ge -ige -cge -lt -ilt -clt -le -ile -cle -like -ilike
68
+ -clike -notlike -inotlike -cnotlike -match -imatch -cmatch -notmatch
69
+ -inotmatch -cnotmatch -contains -icontains -ccontains -notcontains
70
+ -inotcontains -cnotcontains -replace -ireplace -creplace -shl -shr -band
71
+ -bor -bxor -and -or -xor -not \+= -= \*= \/= %=
39
72
  ).join('|')
40
73
 
41
- BUILTINS = %w(
42
- Add-ProvisionedAppxPackage Add-WindowsFeature Apply-WindowsUnattend
43
- Begin-WebCommitDelay Disable-PhysicalDiskIndication
44
- Disable-StorageDiagnosticLog Enable-PhysicalDiskIndication
45
- Enable-StorageDiagnosticLog End-WebCommitDelay Expand-IscsiVirtualDisk
46
- Flush-Volume Get-DiskSNV Get-PhysicalDiskSNV Get-ProvisionedAppxPackage
47
- Get-StorageEnclosureSNV Initialize-Volume Move-SmbClient
48
- Remove-ProvisionedAppxPackage Remove-WindowsFeature Write-FileSystemCache
49
- Add-BCDataCacheExtension Add-DnsClientNrptRule Add-DtcClusterTMMapping
50
- Add-EtwTraceProvider Add-InitiatorIdToMaskingSet Add-MpPreference
51
- Add-NetEventNetworkAdapter Add-NetEventPacketCaptureProvider
52
- Add-NetEventProvider Add-NetEventVFPProvider Add-NetEventVmNetworkAdapter
53
- Add-NetEventVmSwitch Add-NetEventVmSwitchProvider
54
- Add-NetEventWFPCaptureProvider Add-NetIPHttpsCertBinding Add-NetLbfoTeamMember
55
- Add-NetLbfoTeamNic Add-NetNatExternalAddress Add-NetNatStaticMapping
56
- Add-NetSwitchTeamMember Add-OdbcDsn Add-PartitionAccessPath Add-PhysicalDisk
57
- Add-Printer Add-PrinterDriver Add-PrinterPort Add-RDServer Add-RDSessionHost
58
- Add-RDVirtualDesktopToCollection Add-TargetPortToMaskingSet
59
- Add-VirtualDiskToMaskingSet Add-VpnConnection Add-VpnConnectionRoute
60
- Add-VpnConnectionTriggerApplication Add-VpnConnectionTriggerDnsConfiguration
61
- Add-VpnConnectionTriggerTrustedNetwork Block-FileShareAccess
62
- Block-SmbShareAccess Clear-AssignedAccess Clear-BCCache Clear-Disk
63
- Clear-DnsClientCache Clear-FileStorageTier Clear-PcsvDeviceLog
64
- Clear-StorageDiagnosticInfo Close-SmbOpenFile Close-SmbSession Compress-Archive
65
- Configuration Connect-IscsiTarget Connect-VirtualDisk ConvertFrom-SddlString
66
- Copy-NetFirewallRule Copy-NetIPsecMainModeCryptoSet Copy-NetIPsecMainModeRule
67
- Copy-NetIPsecPhase1AuthSet Copy-NetIPsecPhase2AuthSet
68
- Copy-NetIPsecQuickModeCryptoSet Copy-NetIPsecRule Debug-FileShare
69
- Debug-MMAppPrelaunch Debug-StorageSubSystem Debug-Volume Disable-BC
70
- Disable-BCDowngrading Disable-BCServeOnBattery
71
- Disable-DAManualEntryPointSelection Disable-DscDebug Disable-MMAgent
72
- Disable-NetAdapter Disable-NetAdapterBinding Disable-NetAdapterChecksumOffload
73
- Disable-NetAdapterEncapsulatedPacketTaskOffload Disable-NetAdapterIPsecOffload
74
- Disable-NetAdapterLso Disable-NetAdapterPacketDirect
75
- Disable-NetAdapterPowerManagement Disable-NetAdapterQos Disable-NetAdapterRdma
76
- Disable-NetAdapterRsc Disable-NetAdapterRss Disable-NetAdapterSriov
77
- Disable-NetAdapterVmq Disable-NetDnsTransitionConfiguration
78
- Disable-NetFirewallRule Disable-NetIPHttpsProfile Disable-NetIPsecMainModeRule
79
- Disable-NetIPsecRule Disable-NetNatTransitionConfiguration
80
- Disable-NetworkSwitchEthernetPort Disable-NetworkSwitchFeature
81
- Disable-NetworkSwitchVlan Disable-OdbcPerfCounter
82
- Disable-PhysicalDiskIdentification Disable-PnpDevice Disable-PSTrace
83
- Disable-PSWSManCombinedTrace Disable-RDVirtualDesktopADMachineAccountReuse
84
- Disable-ScheduledTask Disable-ServerManagerStandardUserRemoting
85
- Disable-SmbDelegation Disable-StorageEnclosureIdentification
86
- Disable-StorageHighAvailability Disable-StorageMaintenanceMode Disable-Ual
87
- Disable-WdacBidTrace Disable-WSManTrace Disconnect-IscsiTarget
88
- Disconnect-NfsSession Disconnect-RDUser Disconnect-VirtualDisk
89
- Dismount-DiskImage Enable-BCDistributed Enable-BCDowngrading
90
- Enable-BCHostedClient Enable-BCHostedServer Enable-BCLocal
91
- Enable-BCServeOnBattery Enable-DAManualEntryPointSelection Enable-DscDebug
92
- Enable-MMAgent Enable-NetAdapter Enable-NetAdapterBinding
93
- Enable-NetAdapterChecksumOffload Enable-NetAdapterEncapsulatedPacketTaskOffload
94
- Enable-NetAdapterIPsecOffload Enable-NetAdapterLso
95
- Enable-NetAdapterPacketDirect Enable-NetAdapterPowerManagement
96
- Enable-NetAdapterQos Enable-NetAdapterRdma Enable-NetAdapterRsc
97
- Enable-NetAdapterRss Enable-NetAdapterSriov Enable-NetAdapterVmq
98
- Enable-NetDnsTransitionConfiguration Enable-NetFirewallRule
99
- Enable-NetIPHttpsProfile Enable-NetIPsecMainModeRule Enable-NetIPsecRule
100
- Enable-NetNatTransitionConfiguration Enable-NetworkSwitchEthernetPort
101
- Enable-NetworkSwitchFeature Enable-NetworkSwitchVlan Enable-OdbcPerfCounter
102
- Enable-PhysicalDiskIdentification Enable-PnpDevice Enable-PSTrace
103
- Enable-PSWSManCombinedTrace Enable-RDVirtualDesktopADMachineAccountReuse
104
- Enable-ScheduledTask Enable-ServerManagerStandardUserRemoting
105
- Enable-SmbDelegation Enable-StorageEnclosureIdentification
106
- Enable-StorageHighAvailability Enable-StorageMaintenanceMode Enable-Ual
107
- Enable-WdacBidTrace Enable-WSManTrace Expand-Archive Export-BCCachePackage
108
- Export-BCSecretKey Export-IscsiTargetServerConfiguration
109
- Export-ODataEndpointProxy Export-RDPersonalSessionDesktopAssignment
110
- Export-RDPersonalVirtualDesktopAssignment Export-ScheduledTask
111
- Find-NetIPsecRule Find-NetRoute Format-Hex Format-Volume Get-AppBackgroundTask
112
- Get-AppvVirtualProcess Get-AppxLastError Get-AppxLog Get-AssignedAccess
113
- Get-AutologgerConfig Get-BCClientConfiguration Get-BCContentServerConfiguration
114
- Get-BCDataCache Get-BCDataCacheExtension Get-BCHashCache
115
- Get-BCHostedCacheServerConfiguration Get-BCNetworkConfiguration Get-BCStatus
116
- Get-ClusteredScheduledTask Get-DAClientExperienceConfiguration
117
- Get-DAConnectionStatus Get-DAEntryPointTableItem Get-DedupProperties Get-Disk
118
- Get-DiskImage Get-DiskStorageNodeView Get-DisplayResolution Get-DnsClient
119
- Get-DnsClientCache Get-DnsClientGlobalSetting Get-DnsClientNrptGlobal
120
- Get-DnsClientNrptPolicy Get-DnsClientNrptRule Get-DnsClientServerAddress
121
- Get-DscConfiguration Get-DscConfigurationStatus
122
- Get-DscLocalConfigurationManager Get-DscResource Get-Dtc
123
- Get-DtcAdvancedHostSetting Get-DtcAdvancedSetting Get-DtcClusterDefault
124
- Get-DtcClusterTMMapping Get-DtcDefault Get-DtcLog Get-DtcNetworkSetting
125
- Get-DtcTransaction Get-DtcTransactionsStatistics
126
- Get-DtcTransactionsTraceSession Get-DtcTransactionsTraceSetting
127
- Get-EtwTraceProvider Get-EtwTraceSession Get-FileHash Get-FileIntegrity
128
- Get-FileShare Get-FileShareAccessControlEntry Get-FileStorageTier
129
- Get-InitiatorId Get-InitiatorPort Get-IscsiConnection Get-IscsiSession
130
- Get-IscsiTarget Get-IscsiTargetPortal Get-IseSnippet Get-LogProperties
131
- Get-MaskingSet Get-MMAgent Get-MpComputerStatus Get-MpPreference Get-MpThreat
132
- Get-MpThreatCatalog Get-MpThreatDetection Get-NCSIPolicyConfiguration
133
- Get-Net6to4Configuration Get-NetAdapter Get-NetAdapterAdvancedProperty
134
- Get-NetAdapterBinding Get-NetAdapterChecksumOffload
135
- Get-NetAdapterEncapsulatedPacketTaskOffload Get-NetAdapterHardwareInfo
136
- Get-NetAdapterIPsecOffload Get-NetAdapterLso Get-NetAdapterPacketDirect
137
- Get-NetAdapterPowerManagement Get-NetAdapterQos Get-NetAdapterRdma
138
- Get-NetAdapterRsc Get-NetAdapterRss Get-NetAdapterSriov Get-NetAdapterSriovVf
139
- Get-NetAdapterStatistics Get-NetAdapterVmq Get-NetAdapterVMQQueue
140
- Get-NetAdapterVPort Get-NetCompartment Get-NetConnectionProfile
141
- Get-NetDnsTransitionConfiguration Get-NetDnsTransitionMonitoring
142
- Get-NetEventNetworkAdapter Get-NetEventPacketCaptureProvider
143
- Get-NetEventProvider Get-NetEventSession Get-NetEventVFPProvider
144
- Get-NetEventVmNetworkAdapter Get-NetEventVmSwitch Get-NetEventVmSwitchProvider
145
- Get-NetEventWFPCaptureProvider Get-NetFirewallAddressFilter
146
- Get-NetFirewallApplicationFilter Get-NetFirewallInterfaceFilter
147
- Get-NetFirewallInterfaceTypeFilter Get-NetFirewallPortFilter
148
- Get-NetFirewallProfile Get-NetFirewallRule Get-NetFirewallSecurityFilter
149
- Get-NetFirewallServiceFilter Get-NetFirewallSetting Get-NetIPAddress
150
- Get-NetIPConfiguration Get-NetIPHttpsConfiguration Get-NetIPHttpsState
151
- Get-NetIPInterface Get-NetIPsecDospSetting Get-NetIPsecMainModeCryptoSet
152
- Get-NetIPsecMainModeRule Get-NetIPsecMainModeSA Get-NetIPsecPhase1AuthSet
153
- Get-NetIPsecPhase2AuthSet Get-NetIPsecQuickModeCryptoSet
154
- Get-NetIPsecQuickModeSA Get-NetIPsecRule Get-NetIPv4Protocol
155
- Get-NetIPv6Protocol Get-NetIsatapConfiguration Get-NetLbfoTeam
156
- Get-NetLbfoTeamMember Get-NetLbfoTeamNic Get-NetNat Get-NetNatExternalAddress
157
- Get-NetNatGlobal Get-NetNatSession Get-NetNatStaticMapping
158
- Get-NetNatTransitionConfiguration Get-NetNatTransitionMonitoring
159
- Get-NetNeighbor Get-NetOffloadGlobalSetting Get-NetPrefixPolicy
160
- Get-NetQosPolicy Get-NetRoute Get-NetSwitchTeam Get-NetSwitchTeamMember
161
- Get-NetTCPConnection Get-NetTCPSetting Get-NetTeredoConfiguration
162
- Get-NetTeredoState Get-NetTransportFilter Get-NetUDPEndpoint Get-NetUDPSetting
163
- Get-NetworkSwitchEthernetPort Get-NetworkSwitchFeature
164
- Get-NetworkSwitchGlobalData Get-NetworkSwitchVlan Get-NfsClientConfiguration
165
- Get-NfsClientgroup Get-NfsClientLock Get-NfsMappingStore Get-NfsMountedClient
166
- Get-NfsNetgroupStore Get-NfsOpenFile Get-NfsServerConfiguration Get-NfsSession
167
- Get-NfsShare Get-NfsSharePermission Get-NfsStatistics Get-OdbcDriver
168
- Get-OdbcDsn Get-OdbcPerfCounter Get-OffloadDataTransferSetting Get-Partition
169
- Get-PartitionSupportedSize Get-PcsvDevice Get-PcsvDeviceLog Get-PhysicalDisk
170
- Get-PhysicalDiskStorageNodeView Get-PhysicalExtent
171
- Get-PhysicalExtentAssociation Get-PlatformIdentifier Get-PnpDevice
172
- Get-PnpDeviceProperty Get-PrintConfiguration Get-Printer Get-PrinterDriver
173
- Get-PrinterPort Get-PrinterProperty Get-PrintJob Get-RDAvailableApp
174
- Get-RDCertificate Get-RDConnectionBrokerHighAvailability
175
- Get-RDDeploymentGatewayConfiguration Get-RDFileTypeAssociation
176
- Get-RDLicenseConfiguration Get-RDPersonalSessionDesktopAssignment
177
- Get-RDPersonalVirtualDesktopAssignment
178
- Get-RDPersonalVirtualDesktopPatchSchedule Get-RDRemoteApp Get-RDRemoteDesktop
179
- Get-RDServer Get-RDSessionCollection Get-RDSessionCollectionConfiguration
180
- Get-RDSessionHost Get-RDUserSession Get-RDVirtualDesktop
181
- Get-RDVirtualDesktopCollection Get-RDVirtualDesktopCollectionConfiguration
182
- Get-RDVirtualDesktopCollectionJobStatus Get-RDVirtualDesktopConcurrency
183
- Get-RDVirtualDesktopIdleCount Get-RDVirtualDesktopTemplateExportPath
184
- Get-RDWorkspace Get-ResiliencySetting Get-ScheduledTask Get-ScheduledTaskInfo
185
- Get-SilComputer Get-SilComputerIdentity Get-SilData Get-SilLogging
186
- Get-SilSoftware Get-SilUalAccess Get-SilWindowsUpdate Get-SmbBandWidthLimit
187
- Get-SmbClientConfiguration Get-SmbClientNetworkInterface Get-SmbConnection
188
- Get-SmbDelegation Get-SmbMapping Get-SmbMultichannelConnection
189
- Get-SmbMultichannelConstraint Get-SmbOpenFile Get-SmbServerConfiguration
190
- Get-SmbServerNetworkInterface Get-SmbSession Get-SmbShare Get-SmbShareAccess
191
- Get-SmbWitnessClient Get-SMCounterSample Get-SMPerformanceCollector
192
- Get-SMServerBpaResult Get-SMServerClusterName Get-SMServerEvent
193
- Get-SMServerFeature Get-SMServerInventory Get-SMServerService Get-StartApps
194
- Get-StorageAdvancedProperty Get-StorageDiagnosticInfo Get-StorageEnclosure
195
- Get-StorageEnclosureStorageNodeView Get-StorageEnclosureVendorData
196
- Get-StorageFaultDomain Get-StorageFileServer Get-StorageFirmwareInformation
197
- Get-StorageHealthAction Get-StorageHealthReport Get-StorageHealthSetting
198
- Get-StorageJob Get-StorageNode Get-StoragePool Get-StorageProvider
199
- Get-StorageReliabilityCounter Get-StorageSetting Get-StorageSubSystem
200
- Get-StorageTier Get-StorageTierSupportedSize Get-SupportedClusterSizes
201
- Get-SupportedFileSystems Get-TargetPort Get-TargetPortal Get-Ual
202
- Get-UalDailyAccess Get-UalDailyDeviceAccess Get-UalDailyUserAccess
203
- Get-UalDeviceAccess Get-UalDns Get-UalHyperV Get-UalOverview
204
- Get-UalServerDevice Get-UalServerUser Get-UalSystemId Get-UalUserAccess
205
- Get-VirtualDisk Get-VirtualDiskSupportedSize Get-Volume
206
- Get-VolumeCorruptionCount Get-VolumeScrubPolicy Get-VpnConnection
207
- Get-VpnConnectionTrigger Get-WdacBidTrace Get-WindowsFeature
208
- Get-WindowsUpdateLog Grant-FileShareAccess Grant-NfsSharePermission
209
- Grant-RDOUAccess Grant-SmbShareAccess Hide-VirtualDisk Import-BCCachePackage
210
- Import-BCSecretKey Import-IscsiTargetServerConfiguration Import-IseSnippet
211
- Import-PowerShellDataFile Import-RDPersonalSessionDesktopAssignment
212
- Import-RDPersonalVirtualDesktopAssignment Initialize-Disk Install-Dtc
213
- Install-WindowsFeature Invoke-AsWorkflow Invoke-RDUserLogoff Mount-DiskImage
214
- Move-RDVirtualDesktop Move-SmbWitnessClient New-AutologgerConfig
215
- New-DAEntryPointTableItem New-DscChecksum New-EapConfiguration
216
- New-EtwTraceSession New-FileShare New-Guid New-IscsiTargetPortal New-IseSnippet
217
- New-MaskingSet New-NetAdapterAdvancedProperty New-NetEventSession
218
- New-NetFirewallRule New-NetIPAddress New-NetIPHttpsConfiguration
219
- New-NetIPsecDospSetting New-NetIPsecMainModeCryptoSet New-NetIPsecMainModeRule
220
- New-NetIPsecPhase1AuthSet New-NetIPsecPhase2AuthSet
221
- New-NetIPsecQuickModeCryptoSet New-NetIPsecRule New-NetLbfoTeam New-NetNat
222
- New-NetNatTransitionConfiguration New-NetNeighbor New-NetQosPolicy New-NetRoute
223
- New-NetSwitchTeam New-NetTransportFilter New-NetworkSwitchVlan
224
- New-NfsClientgroup New-NfsShare New-Partition New-PSWorkflowSession
225
- New-RDCertificate New-RDPersonalVirtualDesktopPatchSchedule New-RDRemoteApp
226
- New-RDSessionCollection New-RDSessionDeployment New-RDVirtualDesktopCollection
227
- New-RDVirtualDesktopDeployment New-ScheduledTask New-ScheduledTaskAction
228
- New-ScheduledTaskPrincipal New-ScheduledTaskSettingsSet
229
- New-ScheduledTaskTrigger New-SmbMapping New-SmbMultichannelConstraint
230
- New-SmbShare New-StorageFileServer New-StoragePool
231
- New-StorageSubsystemVirtualDisk New-StorageTier New-TemporaryFile
232
- New-VirtualDisk New-VirtualDiskClone New-VirtualDiskSnapshot New-Volume
233
- New-VpnServerAddress Open-NetGPO Optimize-StoragePool Optimize-Volume
234
- Publish-BCFileContent Publish-BCWebContent Publish-SilData Read-PrinterNfcTag
235
- Register-ClusteredScheduledTask Register-DnsClient Register-IscsiSession
236
- Register-ScheduledTask Register-StorageSubsystem Remove-AutologgerConfig
237
- Remove-BCDataCacheExtension Remove-DAEntryPointTableItem
238
- Remove-DnsClientNrptRule Remove-DscConfigurationDocument
239
- Remove-DtcClusterTMMapping Remove-EtwTraceProvider Remove-EtwTraceSession
240
- Remove-FileShare Remove-InitiatorId Remove-InitiatorIdFromMaskingSet
241
- Remove-IscsiTargetPortal Remove-MaskingSet Remove-MpPreference Remove-MpThreat
242
- Remove-NetAdapterAdvancedProperty Remove-NetEventNetworkAdapter
243
- Remove-NetEventPacketCaptureProvider Remove-NetEventProvider
244
- Remove-NetEventSession Remove-NetEventVFPProvider
245
- Remove-NetEventVmNetworkAdapter Remove-NetEventVmSwitch
246
- Remove-NetEventVmSwitchProvider Remove-NetEventWFPCaptureProvider
247
- Remove-NetFirewallRule Remove-NetIPAddress Remove-NetIPHttpsCertBinding
248
- Remove-NetIPHttpsConfiguration Remove-NetIPsecDospSetting
249
- Remove-NetIPsecMainModeCryptoSet Remove-NetIPsecMainModeRule
250
- Remove-NetIPsecMainModeSA Remove-NetIPsecPhase1AuthSet
251
- Remove-NetIPsecPhase2AuthSet Remove-NetIPsecQuickModeCryptoSet
252
- Remove-NetIPsecQuickModeSA Remove-NetIPsecRule Remove-NetLbfoTeam
253
- Remove-NetLbfoTeamMember Remove-NetLbfoTeamNic Remove-NetNat
254
- Remove-NetNatExternalAddress Remove-NetNatStaticMapping
255
- Remove-NetNatTransitionConfiguration Remove-NetNeighbor Remove-NetQosPolicy
256
- Remove-NetRoute Remove-NetSwitchTeam Remove-NetSwitchTeamMember
257
- Remove-NetTransportFilter Remove-NetworkSwitchEthernetPortIPAddress
258
- Remove-NetworkSwitchVlan Remove-NfsClientgroup Remove-NfsShare Remove-OdbcDsn
259
- Remove-Partition Remove-PartitionAccessPath Remove-PhysicalDisk Remove-Printer
260
- Remove-PrinterDriver Remove-PrinterPort Remove-PrintJob
261
- Remove-RDDatabaseConnectionString Remove-RDPersonalSessionDesktopAssignment
262
- Remove-RDPersonalVirtualDesktopAssignment
263
- Remove-RDPersonalVirtualDesktopPatchSchedule Remove-RDRemoteApp Remove-RDServer
264
- Remove-RDSessionCollection Remove-RDSessionHost
265
- Remove-RDVirtualDesktopCollection Remove-RDVirtualDesktopFromCollection
266
- Remove-SmbBandwidthLimit Remove-SmbMapping Remove-SmbMultichannelConstraint
267
- Remove-SmbShare Remove-SMServerPerformanceLog Remove-StorageFileServer
268
- Remove-StorageHealthSetting Remove-StoragePool Remove-StorageTier
269
- Remove-TargetPortFromMaskingSet Remove-VirtualDisk
270
- Remove-VirtualDiskFromMaskingSet Remove-VpnConnection Remove-VpnConnectionRoute
271
- Remove-VpnConnectionTriggerApplication
272
- Remove-VpnConnectionTriggerDnsConfiguration
273
- Remove-VpnConnectionTriggerTrustedNetwork Rename-DAEntryPointTableItem
274
- Rename-MaskingSet Rename-NetAdapter Rename-NetFirewallRule
275
- Rename-NetIPHttpsConfiguration Rename-NetIPsecMainModeCryptoSet
276
- Rename-NetIPsecMainModeRule Rename-NetIPsecPhase1AuthSet
277
- Rename-NetIPsecPhase2AuthSet Rename-NetIPsecQuickModeCryptoSet
278
- Rename-NetIPsecRule Rename-NetLbfoTeam Rename-NetSwitchTeam
279
- Rename-NfsClientgroup Rename-Printer Repair-FileIntegrity Repair-VirtualDisk
280
- Repair-Volume Reset-BC Reset-DAClientExperienceConfiguration
281
- Reset-DAEntryPointTableItem Reset-DtcLog Reset-NCSIPolicyConfiguration
282
- Reset-Net6to4Configuration Reset-NetAdapterAdvancedProperty
283
- Reset-NetDnsTransitionConfiguration Reset-NetIPHttpsConfiguration
284
- Reset-NetIsatapConfiguration Reset-NetTeredoConfiguration Reset-NfsStatistics
285
- Reset-PhysicalDisk Reset-StorageReliabilityCounter Resize-Partition
286
- Resize-StorageTier Resize-VirtualDisk Resolve-NfsMappedIdentity
287
- Restart-NetAdapter Restart-PcsvDevice Restart-PrintJob Restore-DscConfiguration
288
- Restore-NetworkSwitchConfiguration Resume-PrintJob Revoke-FileShareAccess
289
- Revoke-NfsClientLock Revoke-NfsMountedClient Revoke-NfsOpenFile
290
- Revoke-NfsSharePermission Revoke-SmbShareAccess Save-NetGPO
291
- Save-NetworkSwitchConfiguration Send-EtwTraceSession Send-RDUserMessage
292
- Set-AssignedAccess Set-AutologgerConfig Set-BCAuthentication Set-BCCache
293
- Set-BCDataCacheEntryMaxAge Set-BCMinSMBLatency Set-BCSecretKey
294
- Set-ClusteredScheduledTask Set-DAClientExperienceConfiguration
295
- Set-DAEntryPointTableItem Set-Disk Set-DisplayResolution Set-DnsClient
296
- Set-DnsClientGlobalSetting Set-DnsClientNrptGlobal Set-DnsClientNrptRule
297
- Set-DnsClientServerAddress Set-DtcAdvancedHostSetting Set-DtcAdvancedSetting
298
- Set-DtcClusterDefault Set-DtcClusterTMMapping Set-DtcDefault Set-DtcLog
299
- Set-DtcNetworkSetting Set-DtcTransaction Set-DtcTransactionsTraceSession
300
- Set-DtcTransactionsTraceSetting Set-EtwTraceProvider Set-EtwTraceSession
301
- Set-FileIntegrity Set-FileShare Set-FileStorageTier Set-InitiatorPort
302
- Set-IscsiChapSecret Set-LogProperties Set-MMAgent Set-MpPreference
303
- Set-NCSIPolicyConfiguration Set-Net6to4Configuration Set-NetAdapter
304
- Set-NetAdapterAdvancedProperty Set-NetAdapterBinding
305
- Set-NetAdapterChecksumOffload Set-NetAdapterEncapsulatedPacketTaskOffload
306
- Set-NetAdapterIPsecOffload Set-NetAdapterLso Set-NetAdapterPacketDirect
307
- Set-NetAdapterPowerManagement Set-NetAdapterQos Set-NetAdapterRdma
308
- Set-NetAdapterRsc Set-NetAdapterRss Set-NetAdapterSriov Set-NetAdapterVmq
309
- Set-NetConnectionProfile Set-NetDnsTransitionConfiguration
310
- Set-NetEventPacketCaptureProvider Set-NetEventProvider Set-NetEventSession
311
- Set-NetEventVFPProvider Set-NetEventVmSwitchProvider
312
- Set-NetEventWFPCaptureProvider Set-NetFirewallAddressFilter
313
- Set-NetFirewallApplicationFilter Set-NetFirewallInterfaceFilter
314
- Set-NetFirewallInterfaceTypeFilter Set-NetFirewallPortFilter
315
- Set-NetFirewallProfile Set-NetFirewallRule Set-NetFirewallSecurityFilter
316
- Set-NetFirewallServiceFilter Set-NetFirewallSetting Set-NetIPAddress
317
- Set-NetIPHttpsConfiguration Set-NetIPInterface Set-NetIPsecDospSetting
318
- Set-NetIPsecMainModeCryptoSet Set-NetIPsecMainModeRule
319
- Set-NetIPsecPhase1AuthSet Set-NetIPsecPhase2AuthSet
320
- Set-NetIPsecQuickModeCryptoSet Set-NetIPsecRule Set-NetIPv4Protocol
321
- Set-NetIPv6Protocol Set-NetIsatapConfiguration Set-NetLbfoTeam
322
- Set-NetLbfoTeamMember Set-NetLbfoTeamNic Set-NetNat Set-NetNatGlobal
323
- Set-NetNatTransitionConfiguration Set-NetNeighbor Set-NetOffloadGlobalSetting
324
- Set-NetQosPolicy Set-NetRoute Set-NetTCPSetting Set-NetTeredoConfiguration
325
- Set-NetUDPSetting Set-NetworkSwitchEthernetPortIPAddress
326
- Set-NetworkSwitchPortMode Set-NetworkSwitchPortProperty
327
- Set-NetworkSwitchVlanProperty Set-NfsClientConfiguration Set-NfsClientgroup
328
- Set-NfsMappingStore Set-NfsNetgroupStore Set-NfsServerConfiguration
329
- Set-NfsShare Set-OdbcDriver Set-OdbcDsn Set-Partition
330
- Set-PcsvDeviceBootConfiguration Set-PcsvDeviceNetworkConfiguration
331
- Set-PcsvDeviceUserPassword Set-PhysicalDisk Set-PrintConfiguration Set-Printer
332
- Set-PrinterProperty Set-RDActiveManagementServer Set-RDCertificate
333
- Set-RDClientAccessName Set-RDConnectionBrokerHighAvailability
334
- Set-RDDatabaseConnectionString Set-RDDeploymentGatewayConfiguration
335
- Set-RDFileTypeAssociation Set-RDLicenseConfiguration
336
- Set-RDPersonalSessionDesktopAssignment Set-RDPersonalVirtualDesktopAssignment
337
- Set-RDPersonalVirtualDesktopPatchSchedule Set-RDRemoteApp Set-RDRemoteDesktop
338
- Set-RDSessionCollectionConfiguration Set-RDSessionHost
339
- Set-RDVirtualDesktopCollectionConfiguration Set-RDVirtualDesktopConcurrency
340
- Set-RDVirtualDesktopIdleCount Set-RDVirtualDesktopTemplateExportPath
341
- Set-RDWorkspace Set-ResiliencySetting Set-ScheduledTask Set-SilLogging
342
- Set-SmbBandwidthLimit Set-SmbClientConfiguration Set-SmbPathAcl
343
- Set-SmbServerConfiguration Set-SmbShare Set-StorageFileServer
344
- Set-StorageHealthSetting Set-StoragePool Set-StorageProvider Set-StorageSetting
345
- Set-StorageSubSystem Set-StorageTier Set-VirtualDisk Set-Volume
346
- Set-VolumeScrubPolicy Set-VpnConnection Set-VpnConnectionIPsecConfiguration
347
- Set-VpnConnectionProxy Set-VpnConnectionTriggerDnsConfiguration
348
- Set-VpnConnectionTriggerTrustedNetwork Show-NetFirewallRule Show-NetIPsecRule
349
- Show-VirtualDisk Start-AppBackgroundTask Start-AppvVirtualProcess
350
- Start-AutologgerConfig Start-Dtc Start-DtcTransactionsTraceSession Start-MpScan
351
- Start-MpWDOScan Start-NetEventSession Start-PcsvDevice Start-ScheduledTask
352
- Start-SilLogging Start-SMPerformanceCollector Start-StorageDiagnosticLog
353
- Start-Trace Stop-DscConfiguration Stop-Dtc Stop-DtcTransactionsTraceSession
354
- Stop-NetEventSession Stop-PcsvDevice Stop-RDVirtualDesktopCollectionJob
355
- Stop-ScheduledTask Stop-SilLogging Stop-SMPerformanceCollector
356
- Stop-StorageDiagnosticLog Stop-StorageJob Stop-Trace Suspend-PrintJob
357
- Sync-NetIPsecRule Test-Dtc Test-NetConnection Test-NfsMappingStore
358
- Test-RDOUAccess Test-RDVirtualDesktopADMachineAccountReuse
359
- Unblock-FileShareAccess Unblock-SmbShareAccess Uninstall-Dtc
360
- Uninstall-WindowsFeature Unregister-AppBackgroundTask
361
- Unregister-ClusteredScheduledTask Unregister-IscsiSession
362
- Unregister-ScheduledTask Unregister-StorageSubsystem Update-Disk
363
- Update-DscConfiguration Update-HostStorageCache Update-IscsiTarget
364
- Update-IscsiTargetPortal Update-MpSignature Update-NetIPsecRule
365
- Update-RDVirtualDesktopCollection Update-SmbMultichannelConnection
366
- Update-StorageFirmware Update-StoragePool Update-StorageProviderCache
367
- Write-DtcTransactionsTraceSession Write-PrinterNfcTag Write-VolumeCache
368
- Add-ADCentralAccessPolicyMember Add-ADComputerServiceAccount
369
- Add-ADDomainControllerPasswordReplicationPolicy
370
- Add-ADFineGrainedPasswordPolicySubject Add-ADGroupMember
371
- Add-ADPrincipalGroupMembership Add-ADResourcePropertyListMember
372
- Add-AppvClientConnectionGroup Add-AppvClientPackage Add-AppvPublishingServer
373
- Add-AppxPackage Add-AppxProvisionedPackage Add-AppxVolume Add-BitsFile
374
- Add-CertificateEnrollmentPolicyServer Add-ClusteriSCSITargetServerRole
375
- Add-Computer Add-Content Add-IscsiVirtualDiskTargetMapping Add-JobTrigger
376
- Add-KdsRootKey Add-LocalGroupMember Add-Member Add-SignerRule Add-Type
377
- Add-WebConfiguration Add-WebConfigurationLock Add-WebConfigurationProperty
378
- Add-WindowsCapability Add-WindowsDriver Add-WindowsImage Add-WindowsPackage
379
- Backup-AuditPolicy Backup-SecurityPolicy Backup-WebConfiguration
380
- Checkpoint-Computer Checkpoint-IscsiVirtualDisk Clear-ADAccountExpiration
381
- Clear-ADClaimTransformLink Clear-Content Clear-EventLog
382
- Clear-IISCentralCertProvider Clear-IISConfigCollection Clear-Item
383
- Clear-ItemProperty Clear-KdsCache Clear-RecycleBin Clear-Tpm
384
- Clear-UevAppxPackage Clear-UevConfiguration Clear-Variable
385
- Clear-WebCentralCertProvider Clear-WebConfiguration
386
- Clear-WebRequestTracingSetting Clear-WebRequestTracingSettings
387
- Clear-WindowsCorruptMountPoint Compare-Object Complete-BitsTransfer
388
- Complete-DtcDiagnosticTransaction Complete-Transaction Confirm-SecureBootUEFI
389
- Connect-WSMan ConvertFrom-CIPolicy ConvertFrom-Csv ConvertFrom-Json
390
- ConvertFrom-SecureString ConvertFrom-String ConvertFrom-StringData
391
- Convert-IscsiVirtualDisk Convert-Path Convert-String ConvertTo-Csv
392
- ConvertTo-Html ConvertTo-Json ConvertTo-SecureString ConvertTo-TpmOwnerAuth
393
- ConvertTo-WebApplication ConvertTo-Xml Copy-Item Copy-ItemProperty
394
- Debug-Process Debug-Runspace Disable-ADAccount Disable-ADOptionalFeature
395
- Disable-AppBackgroundTaskDiagnosticLog Disable-Appv
396
- Disable-AppvClientConnectionGroup Disable-ComputerRestore
397
- Disable-IISCentralCertProvider Disable-IISSharedConfig Disable-JobTrigger
398
- Disable-LocalUser Disable-PSBreakpoint Disable-RunspaceDebug
399
- Disable-ScheduledJob Disable-TlsCipherSuite Disable-TlsEccCurve
400
- Disable-TlsSessionTicketKey Disable-TpmAutoProvisioning Disable-Uev
401
- Disable-UevAppxPackage Disable-UevTemplate Disable-WebCentralCertProvider
402
- Disable-WebGlobalModule Disable-WebRequestTracing Disable-WindowsErrorReporting
403
- Disable-WindowsOptionalFeature Disable-WSManCredSSP Disconnect-WSMan
404
- Dismount-AppxVolume Dismount-IscsiVirtualDiskSnapshot Dismount-WindowsImage
405
- Edit-CIPolicyRule Enable-ADAccount Enable-ADOptionalFeature
406
- Enable-AppBackgroundTaskDiagnosticLog Enable-Appv
407
- Enable-AppvClientConnectionGroup Enable-ComputerRestore
408
- Enable-IISCentralCertProvider Enable-IISSharedConfig Enable-JobTrigger
409
- Enable-LocalUser Enable-PSBreakpoint Enable-RunspaceDebug Enable-ScheduledJob
410
- Enable-TlsCipherSuite Enable-TlsEccCurve Enable-TlsSessionTicketKey
411
- Enable-TpmAutoProvisioning Enable-Uev Enable-UevAppxPackage Enable-UevTemplate
412
- Enable-WebCentralCertProvider Enable-WebGlobalModule Enable-WebRequestTracing
413
- Enable-WindowsErrorReporting Enable-WindowsOptionalFeature Enable-WSManCredSSP
414
- Expand-WindowsCustomDataImage Expand-WindowsImage Export-Alias
415
- Export-BinaryMiLog Export-Certificate Export-Clixml Export-Counter Export-Csv
416
- Export-FormatData Export-IISConfiguration Export-IscsiVirtualDiskSnapshot
417
- Export-PfxCertificate Export-PSSession Export-StartLayout
418
- Export-TlsSessionTicketKey Export-UevConfiguration Export-UevPackage
419
- Export-WindowsDriver Export-WindowsImage Format-Custom Format-List
420
- Format-SecureBootUEFI Format-Table Format-Wide Get-Acl
421
- Get-ADAccountAuthorizationGroup Get-ADAccountResultantPasswordReplicationPolicy
422
- Get-ADAuthenticationPolicy Get-ADAuthenticationPolicySilo
423
- Get-ADCentralAccessPolicy Get-ADCentralAccessRule Get-ADClaimTransformPolicy
424
- Get-ADClaimType Get-ADComputer Get-ADComputerServiceAccount
425
- Get-ADDCCloningExcludedApplicationList Get-ADDefaultDomainPasswordPolicy
426
- Get-ADDomain Get-ADDomainController
427
- Get-ADDomainControllerPasswordReplicationPolicy
428
- Get-ADDomainControllerPasswordReplicationPolicyUsage
429
- Get-ADFineGrainedPasswordPolicy Get-ADFineGrainedPasswordPolicySubject
430
- Get-ADForest Get-ADGroup Get-ADGroupMember Get-ADObject Get-ADOptionalFeature
431
- Get-ADOrganizationalUnit Get-ADPrincipalGroupMembership
432
- Get-ADReplicationAttributeMetadata Get-ADReplicationConnection
433
- Get-ADReplicationFailure Get-ADReplicationPartnerMetadata
434
- Get-ADReplicationQueueOperation Get-ADReplicationSite Get-ADReplicationSiteLink
435
- Get-ADReplicationSiteLinkBridge Get-ADReplicationSubnet
436
- Get-ADReplicationUpToDatenessVectorTable Get-ADResourceProperty
437
- Get-ADResourcePropertyList Get-ADResourcePropertyValueType Get-ADRootDSE
438
- Get-ADServiceAccount Get-ADTrust Get-ADUser Get-ADUserResultantPasswordPolicy
439
- Get-Alias Get-AppLockerFileInformation Get-AppLockerPolicy
440
- Get-AppvClientApplication Get-AppvClientConfiguration
441
- Get-AppvClientConnectionGroup Get-AppvClientMode Get-AppvClientPackage
442
- Get-AppvPublishingServer Get-AppvStatus Get-AppxDefaultVolume Get-AppxPackage
443
- Get-AppxPackageManifest Get-AppxProvisionedPackage Get-AppxVolume
444
- Get-AuthenticodeSignature Get-BitsTransfer Get-BpaModel Get-BpaResult
445
- Get-Certificate Get-CertificateAutoEnrollmentPolicy
446
- Get-CertificateEnrollmentPolicyServer Get-CertificateNotificationTask
447
- Get-ChildItem Get-CimAssociatedInstance Get-CimClass Get-CimInstance
448
- Get-CimSession Get-CIPolicy Get-CIPolicyIdInfo Get-CIPolicyInfo Get-Clipboard
449
- Get-CmsMessage Get-ComputerInfo Get-ComputerRestorePoint Get-Content
450
- Get-ControlPanelItem Get-Counter Get-Credential Get-Culture Get-DAPolicyChange
451
- Get-Date Get-Event Get-EventLog Get-EventSubscriber Get-ExecutionPolicy
452
- Get-FormatData Get-Host Get-HotFix Get-IISAppPool Get-IISCentralCertProvider
453
- Get-IISConfigAttributeValue Get-IISConfigCollection
454
- Get-IISConfigCollectionElement Get-IISConfigElement Get-IISConfigSection
455
- Get-IISServerManager Get-IISSharedConfig Get-IISSite Get-IscsiServerTarget
456
- Get-IscsiTargetServerSetting Get-IscsiVirtualDisk Get-IscsiVirtualDiskSnapshot
457
- Get-Item Get-ItemProperty Get-ItemPropertyValue Get-JobTrigger
458
- Get-KdsConfiguration Get-KdsRootKey Get-LocalGroup Get-LocalGroupMember
459
- Get-LocalUser Get-Location Get-Member Get-NfsMappedIdentity Get-NfsNetgroup
460
- Get-PfxCertificate Get-PfxData Get-Process Get-PSBreakpoint Get-PSCallStack
461
- Get-PSDrive Get-PSProvider Get-Random Get-Runspace Get-RunspaceDebug
462
- Get-ScheduledJob Get-ScheduledJobOption Get-SecureBootPolicy Get-SecureBootUEFI
463
- Get-Service Get-SystemDriver Get-TimeZone Get-TlsCipherSuite Get-TlsEccCurve
464
- Get-Tpm Get-TpmEndorsementKeyInfo Get-TpmSupportedFeature Get-TraceSource
465
- Get-Transaction Get-TroubleshootingPack Get-TypeData Get-UevAppxPackage
466
- Get-UevConfiguration Get-UevStatus Get-UevTemplate Get-UevTemplateProgram
467
- Get-UICulture Get-Unique Get-Variable Get-WebAppDomain Get-WebApplication
468
- Get-WebAppPoolState Get-WebBinding Get-WebCentralCertProvider Get-WebConfigFile
469
- Get-WebConfiguration Get-WebConfigurationBackup Get-WebConfigurationLocation
470
- Get-WebConfigurationLock Get-WebConfigurationProperty Get-WebFilePath
471
- Get-WebGlobalModule Get-WebHandler Get-WebItemState Get-WebManagedModule
472
- Get-WebRequest Get-Website Get-WebsiteState Get-WebURL Get-WebVirtualDirectory
473
- Get-WheaMemoryPolicy Get-WIMBootEntry
474
- Get-WinAcceptLanguageFromLanguageListOptOut
475
- Get-WinCultureFromLanguageListOptOut Get-WinDefaultInputMethodOverride
476
- Get-WindowsCapability Get-WindowsDeveloperLicense Get-WindowsDriver
477
- Get-WindowsEdition Get-WindowsErrorReporting Get-WindowsImage
478
- Get-WindowsImageContent Get-WindowsOptionalFeature Get-WindowsPackage
479
- Get-WindowsSearchSetting Get-WinEvent Get-WinHomeLocation
480
- Get-WinLanguageBarOption Get-WinSystemLocale Get-WinUILanguageOverride
481
- Get-WinUserLanguageList Get-WmiObject Get-WSManCredSSP Get-WSManInstance
482
- Grant-ADAuthenticationPolicySiloAccess Group-Object Import-Alias
483
- Import-BinaryMiLog Import-Certificate Import-Clixml Import-Counter Import-Csv
484
- Import-IscsiVirtualDisk Import-LocalizedData Import-PfxCertificate
485
- Import-PSSession Import-StartLayout Import-TpmOwnerAuth Import-UevConfiguration
486
- Initialize-Tpm Install-ADServiceAccount Install-NfsMappingStore Invoke-BpaModel
487
- Invoke-CimMethod Invoke-CommandInDesktopPackage Invoke-DscResource
488
- Invoke-Expression Invoke-Item Invoke-RestMethod Invoke-TroubleshootingPack
489
- Invoke-WebRequest Invoke-WmiMethod Invoke-WSManAction
490
- Join-DtcDiagnosticResourceManager Join-Path Limit-EventLog Measure-Command
491
- Measure-Object Merge-CIPolicy Mount-AppvClientConnectionGroup
492
- Mount-AppvClientPackage Mount-AppxVolume Mount-IscsiVirtualDiskSnapshot
493
- Mount-WindowsImage Move-ADDirectoryServer
494
- Move-ADDirectoryServerOperationMasterRole Move-ADObject Move-AppxPackage
495
- Move-Item Move-ItemProperty New-ADAuthenticationPolicy
496
- New-ADAuthenticationPolicySilo New-ADCentralAccessPolicy
497
- New-ADCentralAccessRule New-ADClaimTransformPolicy New-ADClaimType
498
- New-ADComputer New-ADDCCloneConfigFile New-ADFineGrainedPasswordPolicy
499
- New-ADGroup New-ADObject New-ADOrganizationalUnit New-ADReplicationSite
500
- New-ADReplicationSiteLink New-ADReplicationSiteLinkBridge
501
- New-ADReplicationSubnet New-ADResourceProperty New-ADResourcePropertyList
502
- New-ADServiceAccount New-ADUser New-Alias New-AppLockerPolicy
503
- New-CertificateNotificationTask New-CimInstance New-CimSession
504
- New-CimSessionOption New-CIPolicy New-CIPolicyRule New-DtcDiagnosticTransaction
505
- New-Event New-EventLog New-FileCatalog New-IISConfigCollectionElement
506
- New-IISSite New-IscsiServerTarget New-IscsiVirtualDisk New-Item
507
- New-ItemProperty New-JobTrigger New-LocalGroup New-LocalUser
508
- New-NetIPsecAuthProposal New-NetIPsecMainModeCryptoProposal
509
- New-NetIPsecQuickModeCryptoProposal New-NfsMappedIdentity New-NfsNetgroup
510
- New-Object New-PSDrive New-PSWorkflowExecutionOption New-ScheduledJobOption
511
- New-SelfSignedCertificate New-Service New-TimeSpan New-TlsSessionTicketKey
512
- New-Variable New-WebApplication New-WebAppPool New-WebBinding New-WebFtpSite
513
- New-WebGlobalModule New-WebHandler New-WebManagedModule New-WebServiceProxy
514
- New-Website New-WebVirtualDirectory New-WindowsCustomImage New-WindowsImage
515
- New-WinEvent New-WinUserLanguageList New-WSManInstance New-WSManSessionOption
516
- Optimize-WindowsImage Out-File Out-GridView Out-Printer Out-String Pop-Location
517
- Protect-CmsMessage Publish-AppvClientPackage Publish-DscConfiguration
518
- Push-Location Read-Host Receive-DtcDiagnosticTransaction
519
- Register-CimIndicationEvent Register-EngineEvent Register-ObjectEvent
520
- Register-ScheduledJob Register-UevTemplate Register-WmiEvent
521
- Remove-ADAuthenticationPolicy Remove-ADAuthenticationPolicySilo
522
- Remove-ADCentralAccessPolicy Remove-ADCentralAccessPolicyMember
523
- Remove-ADCentralAccessRule Remove-ADClaimTransformPolicy Remove-ADClaimType
524
- Remove-ADComputer Remove-ADComputerServiceAccount
525
- Remove-ADDomainControllerPasswordReplicationPolicy
526
- Remove-ADFineGrainedPasswordPolicy Remove-ADFineGrainedPasswordPolicySubject
527
- Remove-ADGroup Remove-ADGroupMember Remove-ADObject Remove-ADOrganizationalUnit
528
- Remove-ADPrincipalGroupMembership Remove-ADReplicationSite
529
- Remove-ADReplicationSiteLink Remove-ADReplicationSiteLinkBridge
530
- Remove-ADReplicationSubnet Remove-ADResourceProperty
531
- Remove-ADResourcePropertyList Remove-ADResourcePropertyListMember
532
- Remove-ADServiceAccount Remove-ADUser Remove-AppvClientConnectionGroup
533
- Remove-AppvClientPackage Remove-AppvPublishingServer Remove-AppxPackage
534
- Remove-AppxProvisionedPackage Remove-AppxVolume Remove-BitsTransfer
535
- Remove-CertificateEnrollmentPolicyServer Remove-CertificateNotificationTask
536
- Remove-CimInstance Remove-CimSession Remove-CIPolicyRule Remove-Computer
537
- Remove-Event Remove-EventLog Remove-IISConfigAttribute
538
- Remove-IISConfigCollectionElement Remove-IISConfigElement Remove-IISSite
539
- Remove-IscsiServerTarget Remove-IscsiVirtualDisk
540
- Remove-IscsiVirtualDiskSnapshot Remove-IscsiVirtualDiskTargetMapping
541
- Remove-Item Remove-ItemProperty Remove-JobTrigger Remove-LocalGroup
542
- Remove-LocalGroupMember Remove-LocalUser Remove-NfsMappedIdentity
543
- Remove-NfsNetgroup Remove-PSBreakpoint Remove-PSDrive Remove-TypeData
544
- Remove-Variable Remove-WebApplication Remove-WebAppPool Remove-WebBinding
545
- Remove-WebConfigurationBackup Remove-WebConfigurationLocation
546
- Remove-WebConfigurationLock Remove-WebConfigurationProperty
547
- Remove-WebGlobalModule Remove-WebHandler Remove-WebManagedModule Remove-Website
548
- Remove-WebVirtualDirectory Remove-WindowsCapability Remove-WindowsDriver
549
- Remove-WindowsImage Remove-WindowsPackage Remove-WmiObject Remove-WSManInstance
550
- Rename-ADObject Rename-Computer Rename-Item Rename-ItemProperty
551
- Rename-LocalGroup Rename-LocalUser Rename-WebConfigurationLocation
552
- Repair-AppvClientConnectionGroup Repair-AppvClientPackage
553
- Repair-UevTemplateIndex Repair-WindowsImage Reset-ADServiceAccountPassword
554
- Reset-ComputerMachinePassword Reset-IISServerManager Resize-IscsiVirtualDisk
555
- Resolve-DnsName Resolve-Path Restart-Computer Restart-Service
556
- Restart-WebAppPool Restart-WebItem Restore-ADObject Restore-AuditPolicy
557
- Restore-Computer Restore-IscsiVirtualDisk Restore-SecurityPolicy
558
- Restore-UevBackup Restore-UevUserSetting Restore-WebConfiguration
559
- Resume-BitsTransfer Resume-Service Revoke-ADAuthenticationPolicySiloAccess
560
- Save-WindowsImage Search-ADAccount Select-Object Select-String
561
- Select-WebConfiguration Select-Xml Send-AppvClientReport
562
- Send-DtcDiagnosticTransaction Send-MailMessage Set-Acl
563
- Set-ADAccountAuthenticationPolicySilo Set-ADAccountControl
564
- Set-ADAccountExpiration Set-ADAccountPassword Set-ADAuthenticationPolicy
565
- Set-ADAuthenticationPolicySilo Set-ADCentralAccessPolicy
566
- Set-ADCentralAccessRule Set-ADClaimTransformLink Set-ADClaimTransformPolicy
567
- Set-ADClaimType Set-ADComputer Set-ADDefaultDomainPasswordPolicy Set-ADDomain
568
- Set-ADDomainMode Set-ADFineGrainedPasswordPolicy Set-ADForest Set-ADForestMode
569
- Set-ADGroup Set-ADObject Set-ADOrganizationalUnit Set-ADReplicationConnection
570
- Set-ADReplicationSite Set-ADReplicationSiteLink Set-ADReplicationSiteLinkBridge
571
- Set-ADReplicationSubnet Set-ADResourceProperty Set-ADResourcePropertyList
572
- Set-ADServiceAccount Set-ADUser Set-Alias Set-AppBackgroundTaskResourcePolicy
573
- Set-AppLockerPolicy Set-AppvClientConfiguration Set-AppvClientMode
574
- Set-AppvClientPackage Set-AppvPublishingServer Set-AppxDefaultVolume
575
- Set-AppXProvisionedDataFile Set-AuthenticodeSignature Set-BitsTransfer
576
- Set-BpaResult Set-CertificateAutoEnrollmentPolicy Set-CimInstance
577
- Set-CIPolicyIdInfo Set-CIPolicySetting Set-CIPolicyVersion Set-Clipboard
578
- Set-Content Set-Culture Set-Date Set-DscLocalConfigurationManager
579
- Set-ExecutionPolicy Set-HVCIOptions Set-IISCentralCertProvider
580
- Set-IISCentralCertProviderCredential Set-IISConfigAttributeValue
581
- Set-IscsiServerTarget Set-IscsiTargetServerSetting Set-IscsiVirtualDisk
582
- Set-IscsiVirtualDiskSnapshot Set-Item Set-ItemProperty Set-JobTrigger
583
- Set-KdsConfiguration Set-LocalGroup Set-LocalUser Set-Location
584
- Set-NfsMappedIdentity Set-NfsNetgroup Set-PSBreakpoint Set-RuleOption
585
- Set-ScheduledJob Set-ScheduledJobOption Set-SecureBootUEFI Set-Service
586
- Set-TimeZone Set-TpmOwnerAuth Set-TraceSource Set-UevConfiguration
587
- Set-UevTemplateProfile Set-Variable Set-WebBinding Set-WebCentralCertProvider
588
- Set-WebCentralCertProviderCredential Set-WebConfiguration
589
- Set-WebConfigurationProperty Set-WebGlobalModule Set-WebHandler
590
- Set-WebManagedModule Set-WheaMemoryPolicy
591
- Set-WinAcceptLanguageFromLanguageListOptOut
592
- Set-WinCultureFromLanguageListOptOut Set-WinDefaultInputMethodOverride
593
- Set-WindowsEdition Set-WindowsProductKey Set-WindowsSearchSetting
594
- Set-WinHomeLocation Set-WinLanguageBarOption Set-WinSystemLocale
595
- Set-WinUILanguageOverride Set-WinUserLanguageList Set-WmiInstance
596
- Set-WSManInstance Set-WSManQuickConfig Show-ADAuthenticationPolicyExpression
597
- Show-Command Show-ControlPanelItem Show-EventLog
598
- Show-WindowsDeveloperLicenseRegistration Sort-Object Split-Path
599
- Split-WindowsImage Start-BitsTransfer Start-DscConfiguration
600
- Start-DtcDiagnosticResourceManager Start-IISCommitDelay Start-IISSite
601
- Start-Process Start-Service Start-Sleep Start-Transaction Start-Transcript
602
- Start-WebAppPool Start-WebCommitDelay Start-WebItem Start-Website
603
- Stop-AppvClientConnectionGroup Stop-AppvClientPackage Stop-Computer
604
- Stop-DtcDiagnosticResourceManager Stop-IISCommitDelay Stop-IISSite
605
- Stop-IscsiVirtualDiskOperation Stop-Process Stop-Service Stop-Transcript
606
- Stop-WebAppPool Stop-WebCommitDelay Stop-WebItem Stop-Website
607
- Suspend-BitsTransfer Suspend-Service Switch-Certificate Sync-ADObject
608
- Sync-AppvPublishingServer Tee-Object Test-ADServiceAccount Test-AppLockerPolicy
609
- Test-Certificate Test-ComputerSecureChannel Test-Connection
610
- Test-DscConfiguration Test-FileCatalog Test-KdsRootKey Test-NfsMappedIdentity
611
- Test-Path Test-UevTemplate Test-WSMan Trace-Command Unblock-File Unblock-Tpm
612
- Undo-DtcDiagnosticTransaction Undo-Transaction Uninstall-ADServiceAccount
613
- Unlock-ADAccount Unprotect-CmsMessage Unpublish-AppvClientPackage
614
- Unregister-Event Unregister-ScheduledJob Unregister-UevTemplate
615
- Unregister-WindowsDeveloperLicense Update-FormatData Update-List
616
- Update-TypeData Update-UevTemplate Update-WIMBootEntry Use-Transaction
617
- Use-WindowsUnattend Wait-Debugger Wait-Event Wait-Process Write-Debug
618
- Write-Error Write-EventLog Write-Host Write-Information Write-Output
619
- Write-Progress Write-Verbose Write-Warning \% \? ac asnp cat cd chdir clc clear
620
- clhy cli clp cls clv cnsn compare copy cp cpi cpp curl cvpa dbp del diff dir
621
- dnsn ebp echo epal epcsv epsn erase etsn exsn fc fl foreach ft fw gal gbp gc
622
- gci gcm gcs gdr ghy gi gjb gl gm gmo gp gps gpv group gsn gsnp gsv gu gv gwmi h
623
- history icm iex ihy ii ipal ipcsv ipmo ipsn irm ise iwmi iwr kill lp ls man md
624
- measure mi mount move mp mv nal ndr ni nmo npssc nsn nv ogv oh popd ps pushd
625
- pwd r rbp rcjb rcsn rd rdr ren ri rjb rm rmdir rmo rni rnp rp rsn rsnp rujb rv
626
- rvpa rwmi sajb sal saps sasv sbp sc select set shcm si sl sleep sls sort sp
627
- spjb spps spsv start sujb sv swmi tee trcm type wget where wjb write
74
+ MULTILINE_KEYWORDS = %w(
75
+ synopsis description parameter example inputs outputs notes link
76
+ component role functionality forwardhelptargetname forwardhelpcategory
77
+ remotehelprunspace externalhelp
628
78
  ).join('|')
629
79
 
630
- # Override from Shell
631
- state :interp do
632
- rule /`$/, Str::Escape # line continuation
633
- rule /`./, Str::Escape
634
- rule /\$\(\(/, Keyword, :math
635
- rule /\$\(/, Keyword, :paren
636
- rule /\${#?/, Keyword, :curly
637
- rule /\$#?(\w+|.)/, Name::Variable
80
+ state :variable do
81
+ rule %r/#{AUTO_VARS}/, Name::Builtin::Pseudo
82
+ rule %r/(\$)(?:(\w+)(:))?(\w+|\{(?:[^`]|`.)+?\})/ do
83
+ groups Name::Variable, Name::Namespace, Punctuation, Name::Variable
84
+ end
85
+ rule %r/\$\w+/, Name::Variable
86
+ rule %r/\$\{(?:[^`]|`.)+?\}/, Name::Variable
87
+ end
88
+
89
+ state :multiline do
90
+ rule %r/\.(?:#{MULTILINE_KEYWORDS})/i, Comment::Special
91
+ rule %r/#>/, Comment::Multiline, :pop!
92
+ rule %r/[^#.]+?/m, Comment::Multiline
93
+ rule %r/[#.]+/, Comment::Multiline
638
94
  end
639
95
 
640
- # Override from Shell
641
- state :double_quotes do
96
+ state :interpol do
97
+ rule %r/\)/, Str::Interpol, :pop!
98
+ mixin :root
99
+ end
100
+
101
+ state :dq do
642
102
  # NB: "abc$" is literally the string abc$.
643
103
  # Here we prevent :interp from interpreting $" as a variable.
644
- rule /(?:\$#?)?"/, Str::Double, :pop!
645
- mixin :interp
646
- rule /[^"`$]+/, Str::Double
104
+ rule %r/(?:\$#?)?"/, Str::Double, :pop!
105
+ rule %r/\$\(/, Str::Interpol, :interpol
106
+ rule %r/`$/, Str::Escape # line continuation
107
+ rule %r/`./, Str::Escape
108
+ rule %r/[^"`$]+/, Str::Double
109
+ mixin :variable
110
+ end
111
+
112
+ state :sq do
113
+ rule %r/'/, Str::Single, :pop!
114
+ rule %r/[^']+/, Str::Single
115
+ end
116
+
117
+ state :heredoc do
118
+ rule %r/(?:\$#?)?"@/, Str::Heredoc, :pop!
119
+ rule %r/\$\(/, Str::Interpol, :interpol
120
+ rule %r/`$/, Str::Escape # line continuation
121
+ rule %r/`./, Str::Escape
122
+ rule %r/[^"`$]+?/m, Str::Heredoc
123
+ rule %r/"+/, Str::Heredoc
124
+ mixin :variable
647
125
  end
648
126
 
649
- # Override from Shell
650
- state :data do
651
- rule /\s+/, Text
652
- rule /\$?"/, Str::Double, :double_quotes
653
- rule /\$'/, Str::Single, :ansi_string
127
+ state :class do
128
+ rule %r/\{/, Punctuation, :pop!
129
+ rule %r/\s+/, Text::Whitespace
130
+ rule %r/\w+/, Name::Class
131
+ rule %r/[:,]/, Punctuation
132
+ end
133
+
134
+ state :hasht do
135
+ rule %r/\s+/, Text::Whitespace
136
+ rule %r/\}/, Punctuation, :pop!
137
+ rule %r/"/, Str::Double, :dq
138
+ rule %r/'/, Str::Single, :sq
139
+ rule %r/\w+/, Name::Other
140
+ rule %r/=/, Operator
141
+ rule %r/,/, Punctuation
142
+ mixin :variable
143
+ end
654
144
 
655
- rule /'/, Str::Single, :single_quotes
145
+ state :array do
146
+ rule %r/\s+/, Text::Whitespace
147
+ rule %r/\)/, Punctuation, :pop!
148
+ rule %r/"/, Str::Double, :dq
149
+ rule %r/'/, Str::Single, :sq
150
+ rule %r/,/, Punctuation
151
+ mixin :variable
152
+ end
656
153
 
657
- rule /\*/, Keyword
154
+ state :bracket do
155
+ rule %r/\]/, Punctuation, :pop!
156
+ rule %r/[A-Za-z]\w+\./, Name::Constant
157
+ rule %r/([A-Za-z]\w+)/ do |m|
158
+ if ATTRIBUTES.include? m[0]
159
+ token Name::Builtin::Pseudo
160
+ else
161
+ token Keyword::Type
162
+ end
163
+ end
164
+ mixin :root
165
+ end
658
166
 
659
- rule /;/, Text
660
- rule /[^=\*\s{}()$"'`<]+/, Text
661
- rule /\d+(?= |\Z)/, Num
662
- rule /</, Text
663
- mixin :interp
167
+ state :parameters do
168
+ rule %r/\s*?\n/, Text::Whitespace, :pop!
169
+ rule %r/[;(){}\]]/, Punctuation, :pop!
170
+ rule %r/[|=]/, Operator, :pop!
171
+ rule %r/[\/\\~\w][-.:\/\\~\w]*/, Name::Other
172
+ rule %r/\w[-\w]+/, Name::Other
173
+ mixin :root
664
174
  end
665
175
 
666
- prepend :basic do
667
- rule %r(<#[\s,\S]*?#>)m, Comment::Multiline
668
- rule /#.*$/, Comment::Single
669
- rule /\b(#{OPERATORS})\s*\b/i, Operator
670
- rule /\b(#{ATTRIBUTES})\s*\b/i, Name::Attribute
671
- rule /\b(#{KEYWORDS})\s*\b/i, Keyword
672
- rule /\b(#{KEYWORDS_TYPE})\s*\b/i, Keyword::Type
673
- rule /\bcase\b/, Keyword, :case
674
- rule /\b(#{BUILTINS})\s*\b(?!\.)/i, Name::Builtin
176
+ state :root do
177
+ rule %r/\s+/, Text::Whitespace
178
+
179
+ rule %r/#requires\s-version \d(?:\.\d+)?/, Comment::Preproc
180
+ rule %r/#.*/, Comment
181
+ rule %r/<#/, Comment::Multiline, :multiline
182
+
183
+ rule %r/"/, Str::Double, :dq
184
+ rule %r/'/, Str::Single, :sq
185
+ rule %r/@"/, Str::Heredoc, :heredoc
186
+ rule %r/@'.*?'@/m, Str::Heredoc
187
+
188
+ rule %r/\d*\.\d+/, Num::Float
189
+ rule %r/\d+/, Num::Integer
190
+
191
+ rule %r/\.\.(?=\.?\d)/, Operator
192
+ rule %r/(?:#{OPERATORS})\b/i, Operator
193
+
194
+ rule %r/(class)(\s+)(\w+)/i do
195
+ groups Keyword::Reserved, Text::Whitespace, Name::Class
196
+ push :class
197
+ end
198
+ rule %r/(function)(\s+)(?:(\w+)(:))?(\w[-\w]+)/i do
199
+ groups Keyword::Reserved, Text::Whitespace, Name::Namespace, Punctuation, Name::Function
200
+ end
201
+ rule %r/(?:#{KEYWORDS})\b(?![-.])/i, Keyword::Reserved
202
+
203
+ rule %r/-{1,2}\w+/, Name::Tag
204
+
205
+ rule %r/(\.)?([-\w]+)(\[)/ do |m|
206
+ groups Operator, Name::Function, Punctuation
207
+ push :bracket
208
+ end
209
+
210
+ rule %r/([\/\\~\w][-.:\/\\~\w]*)(\n)?/ do |m|
211
+ groups Name::Function, Text::Whitespace
212
+ push :parameters unless m[2]
213
+ end
214
+
215
+ rule %r/(\.)?([-\w]+)(?:(\()|(\n))?/ do |m|
216
+ groups Operator, Name::Function, Punctuation, Text::Whitespace
217
+ push :parameters unless m[3]
218
+ end
219
+
220
+ rule %r/[-+*\/%=!.&|]/, Operator
221
+ rule %r/@\{/, Punctuation, :hasht
222
+ rule %r/@\(/, Punctuation, :array
223
+ rule %r/\[/, Punctuation, :bracket
224
+ rule %r/[{}(),:;]/, Punctuation
225
+
226
+ mixin :variable
675
227
  end
676
228
  end
677
229
  end