1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 |
- // CodeMirror, copyright (c) by Marijn Haverbeke and others
- // Distributed under an MIT license: https://codemirror.net/LICENSE
- ;(function () {
- var mode = CodeMirror.getMode({ indentUnit: 2 }, 'powershell')
- function MT(name) {
- test.mode(name, mode, Array.prototype.slice.call(arguments, 1))
- }
- function forEach(arr, f) {
- for (var i = 0; i < arr.length; i++) f(arr[i], i)
- }
- MT('comment', '[number 1][comment # A]')
- MT('comment_multiline', '[number 1][comment <#]', '[comment ABC]', '[comment #>][number 2]')
- forEach(
- [
- '0',
- '1234',
- '12kb',
- '12mb',
- '12Gb',
- '12Tb',
- '12PB',
- '12L',
- '12D',
- '12lkb',
- '12dtb',
- '1.234',
- '1.234e56',
- '1.',
- '1.e2',
- '.2',
- '.2e34',
- '1.2MB',
- '1.kb',
- '.1dTB',
- '1.e1gb',
- '.2',
- '.2e34',
- '0x1',
- '0xabcdef',
- '0x3tb',
- '0xelmb',
- ],
- function (number) {
- MT('number_' + number, '[number ' + number + ']')
- }
- )
- MT('string_literal_escaping', "[string 'a''']")
- MT('string_literal_variable', "[string 'a $x']")
- MT('string_escaping_1', '[string "a `""]')
- MT('string_escaping_2', '[string "a """]')
- MT('string_variable_escaping', '[string "a `$x"]')
- MT('string_variable', '[string "a ][variable-2 $x][string b"]')
- MT('string_variable_spaces', '[string "a ][variable-2 ${x y}][string b"]')
- MT('string_expression', '[string "a ][punctuation $(][variable-2 $x][operator +][number 3][punctuation )][string b"]')
- MT('string_expression_nested', '[string "A][punctuation $(][string "a][punctuation $(][string "w"][punctuation )][string b"][punctuation )][string B"]')
- MT('string_heredoc', '[string @"]', '[string abc]', '[string "@]')
- MT('string_heredoc_quotes', '[string @"]', '[string abc "\']', '[string "@]')
- MT('string_heredoc_variable', '[string @"]', '[string a ][variable-2 $x][string b]', '[string "@]')
- MT('string_heredoc_nested_string', '[string @"]', '[string a][punctuation $(][string "w"][punctuation )][string b]', '[string "@]')
- MT('string_heredoc_literal_quotes', "[string @']", '[string abc "\']', "[string '@]")
- MT('array', "[punctuation @(][string 'a'][punctuation ,][string 'b'][punctuation )]")
- MT('hash', "[punctuation @{][string 'key'][operator :][string 'value'][punctuation }]")
- MT('variable', '[variable-2 $test]')
- MT('variable_global', '[variable-2 $global:test]')
- MT('variable_spaces', '[variable-2 ${test test}]')
- MT('operator_splat', '[variable-2 @x]')
- MT('variable_builtin', '[builtin $ErrorActionPreference]')
- MT('variable_builtin_symbols', '[builtin $$]')
- MT('operator', '[operator +]')
- MT('operator_unary', '[operator +][number 3]')
- MT('operator_long', '[operator -match]')
- forEach(['(', ')', '[[', ']]', '{', '}', ',', '`', ';', '.', '\\'], function (punctuation) {
- MT('punctuation_' + punctuation.replace(/^[\[\]]/, ''), '[punctuation ' + punctuation + ']')
- })
- MT('keyword', '[keyword if]')
- MT('call_builtin', '[builtin Get-ChildItem]')
- })()
|