big-moving.ru/api/soft/monako/esm/vs/basic-languages/azcli/azcli.js

56 lines
1.8 KiB
JavaScript
Executable File

/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
'use strict';
export var conf = {
comments: {
lineComment: '#',
}
};
export var language = {
defaultToken: 'keyword',
ignoreCase: true,
tokenPostfix: '.azcli',
str: /[^#\s]/,
tokenizer: {
root: [
{ include: '@comment' },
[/\s-+@str*\s*/, {
cases: {
'@eos': { token: 'key.identifier', next: '@popall' },
'@default': { token: 'key.identifier', next: '@type' }
}
}],
[/^-+@str*\s*/, {
cases: {
'@eos': { token: 'key.identifier', next: '@popall' },
'@default': { token: 'key.identifier', next: '@type' }
}
}]
],
type: [
{ include: '@comment' },
[/-+@str*\s*/, {
cases: {
'@eos': { token: 'key.identifier', next: '@popall' },
'@default': 'key.identifier'
}
}],
[/@str+\s*/, {
cases: {
'@eos': { token: 'string', next: '@popall' },
'@default': 'string'
}
}]
],
comment: [
[/#.*$/, {
cases: {
'@eos': { token: 'comment', next: '@popall' }
}
}]
]
}
};