Socket
Socket
Sign inDemoInstall

highlight.js

Package Overview
Dependencies
Maintainers
5
Versions
101
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

highlight.js - npm Package Compare versions

Comparing version 10.4.0-beta1 to 10.4.0

116

lib/languages/abnf.js

@@ -9,70 +9,70 @@ /*

function abnf(hljs) {
var regexes = {
ruleDeclaration: "^[a-zA-Z][a-zA-Z0-9-]*",
unexpectedChars: "[!@#$^&',?+~`|:]"
};
const regexes = {
ruleDeclaration: "^[a-zA-Z][a-zA-Z0-9-]*",
unexpectedChars: "[!@#$^&',?+~`|:]"
};
var keywords = [
"ALPHA",
"BIT",
"CHAR",
"CR",
"CRLF",
"CTL",
"DIGIT",
"DQUOTE",
"HEXDIG",
"HTAB",
"LF",
"LWSP",
"OCTET",
"SP",
"VCHAR",
"WSP"
];
const keywords = [
"ALPHA",
"BIT",
"CHAR",
"CR",
"CRLF",
"CTL",
"DIGIT",
"DQUOTE",
"HEXDIG",
"HTAB",
"LF",
"LWSP",
"OCTET",
"SP",
"VCHAR",
"WSP"
];
var commentMode = hljs.COMMENT(";", "$");
const commentMode = hljs.COMMENT(";", "$");
var terminalBinaryMode = {
className: "symbol",
begin: /%b[0-1]+(-[0-1]+|(\.[0-1]+)+){0,1}/
};
const terminalBinaryMode = {
className: "symbol",
begin: /%b[0-1]+(-[0-1]+|(\.[0-1]+)+){0,1}/
};
var terminalDecimalMode = {
className: "symbol",
begin: /%d[0-9]+(-[0-9]+|(\.[0-9]+)+){0,1}/
};
const terminalDecimalMode = {
className: "symbol",
begin: /%d[0-9]+(-[0-9]+|(\.[0-9]+)+){0,1}/
};
var terminalHexadecimalMode = {
className: "symbol",
begin: /%x[0-9A-F]+(-[0-9A-F]+|(\.[0-9A-F]+)+){0,1}/,
};
const terminalHexadecimalMode = {
className: "symbol",
begin: /%x[0-9A-F]+(-[0-9A-F]+|(\.[0-9A-F]+)+){0,1}/
};
var caseSensitivityIndicatorMode = {
className: "symbol",
begin: /%[si]/
};
const caseSensitivityIndicatorMode = {
className: "symbol",
begin: /%[si]/
};
var ruleDeclarationMode = {
className: "attribute",
begin: regexes.ruleDeclaration + '(?=\\s*=)',
};
const ruleDeclarationMode = {
className: "attribute",
begin: regexes.ruleDeclaration + '(?=\\s*=)'
};
return {
name: 'Augmented Backus-Naur Form',
illegal: regexes.unexpectedChars,
keywords: keywords.join(" "),
contains: [
ruleDeclarationMode,
commentMode,
terminalBinaryMode,
terminalDecimalMode,
terminalHexadecimalMode,
caseSensitivityIndicatorMode,
hljs.QUOTE_STRING_MODE,
hljs.NUMBER_MODE
]
};
return {
name: 'Augmented Backus-Naur Form',
illegal: regexes.unexpectedChars,
keywords: keywords.join(" "),
contains: [
ruleDeclarationMode,
commentMode,
terminalBinaryMode,
terminalDecimalMode,
terminalHexadecimalMode,
caseSensitivityIndicatorMode,
hljs.QUOTE_STRING_MODE,
hljs.NUMBER_MODE
]
};
}
module.exports = abnf;

@@ -8,6 +8,6 @@ /*

/** @type LanguageFn */
/** @type LanguageFn */
function accesslog(hljs) {
// https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods
var HTTP_VERBS = [
const HTTP_VERBS = [
"GET", "POST", "HEAD", "PUT", "DELETE", "CONNECT", "OPTIONS", "PATCH", "TRACE"

@@ -22,3 +22,3 @@ ];

begin: '^\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}(:\\d{1,5})?\\b',
relevance:5
relevance: 5
},

@@ -34,3 +34,4 @@ // Other numbers

className: 'string',
begin: '"(' + HTTP_VERBS.join("|") + ')', end: '"',
begin: '"(' + HTTP_VERBS.join("|") + ')',
end: '"',
keywords: HTTP_VERBS.join(" "),

@@ -41,3 +42,3 @@ illegal: '\\n',

begin: 'HTTP/[12]\\.\\d',
relevance:5
relevance: 5
}]

@@ -57,3 +58,4 @@ },

className: 'string',
begin: /\[/, end: /\]/,
begin: /\[/,
end: /\]/,
illegal: '\\n',

@@ -65,3 +67,4 @@ relevance: 0

className: 'string',
begin: '"Mozilla/\\d\\.\\d \\\(', end: '"',
begin: '"Mozilla/\\d\\.\\d \\(',
end: '"',
illegal: '\\n',

@@ -73,3 +76,4 @@ relevance: 3

className: 'string',
begin: '"', end: '"',
begin: '"',
end: '"',
illegal: '\\n',

@@ -76,0 +80,0 @@ relevance: 0

@@ -9,8 +9,9 @@ /*

function actionscript(hljs) {
var IDENT_RE = '[a-zA-Z_$][a-zA-Z0-9_$]*';
var IDENT_FUNC_RETURN_TYPE_RE = '([*]|[a-zA-Z_$][a-zA-Z0-9_$]*)';
const IDENT_RE = '[a-zA-Z_$][a-zA-Z0-9_$]*';
const IDENT_FUNC_RETURN_TYPE_RE = '([*]|[a-zA-Z_$][a-zA-Z0-9_$]*)';
var AS3_REST_ARG_MODE = {
const AS3_REST_ARG_MODE = {
className: 'rest_arg',
begin: '[.]{3}', end: IDENT_RE,
begin: '[.]{3}',
end: IDENT_RE,
relevance: 10

@@ -38,3 +39,4 @@ };

className: 'class',
beginKeywords: 'package', end: /\{/,
beginKeywords: 'package',
end: /\{/,
contains: [hljs.TITLE_MODE]

@@ -44,7 +46,7 @@ },

className: 'class',
beginKeywords: 'class interface', end: /\{/, excludeEnd: true,
beginKeywords: 'class interface',
end: /\{/,
excludeEnd: true,
contains: [
{
beginKeywords: 'extends implements'
},
{ beginKeywords: 'extends implements' },
hljs.TITLE_MODE

@@ -55,8 +57,11 @@ ]

className: 'meta',
beginKeywords: 'import include', end: ';',
keywords: {'meta-keyword': 'import include'}
beginKeywords: 'import include',
end: ';',
keywords: { 'meta-keyword': 'import include' }
},
{
className: 'function',
beginKeywords: 'function', end: '[{;]', excludeEnd: true,
beginKeywords: 'function',
end: '[{;]',
excludeEnd: true,
illegal: '\\S',

@@ -67,3 +72,4 @@ contains: [

className: 'params',
begin: '\\(', end: '\\)',
begin: '\\(',
end: '\\)',
contains: [

@@ -77,5 +83,3 @@ hljs.APOS_STRING_MODE,

},
{
begin: ':\\s*' + IDENT_FUNC_RETURN_TYPE_RE
}
{ begin: ':\\s*' + IDENT_FUNC_RETURN_TYPE_RE }
]

@@ -82,0 +86,0 @@ },

@@ -22,62 +22,63 @@ /*

function ada(hljs) {
// Regular expression for Ada numeric literals.
// stolen form the VHDL highlighter
// Regular expression for Ada numeric literals.
// stolen form the VHDL highlighter
// Decimal literal:
var INTEGER_RE = '\\d(_|\\d)*';
var EXPONENT_RE = '[eE][-+]?' + INTEGER_RE;
var DECIMAL_LITERAL_RE = INTEGER_RE + '(\\.' + INTEGER_RE + ')?' + '(' + EXPONENT_RE + ')?';
// Decimal literal:
const INTEGER_RE = '\\d(_|\\d)*';
const EXPONENT_RE = '[eE][-+]?' + INTEGER_RE;
const DECIMAL_LITERAL_RE = INTEGER_RE + '(\\.' + INTEGER_RE + ')?' + '(' + EXPONENT_RE + ')?';
// Based literal:
var BASED_INTEGER_RE = '\\w+';
var BASED_LITERAL_RE = INTEGER_RE + '#' + BASED_INTEGER_RE + '(\\.' + BASED_INTEGER_RE + ')?' + '#' + '(' + EXPONENT_RE + ')?';
// Based literal:
const BASED_INTEGER_RE = '\\w+';
const BASED_LITERAL_RE = INTEGER_RE + '#' + BASED_INTEGER_RE + '(\\.' + BASED_INTEGER_RE + ')?' + '#' + '(' + EXPONENT_RE + ')?';
var NUMBER_RE = '\\b(' + BASED_LITERAL_RE + '|' + DECIMAL_LITERAL_RE + ')';
const NUMBER_RE = '\\b(' + BASED_LITERAL_RE + '|' + DECIMAL_LITERAL_RE + ')';
// Identifier regex
var ID_REGEX = '[A-Za-z](_?[A-Za-z0-9.])*';
// Identifier regex
const ID_REGEX = '[A-Za-z](_?[A-Za-z0-9.])*';
// bad chars, only allowed in literals
var BAD_CHARS = `[]\\{\\}%#'"`;
// bad chars, only allowed in literals
const BAD_CHARS = `[]\\{\\}%#'"`;
// Ada doesn't have block comments, only line comments
var COMMENTS = hljs.COMMENT('--', '$');
// Ada doesn't have block comments, only line comments
const COMMENTS = hljs.COMMENT('--', '$');
// variable declarations of the form
// Foo : Bar := Baz;
// where only Bar will be highlighted
var VAR_DECLS = {
// TODO: These spaces are not required by the Ada syntax
// however, I have yet to see handwritten Ada code where
// someone does not put spaces around :
begin: '\\s+:\\s+', end: '\\s*(:=|;|\\)|=>|$)',
// endsWithParent: true,
// returnBegin: true,
illegal: BAD_CHARS,
contains: [
{
// workaround to avoid highlighting
// named loops and declare blocks
beginKeywords: 'loop for declare others',
endsParent: true,
},
{
// properly highlight all modifiers
className: 'keyword',
beginKeywords: 'not null constant access function procedure in out aliased exception'
},
{
className: 'type',
begin: ID_REGEX,
endsParent: true,
relevance: 0,
}
]
};
// variable declarations of the form
// Foo : Bar := Baz;
// where only Bar will be highlighted
const VAR_DECLS = {
// TODO: These spaces are not required by the Ada syntax
// however, I have yet to see handwritten Ada code where
// someone does not put spaces around :
begin: '\\s+:\\s+',
end: '\\s*(:=|;|\\)|=>|$)',
// endsWithParent: true,
// returnBegin: true,
illegal: BAD_CHARS,
contains: [
{
// workaround to avoid highlighting
// named loops and declare blocks
beginKeywords: 'loop for declare others',
endsParent: true
},
{
// properly highlight all modifiers
className: 'keyword',
beginKeywords: 'not null constant access function procedure in out aliased exception'
},
{
className: 'type',
begin: ID_REGEX,
endsParent: true,
relevance: 0
}
]
};
return {
name: 'Ada',
case_insensitive: true,
keywords: {
keyword:
return {
name: 'Ada',
case_insensitive: true,
keywords: {
keyword:
'abort else new return abs elsif not reverse abstract end ' +

@@ -90,98 +91,106 @@ 'accept entry select access exception of separate aliased exit or some ' +

'digits renames with do mod requeue xor',
literal:
'True False',
},
contains: [
COMMENTS,
// strings "foobar"
{
className: 'string',
begin: /"/, end: /"/,
contains: [{begin: /""/, relevance: 0}]
},
// characters ''
{
// character literals always contain one char
className: 'string',
begin: /'.'/
},
{
// number literals
className: 'number',
begin: NUMBER_RE,
relevance: 0
},
{
// Attributes
className: 'symbol',
begin: "'" + ID_REGEX,
},
{
// package definition, maybe inside generic
className: 'title',
begin: '(\\bwith\\s+)?(\\bprivate\\s+)?\\bpackage\\s+(\\bbody\\s+)?', end: '(is|$)',
keywords: 'package body',
excludeBegin: true,
excludeEnd: true,
illegal: BAD_CHARS
},
{
// function/procedure declaration/definition
// maybe inside generic
begin: '(\\b(with|overriding)\\s+)?\\b(function|procedure)\\s+', end: '(\\bis|\\bwith|\\brenames|\\)\\s*;)',
keywords: 'overriding function procedure with is renames return',
// we need to re-match the 'function' keyword, so that
// the title mode below matches only exactly once
returnBegin: true,
contains:
literal:
'True False'
},
contains: [
COMMENTS,
// strings "foobar"
{
className: 'string',
begin: /"/,
end: /"/,
contains: [{
begin: /""/,
relevance: 0
}]
},
// characters ''
{
// character literals always contain one char
className: 'string',
begin: /'.'/
},
{
// number literals
className: 'number',
begin: NUMBER_RE,
relevance: 0
},
{
// Attributes
className: 'symbol',
begin: "'" + ID_REGEX
},
{
// package definition, maybe inside generic
className: 'title',
begin: '(\\bwith\\s+)?(\\bprivate\\s+)?\\bpackage\\s+(\\bbody\\s+)?',
end: '(is|$)',
keywords: 'package body',
excludeBegin: true,
excludeEnd: true,
illegal: BAD_CHARS
},
{
// function/procedure declaration/definition
// maybe inside generic
begin: '(\\b(with|overriding)\\s+)?\\b(function|procedure)\\s+',
end: '(\\bis|\\bwith|\\brenames|\\)\\s*;)',
keywords: 'overriding function procedure with is renames return',
// we need to re-match the 'function' keyword, so that
// the title mode below matches only exactly once
returnBegin: true,
contains:
[
COMMENTS,
{
// name of the function/procedure
className: 'title',
begin: '(\\bwith\\s+)?\\b(function|procedure)\\s+',
end: '(\\(|\\s+|$)',
excludeBegin: true,
excludeEnd: true,
illegal: BAD_CHARS
},
// 'self'
// // parameter types
VAR_DECLS,
{
// return type
className: 'type',
begin: '\\breturn\\s+', end: '(\\s+|;|$)',
keywords: 'return',
excludeBegin: true,
excludeEnd: true,
// we are done with functions
endsParent: true,
illegal: BAD_CHARS
COMMENTS,
{
// name of the function/procedure
className: 'title',
begin: '(\\bwith\\s+)?\\b(function|procedure)\\s+',
end: '(\\(|\\s+|$)',
excludeBegin: true,
excludeEnd: true,
illegal: BAD_CHARS
},
// 'self'
// // parameter types
VAR_DECLS,
{
// return type
className: 'type',
begin: '\\breturn\\s+',
end: '(\\s+|;|$)',
keywords: 'return',
excludeBegin: true,
excludeEnd: true,
// we are done with functions
endsParent: true,
illegal: BAD_CHARS
},
}
]
},
{
// new type declarations
// maybe inside generic
className: 'type',
begin: '\\b(sub)?type\\s+', end: '\\s+',
keywords: 'type',
excludeBegin: true,
illegal: BAD_CHARS
},
},
{
// new type declarations
// maybe inside generic
className: 'type',
begin: '\\b(sub)?type\\s+',
end: '\\s+',
keywords: 'type',
excludeBegin: true,
illegal: BAD_CHARS
},
// see comment above the definition
VAR_DECLS,
// see comment above the definition
VAR_DECLS
// no markup
// relevance boosters for small snippets
// {begin: '\\s*=>\\s*'},
// {begin: '\\s*:=\\s*'},
// {begin: '\\s+:=\\s+'},
]
};
// no markup
// relevance boosters for small snippets
// {begin: '\\s*=>\\s*'},
// {begin: '\\s*:=\\s*'},
// {begin: '\\s+:=\\s+'},
]
};
}
module.exports = ada;

@@ -12,9 +12,15 @@ /*

function apache(hljs) {
var NUMBER_REF = {className: 'number', begin: '[\\$%]\\d+'};
var NUMBER = {className: 'number', begin: '\\d+'};
var IP_ADDRESS = {
const NUMBER_REF = {
className: 'number',
begin: '[\\$%]\\d+'
};
const NUMBER = {
className: 'number',
begin: '\\d+'
};
const IP_ADDRESS = {
className: "number",
begin: '\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}(:\\d{1,5})?'
};
var PORT_NUMBER = {
const PORT_NUMBER = {
className: "number",

@@ -29,12 +35,15 @@ begin: ":\\d{1,5}"

hljs.HASH_COMMENT_MODE,
{className: 'section', begin: '</?', end: '>',
contains: [
IP_ADDRESS,
PORT_NUMBER,
// low relevance prevents us from claming XML/HTML where this rule would
// match strings inside of XML tags
hljs.inherit(hljs.QUOTE_STRING_MODE, { relevance:0 })
]
},
{
className: 'section',
begin: '</?',
end: '>',
contains: [
IP_ADDRESS,
PORT_NUMBER,
// low relevance prevents us from claming XML/HTML where this rule would
// match strings inside of XML tags
hljs.inherit(hljs.QUOTE_STRING_MODE, { relevance: 0 })
]
},
{
className: 'attribute',

@@ -45,23 +54,22 @@ begin: /\w+/,

// for a very generally defined mode (starts with a word, ends with line-end
keywords: {
nomarkup:
keywords: { nomarkup:
'order deny allow setenv rewriterule rewriteengine rewritecond documentroot ' +
'sethandler errordocument loadmodule options header listen serverroot ' +
'servername'
},
'servername' },
starts: {
end: /$/,
relevance: 0,
keywords: {
literal: 'on off all deny allow'
},
keywords: { literal: 'on off all deny allow' },
contains: [
{
className: 'meta',
begin: '\\s\\[', end: '\\]$'
begin: '\\s\\[',
end: '\\]$'
},
{
className: 'variable',
begin: '[\\$%]\\{', end: '\\}',
contains: ['self', NUMBER_REF]
begin: '[\\$%]\\{',
end: '\\}',
contains: ['self',
NUMBER_REF]
},

@@ -68,0 +76,0 @@ IP_ADDRESS,

@@ -10,17 +10,27 @@ /*

function applescript(hljs) {
var STRING = hljs.inherit(hljs.QUOTE_STRING_MODE, {illegal: ''});
var PARAMS = {
const STRING = hljs.inherit(hljs.QUOTE_STRING_MODE, {
illegal: ''
});
const PARAMS = {
className: 'params',
begin: '\\(', end: '\\)',
contains: ['self', hljs.C_NUMBER_MODE, STRING]
begin: '\\(',
end: '\\)',
contains: [
'self',
hljs.C_NUMBER_MODE,
STRING
]
};
var COMMENT_MODE_1 = hljs.COMMENT('--', '$');
var COMMENT_MODE_2 = hljs.COMMENT(
const COMMENT_MODE_1 = hljs.COMMENT('--', '$');
const COMMENT_MODE_2 = hljs.COMMENT(
'\\(\\*',
'\\*\\)',
{
contains: ['self', COMMENT_MODE_1] //allow nesting
contains: [
'self', // allow nesting
COMMENT_MODE_1
]
}
);
var COMMENTS = [
const COMMENTS = [
COMMENT_MODE_1,

@@ -90,3 +100,6 @@ COMMENT_MODE_2,

illegal: '[${=;\\n]',
contains: [hljs.UNDERSCORE_TITLE_MODE, PARAMS]
contains: [
hljs.UNDERSCORE_TITLE_MODE,
PARAMS
]
}

@@ -93,0 +106,0 @@ ].concat(COMMENTS),

@@ -11,4 +11,4 @@ /*

function arcade(hljs) {
var IDENT_RE = '[A-Za-z_][0-9A-Za-z_]*';
var KEYWORDS = {
const IDENT_RE = '[A-Za-z_][0-9A-Za-z_]*';
const KEYWORDS = {
keyword:

@@ -31,24 +31,32 @@ 'if for while var new function do return void else break',

};
var SYMBOL = {
const SYMBOL = {
className: 'symbol',
begin: '\\$[datastore|feature|layer|map|measure|sourcefeature|sourcelayer|targetfeature|targetlayer|value|view]+'
};
var NUMBER = {
const NUMBER = {
className: 'number',
variants: [
{ begin: '\\b(0[bB][01]+)' },
{ begin: '\\b(0[oO][0-7]+)' },
{ begin: hljs.C_NUMBER_RE }
{
begin: '\\b(0[bB][01]+)'
},
{
begin: '\\b(0[oO][0-7]+)'
},
{
begin: hljs.C_NUMBER_RE
}
],
relevance: 0
};
var SUBST = {
const SUBST = {
className: 'subst',
begin: '\\$\\{', end: '\\}',
begin: '\\$\\{',
end: '\\}',
keywords: KEYWORDS,
contains: [] // defined later
};
var TEMPLATE_STRING = {
const TEMPLATE_STRING = {
className: 'string',
begin: '`', end: '`',
begin: '`',
end: '`',
contains: [

@@ -66,3 +74,3 @@ hljs.BACKSLASH_ESCAPE,

];
var PARAMS_CONTAINS = SUBST.contains.concat([
const PARAMS_CONTAINS = SUBST.contains.concat([
hljs.C_BLOCK_COMMENT_MODE,

@@ -85,10 +93,14 @@ hljs.C_LINE_COMMENT_MODE

{ // object attr container
begin: /[{,]\s*/, relevance: 0,
contains: [
{
begin: IDENT_RE + '\\s*:', returnBegin: true,
relevance: 0,
contains: [{className: 'attr', begin: IDENT_RE, relevance: 0}]
}
]
begin: /[{,]\s*/,
relevance: 0,
contains: [{
begin: IDENT_RE + '\\s*:',
returnBegin: true,
relevance: 0,
contains: [{
className: 'attr',
begin: IDENT_RE,
relevance: 0
}]
}]
},

@@ -104,23 +116,24 @@ { // "value" container

className: 'function',
begin: '(\\(.*?\\)|' + IDENT_RE + ')\\s*=>', returnBegin: true,
begin: '(\\(.*?\\)|' + IDENT_RE + ')\\s*=>',
returnBegin: true,
end: '\\s*=>',
contains: [
{
className: 'params',
variants: [
{
begin: IDENT_RE
},
{
begin: /\(\s*\)/,
},
{
begin: /\(/, end: /\)/,
excludeBegin: true, excludeEnd: true,
keywords: KEYWORDS,
contains: PARAMS_CONTAINS
}
]
}
]
contains: [{
className: 'params',
variants: [
{
begin: IDENT_RE
},
{
begin: /\(\s*\)/
},
{
begin: /\(/,
end: /\)/,
excludeBegin: true,
excludeEnd: true,
keywords: KEYWORDS,
contains: PARAMS_CONTAINS
}
]
}]
}

@@ -132,8 +145,13 @@ ],

className: 'function',
beginKeywords: 'function', end: /\{/, excludeEnd: true,
beginKeywords: 'function',
end: /\{/,
excludeEnd: true,
contains: [
hljs.inherit(hljs.TITLE_MODE, {begin: IDENT_RE}),
hljs.inherit(hljs.TITLE_MODE, {
begin: IDENT_RE
}),
{
className: 'params',
begin: /\(/, end: /\)/,
begin: /\(/,
end: /\)/,
excludeBegin: true,

@@ -140,0 +158,0 @@ excludeEnd: true,

@@ -10,10 +10,15 @@ /*

function armasm(hljs) {
//local labels: %?[FB]?[AT]?\d{1,2}\w+
// local labels: %?[FB]?[AT]?\d{1,2}\w+
const COMMENT = {
variants: [
hljs.COMMENT('^[ \\t]*(?=#)', '$', {relevance: 0, excludeBegin: true }),
hljs.COMMENT('[;@]', '$', {relevance: 0}),
hljs.COMMENT('^[ \\t]*(?=#)', '$', {
relevance: 0,
excludeBegin: true
}),
hljs.COMMENT('[;@]', '$', {
relevance: 0
}),
hljs.C_LINE_COMMENT_MODE,
hljs.C_BLOCK_COMMENT_MODE,
hljs.C_BLOCK_COMMENT_MODE
]

@@ -29,22 +34,22 @@ };

meta:
//GNU preprocs
'.2byte .4byte .align .ascii .asciz .balign .byte .code .data .else .end .endif .endm .endr .equ .err .exitm .extern .global .hword .if .ifdef .ifndef .include .irp .long .macro .rept .req .section .set .skip .space .text .word .arm .thumb .code16 .code32 .force_thumb .thumb_func .ltorg '+
//ARM directives
// GNU preprocs
'.2byte .4byte .align .ascii .asciz .balign .byte .code .data .else .end .endif .endm .endr .equ .err .exitm .extern .global .hword .if .ifdef .ifndef .include .irp .long .macro .rept .req .section .set .skip .space .text .word .arm .thumb .code16 .code32 .force_thumb .thumb_func .ltorg ' +
// ARM directives
'ALIAS ALIGN ARM AREA ASSERT ATTR CN CODE CODE16 CODE32 COMMON CP DATA DCB DCD DCDU DCDO DCFD DCFDU DCI DCQ DCQU DCW DCWU DN ELIF ELSE END ENDFUNC ENDIF ENDP ENTRY EQU EXPORT EXPORTAS EXTERN FIELD FILL FUNCTION GBLA GBLL GBLS GET GLOBAL IF IMPORT INCBIN INCLUDE INFO KEEP LCLA LCLL LCLS LTORG MACRO MAP MEND MEXIT NOFP OPT PRESERVE8 PROC QN READONLY RELOC REQUIRE REQUIRE8 RLIST FN ROUT SETA SETL SETS SN SPACE SUBT THUMB THUMBX TTL WHILE WEND ',
built_in:
'r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14 r15 '+ //standard registers
'pc lr sp ip sl sb fp '+ //typical regs plus backward compatibility
'a1 a2 a3 a4 v1 v2 v3 v4 v5 v6 v7 v8 f0 f1 f2 f3 f4 f5 f6 f7 '+ //more regs and fp
'p0 p1 p2 p3 p4 p5 p6 p7 p8 p9 p10 p11 p12 p13 p14 p15 '+ //coprocessor regs
'c0 c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 c12 c13 c14 c15 '+ //more coproc
'q0 q1 q2 q3 q4 q5 q6 q7 q8 q9 q10 q11 q12 q13 q14 q15 '+ //advanced SIMD NEON regs
'r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14 r15 ' + // standard registers
'pc lr sp ip sl sb fp ' + // typical regs plus backward compatibility
'a1 a2 a3 a4 v1 v2 v3 v4 v5 v6 v7 v8 f0 f1 f2 f3 f4 f5 f6 f7 ' + // more regs and fp
'p0 p1 p2 p3 p4 p5 p6 p7 p8 p9 p10 p11 p12 p13 p14 p15 ' + // coprocessor regs
'c0 c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 c12 c13 c14 c15 ' + // more coproc
'q0 q1 q2 q3 q4 q5 q6 q7 q8 q9 q10 q11 q12 q13 q14 q15 ' + // advanced SIMD NEON regs
//program status registers
'cpsr_c cpsr_x cpsr_s cpsr_f cpsr_cx cpsr_cxs cpsr_xs cpsr_xsf cpsr_sf cpsr_cxsf '+
'spsr_c spsr_x spsr_s spsr_f spsr_cx spsr_cxs spsr_xs spsr_xsf spsr_sf spsr_cxsf '+
// program status registers
'cpsr_c cpsr_x cpsr_s cpsr_f cpsr_cx cpsr_cxs cpsr_xs cpsr_xsf cpsr_sf cpsr_cxsf ' +
'spsr_c spsr_x spsr_s spsr_f spsr_cx spsr_cxs spsr_xs spsr_xsf spsr_sf spsr_cxsf ' +
//NEON and VFP registers
's0 s1 s2 s3 s4 s5 s6 s7 s8 s9 s10 s11 s12 s13 s14 s15 '+
's16 s17 s18 s19 s20 s21 s22 s23 s24 s25 s26 s27 s28 s29 s30 s31 '+
'd0 d1 d2 d3 d4 d5 d6 d7 d8 d9 d10 d11 d12 d13 d14 d15 '+
// NEON and VFP registers
's0 s1 s2 s3 s4 s5 s6 s7 s8 s9 s10 s11 s12 s13 s14 s15 ' +
's16 s17 s18 s19 s20 s21 s22 s23 s24 s25 s26 s27 s28 s29 s30 s31 ' +
'd0 d1 d2 d3 d4 d5 d6 d7 d8 d9 d10 d11 d12 d13 d14 d15 ' +
'd16 d17 d18 d19 d20 d21 d22 d23 d24 d25 d26 d27 d28 d29 d30 d31 ' +

@@ -57,20 +62,20 @@

className: 'keyword',
begin: '\\b('+ //mnemonics
'adc|'+
'(qd?|sh?|u[qh]?)?add(8|16)?|usada?8|(q|sh?|u[qh]?)?(as|sa)x|'+
'and|adrl?|sbc|rs[bc]|asr|b[lx]?|blx|bxj|cbn?z|tb[bh]|bic|'+
'bfc|bfi|[su]bfx|bkpt|cdp2?|clz|clrex|cmp|cmn|cpsi[ed]|cps|'+
'setend|dbg|dmb|dsb|eor|isb|it[te]{0,3}|lsl|lsr|ror|rrx|'+
'ldm(([id][ab])|f[ds])?|ldr((s|ex)?[bhd])?|movt?|mvn|mra|mar|'+
'mul|[us]mull|smul[bwt][bt]|smu[as]d|smmul|smmla|'+
'mla|umlaal|smlal?([wbt][bt]|d)|mls|smlsl?[ds]|smc|svc|sev|'+
'mia([bt]{2}|ph)?|mrr?c2?|mcrr2?|mrs|msr|orr|orn|pkh(tb|bt)|rbit|'+
'rev(16|sh)?|sel|[su]sat(16)?|nop|pop|push|rfe([id][ab])?|'+
'stm([id][ab])?|str(ex)?[bhd]?|(qd?)?sub|(sh?|q|u[qh]?)?sub(8|16)|'+
'[su]xt(a?h|a?b(16)?)|srs([id][ab])?|swpb?|swi|smi|tst|teq|'+
'wfe|wfi|yield'+
')'+
'(eq|ne|cs|cc|mi|pl|vs|vc|hi|ls|ge|lt|gt|le|al|hs|lo)?'+ //condition codes
'[sptrx]?' + //legal postfixes
'(?=\\s)' // followed by space
begin: '\\b(' + // mnemonics
'adc|' +
'(qd?|sh?|u[qh]?)?add(8|16)?|usada?8|(q|sh?|u[qh]?)?(as|sa)x|' +
'and|adrl?|sbc|rs[bc]|asr|b[lx]?|blx|bxj|cbn?z|tb[bh]|bic|' +
'bfc|bfi|[su]bfx|bkpt|cdp2?|clz|clrex|cmp|cmn|cpsi[ed]|cps|' +
'setend|dbg|dmb|dsb|eor|isb|it[te]{0,3}|lsl|lsr|ror|rrx|' +
'ldm(([id][ab])|f[ds])?|ldr((s|ex)?[bhd])?|movt?|mvn|mra|mar|' +
'mul|[us]mull|smul[bwt][bt]|smu[as]d|smmul|smmla|' +
'mla|umlaal|smlal?([wbt][bt]|d)|mls|smlsl?[ds]|smc|svc|sev|' +
'mia([bt]{2}|ph)?|mrr?c2?|mcrr2?|mrs|msr|orr|orn|pkh(tb|bt)|rbit|' +
'rev(16|sh)?|sel|[su]sat(16)?|nop|pop|push|rfe([id][ab])?|' +
'stm([id][ab])?|str(ex)?[bhd]?|(qd?)?sub|(sh?|q|u[qh]?)?sub(8|16)|' +
'[su]xt(a?h|a?b(16)?)|srs([id][ab])?|swpb?|swi|smi|tst|teq|' +
'wfe|wfi|yield' +
')' +
'(eq|ne|cs|cc|mi|pl|vs|vc|hi|ls|ge|lt|gt|le|al|hs|lo)?' + // condition codes
'[sptrx]?' + // legal postfixes
'(?=\\s)' // followed by space
},

@@ -87,3 +92,4 @@ COMMENT,

className: 'title',
begin: '\\|', end: '\\|',
begin: '\\|',
end: '\\|',
illegal: '\\n',

@@ -95,6 +101,14 @@ relevance: 0

variants: [
{begin: '[#$=]?0x[0-9a-f]+'}, //hex
{begin: '[#$=]?0b[01]+'}, //bin
{begin: '[#$=]\\d+'}, //literal
{begin: '\\b\\d+'} //bare number
{ // hex
begin: '[#$=]?0x[0-9a-f]+'
},
{ // bin
begin: '[#$=]?0b[01]+'
},
{ // literal
begin: '[#$=]\\d+'
},
{ // bare number
begin: '\\b\\d+'
}
],

@@ -106,5 +120,11 @@ relevance: 0

variants: [
{begin: '^[ \\t]*[a-z_\\.\\$][a-z0-9_\\.\\$]+:'}, //GNU ARM syntax
{begin: '^[a-z_\\.\\$][a-z0-9_\\.\\$]+'}, //ARM syntax
{begin: '[=#]\\w+' } //label reference
{ // GNU ARM syntax
begin: '^[ \\t]*[a-z_\\.\\$][a-z0-9_\\.\\$]+:'
},
{ // ARM syntax
begin: '^[a-z_\\.\\$][a-z0-9_\\.\\$]+'
},
{ // label reference
begin: '[=#]\\w+'
}
],

@@ -111,0 +131,0 @@ relevance: 0

@@ -21,4 +21,4 @@ /*

// can also be done as...
//'^/{4,}$',
//'^/{4,}$',
// '^/{4,}$',
// '^/{4,}$',
{

@@ -52,4 +52,8 @@ relevance: 10

variants: [
{begin: '^(={1,5}) .+?( \\1)?$'},
{begin: '^[^\\[\\]\\n]+?\\n[=\\-~\\^\\+]{2,}$'},
{
begin: '^(={1,5}) .+?( \\1)?$'
},
{
begin: '^[^\\[\\]\\n]+?\\n[=\\-~\\^\\+]{2,}$'
}
]

@@ -89,9 +93,8 @@ },

end: '\\n\\+{4,}$',
contains: [
{
begin: '<', end: '>',
subLanguage: 'xml',
relevance: 0
}
],
contains: [{
begin: '<',
end: '>',
subLanguage: 'xml',
relevance: 0
}],
relevance: 10

@@ -117,8 +120,6 @@ },

// allow escaped asterisk followed by word char
contains: [
{
begin: '\\\\*\\w',
relevance: 0
}
]
contains: [{
begin: '\\\\*\\w',
relevance: 0
}]
},

@@ -132,8 +133,6 @@ // inline emphasis

// allow escaped single quote followed by word char
contains: [
{
begin: '\\\\\'\\w',
relevance: 0
}
],
contains: [{
begin: '\\\\\'\\w',
relevance: 0
}],
relevance: 0

@@ -153,4 +152,8 @@ },

variants: [
{begin: "``.+?''"},
{begin: "`.+?'"}
{
begin: "``.+?''"
},
{
begin: "`.+?'"
}
]

@@ -157,0 +160,0 @@ },

@@ -10,4 +10,3 @@ /*

function aspectj(hljs) {
var KEYWORDS =
'false synchronized int abstract float private char boolean static null if const ' +
const KEYWORDS = 'false synchronized int abstract float private char boolean static null if const ' +
'for true while long throw strictfp finally protected import native final return void ' +

@@ -18,10 +17,11 @@ 'enum else extends implements break transient new catch instanceof byte super volatile case ' +

'staticinitialization withincode target within execution getWithinTypeName handler ' +
'thisJoinPoint thisJoinPointStaticPart thisEnclosingJoinPointStaticPart declare parents '+
'thisJoinPoint thisJoinPointStaticPart thisEnclosingJoinPointStaticPart declare parents ' +
'warning error soft precedence thisAspectInstance';
var SHORTKEYS = 'get set args call';
const SHORTKEYS = 'get set args call';
return {
name: 'AspectJ',
keywords : KEYWORDS,
illegal : /<\/|#/,
contains : [
keywords: KEYWORDS,
illegal: /<\/|#/,
contains: [
hljs.COMMENT(

@@ -31,11 +31,12 @@ '/\\*\\*',

{
relevance : 0,
contains : [
relevance: 0,
contains: [
{
// eat up @'s in emails to prevent them to be recognized as doctags
begin: /\w+@/, relevance: 0
begin: /\w+@/,
relevance: 0
},
{
className : 'doctag',
begin : '@[A-Za-z]+'
className: 'doctag',
begin: '@[A-Za-z]+'
}

@@ -50,17 +51,17 @@ ]

{
className : 'class',
beginKeywords : 'aspect',
end : /[{;=]/,
excludeEnd : true,
illegal : /[:;"\[\]]/,
contains : [
className: 'class',
beginKeywords: 'aspect',
end: /[{;=]/,
excludeEnd: true,
illegal: /[:;"\[\]]/,
contains: [
{
beginKeywords : 'extends implements pertypewithin perthis pertarget percflowbelow percflow issingleton'
beginKeywords: 'extends implements pertypewithin perthis pertarget percflowbelow percflow issingleton'
},
hljs.UNDERSCORE_TITLE_MODE,
{
begin : /\([^\)]*/,
end : /[)]+/,
keywords : KEYWORDS + ' ' + SHORTKEYS,
excludeEnd : false
begin: /\([^\)]*/,
end: /[)]+/,
keywords: KEYWORDS + ' ' + SHORTKEYS,
excludeEnd: false
}

@@ -70,11 +71,13 @@ ]

{
className : 'class',
beginKeywords : 'class interface',
end : /[{;=]/,
excludeEnd : true,
className: 'class',
beginKeywords: 'class interface',
end: /[{;=]/,
excludeEnd: true,
relevance: 0,
keywords : 'class interface',
illegal : /[:"\[\]]/,
contains : [
{beginKeywords : 'extends implements'},
keywords: 'class interface',
illegal: /[:"\[\]]/,
contains: [
{
beginKeywords: 'extends implements'
},
hljs.UNDERSCORE_TITLE_MODE

@@ -85,26 +88,24 @@ ]

// AspectJ Constructs
beginKeywords : 'pointcut after before around throwing returning',
end : /[)]/,
excludeEnd : false,
illegal : /["\[\]]/,
contains : [
{
begin : hljs.UNDERSCORE_IDENT_RE + '\\s*\\(',
returnBegin : true,
contains : [hljs.UNDERSCORE_TITLE_MODE]
}
]
beginKeywords: 'pointcut after before around throwing returning',
end: /[)]/,
excludeEnd: false,
illegal: /["\[\]]/,
contains: [{
begin: hljs.UNDERSCORE_IDENT_RE + '\\s*\\(',
returnBegin: true,
contains: [hljs.UNDERSCORE_TITLE_MODE]
}]
},
{
begin : /[:]/,
returnBegin : true,
end : /[{;]/,
begin: /[:]/,
returnBegin: true,
end: /[{;]/,
relevance: 0,
excludeEnd : false,
keywords : KEYWORDS,
illegal : /["\[\]]/,
contains : [
excludeEnd: false,
keywords: KEYWORDS,
illegal: /["\[\]]/,
contains: [
{
begin : hljs.UNDERSCORE_IDENT_RE + '\\s*\\(',
keywords : KEYWORDS + ' ' + SHORTKEYS,
begin: hljs.UNDERSCORE_IDENT_RE + '\\s*\\(',
keywords: KEYWORDS + ' ' + SHORTKEYS,
relevance: 0

@@ -117,26 +118,27 @@ },

// this prevents 'new Name(...), or throw ...' from being recognized as a function definition
beginKeywords : 'new throw',
relevance : 0
beginKeywords: 'new throw',
relevance: 0
},
{
// the function class is a bit different for AspectJ compared to the Java language
className : 'function',
begin : /\w+ +\w+(\.)?\w+\s*\([^\)]*\)\s*((throws)[\w\s,]+)?[\{;]/,
returnBegin : true,
end : /[{;=]/,
keywords : KEYWORDS,
excludeEnd : true,
contains : [
className: 'function',
begin: /\w+ +\w+(\.)?\w+\s*\([^\)]*\)\s*((throws)[\w\s,]+)?[\{;]/,
returnBegin: true,
end: /[{;=]/,
keywords: KEYWORDS,
excludeEnd: true,
contains: [
{
begin : hljs.UNDERSCORE_IDENT_RE + '\\s*\\(',
returnBegin : true,
begin: hljs.UNDERSCORE_IDENT_RE + '\\s*\\(',
returnBegin: true,
relevance: 0,
contains : [hljs.UNDERSCORE_TITLE_MODE]
contains: [hljs.UNDERSCORE_TITLE_MODE]
},
{
className : 'params',
begin : /\(/, end : /\)/,
className: 'params',
begin: /\(/,
end: /\)/,
relevance: 0,
keywords : KEYWORDS,
contains : [
keywords: KEYWORDS,
contains: [
hljs.APOS_STRING_MODE,

@@ -155,4 +157,4 @@ hljs.QUOTE_STRING_MODE,

// annotation is also used in this language
className : 'meta',
begin : '@[A-Za-z]+'
className: 'meta',
begin: '@[A-Za-z]+'
}

@@ -159,0 +161,0 @@ ]

@@ -10,3 +10,3 @@ /*

function autohotkey(hljs) {
var BACKTICK_ESCAPE = {
const BACKTICK_ESCAPE = {
begin: '`[\\s\\S]'

@@ -22,8 +22,12 @@ };

literal: 'true false NOT AND OR',
built_in: 'ComSpec Clipboard ClipboardAll ErrorLevel',
built_in: 'ComSpec Clipboard ClipboardAll ErrorLevel'
},
contains: [
BACKTICK_ESCAPE,
hljs.inherit(hljs.QUOTE_STRING_MODE, {contains: [BACKTICK_ESCAPE]}),
hljs.COMMENT(';', '$', {relevance: 0}),
hljs.inherit(hljs.QUOTE_STRING_MODE, {
contains: [BACKTICK_ESCAPE]
}),
hljs.COMMENT(';', '$', {
relevance: 0
}),
hljs.C_BLOCK_COMMENT_MODE,

@@ -36,3 +40,6 @@ {

{
className: 'variable', //subst would be the most accurate however fails the point of highlighting. variable is comparably the most accurate that actually has some effect
// subst would be the most accurate however fails the point of
// highlighting. variable is comparably the most accurate that actually
// has some effect
className: 'variable',
begin: '%[a-zA-Z0-9#_$@]+%'

@@ -43,11 +50,19 @@ },

begin: '^\\s*\\w+\\s*(,|%)'
//I don't really know if this is totally relevant
// I don't really know if this is totally relevant
},
{
className: 'title', //symbol would be most accurate however is highlighted just like built_in and that makes up a lot of AutoHotkey code
//meaning that it would fail to highlight anything
// symbol would be most accurate however is highlighted just like
// built_in and that makes up a lot of AutoHotkey code meaning that it
// would fail to highlight anything
className: 'title',
variants: [
{begin: '^[^\\n";]+::(?!=)'},
{begin: '^[^\\n";]+:(?!=)', relevance: 0} // zero relevance as it catches a lot of things
// followed by a single ':' in many languages
{
begin: '^[^\\n";]+::(?!=)'
},
{
begin: '^[^\\n";]+:(?!=)',
// zero relevance as it catches a lot of things
// followed by a single ':' in many languages
relevance: 0
}
]

@@ -57,6 +72,7 @@ },

className: 'meta',
begin: '^\\s*#\\w+', end:'$',
begin: '^\\s*#\\w+',
end: '$',
relevance: 0
},
{
{
className: 'built_in',

@@ -70,5 +86,5 @@ begin: 'A_[a-zA-Z0-9]+'

]
}
};
}
module.exports = autohotkey;

@@ -10,138 +10,158 @@ /*

function autoit(hljs) {
var KEYWORDS = 'ByRef Case Const ContinueCase ContinueLoop ' +
const KEYWORDS = 'ByRef Case Const ContinueCase ContinueLoop ' +
'Default Dim Do Else ElseIf EndFunc EndIf EndSelect ' +
'EndSwitch EndWith Enum Exit ExitLoop For Func ' +
'Global If In Local Next ReDim Return Select Static ' +
'Step Switch Then To Until Volatile WEnd While With',
'Step Switch Then To Until Volatile WEnd While With';
LITERAL = 'True False And Null Not Or',
const LITERAL = 'True False And Null Not Or';
BUILT_IN =
'Abs ACos AdlibRegister AdlibUnRegister Asc AscW ASin Assign ATan AutoItSetOption AutoItWinGetTitle AutoItWinSetTitle Beep Binary BinaryLen BinaryMid BinaryToString BitAND BitNOT BitOR BitRotate BitShift BitXOR BlockInput Break Call CDTray Ceiling Chr ChrW ClipGet ClipPut ConsoleRead ConsoleWrite ConsoleWriteError ControlClick ControlCommand ControlDisable ControlEnable ControlFocus ControlGetFocus ControlGetHandle ControlGetPos ControlGetText ControlHide ControlListView ControlMove ControlSend ControlSetText ControlShow ControlTreeView Cos Dec DirCopy DirCreate DirGetSize DirMove DirRemove DllCall DllCallAddress DllCallbackFree DllCallbackGetPtr DllCallbackRegister DllClose DllOpen DllStructCreate DllStructGetData DllStructGetPtr DllStructGetSize DllStructSetData DriveGetDrive DriveGetFileSystem DriveGetLabel DriveGetSerial DriveGetType DriveMapAdd DriveMapDel DriveMapGet DriveSetLabel DriveSpaceFree DriveSpaceTotal DriveStatus EnvGet EnvSet EnvUpdate Eval Execute Exp FileChangeDir FileClose FileCopy FileCreateNTFSLink FileCreateShortcut FileDelete FileExists FileFindFirstFile FileFindNextFile FileFlush FileGetAttrib FileGetEncoding FileGetLongName FileGetPos FileGetShortcut FileGetShortName FileGetSize FileGetTime FileGetVersion FileInstall FileMove FileOpen FileOpenDialog FileRead FileReadLine FileReadToArray FileRecycle FileRecycleEmpty FileSaveDialog FileSelectFolder FileSetAttrib FileSetEnd FileSetPos FileSetTime FileWrite FileWriteLine Floor FtpSetProxy FuncName GUICreate GUICtrlCreateAvi GUICtrlCreateButton GUICtrlCreateCheckbox GUICtrlCreateCombo GUICtrlCreateContextMenu GUICtrlCreateDate GUICtrlCreateDummy GUICtrlCreateEdit GUICtrlCreateGraphic GUICtrlCreateGroup GUICtrlCreateIcon GUICtrlCreateInput GUICtrlCreateLabel GUICtrlCreateList GUICtrlCreateListView GUICtrlCreateListViewItem GUICtrlCreateMenu GUICtrlCreateMenuItem GUICtrlCreateMonthCal GUICtrlCreateObj GUICtrlCreatePic GUICtrlCreateProgress GUICtrlCreateRadio GUICtrlCreateSlider GUICtrlCreateTab GUICtrlCreateTabItem GUICtrlCreateTreeView GUICtrlCreateTreeViewItem GUICtrlCreateUpdown GUICtrlDelete GUICtrlGetHandle GUICtrlGetState GUICtrlRead GUICtrlRecvMsg GUICtrlRegisterListViewSort GUICtrlSendMsg GUICtrlSendToDummy GUICtrlSetBkColor GUICtrlSetColor GUICtrlSetCursor GUICtrlSetData GUICtrlSetDefBkColor GUICtrlSetDefColor GUICtrlSetFont GUICtrlSetGraphic GUICtrlSetImage GUICtrlSetLimit GUICtrlSetOnEvent GUICtrlSetPos GUICtrlSetResizing GUICtrlSetState GUICtrlSetStyle GUICtrlSetTip GUIDelete GUIGetCursorInfo GUIGetMsg GUIGetStyle GUIRegisterMsg GUISetAccelerators GUISetBkColor GUISetCoord GUISetCursor GUISetFont GUISetHelp GUISetIcon GUISetOnEvent GUISetState GUISetStyle GUIStartGroup GUISwitch Hex HotKeySet HttpSetProxy HttpSetUserAgent HWnd InetClose InetGet InetGetInfo InetGetSize InetRead IniDelete IniRead IniReadSection IniReadSectionNames IniRenameSection IniWrite IniWriteSection InputBox Int IsAdmin IsArray IsBinary IsBool IsDeclared IsDllStruct IsFloat IsFunc IsHWnd IsInt IsKeyword IsNumber IsObj IsPtr IsString Log MemGetStats Mod MouseClick MouseClickDrag MouseDown MouseGetCursor MouseGetPos MouseMove MouseUp MouseWheel MsgBox Number ObjCreate ObjCreateInterface ObjEvent ObjGet ObjName OnAutoItExitRegister OnAutoItExitUnRegister Ping PixelChecksum PixelGetColor PixelSearch ProcessClose ProcessExists ProcessGetStats ProcessList ProcessSetPriority ProcessWait ProcessWaitClose ProgressOff ProgressOn ProgressSet Ptr Random RegDelete RegEnumKey RegEnumVal RegRead RegWrite Round Run RunAs RunAsWait RunWait Send SendKeepActive SetError SetExtended ShellExecute ShellExecuteWait Shutdown Sin Sleep SoundPlay SoundSetWaveVolume SplashImageOn SplashOff SplashTextOn Sqrt SRandom StatusbarGetText StderrRead StdinWrite StdioClose StdoutRead String StringAddCR StringCompare StringFormat StringFromASCIIArray StringInStr StringIsAlNum StringIsAlpha StringIsASCII StringIsDigit StringIsFloat StringIsInt StringIsLower StringIsSpace StringIsUpper StringIsXDigit StringLeft StringLen StringLower StringMid StringRegExp StringRegExpReplace StringReplace StringReverse StringRight StringSplit StringStripCR StringStripWS StringToASCIIArray StringToBinary StringTrimLeft StringTrimRight StringUpper Tan TCPAccept TCPCloseSocket TCPConnect TCPListen TCPNameToIP TCPRecv TCPSend TCPShutdown, UDPShutdown TCPStartup, UDPStartup TimerDiff TimerInit ToolTip TrayCreateItem TrayCreateMenu TrayGetMsg TrayItemDelete TrayItemGetHandle TrayItemGetState TrayItemGetText TrayItemSetOnEvent TrayItemSetState TrayItemSetText TraySetClick TraySetIcon TraySetOnEvent TraySetPauseIcon TraySetState TraySetToolTip TrayTip UBound UDPBind UDPCloseSocket UDPOpen UDPRecv UDPSend VarGetType WinActivate WinActive WinClose WinExists WinFlash WinGetCaretPos WinGetClassList WinGetClientSize WinGetHandle WinGetPos WinGetProcess WinGetState WinGetText WinGetTitle WinKill WinList WinMenuSelectItem WinMinimizeAll WinMinimizeAllUndo WinMove WinSetOnTop WinSetState WinSetTitle WinSetTrans WinWait',
const BUILT_IN
= 'Abs ACos AdlibRegister AdlibUnRegister Asc AscW ASin Assign ATan AutoItSetOption AutoItWinGetTitle AutoItWinSetTitle Beep Binary BinaryLen BinaryMid BinaryToString BitAND BitNOT BitOR BitRotate BitShift BitXOR BlockInput Break Call CDTray Ceiling Chr ChrW ClipGet ClipPut ConsoleRead ConsoleWrite ConsoleWriteError ControlClick ControlCommand ControlDisable ControlEnable ControlFocus ControlGetFocus ControlGetHandle ControlGetPos ControlGetText ControlHide ControlListView ControlMove ControlSend ControlSetText ControlShow ControlTreeView Cos Dec DirCopy DirCreate DirGetSize DirMove DirRemove DllCall DllCallAddress DllCallbackFree DllCallbackGetPtr DllCallbackRegister DllClose DllOpen DllStructCreate DllStructGetData DllStructGetPtr DllStructGetSize DllStructSetData DriveGetDrive DriveGetFileSystem DriveGetLabel DriveGetSerial DriveGetType DriveMapAdd DriveMapDel DriveMapGet DriveSetLabel DriveSpaceFree DriveSpaceTotal DriveStatus EnvGet EnvSet EnvUpdate Eval Execute Exp FileChangeDir FileClose FileCopy FileCreateNTFSLink FileCreateShortcut FileDelete FileExists FileFindFirstFile FileFindNextFile FileFlush FileGetAttrib FileGetEncoding FileGetLongName FileGetPos FileGetShortcut FileGetShortName FileGetSize FileGetTime FileGetVersion FileInstall FileMove FileOpen FileOpenDialog FileRead FileReadLine FileReadToArray FileRecycle FileRecycleEmpty FileSaveDialog FileSelectFolder FileSetAttrib FileSetEnd FileSetPos FileSetTime FileWrite FileWriteLine Floor FtpSetProxy FuncName GUICreate GUICtrlCreateAvi GUICtrlCreateButton GUICtrlCreateCheckbox GUICtrlCreateCombo GUICtrlCreateContextMenu GUICtrlCreateDate GUICtrlCreateDummy GUICtrlCreateEdit GUICtrlCreateGraphic GUICtrlCreateGroup GUICtrlCreateIcon GUICtrlCreateInput GUICtrlCreateLabel GUICtrlCreateList GUICtrlCreateListView GUICtrlCreateListViewItem GUICtrlCreateMenu GUICtrlCreateMenuItem GUICtrlCreateMonthCal GUICtrlCreateObj GUICtrlCreatePic GUICtrlCreateProgress GUICtrlCreateRadio GUICtrlCreateSlider GUICtrlCreateTab GUICtrlCreateTabItem GUICtrlCreateTreeView GUICtrlCreateTreeViewItem GUICtrlCreateUpdown GUICtrlDelete GUICtrlGetHandle GUICtrlGetState GUICtrlRead GUICtrlRecvMsg GUICtrlRegisterListViewSort GUICtrlSendMsg GUICtrlSendToDummy GUICtrlSetBkColor GUICtrlSetColor GUICtrlSetCursor GUICtrlSetData GUICtrlSetDefBkColor GUICtrlSetDefColor GUICtrlSetFont GUICtrlSetGraphic GUICtrlSetImage GUICtrlSetLimit GUICtrlSetOnEvent GUICtrlSetPos GUICtrlSetResizing GUICtrlSetState GUICtrlSetStyle GUICtrlSetTip GUIDelete GUIGetCursorInfo GUIGetMsg GUIGetStyle GUIRegisterMsg GUISetAccelerators GUISetBkColor GUISetCoord GUISetCursor GUISetFont GUISetHelp GUISetIcon GUISetOnEvent GUISetState GUISetStyle GUIStartGroup GUISwitch Hex HotKeySet HttpSetProxy HttpSetUserAgent HWnd InetClose InetGet InetGetInfo InetGetSize InetRead IniDelete IniRead IniReadSection IniReadSectionNames IniRenameSection IniWrite IniWriteSection InputBox Int IsAdmin IsArray IsBinary IsBool IsDeclared IsDllStruct IsFloat IsFunc IsHWnd IsInt IsKeyword IsNumber IsObj IsPtr IsString Log MemGetStats Mod MouseClick MouseClickDrag MouseDown MouseGetCursor MouseGetPos MouseMove MouseUp MouseWheel MsgBox Number ObjCreate ObjCreateInterface ObjEvent ObjGet ObjName OnAutoItExitRegister OnAutoItExitUnRegister Ping PixelChecksum PixelGetColor PixelSearch ProcessClose ProcessExists ProcessGetStats ProcessList ProcessSetPriority ProcessWait ProcessWaitClose ProgressOff ProgressOn ProgressSet Ptr Random RegDelete RegEnumKey RegEnumVal RegRead RegWrite Round Run RunAs RunAsWait RunWait Send SendKeepActive SetError SetExtended ShellExecute ShellExecuteWait Shutdown Sin Sleep SoundPlay SoundSetWaveVolume SplashImageOn SplashOff SplashTextOn Sqrt SRandom StatusbarGetText StderrRead StdinWrite StdioClose StdoutRead String StringAddCR StringCompare StringFormat StringFromASCIIArray StringInStr StringIsAlNum StringIsAlpha StringIsASCII StringIsDigit StringIsFloat StringIsInt StringIsLower StringIsSpace StringIsUpper StringIsXDigit StringLeft StringLen StringLower StringMid StringRegExp StringRegExpReplace StringReplace StringReverse StringRight StringSplit StringStripCR StringStripWS StringToASCIIArray StringToBinary StringTrimLeft StringTrimRight StringUpper Tan TCPAccept TCPCloseSocket TCPConnect TCPListen TCPNameToIP TCPRecv TCPSend TCPShutdown, UDPShutdown TCPStartup, UDPStartup TimerDiff TimerInit ToolTip TrayCreateItem TrayCreateMenu TrayGetMsg TrayItemDelete TrayItemGetHandle TrayItemGetState TrayItemGetText TrayItemSetOnEvent TrayItemSetState TrayItemSetText TraySetClick TraySetIcon TraySetOnEvent TraySetPauseIcon TraySetState TraySetToolTip TrayTip UBound UDPBind UDPCloseSocket UDPOpen UDPRecv UDPSend VarGetType WinActivate WinActive WinClose WinExists WinFlash WinGetCaretPos WinGetClassList WinGetClientSize WinGetHandle WinGetPos WinGetProcess WinGetState WinGetText WinGetTitle WinKill WinList WinMenuSelectItem WinMinimizeAll WinMinimizeAllUndo WinMove WinSetOnTop WinSetState WinSetTitle WinSetTrans WinWait';
COMMENT = {
variants: [
hljs.COMMENT(';', '$', {relevance: 0}),
hljs.COMMENT('#cs', '#ce'),
hljs.COMMENT('#comments-start', '#comments-end')
]
},
const COMMENT = {
variants: [
hljs.COMMENT(';', '$', {
relevance: 0
}),
hljs.COMMENT('#cs', '#ce'),
hljs.COMMENT('#comments-start', '#comments-end')
]
};
VARIABLE = {
begin: '\\$[A-z0-9_]+'
const VARIABLE = {
begin: '\\$[A-z0-9_]+'
};
const STRING = {
className: 'string',
variants: [
{
begin: /"/,
end: /"/,
contains: [{
begin: /""/,
relevance: 0
}]
},
{
begin: /'/,
end: /'/,
contains: [{
begin: /''/,
relevance: 0
}]
}
]
};
const NUMBER = {
variants: [
hljs.BINARY_NUMBER_MODE,
hljs.C_NUMBER_MODE
]
};
const PREPROCESSOR = {
className: 'meta',
begin: '#',
end: '$',
keywords: {
'meta-keyword': 'comments include include-once NoTrayIcon OnAutoItStartRegister pragma compile RequireAdmin'
},
contains: [
{
begin: /\\\n/,
relevance: 0
},
{
beginKeywords: 'include',
keywords: {
'meta-keyword': 'include'
},
STRING = {
className: 'string',
variants: [{
end: '$',
contains: [
STRING,
{
className: 'meta-string',
variants: [
{
begin: '<',
end: '>'
},
{
begin: /"/,
end: /"/,
contains: [{
begin: /""/,
relevance: 0
begin: /""/,
relevance: 0
}]
}, {
},
{
begin: /'/,
end: /'/,
contains: [{
begin: /''/,
relevance: 0
begin: /''/,
relevance: 0
}]
}]
},
NUMBER = {
variants: [hljs.BINARY_NUMBER_MODE, hljs.C_NUMBER_MODE]
},
PREPROCESSOR = {
className: 'meta',
begin: '#',
end: '$',
keywords: {'meta-keyword': 'comments include include-once NoTrayIcon OnAutoItStartRegister pragma compile RequireAdmin'},
contains: [{
begin: /\\\n/,
relevance: 0
}, {
beginKeywords: 'include',
keywords: {'meta-keyword': 'include'},
end: '$',
contains: [
STRING, {
className: 'meta-string',
variants: [{
begin: '<',
end: '>'
}, {
begin: /"/,
end: /"/,
contains: [{
begin: /""/,
relevance: 0
}]
}, {
begin: /'/,
end: /'/,
contains: [{
begin: /''/,
relevance: 0
}]
}]
}
]
},
STRING,
COMMENT
}
]
},
}
]
},
STRING,
COMMENT
]
};
CONSTANT = {
className: 'symbol',
// begin: '@',
// end: '$',
// keywords: 'AppDataCommonDir AppDataDir AutoItExe AutoItPID AutoItVersion AutoItX64 COM_EventObj CommonFilesDir Compiled ComputerName ComSpec CPUArch CR CRLF DesktopCommonDir DesktopDepth DesktopDir DesktopHeight DesktopRefresh DesktopWidth DocumentsCommonDir error exitCode exitMethod extended FavoritesCommonDir FavoritesDir GUI_CtrlHandle GUI_CtrlId GUI_DragFile GUI_DragId GUI_DropId GUI_WinHandle HomeDrive HomePath HomeShare HotKeyPressed HOUR IPAddress1 IPAddress2 IPAddress3 IPAddress4 KBLayout LF LocalAppDataDir LogonDNSDomain LogonDomain LogonServer MDAY MIN MON MSEC MUILang MyDocumentsDir NumParams OSArch OSBuild OSLang OSServicePack OSType OSVersion ProgramFilesDir ProgramsCommonDir ProgramsDir ScriptDir ScriptFullPath ScriptLineNumber ScriptName SEC StartMenuCommonDir StartMenuDir StartupCommonDir StartupDir SW_DISABLE SW_ENABLE SW_HIDE SW_LOCK SW_MAXIMIZE SW_MINIMIZE SW_RESTORE SW_SHOW SW_SHOWDEFAULT SW_SHOWMAXIMIZED SW_SHOWMINIMIZED SW_SHOWMINNOACTIVE SW_SHOWNA SW_SHOWNOACTIVATE SW_SHOWNORMAL SW_UNLOCK SystemDir TAB TempDir TRAY_ID TrayIconFlashing TrayIconVisible UserName UserProfileDir WDAY WindowsDir WorkingDir YDAY YEAR',
// relevance: 5
begin: '@[A-z0-9_]+'
},
const CONSTANT = {
className: 'symbol',
// begin: '@',
// end: '$',
// keywords: 'AppDataCommonDir AppDataDir AutoItExe AutoItPID AutoItVersion AutoItX64 COM_EventObj CommonFilesDir Compiled ComputerName ComSpec CPUArch CR CRLF DesktopCommonDir DesktopDepth DesktopDir DesktopHeight DesktopRefresh DesktopWidth DocumentsCommonDir error exitCode exitMethod extended FavoritesCommonDir FavoritesDir GUI_CtrlHandle GUI_CtrlId GUI_DragFile GUI_DragId GUI_DropId GUI_WinHandle HomeDrive HomePath HomeShare HotKeyPressed HOUR IPAddress1 IPAddress2 IPAddress3 IPAddress4 KBLayout LF LocalAppDataDir LogonDNSDomain LogonDomain LogonServer MDAY MIN MON MSEC MUILang MyDocumentsDir NumParams OSArch OSBuild OSLang OSServicePack OSType OSVersion ProgramFilesDir ProgramsCommonDir ProgramsDir ScriptDir ScriptFullPath ScriptLineNumber ScriptName SEC StartMenuCommonDir StartMenuDir StartupCommonDir StartupDir SW_DISABLE SW_ENABLE SW_HIDE SW_LOCK SW_MAXIMIZE SW_MINIMIZE SW_RESTORE SW_SHOW SW_SHOWDEFAULT SW_SHOWMAXIMIZED SW_SHOWMINIMIZED SW_SHOWMINNOACTIVE SW_SHOWNA SW_SHOWNOACTIVATE SW_SHOWNORMAL SW_UNLOCK SystemDir TAB TempDir TRAY_ID TrayIconFlashing TrayIconVisible UserName UserProfileDir WDAY WindowsDir WorkingDir YDAY YEAR',
// relevance: 5
begin: '@[A-z0-9_]+'
};
FUNCTION = {
className: 'function',
beginKeywords: 'Func',
end: '$',
illegal: '\\$|\\[|%',
contains: [
hljs.UNDERSCORE_TITLE_MODE, {
className: 'params',
begin: '\\(',
end: '\\)',
contains: [
VARIABLE,
STRING,
NUMBER
]
}
]
};
return {
name: 'AutoIt',
case_insensitive: true,
illegal: /\/\*/,
keywords: {
keyword: KEYWORDS,
built_in: BUILT_IN,
literal: LITERAL
},
const FUNCTION = {
className: 'function',
beginKeywords: 'Func',
end: '$',
illegal: '\\$|\\[|%',
contains: [
hljs.UNDERSCORE_TITLE_MODE,
{
className: 'params',
begin: '\\(',
end: '\\)',
contains: [
COMMENT,
VARIABLE,
STRING,
NUMBER,
PREPROCESSOR,
CONSTANT,
FUNCTION
VARIABLE,
STRING,
NUMBER
]
}
}
]
};
return {
name: 'AutoIt',
case_insensitive: true,
illegal: /\/\*/,
keywords: {
keyword: KEYWORDS,
built_in: BUILT_IN,
literal: LITERAL
},
contains: [
COMMENT,
VARIABLE,
STRING,
NUMBER,
PREPROCESSOR,
CONSTANT,
FUNCTION
]
};
}
module.exports = autoit;

@@ -59,8 +59,16 @@ /*

className: 'string',
begin: '\'', end: '[^\\\\]\'',
begin: '\'',
end: '[^\\\\]\'',
illegal: '[^\\\\][^\']'
},
{className: 'symbol', begin: '^[A-Za-z0-9_.$]+:'},
{className: 'meta', begin: '#', end: '$'},
{ // substitution within a macro
{
className: 'symbol',
begin: '^[A-Za-z0-9_.$]+:'
},
{
className: 'meta',
begin: '#',
end: '$'
},
{ // substitution within a macro
className: 'subst',

@@ -67,0 +75,0 @@ begin: '@[0-9]+'

@@ -10,11 +10,15 @@ /*

function awk(hljs) {
var VARIABLE = {
const VARIABLE = {
className: 'variable',
variants: [
{begin: /\$[\w\d#@][\w\d_]*/},
{begin: /\$\{(.*?)\}/}
{
begin: /\$[\w\d#@][\w\d_]*/
},
{
begin: /\$\{(.*?)\}/
}
]
};
var KEYWORDS = 'BEGIN END if else while do for in break continue delete next nextfile function func exit|10';
var STRING = {
const KEYWORDS = 'BEGIN END if else while do for in break continue delete next nextfile function func exit|10';
const STRING = {
className: 'string',

@@ -24,22 +28,28 @@ contains: [hljs.BACKSLASH_ESCAPE],

{
begin: /(u|b)?r?'''/, end: /'''/,
begin: /(u|b)?r?'''/,
end: /'''/,
relevance: 10
},
{
begin: /(u|b)?r?"""/, end: /"""/,
begin: /(u|b)?r?"""/,
end: /"""/,
relevance: 10
},
{
begin: /(u|r|ur)'/, end: /'/,
begin: /(u|r|ur)'/,
end: /'/,
relevance: 10
},
{
begin: /(u|r|ur)"/, end: /"/,
begin: /(u|r|ur)"/,
end: /"/,
relevance: 10
},
{
begin: /(b|br)'/, end: /'/
begin: /(b|br)'/,
end: /'/
},
{
begin: /(b|br)"/, end: /"/
begin: /(b|br)"/,
end: /"/
},

@@ -62,5 +72,5 @@ hljs.APOS_STRING_MODE,

]
}
};
}
module.exports = awk;

@@ -35,3 +35,3 @@ /*

'null',
'true',
'true'
];

@@ -139,3 +139,3 @@

'where',
'while',
'while'
];

@@ -161,10 +161,15 @@

className: 'meta',
begin: '#', end: '$'
begin: '#',
end: '$'
},
{
className: 'class',
beginKeywords: 'class interface', end: /\{/, excludeEnd: true,
beginKeywords: 'class interface',
end: /\{/,
excludeEnd: true,
illegal: ':',
contains: [
{beginKeywords: 'extends implements'},
{
beginKeywords: 'extends implements'
},
hljs.UNDERSCORE_TITLE_MODE

@@ -171,0 +176,0 @@ ]

@@ -16,21 +16,25 @@ /*

keywords: {
$pattern: '[a-zA-Z][a-zA-Z0-9_$%!#]*',
keyword:
'ABS ASC AND ATN AUTO|0 BEEP BLOAD|10 BSAVE|10 CALL CALLS CDBL CHAIN CHDIR CHR$|10 CINT CIRCLE ' +
'CLEAR CLOSE CLS COLOR COM COMMON CONT COS CSNG CSRLIN CVD CVI CVS DATA DATE$ ' +
'DEFDBL DEFINT DEFSNG DEFSTR DEF|0 SEG USR DELETE DIM DRAW EDIT END ENVIRON ENVIRON$ ' +
'EOF EQV ERASE ERDEV ERDEV$ ERL ERR ERROR EXP FIELD FILES FIX FOR|0 FRE GET GOSUB|10 GOTO ' +
'HEX$ IF THEN ELSE|0 INKEY$ INP INPUT INPUT# INPUT$ INSTR IMP INT IOCTL IOCTL$ KEY ON ' +
'OFF LIST KILL LEFT$ LEN LET LINE LLIST LOAD LOC LOCATE LOF LOG LPRINT USING LSET ' +
'MERGE MID$ MKDIR MKD$ MKI$ MKS$ MOD NAME NEW NEXT NOISE NOT OCT$ ON OR PEN PLAY STRIG OPEN OPTION ' +
'BASE OUT PAINT PALETTE PCOPY PEEK PMAP POINT POKE POS PRINT PRINT] PSET PRESET ' +
'PUT RANDOMIZE READ REM RENUM RESET|0 RESTORE RESUME RETURN|0 RIGHT$ RMDIR RND RSET ' +
'RUN SAVE SCREEN SGN SHELL SIN SOUND SPACE$ SPC SQR STEP STICK STOP STR$ STRING$ SWAP ' +
'SYSTEM TAB TAN TIME$ TIMER TROFF TRON TO USR VAL VARPTR VARPTR$ VIEW WAIT WHILE ' +
'WEND WIDTH WINDOW WRITE XOR'
$pattern: '[a-zA-Z][a-zA-Z0-9_$%!#]*',
keyword:
'ABS ASC AND ATN AUTO|0 BEEP BLOAD|10 BSAVE|10 CALL CALLS CDBL CHAIN CHDIR CHR$|10 CINT CIRCLE ' +
'CLEAR CLOSE CLS COLOR COM COMMON CONT COS CSNG CSRLIN CVD CVI CVS DATA DATE$ ' +
'DEFDBL DEFINT DEFSNG DEFSTR DEF|0 SEG USR DELETE DIM DRAW EDIT END ENVIRON ENVIRON$ ' +
'EOF EQV ERASE ERDEV ERDEV$ ERL ERR ERROR EXP FIELD FILES FIX FOR|0 FRE GET GOSUB|10 GOTO ' +
'HEX$ IF THEN ELSE|0 INKEY$ INP INPUT INPUT# INPUT$ INSTR IMP INT IOCTL IOCTL$ KEY ON ' +
'OFF LIST KILL LEFT$ LEN LET LINE LLIST LOAD LOC LOCATE LOF LOG LPRINT USING LSET ' +
'MERGE MID$ MKDIR MKD$ MKI$ MKS$ MOD NAME NEW NEXT NOISE NOT OCT$ ON OR PEN PLAY STRIG OPEN OPTION ' +
'BASE OUT PAINT PALETTE PCOPY PEEK PMAP POINT POKE POS PRINT PRINT] PSET PRESET ' +
'PUT RANDOMIZE READ REM RENUM RESET|0 RESTORE RESUME RETURN|0 RIGHT$ RMDIR RND RSET ' +
'RUN SAVE SCREEN SGN SHELL SIN SOUND SPACE$ SPC SQR STEP STICK STOP STR$ STRING$ SWAP ' +
'SYSTEM TAB TAN TIME$ TIMER TROFF TRON TO USR VAL VARPTR VARPTR$ VIEW WAIT WHILE ' +
'WEND WIDTH WINDOW WRITE XOR'
},
contains: [
hljs.QUOTE_STRING_MODE,
hljs.COMMENT('REM', '$', {relevance: 10}),
hljs.COMMENT('\'', '$', {relevance: 0}),
hljs.COMMENT('REM', '$', {
relevance: 10
}),
hljs.COMMENT('\'', '$', {
relevance: 0
}),
{

@@ -37,0 +41,0 @@ // Match line numbers

@@ -15,3 +15,4 @@ /*

className: 'attribute',
begin: /</, end: />/
begin: /</,
end: />/
},

@@ -24,3 +25,4 @@ // Specific

{
begin: /</, end: />/
begin: /</,
end: />/
},

@@ -27,0 +29,0 @@ // Common

@@ -9,3 +9,3 @@ /*

function brainfuck(hljs) {
var LITERAL = {
const LITERAL = {
className: 'literal',

@@ -12,0 +12,0 @@ begin: /[+-]/,

@@ -10,7 +10,7 @@ /*

function cal(hljs) {
var KEYWORDS =
const KEYWORDS =
'div mod in and or not xor asserterror begin case do downto else end exit for if of repeat then to ' +
'until while with var';
var LITERALS = 'false true';
var COMMENT_MODES = [
const LITERALS = 'false true';
const COMMENT_MODES = [
hljs.C_LINE_COMMENT_MODE,

@@ -32,24 +32,29 @@ hljs.COMMENT(

];
var STRING = {
const STRING = {
className: 'string',
begin: /'/, end: /'/,
contains: [{begin: /''/}]
begin: /'/,
end: /'/,
contains: [{
begin: /''/
}]
};
var CHAR_STRING = {
className: 'string', begin: /(#\d+)+/
const CHAR_STRING = {
className: 'string',
begin: /(#\d+)+/
};
var DATE = {
className: 'number',
begin: '\\b\\d+(\\.\\d+)?(DT|D|T)',
relevance: 0
const DATE = {
className: 'number',
begin: '\\b\\d+(\\.\\d+)?(DT|D|T)',
relevance: 0
};
var DBL_QUOTED_VARIABLE = {
className: 'string', // not a string technically but makes sense to be highlighted in the same style
begin: '"',
end: '"'
const DBL_QUOTED_VARIABLE = {
className: 'string', // not a string technically but makes sense to be highlighted in the same style
begin: '"',
end: '"'
};
var PROCEDURE = {
const PROCEDURE = {
className: 'function',
beginKeywords: 'procedure', end: /[:;]/,
beginKeywords: 'procedure',
end: /[:;]/,
keywords: 'procedure|10',

@@ -60,5 +65,9 @@ contains: [

className: 'params',
begin: /\(/, end: /\)/,
begin: /\(/,
end: /\)/,
keywords: KEYWORDS,
contains: [STRING, CHAR_STRING]
contains: [
STRING,
CHAR_STRING
]
}

@@ -68,3 +77,3 @@ ].concat(COMMENT_MODES)

var OBJECT = {
const OBJECT = {
className: 'class',

@@ -75,3 +84,3 @@ begin: 'OBJECT (Table|Form|Report|Dataport|Codeunit|XMLport|MenuSuite|Page|Query) (\\d+) ([^\\r\\n]+)',

hljs.TITLE_MODE,
PROCEDURE
PROCEDURE
]

@@ -83,7 +92,12 @@ };

case_insensitive: true,
keywords: { keyword: KEYWORDS, literal: LITERALS },
keywords: {
keyword: KEYWORDS,
literal: LITERALS
},
illegal: /\/\*/,
contains: [
STRING, CHAR_STRING,
DATE, DBL_QUOTED_VARIABLE,
STRING,
CHAR_STRING,
DATE,
DBL_QUOTED_VARIABLE,
hljs.NUMBER_MODE,

@@ -90,0 +104,0 @@ OBJECT,

@@ -38,19 +38,23 @@ /*

className: 'class',
beginKeywords: 'struct enum', end: /\{/,
beginKeywords: 'struct enum',
end: /\{/,
illegal: /\n/,
contains: [
hljs.inherit(hljs.TITLE_MODE, {
starts: {endsWithParent: true, excludeEnd: true} // hack: eating everything after the first title
})
]
contains: [hljs.inherit(hljs.TITLE_MODE, {
starts: {
endsWithParent: true,
excludeEnd: true
} // hack: eating everything after the first title
})]
},
{
className: 'class',
beginKeywords: 'interface', end: /\{/,
beginKeywords: 'interface',
end: /\{/,
illegal: /\n/,
contains: [
hljs.inherit(hljs.TITLE_MODE, {
starts: {endsWithParent: true, excludeEnd: true} // hack: eating everything after the first title
})
]
contains: [hljs.inherit(hljs.TITLE_MODE, {
starts: {
endsWithParent: true,
excludeEnd: true
} // hack: eating everything after the first title
})]
}

@@ -57,0 +61,0 @@ ]

@@ -10,3 +10,3 @@ /*

// 2.3. Identifiers and keywords
var KEYWORDS =
const KEYWORDS =
'assembly module package import alias class interface object given value ' +

@@ -17,15 +17,18 @@ 'assign void function new of extends satisfies abstracts in out return ' +

// 7.4.1 Declaration Modifiers
var DECLARATION_MODIFIERS =
const DECLARATION_MODIFIERS =
'shared abstract formal default actual variable late native deprecated ' +
'final sealed annotation suppressWarnings small';
// 7.4.2 Documentation
var DOCUMENTATION =
const DOCUMENTATION =
'doc by license see throws tagged';
var SUBST = {
className: 'subst', excludeBegin: true, excludeEnd: true,
begin: /``/, end: /``/,
const SUBST = {
className: 'subst',
excludeBegin: true,
excludeEnd: true,
begin: /``/,
end: /``/,
keywords: KEYWORDS,
relevance: 10
};
var EXPRESSIONS = [
const EXPRESSIONS = [
{

@@ -41,3 +44,4 @@ // verbatim string

className: 'string',
begin: '"', end: '"',
begin: '"',
end: '"',
contains: [SUBST]

@@ -69,3 +73,5 @@ },

hljs.C_LINE_COMMENT_MODE,
hljs.COMMENT('/\\*', '\\*/', {contains: ['self']}),
hljs.COMMENT('/\\*', '\\*/', {
contains: ['self']
}),
{

@@ -72,0 +78,0 @@ // compiler annotation

@@ -12,3 +12,7 @@ /*

name: 'Clean',
aliases: ['clean','icl','dcl'],
aliases: [
'clean',
'icl',
'dcl'
],
keywords: {

@@ -26,3 +30,2 @@ keyword:

contains: [
hljs.C_LINE_COMMENT_MODE,

@@ -33,4 +36,5 @@ hljs.C_BLOCK_COMMENT_MODE,

hljs.C_NUMBER_MODE,
{begin: '->|<-[|:]?|#!?|>>=|\\{\\||\\|\\}|:==|=:|<>'} // relevance booster
{ // relevance booster
begin: '->|<-[|:]?|#!?|>>=|\\{\\||\\|\\}|:==|=:|<>'
}
]

@@ -37,0 +41,0 @@ };

@@ -14,15 +14,13 @@ /*

name: 'Clojure REPL',
contains: [
{
className: 'meta',
begin: /^([\w.-]+|\s*#_)?=>/,
starts: {
end: /$/,
subLanguage: 'clojure'
}
contains: [{
className: 'meta',
begin: /^([\w.-]+|\s*#_)?=>/,
starts: {
end: /$/,
subLanguage: 'clojure'
}
]
}
}]
};
}
module.exports = clojureRepl;

@@ -54,3 +54,4 @@ /*

className: 'variable',
begin: /\$\{/, end: /\}/
begin: /\$\{/,
end: /\}/
},

@@ -57,0 +58,0 @@ hljs.HASH_COMMENT_MODE,

@@ -149,7 +149,7 @@ const KEYWORDS = [

function coffeescript(hljs) {
var COFFEE_BUILT_INS = [
const COFFEE_BUILT_INS = [
'npm',
'print'
];
var COFFEE_LITERALS = [
const COFFEE_LITERALS = [
'yes',

@@ -160,3 +160,3 @@ 'no',

];
var COFFEE_KEYWORDS = [
const COFFEE_KEYWORDS = [
'then',

@@ -174,3 +174,3 @@ 'unless',

];
var NOT_VALID_KEYWORDS = [
const NOT_VALID_KEYWORDS = [
"var",

@@ -182,5 +182,5 @@ "const",

];
var excluding = (list) =>
const excluding = (list) =>
(kw) => !list.includes(kw);
var KEYWORDS$1 = {
const KEYWORDS$1 = {
keyword: KEYWORDS.concat(COFFEE_KEYWORDS).filter(excluding(NOT_VALID_KEYWORDS)).join(" "),

@@ -190,11 +190,17 @@ literal: LITERALS.concat(COFFEE_LITERALS).join(" "),

};
var JS_IDENT_RE = '[A-Za-z$_][0-9A-Za-z$_]*';
var SUBST = {
const JS_IDENT_RE = '[A-Za-z$_][0-9A-Za-z$_]*';
const SUBST = {
className: 'subst',
begin: /#\{/, end: /\}/,
begin: /#\{/,
end: /\}/,
keywords: KEYWORDS$1
};
var EXPRESSIONS = [
const EXPRESSIONS = [
hljs.BINARY_NUMBER_MODE,
hljs.inherit(hljs.C_NUMBER_MODE, {starts: {end: '(\\s*/)?', relevance: 0}}), // a number tries to eat the following slash to prevent treating it as a regexp
hljs.inherit(hljs.C_NUMBER_MODE, {
starts: {
end: '(\\s*/)?',
relevance: 0
}
}), // a number tries to eat the following slash to prevent treating it as a regexp
{

@@ -204,16 +210,26 @@ className: 'string',

{
begin: /'''/, end: /'''/,
begin: /'''/,
end: /'''/,
contains: [hljs.BACKSLASH_ESCAPE]
},
{
begin: /'/, end: /'/,
begin: /'/,
end: /'/,
contains: [hljs.BACKSLASH_ESCAPE]
},
{
begin: /"""/, end: /"""/,
contains: [hljs.BACKSLASH_ESCAPE, SUBST]
begin: /"""/,
end: /"""/,
contains: [
hljs.BACKSLASH_ESCAPE,
SUBST
]
},
{
begin: /"/, end: /"/,
contains: [hljs.BACKSLASH_ESCAPE, SUBST]
begin: /"/,
end: /"/,
contains: [
hljs.BACKSLASH_ESCAPE,
SUBST
]
}

@@ -226,4 +242,8 @@ ]

{
begin: '///', end: '///',
contains: [SUBST, hljs.HASH_COMMENT_MODE]
begin: '///',
end: '///',
contains: [
SUBST,
hljs.HASH_COMMENT_MODE
]
},

@@ -246,9 +266,12 @@ {

subLanguage: 'javascript',
excludeBegin: true, excludeEnd: true,
excludeBegin: true,
excludeEnd: true,
variants: [
{
begin: '```', end: '```',
begin: '```',
end: '```'
},
{
begin: '`', end: '`',
begin: '`',
end: '`'
}

@@ -260,11 +283,15 @@ ]

var TITLE = hljs.inherit(hljs.TITLE_MODE, {begin: JS_IDENT_RE});
var PARAMS_RE = '(\\(.*\\))?\\s*\\B[-=]>';
var PARAMS = {
const TITLE = hljs.inherit(hljs.TITLE_MODE, {
begin: JS_IDENT_RE
});
const PARAMS_RE = '(\\(.*\\))?\\s*\\B[-=]>';
const PARAMS = {
className: 'params',
begin: '\\([^\\(]', returnBegin: true,
begin: '\\([^\\(]',
returnBegin: true,
/* We need another contained nameless mode to not have every nested
pair of parens to be called "params" */
contains: [{
begin: /\(/, end: /\)/,
begin: /\(/,
end: /\)/,
keywords: KEYWORDS$1,

@@ -277,3 +304,7 @@ contains: ['self'].concat(EXPRESSIONS)

name: 'CoffeeScript',
aliases: ['coffee', 'cson', 'iced'],
aliases: [
'coffee',
'cson',
'iced'
],
keywords: KEYWORDS$1,

@@ -286,5 +317,9 @@ illegal: /\/\*/,

className: 'function',
begin: '^\\s*' + JS_IDENT_RE + '\\s*=\\s*' + PARAMS_RE, end: '[-=]>',
begin: '^\\s*' + JS_IDENT_RE + '\\s*=\\s*' + PARAMS_RE,
end: '[-=]>',
returnBegin: true,
contains: [TITLE, PARAMS]
contains: [
TITLE,
PARAMS
]
},

@@ -295,10 +330,9 @@ {

relevance: 0,
contains: [
{
className: 'function',
begin: PARAMS_RE, end: '[-=]>',
returnBegin: true,
contains: [PARAMS]
}
]
contains: [{
className: 'function',
begin: PARAMS_RE,
end: '[-=]>',
returnBegin: true,
contains: [PARAMS]
}]
},

@@ -321,4 +355,6 @@ {

{
begin: JS_IDENT_RE + ':', end: ':',
returnBegin: true, returnEnd: true,
begin: JS_IDENT_RE + ':',
end: ':',
returnBegin: true,
returnEnd: true,
relevance: 0

@@ -325,0 +361,0 @@ }

@@ -72,3 +72,5 @@ /*

},
{begin: /[-=]>/} // relevance booster
{ // relevance booster
begin: /[-=]>/
}
]

@@ -75,0 +77,0 @@ };

@@ -9,19 +9,16 @@ /*

/** @type LanguageFn */
function cos (hljs) {
var STRINGS = {
function cos(hljs) {
const STRINGS = {
className: 'string',
variants: [
{
begin: '"',
end: '"',
contains: [{ // escaped
begin: "\"\"",
relevance: 0
}]
}
]
variants: [{
begin: '"',
end: '"',
contains: [{ // escaped
begin: "\"\"",
relevance: 0
}]
}]
};
var NUMBERS = {
const NUMBERS = {
className: "number",

@@ -32,3 +29,3 @@ begin: "\\b(\\d+(\\.\\d*)?|\\.\\d+)",

var COS_KEYWORDS =
const COS_KEYWORDS =
'property parameter class classmethod clientmethod extends as break ' +

@@ -42,38 +39,38 @@ 'catch close continue do d|0 else elseif for goto halt hang h|0 if job ' +

// registered function - no need in them due to all functions are highlighted,
// but I'll just leave this here.
// registered function - no need in them due to all functions are highlighted,
// but I'll just leave this here.
//"$bit", "$bitcount",
//"$bitfind", "$bitlogic", "$case", "$char", "$classmethod", "$classname",
//"$compile", "$data", "$decimal", "$double", "$extract", "$factor",
//"$find", "$fnumber", "$get", "$increment", "$inumber", "$isobject",
//"$isvaliddouble", "$isvalidnum", "$justify", "$length", "$list",
//"$listbuild", "$listdata", "$listfind", "$listfromstring", "$listget",
//"$listlength", "$listnext", "$listsame", "$listtostring", "$listvalid",
//"$locate", "$match", "$method", "$name", "$nconvert", "$next",
//"$normalize", "$now", "$number", "$order", "$parameter", "$piece",
//"$prefetchoff", "$prefetchon", "$property", "$qlength", "$qsubscript",
//"$query", "$random", "$replace", "$reverse", "$sconvert", "$select",
//"$sortbegin", "$sortend", "$stack", "$text", "$translate", "$view",
//"$wascii", "$wchar", "$wextract", "$wfind", "$wiswide", "$wlength",
//"$wreverse", "$xecute", "$zabs", "$zarccos", "$zarcsin", "$zarctan",
//"$zcos", "$zcot", "$zcsc", "$zdate", "$zdateh", "$zdatetime",
//"$zdatetimeh", "$zexp", "$zhex", "$zln", "$zlog", "$zpower", "$zsec",
//"$zsin", "$zsqr", "$ztan", "$ztime", "$ztimeh", "$zboolean",
//"$zconvert", "$zcrc", "$zcyc", "$zdascii", "$zdchar", "$zf",
//"$ziswide", "$zlascii", "$zlchar", "$zname", "$zposition", "$zqascii",
//"$zqchar", "$zsearch", "$zseek", "$zstrip", "$zwascii", "$zwchar",
//"$zwidth", "$zwpack", "$zwbpack", "$zwunpack", "$zwbunpack", "$zzenkaku",
//"$change", "$mv", "$mvat", "$mvfmt", "$mvfmts", "$mviconv",
//"$mviconvs", "$mvinmat", "$mvlover", "$mvoconv", "$mvoconvs", "$mvraise",
//"$mvtrans", "$mvv", "$mvname", "$zbitand", "$zbitcount", "$zbitfind",
//"$zbitget", "$zbitlen", "$zbitnot", "$zbitor", "$zbitset", "$zbitstr",
//"$zbitxor", "$zincrement", "$znext", "$zorder", "$zprevious", "$zsort",
//"device", "$ecode", "$estack", "$etrap", "$halt", "$horolog",
//"$io", "$job", "$key", "$namespace", "$principal", "$quit", "$roles",
//"$storage", "$system", "$test", "$this", "$tlevel", "$username",
//"$x", "$y", "$za", "$zb", "$zchild", "$zeof", "$zeos", "$zerror",
//"$zhorolog", "$zio", "$zjob", "$zmode", "$znspace", "$zparent", "$zpi",
//"$zpos", "$zreference", "$zstorage", "$ztimestamp", "$ztimezone",
//"$ztrap", "$zversion"
// "$bit", "$bitcount",
// "$bitfind", "$bitlogic", "$case", "$char", "$classmethod", "$classname",
// "$compile", "$data", "$decimal", "$double", "$extract", "$factor",
// "$find", "$fnumber", "$get", "$increment", "$inumber", "$isobject",
// "$isvaliddouble", "$isvalidnum", "$justify", "$length", "$list",
// "$listbuild", "$listdata", "$listfind", "$listfromstring", "$listget",
// "$listlength", "$listnext", "$listsame", "$listtostring", "$listvalid",
// "$locate", "$match", "$method", "$name", "$nconvert", "$next",
// "$normalize", "$now", "$number", "$order", "$parameter", "$piece",
// "$prefetchoff", "$prefetchon", "$property", "$qlength", "$qsubscript",
// "$query", "$random", "$replace", "$reverse", "$sconvert", "$select",
// "$sortbegin", "$sortend", "$stack", "$text", "$translate", "$view",
// "$wascii", "$wchar", "$wextract", "$wfind", "$wiswide", "$wlength",
// "$wreverse", "$xecute", "$zabs", "$zarccos", "$zarcsin", "$zarctan",
// "$zcos", "$zcot", "$zcsc", "$zdate", "$zdateh", "$zdatetime",
// "$zdatetimeh", "$zexp", "$zhex", "$zln", "$zlog", "$zpower", "$zsec",
// "$zsin", "$zsqr", "$ztan", "$ztime", "$ztimeh", "$zboolean",
// "$zconvert", "$zcrc", "$zcyc", "$zdascii", "$zdchar", "$zf",
// "$ziswide", "$zlascii", "$zlchar", "$zname", "$zposition", "$zqascii",
// "$zqchar", "$zsearch", "$zseek", "$zstrip", "$zwascii", "$zwchar",
// "$zwidth", "$zwpack", "$zwbpack", "$zwunpack", "$zwbunpack", "$zzenkaku",
// "$change", "$mv", "$mvat", "$mvfmt", "$mvfmts", "$mviconv",
// "$mviconvs", "$mvinmat", "$mvlover", "$mvoconv", "$mvoconvs", "$mvraise",
// "$mvtrans", "$mvv", "$mvname", "$zbitand", "$zbitcount", "$zbitfind",
// "$zbitget", "$zbitlen", "$zbitnot", "$zbitor", "$zbitset", "$zbitstr",
// "$zbitxor", "$zincrement", "$znext", "$zorder", "$zprevious", "$zsort",
// "device", "$ecode", "$estack", "$etrap", "$halt", "$horolog",
// "$io", "$job", "$key", "$namespace", "$principal", "$quit", "$roles",
// "$storage", "$system", "$test", "$this", "$tlevel", "$username",
// "$x", "$y", "$za", "$zb", "$zchild", "$zeof", "$zeos", "$zerror",
// "$zhorolog", "$zio", "$zjob", "$zmode", "$znspace", "$zparent", "$zpi",
// "$zpos", "$zreference", "$zstorage", "$ztimestamp", "$ztimezone",
// "$ztrap", "$zversion"

@@ -83,3 +80,6 @@ return {

case_insensitive: true,
aliases: ["cos", "cls"],
aliases: [
"cos",
"cls"
],
keywords: COS_KEYWORDS,

@@ -93,3 +93,4 @@ contains: [

className: "comment",
begin: /;/, end: "$",
begin: /;/,
end: "$",
relevance: 0

@@ -117,13 +118,16 @@ },

},
// sub-languages: are not fully supported by hljs by 11/15/2015
// left for the future implementation.
{
begin: /&sql\(/, end: /\)/,
excludeBegin: true, excludeEnd: true,
begin: /&sql\(/,
end: /\)/,
excludeBegin: true,
excludeEnd: true,
subLanguage: "sql"
},
{
begin: /&(js|jscript|javascript)</, end: />/,
excludeBegin: true, excludeEnd: true,
begin: /&(js|jscript|javascript)</,
end: />/,
excludeBegin: true,
excludeEnd: true,
subLanguage: "javascript"

@@ -133,3 +137,4 @@ },

// this brakes first and last tag, but this is the only way to embed a valid html
begin: /&html<\s*</, end: />\s*>/,
begin: /&html<\s*</,
end: />\s*>/,
subLanguage: "xml"

@@ -136,0 +141,0 @@ }

@@ -11,23 +11,20 @@ /*

function crmsh(hljs) {
var RESOURCES = 'primitive rsc_template';
var COMMANDS = 'group clone ms master location colocation order fencing_topology ' +
const RESOURCES = 'primitive rsc_template';
const COMMANDS = 'group clone ms master location colocation order fencing_topology ' +
'rsc_ticket acl_target acl_group user role ' +
'tag xml';
var PROPERTY_SETS = 'property rsc_defaults op_defaults';
var KEYWORDS = 'params meta operations op rule attributes utilization';
var OPERATORS = 'read write deny defined not_defined in_range date spec in ' +
const PROPERTY_SETS = 'property rsc_defaults op_defaults';
const KEYWORDS = 'params meta operations op rule attributes utilization';
const OPERATORS = 'read write deny defined not_defined in_range date spec in ' +
'ref reference attribute type xpath version and or lt gt tag ' +
'lte gte eq ne \\';
const TYPES = 'number string';
const LITERALS = 'Master Started Slave Stopped start promote demote stop monitor true false';
var TYPES = 'number string';
var LITERALS = 'Master Started Slave Stopped start promote demote stop monitor true false';
return {
name: 'crmsh',
aliases: ['crm', 'pcmk'],
aliases: [
'crm',
'pcmk'
],
case_insensitive: true,

@@ -34,0 +31,0 @@ keywords: {

@@ -19,13 +19,16 @@ /*

'frame-ancestors frame-src img-src media-src object-src plugin-types ' +
'report-uri sandbox script-src style-src',
'report-uri sandbox script-src style-src'
},
contains: [
{
className: 'string',
begin: "'", end: "'"
},
{
className: 'attribute',
begin: '^Content', end: ':', excludeEnd: true,
},
{
className: 'string',
begin: "'",
end: "'"
},
{
className: 'attribute',
begin: '^Content',
end: ':',
excludeEnd: true
}
]

@@ -32,0 +35,0 @@ };

@@ -33,3 +33,3 @@ /*

*/
var D_KEYWORDS = {
const D_KEYWORDS = {
$pattern: hljs.UNDERSCORE_IDENT_RE,

@@ -58,27 +58,27 @@ keyword:

*/
var decimal_integer_re = '(0|[1-9][\\d_]*)',
decimal_integer_nosus_re = '(0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d)',
binary_integer_re = '0[bB][01_]+',
hexadecimal_digits_re = '([\\da-fA-F][\\da-fA-F_]*|_[\\da-fA-F][\\da-fA-F_]*)',
hexadecimal_integer_re = '0[xX]' + hexadecimal_digits_re,
const decimal_integer_re = '(0|[1-9][\\d_]*)';
const decimal_integer_nosus_re = '(0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d)';
const binary_integer_re = '0[bB][01_]+';
const hexadecimal_digits_re = '([\\da-fA-F][\\da-fA-F_]*|_[\\da-fA-F][\\da-fA-F_]*)';
const hexadecimal_integer_re = '0[xX]' + hexadecimal_digits_re;
decimal_exponent_re = '([eE][+-]?' + decimal_integer_nosus_re + ')',
decimal_float_re = '(' + decimal_integer_nosus_re + '(\\.\\d*|' + decimal_exponent_re + ')|' +
const decimal_exponent_re = '([eE][+-]?' + decimal_integer_nosus_re + ')';
const decimal_float_re = '(' + decimal_integer_nosus_re + '(\\.\\d*|' + decimal_exponent_re + ')|' +
'\\d+\\.' + decimal_integer_nosus_re + decimal_integer_nosus_re + '|' +
'\\.' + decimal_integer_re + decimal_exponent_re + '?' +
')',
hexadecimal_float_re = '(0[xX](' +
hexadecimal_digits_re + '\\.' + hexadecimal_digits_re + '|'+
')';
const hexadecimal_float_re = '(0[xX](' +
hexadecimal_digits_re + '\\.' + hexadecimal_digits_re + '|' +
'\\.?' + hexadecimal_digits_re +
')[pP][+-]?' + decimal_integer_nosus_re + ')',
')[pP][+-]?' + decimal_integer_nosus_re + ')';
integer_re = '(' +
const integer_re = '(' +
decimal_integer_re + '|' +
binary_integer_re + '|' +
hexadecimal_integer_re +
')',
binary_integer_re + '|' +
hexadecimal_integer_re +
')';
float_re = '(' +
const float_re = '(' +
hexadecimal_float_re + '|' +
decimal_float_re +
decimal_float_re +
')';

@@ -91,10 +91,10 @@

*/
var escape_sequence_re = '\\\\(' +
'[\'"\\?\\\\abfnrtv]|' + // common escapes
'u[\\dA-Fa-f]{4}|' + // four hex digit unicode codepoint
'[0-7]{1,3}|' + // one to three octal digit ascii char code
'x[\\dA-Fa-f]{2}|' + // two hex digit ascii char code
'U[\\dA-Fa-f]{8}' + // eight hex digit unicode codepoint
const escape_sequence_re = '\\\\(' +
'[\'"\\?\\\\abfnrtv]|' + // common escapes
'u[\\dA-Fa-f]{4}|' + // four hex digit unicode codepoint
'[0-7]{1,3}|' + // one to three octal digit ascii char code
'x[\\dA-Fa-f]{2}|' + // two hex digit ascii char code
'U[\\dA-Fa-f]{8}' + // eight hex digit unicode codepoint
')|' +
'&[a-zA-Z\\d]{2,};'; // named character entity
'&[a-zA-Z\\d]{2,};'; // named character entity

@@ -106,6 +106,6 @@ /**

*/
var D_INTEGER_MODE = {
const D_INTEGER_MODE = {
className: 'number',
begin: '\\b' + integer_re + '(L|u|U|Lu|LU|uL|UL)?',
relevance: 0
begin: '\\b' + integer_re + '(L|u|U|Lu|LU|uL|UL)?',
relevance: 0
};

@@ -117,3 +117,3 @@

*/
var D_FLOAT_MODE = {
const D_FLOAT_MODE = {
className: 'number',

@@ -132,5 +132,6 @@ begin: '\\b(' +

*/
var D_CHARACTER_MODE = {
const D_CHARACTER_MODE = {
className: 'string',
begin: '\'(' + escape_sequence_re + '|.)', end: '\'',
begin: '\'(' + escape_sequence_re + '|.)',
end: '\'',
illegal: '.'

@@ -144,3 +145,3 @@ };

*/
var D_ESCAPE_SEQUENCE = {
const D_ESCAPE_SEQUENCE = {
begin: escape_sequence_re,

@@ -155,3 +156,3 @@ relevance: 0

*/
var D_STRING_MODE = {
const D_STRING_MODE = {
className: 'string',

@@ -168,3 +169,3 @@ begin: '"',

*/
var D_WYSIWYG_DELIMITED_STRING_MODE = {
const D_WYSIWYG_DELIMITED_STRING_MODE = {
className: 'string',

@@ -181,3 +182,3 @@ begin: '[rq]"',

*/
var D_ALTERNATE_WYSIWYG_STRING_MODE = {
const D_ALTERNATE_WYSIWYG_STRING_MODE = {
className: 'string',

@@ -193,3 +194,3 @@ begin: '`',

*/
var D_HEX_STRING_MODE = {
const D_HEX_STRING_MODE = {
className: 'string',

@@ -205,3 +206,3 @@ begin: 'x"[\\da-fA-F\\s\\n\\r]*"[cwd]?',

*/
var D_TOKEN_STRING_MODE = {
const D_TOKEN_STRING_MODE = {
className: 'string',

@@ -217,3 +218,3 @@ begin: 'q"\\{',

*/
var D_HASHBANG_MODE = {
const D_HASHBANG_MODE = {
className: 'meta',

@@ -230,3 +231,3 @@ begin: '^#!',

*/
var D_SPECIAL_TOKEN_SEQUENCE_MODE = {
const D_SPECIAL_TOKEN_SEQUENCE_MODE = {
className: 'meta',

@@ -243,3 +244,3 @@ begin: '#(line)',

*/
var D_ATTRIBUTE_MODE = {
const D_ATTRIBUTE_MODE = {
className: 'keyword',

@@ -254,3 +255,3 @@ begin: '@[a-zA-Z_][a-zA-Z_\\d]*'

*/
var D_NESTING_COMMENT_MODE = hljs.COMMENT(
const D_NESTING_COMMENT_MODE = hljs.COMMENT(
'\\/\\+',

@@ -269,15 +270,15 @@ '\\+\\/',

hljs.C_LINE_COMMENT_MODE,
hljs.C_BLOCK_COMMENT_MODE,
D_NESTING_COMMENT_MODE,
D_HEX_STRING_MODE,
D_STRING_MODE,
D_WYSIWYG_DELIMITED_STRING_MODE,
D_ALTERNATE_WYSIWYG_STRING_MODE,
D_TOKEN_STRING_MODE,
D_FLOAT_MODE,
D_INTEGER_MODE,
D_CHARACTER_MODE,
D_HASHBANG_MODE,
D_SPECIAL_TOKEN_SEQUENCE_MODE,
D_ATTRIBUTE_MODE
hljs.C_BLOCK_COMMENT_MODE,
D_NESTING_COMMENT_MODE,
D_HEX_STRING_MODE,
D_STRING_MODE,
D_WYSIWYG_DELIMITED_STRING_MODE,
D_ALTERNATE_WYSIWYG_STRING_MODE,
D_TOKEN_STRING_MODE,
D_FLOAT_MODE,
D_INTEGER_MODE,
D_CHARACTER_MODE,
D_HASHBANG_MODE,
D_SPECIAL_TOKEN_SEQUENCE_MODE,
D_ATTRIBUTE_MODE
]

@@ -284,0 +285,0 @@ };

@@ -10,2 +10,3 @@ /*

/** @type LanguageFn */
function dart(hljs) {

@@ -16,3 +17,3 @@ const SUBST = {

begin: '\\$[A-Za-z0-9_]+'
}],
}]
};

@@ -26,3 +27,3 @@

}],
keywords: 'true false null this is new super',
keywords: 'true false null this is new super'
};

@@ -32,3 +33,4 @@

className: 'string',
variants: [{
variants: [
{
begin: 'r\'\'\'',

@@ -54,3 +56,7 @@ end: '\'\'\''

end: '\'\'\'',
contains: [hljs.BACKSLASH_ESCAPE, SUBST, BRACED_SUBST]
contains: [
hljs.BACKSLASH_ESCAPE,
SUBST,
BRACED_SUBST
]
},

@@ -60,3 +66,7 @@ {

end: '"""',
contains: [hljs.BACKSLASH_ESCAPE, SUBST, BRACED_SUBST]
contains: [
hljs.BACKSLASH_ESCAPE,
SUBST,
BRACED_SUBST
]
},

@@ -67,3 +77,7 @@ {

illegal: '\\n',
contains: [hljs.BACKSLASH_ESCAPE, SUBST, BRACED_SUBST]
contains: [
hljs.BACKSLASH_ESCAPE,
SUBST,
BRACED_SUBST
]
},

@@ -74,3 +88,7 @@ {

illegal: '\\n',
contains: [hljs.BACKSLASH_ESCAPE, SUBST, BRACED_SUBST]
contains: [
hljs.BACKSLASH_ESCAPE,
SUBST,
BRACED_SUBST
]
}

@@ -80,3 +98,4 @@ ]

BRACED_SUBST.contains = [
hljs.C_NUMBER_MODE, STRING
hljs.C_NUMBER_MODE,
STRING
];

@@ -112,3 +131,3 @@

'Element',
'ElementList',
'ElementList'
];

@@ -135,4 +154,4 @@ const NULLABLE_BUILT_IN_TYPES = BUILT_IN_TYPES.map((e) => `${e}?`);

'querySelectorAll',
'window',
]).join(' '),
'window'
]).join(' '),
$pattern: /[A-Za-z][A-Za-z0-9_]*\??/

@@ -150,3 +169,3 @@ };

subLanguage: 'markdown',
relevance:0
relevance: 0
}

@@ -161,3 +180,3 @@ ),

end: '$',
relevance:0
relevance: 0
}]

@@ -173,3 +192,4 @@ }

excludeEnd: true,
contains: [{
contains: [
{
beginKeywords: 'extends implements'

@@ -176,0 +196,0 @@ },

@@ -8,3 +8,3 @@ /*

function delphi(hljs) {
var KEYWORDS =
const KEYWORDS =
'exports register file shl array record property for mod while set ally label uses raise not ' +

@@ -21,20 +21,33 @@ 'stored class safecall var interface or private static exit index inherited to else stdcall ' +

'specialize strict unaligned varargs ';
var COMMENT_MODES = [
const COMMENT_MODES = [
hljs.C_LINE_COMMENT_MODE,
hljs.COMMENT(/\{/, /\}/, {relevance: 0}),
hljs.COMMENT(/\(\*/, /\*\)/, {relevance: 10})
hljs.COMMENT(/\{/, /\}/, {
relevance: 0
}),
hljs.COMMENT(/\(\*/, /\*\)/, {
relevance: 10
})
];
var DIRECTIVE = {
const DIRECTIVE = {
className: 'meta',
variants: [
{begin: /\{\$/, end: /\}/},
{begin: /\(\*\$/, end: /\*\)/}
{
begin: /\{\$/,
end: /\}/
},
{
begin: /\(\*\$/,
end: /\*\)/
}
]
};
var STRING = {
const STRING = {
className: 'string',
begin: /'/, end: /'/,
contains: [{begin: /''/}]
begin: /'/,
end: /'/,
contains: [{
begin: /''/
}]
};
var NUMBER = {
const NUMBER = {
className: 'number',

@@ -46,26 +59,27 @@ relevance: 0,

// Hexadecimal notation, e.g., $7F.
begin: '\\$[0-9A-Fa-f]+',
begin: '\\$[0-9A-Fa-f]+'
},
{
// Octal notation, e.g., &42.
begin: '&[0-7]+',
begin: '&[0-7]+'
},
{
// Binary notation, e.g., %1010.
begin: '%[01]+',
begin: '%[01]+'
}
]
};
var CHAR_STRING = {
className: 'string', begin: /(#\d+)+/
const CHAR_STRING = {
className: 'string',
begin: /(#\d+)+/
};
var CLASS = {
begin: hljs.IDENT_RE + '\\s*=\\s*class\\s*\\(', returnBegin: true,
contains: [
hljs.TITLE_MODE
]
const CLASS = {
begin: hljs.IDENT_RE + '\\s*=\\s*class\\s*\\(',
returnBegin: true,
contains: [hljs.TITLE_MODE]
};
var FUNCTION = {
const FUNCTION = {
className: 'function',
beginKeywords: 'function constructor destructor procedure', end: /[:;]/,
beginKeywords: 'function constructor destructor procedure',
end: /[:;]/,
keywords: 'function constructor|10 destructor|10 procedure|10',

@@ -76,5 +90,10 @@ contains: [

className: 'params',
begin: /\(/, end: /\)/,
begin: /\(/,
end: /\)/,
keywords: KEYWORDS,
contains: [STRING, CHAR_STRING, DIRECTIVE].concat(COMMENT_MODES)
contains: [
STRING,
CHAR_STRING,
DIRECTIVE
].concat(COMMENT_MODES)
},

@@ -86,3 +105,12 @@ DIRECTIVE

name: 'Delphi',
aliases: ['dpr', 'dfm', 'pas', 'pascal', 'freepascal', 'lazarus', 'lpr', 'lfm'],
aliases: [
'dpr',
'dfm',
'pas',
'pascal',
'freepascal',
'lazarus',
'lpr',
'lfm'
],
case_insensitive: true,

@@ -92,3 +120,4 @@ keywords: KEYWORDS,

contains: [
STRING, CHAR_STRING,
STRING,
CHAR_STRING,
hljs.NUMBER_MODE,

@@ -95,0 +124,0 @@ NUMBER,

@@ -19,5 +19,11 @@ /*

variants: [
{begin: /^@@ +-\d+,\d+ +\+\d+,\d+ +@@/},
{begin: /^\*\*\* +\d+,\d+ +\*\*\*\*$/},
{begin: /^--- +\d+,\d+ +----$/}
{
begin: /^@@ +-\d+,\d+ +\+\d+,\d+ +@@/
},
{
begin: /^\*\*\* +\d+,\d+ +\*\*\*\*$/
},
{
begin: /^--- +\d+,\d+ +----$/
}
]

@@ -28,10 +34,33 @@ },

variants: [
{begin: /Index: /, end: /$/},
{begin: /^index/, end: /$/},
{begin: /={3,}/, end: /$/},
{begin: /^-{3}/, end: /$/},
{begin: /^\*{3} /, end: /$/},
{begin: /^\+{3}/, end: /$/},
{begin: /^\*{15}$/ },
{begin: /^diff --git/, end: /$/},
{
begin: /Index: /,
end: /$/
},
{
begin: /^index/,
end: /$/
},
{
begin: /={3,}/,
end: /$/
},
{
begin: /^-{3}/,
end: /$/
},
{
begin: /^\*{3} /,
end: /$/
},
{
begin: /^\+{3}/,
end: /$/
},
{
begin: /^\*{15}$/
},
{
begin: /^diff --git/,
end: /$/
}
]

@@ -41,11 +70,14 @@ },

className: 'addition',
begin: /^\+/, end: /$/
begin: /^\+/,
end: /$/
},
{
className: 'deletion',
begin: /^-/, end: /$/
begin: /^-/,
end: /$/
},
{
className: 'addition',
begin: /^!/, end: /$/
begin: /^!/,
end: /$/
}

@@ -52,0 +84,0 @@ ]

@@ -11,4 +11,5 @@ /*

/** @type LanguageFn */
function django(hljs) {
var FILTER = {
const FILTER = {
begin: /\|[A-Za-z]+:?/,

@@ -42,9 +43,9 @@ keywords: {

className: 'template-tag',
begin: /\{%/, end: /%\}/,
contains: [
{
className: 'name',
begin: /\w+/,
keywords: {
name:
begin: /\{%/,
end: /%\}/,
contains: [{
className: 'name',
begin: /\w+/,
keywords: {
name:
'comment endcomment load templatetag ifchanged endifchanged if endif firstof for ' +

@@ -59,15 +60,15 @@ 'endfor ifnotequal endifnotequal widthratio extends include spaceless ' +

'verbatim'
},
starts: {
endsWithParent: true,
keywords: 'in by as',
contains: [FILTER],
relevance: 0
}
},
starts: {
endsWithParent: true,
keywords: 'in by as',
contains: [FILTER],
relevance: 0
}
]
}]
},
{
className: 'template-variable',
begin: /\{\{/, end: /\}\}/,
begin: /\{\{/,
end: /\}\}/,
contains: [FILTER]

@@ -74,0 +75,0 @@ }

@@ -12,3 +12,6 @@ /*

name: 'DNS Zone',
aliases: ['bind', 'zone'],
aliases: [
'bind',
'zone'
],
keywords: {

@@ -20,3 +23,5 @@ keyword:

contains: [
hljs.COMMENT(';', '$', {relevance: 0}),
hljs.COMMENT(';', '$', {
relevance: 0
}),
{

@@ -36,3 +41,5 @@ className: 'meta',

},
hljs.inherit(hljs.NUMBER_MODE, {begin: /\b\d+[dhwm]?/})
hljs.inherit(hljs.NUMBER_MODE, {
begin: /\b\d+[dhwm]?/
})
]

@@ -39,0 +46,0 @@ };

@@ -10,2 +10,3 @@ /*

/** @type LanguageFn */
function dockerfile(hljs) {

@@ -31,5 +32,5 @@ return {

illegal: '</'
}
};
}
module.exports = dockerfile;

@@ -8,4 +8,5 @@ /*

/** @type LanguageFn */
function dos(hljs) {
var COMMENT = hljs.COMMENT(
const COMMENT = hljs.COMMENT(
/^\s*@?rem\b/, /$/,

@@ -16,3 +17,3 @@ {

);
var LABEL = {
const LABEL = {
className: 'symbol',

@@ -24,3 +25,6 @@ begin: '^\\s*[A-Za-z._?][A-Za-z0-9_$#@~.?]*(:|\\s+label)',

name: 'Batch file (DOS)',
aliases: ['bat', 'cmd'],
aliases: [
'bat',
'cmd'
],
case_insensitive: true,

@@ -45,9 +49,13 @@ illegal: /\/\*/,

{
className: 'variable', begin: /%%[^ ]|%[^ ]+?%|![^ ]+?!/
className: 'variable',
begin: /%%[^ ]|%[^ ]+?%|![^ ]+?!/
},
{
className: 'function',
begin: LABEL.begin, end: 'goto:eof',
begin: LABEL.begin,
end: 'goto:eof',
contains: [
hljs.inherit(hljs.TITLE_MODE, {begin: '([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*'}),
hljs.inherit(hljs.TITLE_MODE, {
begin: '([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*'
}),
COMMENT

@@ -57,3 +65,4 @@ ]

{
className: 'number', begin: '\\b\\d+',
className: 'number',
begin: '\\b\\d+',
relevance: 0

@@ -60,0 +69,0 @@ },

@@ -7,19 +7,25 @@ /*

*/
/** @type LanguageFn */
function dsconfig(hljs) {
var QUOTED_PROPERTY = {
const QUOTED_PROPERTY = {
className: 'string',
begin: /"/, end: /"/
begin: /"/,
end: /"/
};
var APOS_PROPERTY = {
const APOS_PROPERTY = {
className: 'string',
begin: /'/, end: /'/
begin: /'/,
end: /'/
};
var UNQUOTED_PROPERTY = {
const UNQUOTED_PROPERTY = {
className: 'string',
begin: /[\w\-?]+:\w+/, end: /\W/,
begin: /[\w\-?]+:\w+/,
end: /\W/,
relevance: 0
};
var VALUELESS_PROPERTY = {
const VALUELESS_PROPERTY = {
className: 'string',
begin: /\w+-?\w+/, end: /\W/,
begin: /\w+-?\w+/,
end: /\W/,
relevance: 0

@@ -33,3 +39,5 @@ };

className: 'keyword',
begin: '^dsconfig', end: /\s/, excludeEnd: true,
begin: '^dsconfig',
end: /\s/,
excludeEnd: true,
relevance: 10

@@ -40,3 +48,4 @@ },

begin: /(list|create|get|set|delete)-(\w+)/,
end: /\s/, excludeEnd: true,
end: /\s/,
excludeEnd: true,
illegal: '!@#$%^&*()',

@@ -47,3 +56,5 @@ relevance: 10

className: 'built_in',
begin: /--(\w+)/, end: /\s/, excludeEnd: true
begin: /--(\w+)/,
end: /\s/,
excludeEnd: true
},

@@ -50,0 +61,0 @@ QUOTED_PROPERTY,

@@ -9,13 +9,18 @@ /*

/** @type LanguageFn */
function dts(hljs) {
var STRINGS = {
const STRINGS = {
className: 'string',
variants: [
hljs.inherit(hljs.QUOTE_STRING_MODE, { begin: '((u8?|U)|L)?"' }),
hljs.inherit(hljs.QUOTE_STRING_MODE, {
begin: '((u8?|U)|L)?"'
}),
{
begin: '(u8?|U)?R"', end: '"',
begin: '(u8?|U)?R"',
end: '"',
contains: [hljs.BACKSLASH_ESCAPE]
},
{
begin: '\'\\\\?.', end: '\'',
begin: '\'\\\\?.',
end: '\'',
illegal: '.'

@@ -26,7 +31,11 @@ }

var NUMBERS = {
const NUMBERS = {
className: 'number',
variants: [
{ begin: '\\b(\\d+(\\.\\d*)?|\\.\\d+)(u|U|l|L|ul|UL|f|F)' },
{ begin: hljs.C_NUMBER_RE }
{
begin: '\\b(\\d+(\\.\\d*)?|\\.\\d+)(u|U|l|L|ul|UL|f|F)'
},
{
begin: hljs.C_NUMBER_RE
}
],

@@ -36,18 +45,28 @@ relevance: 0

var PREPROCESSOR = {
const PREPROCESSOR = {
className: 'meta',
begin: '#', end: '$',
keywords: {'meta-keyword': 'if else elif endif define undef ifdef ifndef'},
begin: '#',
end: '$',
keywords: {
'meta-keyword': 'if else elif endif define undef ifdef ifndef'
},
contains: [
{
begin: /\\\n/, relevance: 0
begin: /\\\n/,
relevance: 0
},
{
beginKeywords: 'include', end: '$',
keywords: {'meta-keyword': 'include'},
beginKeywords: 'include',
end: '$',
keywords: {
'meta-keyword': 'include'
},
contains: [
hljs.inherit(STRINGS, {className: 'meta-string'}),
hljs.inherit(STRINGS, {
className: 'meta-string'
}),
{
className: 'meta-string',
begin: '<', end: '>',
begin: '<',
end: '>',
illegal: '\\n'

@@ -63,3 +82,3 @@ }

var DTS_REFERENCE = {
const DTS_REFERENCE = {
className: 'variable',

@@ -69,3 +88,3 @@ begin: /&[a-z\d_]*\b/

var DTS_KEYWORD = {
const DTS_KEYWORD = {
className: 'meta-keyword',

@@ -75,3 +94,3 @@ begin: '/[a-z][a-z\\d-]*/'

var DTS_LABEL = {
const DTS_LABEL = {
className: 'symbol',

@@ -81,3 +100,3 @@ begin: '^\\s*[a-zA-Z_][a-zA-Z\\d_]*:'

var DTS_CELL_PROPERTY = {
const DTS_CELL_PROPERTY = {
className: 'params',

@@ -92,3 +111,3 @@ begin: '<',

var DTS_NODE = {
const DTS_NODE = {
className: 'class',

@@ -101,3 +120,3 @@ begin: /[a-zA-Z_][a-zA-Z\d_@]*\s\{/,

var DTS_ROOT_NODE = {
const DTS_ROOT_NODE = {
className: 'class',

@@ -104,0 +123,0 @@ begin: '/\\s*\\{',

@@ -10,4 +10,5 @@ /*

/** @type LanguageFn */
function dust(hljs) {
var EXPRESSION_KEYWORDS = 'if eq ne lt lte gt gte select default math sep';
const EXPRESSION_KEYWORDS = 'if eq ne lt lte gt gte select default math sep';
return {

@@ -21,19 +22,20 @@ name: 'Dust',

className: 'template-tag',
begin: /\{[#\/]/, end: /\}/, illegal: /;/,
contains: [
{
className: 'name',
begin: /[a-zA-Z\.-]+/,
starts: {
endsWithParent: true, relevance: 0,
contains: [
hljs.QUOTE_STRING_MODE
]
}
begin: /\{[#\/]/,
end: /\}/,
illegal: /;/,
contains: [{
className: 'name',
begin: /[a-zA-Z\.-]+/,
starts: {
endsWithParent: true,
relevance: 0,
contains: [hljs.QUOTE_STRING_MODE]
}
]
}]
},
{
className: 'template-variable',
begin: /\{/, end: /\}/, illegal: /;/,
begin: /\{/,
end: /\}/,
illegal: /;/,
keywords: EXPRESSION_KEYWORDS

@@ -40,0 +42,0 @@ }

@@ -7,43 +7,48 @@ /*

/** @type LanguageFn */
function ebnf(hljs) {
var commentMode = hljs.COMMENT(/\(\*/, /\*\)/);
const commentMode = hljs.COMMENT(/\(\*/, /\*\)/);
var nonTerminalMode = {
className: "attribute",
begin: /^[ ]*[a-zA-Z][a-zA-Z_-]*([\s_-]+[a-zA-Z][a-zA-Z]*)*/
};
const nonTerminalMode = {
className: "attribute",
begin: /^[ ]*[a-zA-Z][a-zA-Z_-]*([\s_-]+[a-zA-Z][a-zA-Z]*)*/
};
var specialSequenceMode = {
className: "meta",
begin: /\?.*\?/
};
const specialSequenceMode = {
className: "meta",
begin: /\?.*\?/
};
var ruleBodyMode = {
begin: /=/, end: /[.;]/,
contains: [
commentMode,
specialSequenceMode,
{
// terminals
className: 'string',
variants: [
hljs.APOS_STRING_MODE,
hljs.QUOTE_STRING_MODE,
{begin: '`', end: '`'},
]
},
const ruleBodyMode = {
begin: /=/,
end: /[.;]/,
contains: [
commentMode,
specialSequenceMode,
{
// terminals
className: 'string',
variants: [
hljs.APOS_STRING_MODE,
hljs.QUOTE_STRING_MODE,
{
begin: '`',
end: '`'
}
]
};
}
]
};
return {
name: 'Extended Backus-Naur Form',
illegal: /\S/,
contains: [
commentMode,
nonTerminalMode,
ruleBodyMode
]
};
return {
name: 'Extended Backus-Naur Form',
illegal: /\S/,
contains: [
commentMode,
nonTerminalMode,
ruleBodyMode
]
};
}
module.exports = ebnf;

@@ -9,6 +9,7 @@ /*

/** @type LanguageFn */
function elixir(hljs) {
var ELIXIR_IDENT_RE = '[a-zA-Z_][a-zA-Z0-9_.]*(!|\\?)?';
var ELIXIR_METHOD_RE = '[a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?';
var ELIXIR_KEYWORDS = {
const ELIXIR_IDENT_RE = '[a-zA-Z_][a-zA-Z0-9_.]*(!|\\?)?';
const ELIXIR_METHOD_RE = '[a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?';
const ELIXIR_KEYWORDS = {
$pattern: ELIXIR_IDENT_RE,

@@ -19,8 +20,9 @@ keyword: 'and false then defined module in return redo retry end for true self when ' +

};
var SUBST = {
const SUBST = {
className: 'subst',
begin: /#\{/, end: /\}/,
begin: /#\{/,
end: /\}/,
keywords: ELIXIR_KEYWORDS
};
var NUMBER = {
const NUMBER = {
className: 'number',

@@ -30,4 +32,4 @@ begin: '(\\b0o[0-7_]+)|(\\b0b[01_]+)|(\\b0x[0-9a-fA-F_]+)|(-?\\b[1-9][0-9_]*(.[0-9_]+([eE][-+]?[0-9]+)?)?)',

};
var SIGIL_DELIMITERS = '[/|([{<"\']';
var LOWERCASE_SIGIL = {
const SIGIL_DELIMITERS = '[/|([{<"\']';
const LOWERCASE_SIGIL = {
className: 'string',

@@ -37,72 +39,137 @@ begin: '~[a-z]' + '(?=' + SIGIL_DELIMITERS + ')',

{
endsParent:true,
contains: [{
contains: [hljs.BACKSLASH_ESCAPE, SUBST],
variants: [
{ begin: /"/, end: /"/ },
{ begin: /'/, end: /'/ },
{ begin: /\//, end: /\// },
{ begin: /\|/, end: /\|/ },
{ begin: /\(/, end: /\)/ },
{ begin: /\[/, end: /\]/ },
{ begin: /\{/, end: /\}/ },
{ begin: /</, end: />/ }
]
}]
},
],
endsParent: true,
contains: [
{
contains: [
hljs.BACKSLASH_ESCAPE,
SUBST
],
variants: [
{
begin: /"/,
end: /"/
},
{
begin: /'/,
end: /'/
},
{
begin: /\//,
end: /\//
},
{
begin: /\|/,
end: /\|/
},
{
begin: /\(/,
end: /\)/
},
{
begin: /\[/,
end: /\]/
},
{
begin: /\{/,
end: /\}/
},
{
begin: /</,
end: />/
}
]
}
]
}
]
};
var UPCASE_SIGIL = {
const UPCASE_SIGIL = {
className: 'string',
begin: '~[A-Z]' + '(?=' + SIGIL_DELIMITERS + ')',
contains: [
{ begin: /"/, end: /"/ },
{ begin: /'/, end: /'/ },
{ begin: /\//, end: /\// },
{ begin: /\|/, end: /\|/ },
{ begin: /\(/, end: /\)/ },
{ begin: /\[/, end: /\]/ },
{ begin: /\{/, end: /\}/ },
{ begin: /</, end: />/ }
{
begin: /"/,
end: /"/
},
{
begin: /'/,
end: /'/
},
{
begin: /\//,
end: /\//
},
{
begin: /\|/,
end: /\|/
},
{
begin: /\(/,
end: /\)/
},
{
begin: /\[/,
end: /\]/
},
{
begin: /\{/,
end: /\}/
},
{
begin: /</,
end: />/
}
]
};
var STRING = {
const STRING = {
className: 'string',
contains: [hljs.BACKSLASH_ESCAPE, SUBST],
contains: [
hljs.BACKSLASH_ESCAPE,
SUBST
],
variants: [
{
begin: /"""/, end: /"""/,
begin: /"""/,
end: /"""/
},
{
begin: /'''/, end: /'''/,
begin: /'''/,
end: /'''/
},
{
begin: /~S"""/, end: /"""/,
begin: /~S"""/,
end: /"""/,
contains: []
},
{
begin: /~S"/, end: /"/,
begin: /~S"/,
end: /"/,
contains: []
},
{
begin: /~S'''/, end: /'''/,
begin: /~S'''/,
end: /'''/,
contains: []
},
{
begin: /~S'/, end: /'/,
begin: /~S'/,
end: /'/,
contains: []
},
{
begin: /'/, end: /'/
begin: /'/,
end: /'/
},
{
begin: /"/, end: /"/
},
begin: /"/,
end: /"/
}
]
};
var FUNCTION = {
const FUNCTION = {
className: 'function',
beginKeywords: 'def defp defmacro', end: /\B\b/, // the mode is ended by the title
beginKeywords: 'def defp defmacro',
end: /\B\b/, // the mode is ended by the title
contains: [

@@ -115,7 +182,8 @@ hljs.inherit(hljs.TITLE_MODE, {

};
var CLASS = hljs.inherit(FUNCTION, {
const CLASS = hljs.inherit(FUNCTION, {
className: 'class',
beginKeywords: 'defimpl defmodule defprotocol defrecord', end: /\bdo\b|$|;/
beginKeywords: 'defimpl defmodule defprotocol defrecord',
end: /\bdo\b|$|;/
});
var ELIXIR_DEFAULT_CONTAINS = [
const ELIXIR_DEFAULT_CONTAINS = [
STRING,

@@ -133,3 +201,8 @@ UPCASE_SIGIL,

begin: ':(?![\\s:])',
contains: [STRING, {begin: ELIXIR_METHOD_RE}],
contains: [
STRING,
{
begin: ELIXIR_METHOD_RE
}
],
relevance: 0

@@ -159,5 +232,3 @@ },

relevance: 0,
contains: [
NUMBER
]
contains: [NUMBER]
},

@@ -167,9 +238,14 @@ {

illegal: '\\n',
contains: [hljs.BACKSLASH_ESCAPE, SUBST],
contains: [
hljs.BACKSLASH_ESCAPE,
SUBST
],
variants: [
{
begin: '/', end: '/[a-z]*'
begin: '/',
end: '/[a-z]*'
},
{
begin: '%r\\[', end: '\\][a-z]*'
begin: '%r\\[',
end: '\\][a-z]*'
}

@@ -176,0 +252,0 @@ ]

@@ -8,4 +8,5 @@ /*

/** @type LanguageFn */
function elm(hljs) {
var COMMENT = {
const COMMENT = {
variants: [

@@ -23,3 +24,3 @@ hljs.COMMENT('--', '$'),

var CONSTRUCTOR = {
const CONSTRUCTOR = {
className: 'type',

@@ -30,7 +31,11 @@ begin: '\\b[A-Z][\\w\']*', // TODO: other constructors (built-in, infix).

var LIST = {
begin: '\\(', end: '\\)',
const LIST = {
begin: '\\(',
end: '\\)',
illegal: '"',
contains: [
{className: 'type', begin: '\\b[A-Z][\\w]*(\\((\\.\\.|,|\\w+)\\))?'},
{
className: 'type',
begin: '\\b[A-Z][\\w]*(\\((\\.\\.|,|\\w+)\\))?'
},
COMMENT

@@ -40,10 +45,12 @@ ]

var RECORD = {
begin: /\{/, end: /\}/,
const RECORD = {
begin: /\{/,
end: /\}/,
contains: LIST.contains
};
var CHARACTER = {
const CHARACTER = {
className: 'string',
begin: '\'\\\\?.', end: '\'',
begin: '\'\\\\?.',
end: '\'',
illegal: '.'

@@ -62,24 +69,43 @@ };

{
beginKeywords: 'port effect module', end: 'exposing',
beginKeywords: 'port effect module',
end: 'exposing',
keywords: 'port effect module where command subscription exposing',
contains: [LIST, COMMENT],
contains: [
LIST,
COMMENT
],
illegal: '\\W\\.|;'
},
{
begin: 'import', end: '$',
begin: 'import',
end: '$',
keywords: 'import as exposing',
contains: [LIST, COMMENT],
contains: [
LIST,
COMMENT
],
illegal: '\\W\\.|;'
},
{
begin: 'type', end: '$',
begin: 'type',
end: '$',
keywords: 'type alias',
contains: [CONSTRUCTOR, LIST, RECORD, COMMENT]
contains: [
CONSTRUCTOR,
LIST,
RECORD,
COMMENT
]
},
{
beginKeywords: 'infix infixl infixr', end: '$',
contains: [hljs.C_NUMBER_MODE, COMMENT]
beginKeywords: 'infix infixl infixr',
end: '$',
contains: [
hljs.C_NUMBER_MODE,
COMMENT
]
},
{
begin: 'port', end: '$',
begin: 'port',
end: '$',
keywords: 'port',

@@ -95,6 +121,10 @@ contains: [COMMENT]

CONSTRUCTOR,
hljs.inherit(hljs.TITLE_MODE, {begin: '^[_a-z][\\w\']*'}),
hljs.inherit(hljs.TITLE_MODE, {
begin: '^[_a-z][\\w\']*'
}),
COMMENT,
{begin: '->|<-'} // No markup, relevance booster
{
begin: '->|<-'
} // No markup, relevance booster
],

@@ -101,0 +131,0 @@ illegal: /;/

@@ -11,2 +11,3 @@ /*

/** @type LanguageFn */
function erb(hljs) {

@@ -19,3 +20,4 @@ return {

{
begin: '<%[%=-]?', end: '[%-]?%>',
begin: '<%[%=-]?',
end: '[%-]?%>',
subLanguage: 'ruby',

@@ -22,0 +24,0 @@ excludeBegin: true,

@@ -8,2 +8,3 @@ /*

/** @type LanguageFn */
function erlangRepl(hljs) {

@@ -21,3 +22,4 @@ return {

{
className: 'meta', begin: '^[0-9]+> ',
className: 'meta',
begin: '^[0-9]+> ',
relevance: 10

@@ -24,0 +26,0 @@ },

@@ -9,6 +9,7 @@ /*

/** @type LanguageFn */
function erlang(hljs) {
var BASIC_ATOM_RE = '[a-z\'][a-zA-Z0-9_\']*';
var FUNCTION_NAME_RE = '(' + BASIC_ATOM_RE + ':' + BASIC_ATOM_RE + '|' + BASIC_ATOM_RE + ')';
var ERLANG_RESERVED = {
const BASIC_ATOM_RE = '[a-z\'][a-zA-Z0-9_\']*';
const FUNCTION_NAME_RE = '(' + BASIC_ATOM_RE + ':' + BASIC_ATOM_RE + '|' + BASIC_ATOM_RE + ')';
const ERLANG_RESERVED = {
keyword:

@@ -21,4 +22,4 @@ 'after and andalso|10 band begin bnot bor bsl bzr bxor case catch cond div end fun if ' +

var COMMENT = hljs.COMMENT('%', '$');
var NUMBER = {
const COMMENT = hljs.COMMENT('%', '$');
const NUMBER = {
className: 'number',

@@ -28,7 +29,8 @@ begin: '\\b(\\d+(_\\d+)*#[a-fA-F0-9]+(_[a-fA-F0-9]+)*|\\d+(_\\d+)*(\\.\\d+(_\\d+)*)?([eE][-+]?\\d+)?)',

};
var NAMED_FUN = {
const NAMED_FUN = {
begin: 'fun\\s+' + BASIC_ATOM_RE + '/\\d+'
};
var FUNCTION_CALL = {
begin: FUNCTION_NAME_RE + '\\(', end: '\\)',
const FUNCTION_CALL = {
begin: FUNCTION_NAME_RE + '\\(',
end: '\\)',
returnBegin: true,

@@ -38,6 +40,9 @@ relevance: 0,

{
begin: FUNCTION_NAME_RE, relevance: 0
begin: FUNCTION_NAME_RE,
relevance: 0
},
{
begin: '\\(', end: '\\)', endsWithParent: true,
begin: '\\(',
end: '\\)',
endsWithParent: true,
returnEnd: true,

@@ -49,16 +54,17 @@ relevance: 0

};
var TUPLE = {
begin: /\{/, end: /\}/,
const TUPLE = {
begin: /\{/,
end: /\}/,
relevance: 0
// "contains" defined later
};
var VAR1 = {
const VAR1 = {
begin: '\\b_([A-Z][A-Za-z0-9_]*)?',
relevance: 0
};
var VAR2 = {
const VAR2 = {
begin: '[A-Z][a-zA-Z0-9_]*',
relevance: 0
};
var RECORD_ACCESS = {
const RECORD_ACCESS = {
begin: '#' + hljs.UNDERSCORE_IDENT_RE,

@@ -73,3 +79,4 @@ relevance: 0,

{
begin: /\{/, end: /\}/,
begin: /\{/,
end: /\}/,
relevance: 0

@@ -81,4 +88,5 @@ // "contains" defined later

var BLOCK_STATEMENTS = {
beginKeywords: 'fun receive if try case', end: 'end',
const BLOCK_STATEMENTS = {
beginKeywords: 'fun receive if try case',
end: 'end',
keywords: ERLANG_RESERVED

@@ -89,3 +97,5 @@ };

NAMED_FUN,
hljs.inherit(hljs.APOS_STRING_MODE, {className: ''}),
hljs.inherit(hljs.APOS_STRING_MODE, {
className: ''
}),
BLOCK_STATEMENTS,

@@ -96,7 +106,8 @@ FUNCTION_CALL,

TUPLE,
VAR1, VAR2,
VAR1,
VAR2,
RECORD_ACCESS
];
var BASIC_MODES = [
const BASIC_MODES = [
COMMENT,

@@ -109,3 +120,4 @@ NAMED_FUN,

TUPLE,
VAR1, VAR2,
VAR1,
VAR2,
RECORD_ACCESS

@@ -117,5 +129,6 @@ ];

var PARAMS = {
const PARAMS = {
className: 'params',
begin: '\\(', end: '\\)',
begin: '\\(',
end: '\\)',
contains: BASIC_MODES

@@ -131,3 +144,4 @@ };

className: 'function',
begin: '^' + BASIC_ATOM_RE + '\\s*\\(', end: '->',
begin: '^' + BASIC_ATOM_RE + '\\s*\\(',
end: '->',
returnBegin: true,

@@ -137,3 +151,5 @@ illegal: '\\(|#|//|/\\*|\\\\|:|;',

PARAMS,
hljs.inherit(hljs.TITLE_MODE, {begin: BASIC_ATOM_RE})
hljs.inherit(hljs.TITLE_MODE, {
begin: BASIC_ATOM_RE
})
],

@@ -148,3 +164,4 @@ starts: {

{
begin: '^-', end: '\\.',
begin: '^-',
end: '\\.',
relevance: 0,

@@ -164,5 +181,8 @@ excludeEnd: true,

RECORD_ACCESS,
VAR1, VAR2,
VAR1,
VAR2,
TUPLE,
{begin: /\.$/} // relevance booster
{
begin: /\.$/
} // relevance booster
]

@@ -169,0 +189,0 @@ };

@@ -8,11 +8,15 @@ /*

/** @type LanguageFn */
function excel(hljs) {
return {
name: 'Excel formulae',
aliases: ['xlsx', 'xls'],
aliases: [
'xlsx',
'xls'
],
case_insensitive: true,
// built-in functions imported from https://web.archive.org/web/20160513042710/https://support.office.com/en-us/article/Excel-functions-alphabetical-b3944572-255d-4efb-bb96-c6d90033e188
keywords: {
$pattern: /[a-zA-Z][\w\.]*/,
built_in: 'ABS ACCRINT ACCRINTM ACOS ACOSH ACOT ACOTH AGGREGATE ADDRESS AMORDEGRC AMORLINC AND ARABIC AREAS ASC ASIN ASINH ATAN ATAN2 ATANH AVEDEV AVERAGE AVERAGEA AVERAGEIF AVERAGEIFS BAHTTEXT BASE BESSELI BESSELJ BESSELK BESSELY BETADIST BETA.DIST BETAINV BETA.INV BIN2DEC BIN2HEX BIN2OCT BINOMDIST BINOM.DIST BINOM.DIST.RANGE BINOM.INV BITAND BITLSHIFT BITOR BITRSHIFT BITXOR CALL CEILING CEILING.MATH CEILING.PRECISE CELL CHAR CHIDIST CHIINV CHITEST CHISQ.DIST CHISQ.DIST.RT CHISQ.INV CHISQ.INV.RT CHISQ.TEST CHOOSE CLEAN CODE COLUMN COLUMNS COMBIN COMBINA COMPLEX CONCAT CONCATENATE CONFIDENCE CONFIDENCE.NORM CONFIDENCE.T CONVERT CORREL COS COSH COT COTH COUNT COUNTA COUNTBLANK COUNTIF COUNTIFS COUPDAYBS COUPDAYS COUPDAYSNC COUPNCD COUPNUM COUPPCD COVAR COVARIANCE.P COVARIANCE.S CRITBINOM CSC CSCH CUBEKPIMEMBER CUBEMEMBER CUBEMEMBERPROPERTY CUBERANKEDMEMBER CUBESET CUBESETCOUNT CUBEVALUE CUMIPMT CUMPRINC DATE DATEDIF DATEVALUE DAVERAGE DAY DAYS DAYS360 DB DBCS DCOUNT DCOUNTA DDB DEC2BIN DEC2HEX DEC2OCT DECIMAL DEGREES DELTA DEVSQ DGET DISC DMAX DMIN DOLLAR DOLLARDE DOLLARFR DPRODUCT DSTDEV DSTDEVP DSUM DURATION DVAR DVARP EDATE EFFECT ENCODEURL EOMONTH ERF ERF.PRECISE ERFC ERFC.PRECISE ERROR.TYPE EUROCONVERT EVEN EXACT EXP EXPON.DIST EXPONDIST FACT FACTDOUBLE FALSE|0 F.DIST FDIST F.DIST.RT FILTERXML FIND FINDB F.INV F.INV.RT FINV FISHER FISHERINV FIXED FLOOR FLOOR.MATH FLOOR.PRECISE FORECAST FORECAST.ETS FORECAST.ETS.CONFINT FORECAST.ETS.SEASONALITY FORECAST.ETS.STAT FORECAST.LINEAR FORMULATEXT FREQUENCY F.TEST FTEST FV FVSCHEDULE GAMMA GAMMA.DIST GAMMADIST GAMMA.INV GAMMAINV GAMMALN GAMMALN.PRECISE GAUSS GCD GEOMEAN GESTEP GETPIVOTDATA GROWTH HARMEAN HEX2BIN HEX2DEC HEX2OCT HLOOKUP HOUR HYPERLINK HYPGEOM.DIST HYPGEOMDIST IF IFERROR IFNA IFS IMABS IMAGINARY IMARGUMENT IMCONJUGATE IMCOS IMCOSH IMCOT IMCSC IMCSCH IMDIV IMEXP IMLN IMLOG10 IMLOG2 IMPOWER IMPRODUCT IMREAL IMSEC IMSECH IMSIN IMSINH IMSQRT IMSUB IMSUM IMTAN INDEX INDIRECT INFO INT INTERCEPT INTRATE IPMT IRR ISBLANK ISERR ISERROR ISEVEN ISFORMULA ISLOGICAL ISNA ISNONTEXT ISNUMBER ISODD ISREF ISTEXT ISO.CEILING ISOWEEKNUM ISPMT JIS KURT LARGE LCM LEFT LEFTB LEN LENB LINEST LN LOG LOG10 LOGEST LOGINV LOGNORM.DIST LOGNORMDIST LOGNORM.INV LOOKUP LOWER MATCH MAX MAXA MAXIFS MDETERM MDURATION MEDIAN MID MIDBs MIN MINIFS MINA MINUTE MINVERSE MIRR MMULT MOD MODE MODE.MULT MODE.SNGL MONTH MROUND MULTINOMIAL MUNIT N NA NEGBINOM.DIST NEGBINOMDIST NETWORKDAYS NETWORKDAYS.INTL NOMINAL NORM.DIST NORMDIST NORMINV NORM.INV NORM.S.DIST NORMSDIST NORM.S.INV NORMSINV NOT NOW NPER NPV NUMBERVALUE OCT2BIN OCT2DEC OCT2HEX ODD ODDFPRICE ODDFYIELD ODDLPRICE ODDLYIELD OFFSET OR PDURATION PEARSON PERCENTILE.EXC PERCENTILE.INC PERCENTILE PERCENTRANK.EXC PERCENTRANK.INC PERCENTRANK PERMUT PERMUTATIONA PHI PHONETIC PI PMT POISSON.DIST POISSON POWER PPMT PRICE PRICEDISC PRICEMAT PROB PRODUCT PROPER PV QUARTILE QUARTILE.EXC QUARTILE.INC QUOTIENT RADIANS RAND RANDBETWEEN RANK.AVG RANK.EQ RANK RATE RECEIVED REGISTER.ID REPLACE REPLACEB REPT RIGHT RIGHTB ROMAN ROUND ROUNDDOWN ROUNDUP ROW ROWS RRI RSQ RTD SEARCH SEARCHB SEC SECH SECOND SERIESSUM SHEET SHEETS SIGN SIN SINH SKEW SKEW.P SLN SLOPE SMALL SQL.REQUEST SQRT SQRTPI STANDARDIZE STDEV STDEV.P STDEV.S STDEVA STDEVP STDEVPA STEYX SUBSTITUTE SUBTOTAL SUM SUMIF SUMIFS SUMPRODUCT SUMSQ SUMX2MY2 SUMX2PY2 SUMXMY2 SWITCH SYD T TAN TANH TBILLEQ TBILLPRICE TBILLYIELD T.DIST T.DIST.2T T.DIST.RT TDIST TEXT TEXTJOIN TIME TIMEVALUE T.INV T.INV.2T TINV TODAY TRANSPOSE TREND TRIM TRIMMEAN TRUE|0 TRUNC T.TEST TTEST TYPE UNICHAR UNICODE UPPER VALUE VAR VAR.P VAR.S VARA VARP VARPA VDB VLOOKUP WEBSERVICE WEEKDAY WEEKNUM WEIBULL WEIBULL.DIST WORKDAY WORKDAY.INTL XIRR XNPV XOR YEAR YEARFRAC YIELD YIELDDISC YIELDMAT Z.TEST ZTEST'
$pattern: /[a-zA-Z][\w\.]*/,
built_in: 'ABS ACCRINT ACCRINTM ACOS ACOSH ACOT ACOTH AGGREGATE ADDRESS AMORDEGRC AMORLINC AND ARABIC AREAS ASC ASIN ASINH ATAN ATAN2 ATANH AVEDEV AVERAGE AVERAGEA AVERAGEIF AVERAGEIFS BAHTTEXT BASE BESSELI BESSELJ BESSELK BESSELY BETADIST BETA.DIST BETAINV BETA.INV BIN2DEC BIN2HEX BIN2OCT BINOMDIST BINOM.DIST BINOM.DIST.RANGE BINOM.INV BITAND BITLSHIFT BITOR BITRSHIFT BITXOR CALL CEILING CEILING.MATH CEILING.PRECISE CELL CHAR CHIDIST CHIINV CHITEST CHISQ.DIST CHISQ.DIST.RT CHISQ.INV CHISQ.INV.RT CHISQ.TEST CHOOSE CLEAN CODE COLUMN COLUMNS COMBIN COMBINA COMPLEX CONCAT CONCATENATE CONFIDENCE CONFIDENCE.NORM CONFIDENCE.T CONVERT CORREL COS COSH COT COTH COUNT COUNTA COUNTBLANK COUNTIF COUNTIFS COUPDAYBS COUPDAYS COUPDAYSNC COUPNCD COUPNUM COUPPCD COVAR COVARIANCE.P COVARIANCE.S CRITBINOM CSC CSCH CUBEKPIMEMBER CUBEMEMBER CUBEMEMBERPROPERTY CUBERANKEDMEMBER CUBESET CUBESETCOUNT CUBEVALUE CUMIPMT CUMPRINC DATE DATEDIF DATEVALUE DAVERAGE DAY DAYS DAYS360 DB DBCS DCOUNT DCOUNTA DDB DEC2BIN DEC2HEX DEC2OCT DECIMAL DEGREES DELTA DEVSQ DGET DISC DMAX DMIN DOLLAR DOLLARDE DOLLARFR DPRODUCT DSTDEV DSTDEVP DSUM DURATION DVAR DVARP EDATE EFFECT ENCODEURL EOMONTH ERF ERF.PRECISE ERFC ERFC.PRECISE ERROR.TYPE EUROCONVERT EVEN EXACT EXP EXPON.DIST EXPONDIST FACT FACTDOUBLE FALSE|0 F.DIST FDIST F.DIST.RT FILTERXML FIND FINDB F.INV F.INV.RT FINV FISHER FISHERINV FIXED FLOOR FLOOR.MATH FLOOR.PRECISE FORECAST FORECAST.ETS FORECAST.ETS.CONFINT FORECAST.ETS.SEASONALITY FORECAST.ETS.STAT FORECAST.LINEAR FORMULATEXT FREQUENCY F.TEST FTEST FV FVSCHEDULE GAMMA GAMMA.DIST GAMMADIST GAMMA.INV GAMMAINV GAMMALN GAMMALN.PRECISE GAUSS GCD GEOMEAN GESTEP GETPIVOTDATA GROWTH HARMEAN HEX2BIN HEX2DEC HEX2OCT HLOOKUP HOUR HYPERLINK HYPGEOM.DIST HYPGEOMDIST IF IFERROR IFNA IFS IMABS IMAGINARY IMARGUMENT IMCONJUGATE IMCOS IMCOSH IMCOT IMCSC IMCSCH IMDIV IMEXP IMLN IMLOG10 IMLOG2 IMPOWER IMPRODUCT IMREAL IMSEC IMSECH IMSIN IMSINH IMSQRT IMSUB IMSUM IMTAN INDEX INDIRECT INFO INT INTERCEPT INTRATE IPMT IRR ISBLANK ISERR ISERROR ISEVEN ISFORMULA ISLOGICAL ISNA ISNONTEXT ISNUMBER ISODD ISREF ISTEXT ISO.CEILING ISOWEEKNUM ISPMT JIS KURT LARGE LCM LEFT LEFTB LEN LENB LINEST LN LOG LOG10 LOGEST LOGINV LOGNORM.DIST LOGNORMDIST LOGNORM.INV LOOKUP LOWER MATCH MAX MAXA MAXIFS MDETERM MDURATION MEDIAN MID MIDBs MIN MINIFS MINA MINUTE MINVERSE MIRR MMULT MOD MODE MODE.MULT MODE.SNGL MONTH MROUND MULTINOMIAL MUNIT N NA NEGBINOM.DIST NEGBINOMDIST NETWORKDAYS NETWORKDAYS.INTL NOMINAL NORM.DIST NORMDIST NORMINV NORM.INV NORM.S.DIST NORMSDIST NORM.S.INV NORMSINV NOT NOW NPER NPV NUMBERVALUE OCT2BIN OCT2DEC OCT2HEX ODD ODDFPRICE ODDFYIELD ODDLPRICE ODDLYIELD OFFSET OR PDURATION PEARSON PERCENTILE.EXC PERCENTILE.INC PERCENTILE PERCENTRANK.EXC PERCENTRANK.INC PERCENTRANK PERMUT PERMUTATIONA PHI PHONETIC PI PMT POISSON.DIST POISSON POWER PPMT PRICE PRICEDISC PRICEMAT PROB PRODUCT PROPER PV QUARTILE QUARTILE.EXC QUARTILE.INC QUOTIENT RADIANS RAND RANDBETWEEN RANK.AVG RANK.EQ RANK RATE RECEIVED REGISTER.ID REPLACE REPLACEB REPT RIGHT RIGHTB ROMAN ROUND ROUNDDOWN ROUNDUP ROW ROWS RRI RSQ RTD SEARCH SEARCHB SEC SECH SECOND SERIESSUM SHEET SHEETS SIGN SIN SINH SKEW SKEW.P SLN SLOPE SMALL SQL.REQUEST SQRT SQRTPI STANDARDIZE STDEV STDEV.P STDEV.S STDEVA STDEVP STDEVPA STEYX SUBSTITUTE SUBTOTAL SUM SUMIF SUMIFS SUMPRODUCT SUMSQ SUMX2MY2 SUMX2PY2 SUMXMY2 SWITCH SYD T TAN TANH TBILLEQ TBILLPRICE TBILLYIELD T.DIST T.DIST.2T T.DIST.RT TDIST TEXT TEXTJOIN TIME TIMEVALUE T.INV T.INV.2T TINV TODAY TRANSPOSE TREND TRIM TRIMMEAN TRUE|0 TRUNC T.TEST TTEST TYPE UNICHAR UNICODE UPPER VALUE VAR VAR.P VAR.S VARA VARP VARPA VDB VLOOKUP WEBSERVICE WEEKDAY WEEKNUM WEIBULL WEIBULL.DIST WORKDAY WORKDAY.INTL XIRR XNPV XOR YEAR YEARFRAC YIELD YIELDDISC YIELDMAT Z.TEST ZTEST'
},

@@ -23,3 +27,5 @@ contains: [

begin: /^=/,
end: /[^=]/, returnEnd: true, illegal: /=/, /* only allow single equal sign at front of line */
end: /[^=]/,
returnEnd: true,
illegal: /=/, /* only allow single equal sign at front of line */
relevance: 10

@@ -32,3 +38,4 @@ },

begin: /\b[A-Z]{1,2}\d+\b/,
end: /[^\d]/, excludeEnd: true,
end: /[^\d]/,
excludeEnd: true,
relevance: 0

@@ -50,8 +57,8 @@ },

/* Excel formula comments are done by putting the comment in a function call to N() */
hljs.COMMENT(/\bN\(/,/\)/,
{
excludeBegin: true,
excludeEnd: true,
illegal: /\n/
})
hljs.COMMENT(/\bN\(/, /\)/,
{
excludeBegin: true,
excludeEnd: true,
illegal: /\n/
})
]

@@ -58,0 +65,0 @@ };

@@ -6,7 +6,7 @@ /*

/** @type LanguageFn */
function fix(hljs) {
return {
name: 'FIX',
contains: [
{
contains: [{
begin: /[^\u2401\u0001]+/,

@@ -18,16 +18,17 @@ end: /[\u2401\u0001]/,

contains: [
{
begin: /([^\u2401\u0001=]+)/,
end: /=([^\u2401\u0001=]+)/,
returnEnd: true,
returnBegin: false,
className: 'attr'
},
{
begin: /=/,
end: /([\u2401\u0001])/,
excludeEnd: true,
excludeBegin: true,
className: 'string'
}]
{
begin: /([^\u2401\u0001=]+)/,
end: /=([^\u2401\u0001=]+)/,
returnEnd: true,
returnBegin: false,
className: 'attr'
},
{
begin: /=/,
end: /([\u2401\u0001])/,
excludeEnd: true,
excludeBegin: true,
className: 'string'
}
]
}],

@@ -34,0 +35,0 @@ case_insensitive: true

@@ -8,48 +8,47 @@ /*

function flix (hljs) {
/** @type LanguageFn */
function flix(hljs) {
const CHAR = {
className: 'string',
begin: /'(.|\\[xXuU][a-zA-Z0-9]+)'/
};
var CHAR = {
className: 'string',
begin: /'(.|\\[xXuU][a-zA-Z0-9]+)'/
};
const STRING = {
className: 'string',
variants: [{
begin: '"',
end: '"'
}]
};
var STRING = {
className: 'string',
variants: [
{
begin: '"', end: '"'
}
]
};
const NAME = {
className: 'title',
begin: /[^0-9\n\t "'(),.`{}\[\]:;][^\n\t "'(),.`{}\[\]:;]+|[^0-9\n\t "'(),.`{}\[\]:;=]/
};
var NAME = {
className: 'title',
begin: /[^0-9\n\t "'(),.`{}\[\]:;][^\n\t "'(),.`{}\[\]:;]+|[^0-9\n\t "'(),.`{}\[\]:;=]/
};
const METHOD = {
className: 'function',
beginKeywords: 'def',
end: /[:={\[(\n;]/,
excludeEnd: true,
contains: [NAME]
};
var METHOD = {
className: 'function',
beginKeywords: 'def',
end: /[:={\[(\n;]/,
excludeEnd: true,
contains: [NAME]
};
return {
name: 'Flix',
keywords: {
literal: 'true false',
keyword: 'case class def else enum if impl import in lat rel index let match namespace switch type yield with'
},
contains: [
hljs.C_LINE_COMMENT_MODE,
hljs.C_BLOCK_COMMENT_MODE,
CHAR,
STRING,
METHOD,
hljs.C_NUMBER_MODE
]
};
return {
name: 'Flix',
keywords: {
literal: 'true false',
keyword: 'case class def else enum if impl import in lat rel index let match namespace switch type yield with'
},
contains: [
hljs.C_LINE_COMMENT_MODE,
hljs.C_BLOCK_COMMENT_MODE,
CHAR,
STRING,
METHOD,
hljs.C_NUMBER_MODE
]
};
}
module.exports = flix;

@@ -8,6 +8,8 @@ /*

/** @type LanguageFn */
function fortran(hljs) {
const PARAMS = {
className: 'params',
begin: '\\(', end: '\\)'
begin: '\\(',
end: '\\)'
};

@@ -17,6 +19,12 @@

variants: [
hljs.COMMENT('!', '$', {relevance: 0}),
hljs.COMMENT('!', '$', {
relevance: 0
}),
// allow FORTRAN 77 style comments
hljs.COMMENT('^C[ ]', '$', {relevance: 0}),
hljs.COMMENT('^C$', '$', {relevance: 0})
hljs.COMMENT('^C[ ]', '$', {
relevance: 0
}),
hljs.COMMENT('^C$', '$', {
relevance: 0
})
]

@@ -36,3 +44,6 @@ };

illegal: '[${=\\n]',
contains: [hljs.UNDERSCORE_TITLE_MODE, PARAMS]
contains: [
hljs.UNDERSCORE_TITLE_MODE,
PARAMS
]
};

@@ -84,3 +95,3 @@

'ieee_arithmetic ieee_support_underflow_control ieee_get_underflow_mode ieee_set_underflow_mode ' +
'is_iostat_eor move_alloc new_line selected_char_kind same_type_as extends_type_of ' +
'is_iostat_eor move_alloc new_line selected_char_kind same_type_as extends_type_of ' +
'acosh asinh atanh bessel_j0 bessel_j1 bessel_jn bessel_y0 bessel_y1 bessel_yn erf erfc erfc_scaled gamma log_gamma hypot norm2 ' +

@@ -94,3 +105,6 @@ 'atomic_define atomic_ref execute_command_line leadz trailz storage_size merge_bits ' +

case_insensitive: true,
aliases: ['f90', 'f95'],
aliases: [
'f90',
'f95'
],
keywords: KEYWORDS,

@@ -105,3 +119,3 @@ illegal: /\/\*/,

begin: /^C\s*=(?!=)/,
relevance: 0,
relevance: 0
},

@@ -108,0 +122,0 @@ COMMENT,

@@ -42,5 +42,7 @@ /*

end: '"',
contains: [{
begin: '""'
}]
contains: [
{
begin: '""'
}
]
},

@@ -74,8 +76,8 @@ {

begin: '\\B(\'[A-Za-z])\\b',
contains: [
hljs.BACKSLASH_ESCAPE
]
contains: [hljs.BACKSLASH_ESCAPE]
},
hljs.C_LINE_COMMENT_MODE,
hljs.inherit(hljs.QUOTE_STRING_MODE, { illegal: null }),
hljs.inherit(hljs.QUOTE_STRING_MODE, {
illegal: null
}),
hljs.C_NUMBER_MODE

@@ -82,0 +84,0 @@ ]

@@ -10,4 +10,4 @@ /*

function gams (hljs) {
var KEYWORDS = {
function gams(hljs) {
const KEYWORDS = {
keyword:

@@ -19,3 +19,4 @@ 'abort acronym acronyms alias all and assign binary card diag display ' +

'smin solve sos1 sos2 sum system table then until using while xor yes',
literal: 'eps inf na',
literal:
'eps inf na',
built_in:

@@ -37,20 +38,31 @@ 'abs arccos arcsin arctan arctan2 Beta betaReg binomial ceil centropy ' +

};
var PARAMS = {
const PARAMS = {
className: 'params',
begin: /\(/, end: /\)/,
begin: /\(/,
end: /\)/,
excludeBegin: true,
excludeEnd: true,
excludeEnd: true
};
var SYMBOLS = {
const SYMBOLS = {
className: 'symbol',
variants: [
{begin: /=[lgenxc]=/},
{begin: /\$/},
{
begin: /=[lgenxc]=/
},
{
begin: /\$/
}
]
};
var QSTR = { // One-line quoted comment string
const QSTR = { // One-line quoted comment string
className: 'comment',
variants: [
{begin: '\'', end: '\''},
{begin: '"', end: '"'},
{
begin: '\'',
end: '\''
},
{
begin: '"',
end: '"'
}
],

@@ -60,3 +72,3 @@ illegal: '\\n',

};
var ASSIGNMENT = {
const ASSIGNMENT = {
begin: '/',

@@ -71,6 +83,6 @@ end: '/',

hljs.APOS_STRING_MODE,
hljs.C_NUMBER_MODE,
],
hljs.C_NUMBER_MODE
]
};
var DESCTEXT = { // Parameter/set/variable description text
const DESCTEXT = { // Parameter/set/variable description text
begin: /[a-z][a-z0-9_]*(\([a-z0-9_, ]*\))?[ \t]+/,

@@ -87,4 +99,4 @@ excludeBegin: true,

relevance: 0
},
],
}
]
};

@@ -107,3 +119,3 @@

className: 'meta-keyword',
begin: '^\\$[a-z0-9]+',
begin: '^\\$[a-z0-9]+'
}

@@ -130,3 +142,3 @@ ]

ASSIGNMENT,
DESCTEXT,
DESCTEXT
]

@@ -142,3 +154,3 @@ },

end: '$',
contains: [DESCTEXT],
contains: [DESCTEXT]
},

@@ -150,3 +162,3 @@ hljs.COMMENT('^\\*', '$'),

hljs.APOS_STRING_MODE,
hljs.C_NUMBER_MODE,
hljs.C_NUMBER_MODE
// Table does not contain DESCTEXT or ASSIGNMENT

@@ -161,12 +173,12 @@ ]

contains: [
{ // Function title
className: 'title',
begin: /^[a-z0-9_]+/,
},
PARAMS,
SYMBOLS,
],
{ // Function title
className: 'title',
begin: /^[a-z0-9_]+/
},
PARAMS,
SYMBOLS
]
},
hljs.C_NUMBER_MODE,
SYMBOLS,
SYMBOLS
]

@@ -173,0 +185,0 @@ };

@@ -9,4 +9,4 @@ /*

function gauss(hljs) {
var KEYWORDS = {
keyword: 'bool break call callexe checkinterrupt clear clearg closeall cls comlog compile ' +
const KEYWORDS = {
keyword: 'bool break call callexe checkinterrupt clear clearg closeall cls comlog compile ' +
'continue create debug declare delete disable dlibrary dllcall do dos ed edit else ' +

@@ -113,21 +113,28 @@ 'elseif enable end endfor endif endp endo errorlog errorlogat expr external fn ' +

const AT_COMMENT_MODE = hljs.COMMENT('@', '@');
var AT_COMMENT_MODE = hljs.COMMENT('@', '@');
var PREPROCESSOR =
const PREPROCESSOR =
{
className: 'meta',
begin: '#', end: '$',
keywords: {'meta-keyword': 'define definecs|10 undef ifdef ifndef iflight ifdllcall ifmac ifos2win ifunix else endif lineson linesoff srcfile srcline'},
begin: '#',
end: '$',
keywords: {
'meta-keyword': 'define definecs|10 undef ifdef ifndef iflight ifdllcall ifmac ifos2win ifunix else endif lineson linesoff srcfile srcline'
},
contains: [
{
begin: /\\\n/, relevance: 0
begin: /\\\n/,
relevance: 0
},
{
beginKeywords: 'include', end: '$',
keywords: {'meta-keyword': 'include'},
beginKeywords: 'include',
end: '$',
keywords: {
'meta-keyword': 'include'
},
contains: [
{
className: 'meta-string',
begin: '"', end: '"',
begin: '"',
end: '"',
illegal: '\\n'

@@ -139,7 +146,7 @@ }

hljs.C_BLOCK_COMMENT_MODE,
AT_COMMENT_MODE,
AT_COMMENT_MODE
]
};
var STRUCT_TYPE =
const STRUCT_TYPE =
{

@@ -153,12 +160,13 @@ begin: /\bstruct\s+/,

begin: hljs.UNDERSCORE_IDENT_RE,
relevance: 0,
},
],
relevance: 0
}
]
};
// only for definitions
var PARSE_PARAMS = [
const PARSE_PARAMS = [
{
className: 'params',
begin: /\(/, end: /\)/,
begin: /\(/,
end: /\)/,
excludeBegin: true,

@@ -171,3 +179,3 @@ excludeEnd: true,

className: 'literal',
begin: /\.\.\./,
begin: /\.\.\./
},

@@ -177,3 +185,3 @@ hljs.C_NUMBER_MODE,

AT_COMMENT_MODE,
STRUCT_TYPE,
STRUCT_TYPE
]

@@ -183,11 +191,11 @@ }

var FUNCTION_DEF =
const FUNCTION_DEF =
{
className: "title",
begin: hljs.UNDERSCORE_IDENT_RE,
relevance: 0,
relevance: 0
};
var DEFINITION = function (beginKeywords, end, inherits) {
var mode = hljs.inherit(
const DEFINITION = function(beginKeywords, end, inherits) {
const mode = hljs.inherit(
{

@@ -198,3 +206,3 @@ className: "function",

excludeEnd: true,
contains: [].concat(PARSE_PARAMS),
contains: [].concat(PARSE_PARAMS)
},

@@ -210,19 +218,20 @@ inherits || {}

var BUILT_IN_REF =
const BUILT_IN_REF =
{ // these are explicitly named internal function calls
className: 'built_in',
begin: '\\b(' + KEYWORDS.built_in.split(' ').join('|') + ')\\b',
begin: '\\b(' + KEYWORDS.built_in.split(' ').join('|') + ')\\b'
};
var STRING_REF =
const STRING_REF =
{
className: 'string',
begin: '"', end: '"',
begin: '"',
end: '"',
contains: [hljs.BACKSLASH_ESCAPE],
relevance: 0,
relevance: 0
};
var FUNCTION_REF =
const FUNCTION_REF =
{
//className: "fn_ref",
// className: "fn_ref",
begin: hljs.UNDERSCORE_IDENT_RE + '\\s*\\(',

@@ -234,3 +243,3 @@ returnBegin: true,

{
beginKeywords: KEYWORDS.keyword,
beginKeywords: KEYWORDS.keyword
},

@@ -241,14 +250,17 @@ BUILT_IN_REF,

begin: hljs.UNDERSCORE_IDENT_RE,
relevance: 0,
},
],
relevance: 0
}
]
};
var FUNCTION_REF_PARAMS =
const FUNCTION_REF_PARAMS =
{
//className: "fn_ref_params",
// className: "fn_ref_params",
begin: /\(/,
end: /\)/,
relevance: 0,
keywords: { built_in: KEYWORDS.built_in, literal: KEYWORDS.literal },
keywords: {
built_in: KEYWORDS.built_in,
literal: KEYWORDS.literal
},
contains: [

@@ -261,4 +273,4 @@ hljs.C_NUMBER_MODE,

STRING_REF,
'self',
],
'self'
]
};

@@ -283,3 +295,3 @@

className: 'keyword',
begin: /\bexternal (matrix|string|array|sparse matrix|struct|proc|keyword|fn)/,
begin: /\bexternal (matrix|string|array|sparse matrix|struct|proc|keyword|fn)/
},

@@ -291,3 +303,3 @@ DEFINITION('proc keyword', ';'),

end: /;/,
//end: /\(/,
// end: /\(/,
relevance: 0,

@@ -297,4 +309,4 @@ contains: [

AT_COMMENT_MODE,
FUNCTION_REF_PARAMS,
],
FUNCTION_REF_PARAMS
]
},

@@ -304,9 +316,13 @@ { // custom method guard

variants: [
{ begin: hljs.UNDERSCORE_IDENT_RE + '\\.' + hljs.UNDERSCORE_IDENT_RE, },
{ begin: hljs.UNDERSCORE_IDENT_RE + '\\s*=', },
{
begin: hljs.UNDERSCORE_IDENT_RE + '\\.' + hljs.UNDERSCORE_IDENT_RE
},
{
begin: hljs.UNDERSCORE_IDENT_RE + '\\s*='
}
],
relevance: 0,
relevance: 0
},
FUNCTION_REF,
STRUCT_TYPE,
STRUCT_TYPE
]

@@ -313,0 +329,0 @@ };

@@ -9,70 +9,77 @@ /*

function gcode(hljs) {
var GCODE_IDENT_RE = '[A-Z_][A-Z0-9_.]*';
var GCODE_CLOSE_RE = '%';
var GCODE_KEYWORDS = {
$pattern: GCODE_IDENT_RE,
keyword: 'IF DO WHILE ENDWHILE CALL ENDIF SUB ENDSUB GOTO REPEAT ENDREPEAT ' +
const GCODE_IDENT_RE = '[A-Z_][A-Z0-9_.]*';
const GCODE_CLOSE_RE = '%';
const GCODE_KEYWORDS = {
$pattern: GCODE_IDENT_RE,
keyword: 'IF DO WHILE ENDWHILE CALL ENDIF SUB ENDSUB GOTO REPEAT ENDREPEAT ' +
'EQ LT GT NE GE LE OR XOR'
};
var GCODE_START = {
className: 'meta',
begin: '([O])([0-9]+)'
};
var GCODE_CODE = [
hljs.C_LINE_COMMENT_MODE,
hljs.C_BLOCK_COMMENT_MODE,
hljs.COMMENT(/\(/, /\)/),
hljs.inherit(hljs.C_NUMBER_MODE, {begin: '([-+]?([0-9]*\\.?[0-9]+\\.?))|' + hljs.C_NUMBER_RE}),
hljs.inherit(hljs.APOS_STRING_MODE, {illegal: null}),
hljs.inherit(hljs.QUOTE_STRING_MODE, {illegal: null}),
};
const GCODE_START = {
className: 'meta',
begin: '([O])([0-9]+)'
};
const GCODE_CODE = [
hljs.C_LINE_COMMENT_MODE,
hljs.C_BLOCK_COMMENT_MODE,
hljs.COMMENT(/\(/, /\)/),
hljs.inherit(hljs.C_NUMBER_MODE, {
begin: '([-+]?([0-9]*\\.?[0-9]+\\.?))|' + hljs.C_NUMBER_RE
}),
hljs.inherit(hljs.APOS_STRING_MODE, {
illegal: null
}),
hljs.inherit(hljs.QUOTE_STRING_MODE, {
illegal: null
}),
{
className: 'name',
begin: '([G])([0-9]+\\.?[0-9]?)'
},
{
className: 'name',
begin: '([M])([0-9]+\\.?[0-9]?)'
},
{
className: 'attr',
begin: '(VC|VS|#)',
end: '(\\d+)'
},
{
className: 'attr',
begin: '(VZOFX|VZOFY|VZOFZ)'
},
{
className: 'built_in',
begin: '(ATAN|ABS|ACOS|ASIN|SIN|COS|EXP|FIX|FUP|ROUND|LN|TAN)(\\[)',
end: '([-+]?([0-9]*\\.?[0-9]+\\.?))(\\])'
},
{
className: 'symbol',
variants: [
{
className: 'name',
begin: '([G])([0-9]+\\.?[0-9]?)'
},
{
className: 'name',
begin: '([M])([0-9]+\\.?[0-9]?)'
},
{
className: 'attr',
begin: '(VC|VS|#)',
end: '(\\d+)'
},
{
className: 'attr',
begin: '(VZOFX|VZOFY|VZOFZ)'
},
{
className: 'built_in',
begin: '(ATAN|ABS|ACOS|ASIN|SIN|COS|EXP|FIX|FUP|ROUND|LN|TAN)(\\[)',
end: '([-+]?([0-9]*\\.?[0-9]+\\.?))(\\])'
},
{
className: 'symbol',
variants: [
{
begin: 'N', end: '\\d+',
illegal: '\\W'
}
]
begin: 'N',
end: '\\d+',
illegal: '\\W'
}
];
]
}
];
return {
name: 'G-code (ISO 6983)',
aliases: ['nc'],
// Some implementations (CNC controls) of G-code are interoperable with uppercase and lowercase letters seamlessly.
// However, most prefer all uppercase and uppercase is customary.
case_insensitive: true,
keywords: GCODE_KEYWORDS,
contains: [
{
className: 'meta',
begin: GCODE_CLOSE_RE
},
GCODE_START
].concat(GCODE_CODE)
};
return {
name: 'G-code (ISO 6983)',
aliases: ['nc'],
// Some implementations (CNC controls) of G-code are interoperable with uppercase and lowercase letters seamlessly.
// However, most prefer all uppercase and uppercase is customary.
case_insensitive: true,
keywords: GCODE_KEYWORDS,
contains: [
{
className: 'meta',
begin: GCODE_CLOSE_RE
},
GCODE_START
].concat(GCODE_CODE)
};
}
module.exports = gcode;

@@ -8,3 +8,3 @@ /*

function gherkin (hljs) {
function gherkin(hljs) {
return {

@@ -25,3 +25,4 @@ name: 'Gherkin',

{
begin: '\\|', end: '\\|\\w*$',
begin: '\\|',
end: '\\|\\w*$',
contains: [

@@ -36,3 +37,4 @@ {

className: 'variable',
begin: '<', end: '>'
begin: '<',
end: '>'
},

@@ -42,3 +44,4 @@ hljs.HASH_COMMENT_MODE,

className: 'string',
begin: '"""', end: '"""'
begin: '"""',
end: '"""'
},

@@ -45,0 +48,0 @@ hljs.QUOTE_STRING_MODE

@@ -22,3 +22,3 @@ /*

'local_size_z location lowp max_vertices mediump noperspective offset origin_upper_left ' +
'out packed patch pixel_center_integer point_mode points precise precision quads r11f_g11f_b10f '+
'out packed patch pixel_center_integer point_mode points precise precision quads r11f_g11f_b10f ' +
'r16 r16_snorm r16f r16i r16ui r32f r32i r32ui r8 r8_snorm r8i r8ui readonly restrict ' +

@@ -122,3 +122,4 @@ 'rg16 rg16_snorm rg16f rg16i rg16ui rg32f rg32i rg32ui rg8 rg8_snorm rg8i rg8ui rgb10_a2 ' +

className: 'meta',
begin: '#', end: '$'
begin: '#',
end: '$'
}

@@ -125,0 +126,0 @@ ]

@@ -10,3 +10,3 @@ /*

function gml(hljs) {
var GML_KEYWORDS = {
const GML_KEYWORDS = {
keyword: 'begin end if then else while do for break continue with until ' +

@@ -870,3 +870,6 @@ 'repeat exit and or xor not return mod div switch case default var ' +

name: 'GML',
aliases: ['gml', 'GML'],
aliases: [
'gml',
'GML'
],
case_insensitive: false, // language is case-insensitive

@@ -873,0 +876,0 @@ keywords: GML_KEYWORDS,

@@ -11,3 +11,3 @@ /*

function go(hljs) {
var GO_KEYWORDS = {
const GO_KEYWORDS = {
keyword:

@@ -36,3 +36,6 @@ 'break default func interface select case map struct chan else goto package switch ' +

hljs.APOS_STRING_MODE,
{begin: '`', end: '`'},
{
begin: '`',
end: '`'
}
]

@@ -43,3 +46,6 @@ },

variants: [
{begin: hljs.C_NUMBER_RE + '[i]', relevance: 1},
{
begin: hljs.C_NUMBER_RE + '[i]',
relevance: 1
},
hljs.C_NUMBER_MODE

@@ -53,3 +59,5 @@ ]

className: 'function',
beginKeywords: 'func', end: '\\s*(\\{|$)', excludeEnd: true,
beginKeywords: 'func',
end: '\\s*(\\{|$)',
excludeEnd: true,
contains: [

@@ -59,3 +67,4 @@ hljs.TITLE_MODE,

className: 'params',
begin: /\(/, end: /\)/,
begin: /\(/,
end: /\)/,
keywords: GO_KEYWORDS,

@@ -62,0 +71,0 @@ illegal: /["']/

@@ -9,6 +9,6 @@ /*

function golo(hljs) {
return {
name: 'Golo',
keywords: {
keyword:
return {
name: 'Golo',
keywords: {
keyword:
'println readln print import module function local return let var ' +

@@ -19,16 +19,17 @@ 'while for foreach times in case when match with break continue ' +

'DynamicObject|10 DynamicVariable struct Observable map set vector list array',
literal:
literal:
'true false null'
},
contains: [
hljs.HASH_COMMENT_MODE,
hljs.QUOTE_STRING_MODE,
hljs.C_NUMBER_MODE,
{
className: 'meta', begin: '@[A-Za-z]+'
}
]
}
},
contains: [
hljs.HASH_COMMENT_MODE,
hljs.QUOTE_STRING_MODE,
hljs.C_NUMBER_MODE,
{
className: 'meta',
begin: '@[A-Za-z]+'
}
]
};
}
module.exports = golo;

@@ -41,5 +41,5 @@ /*

]
}
};
}
module.exports = gradle;

@@ -83,7 +83,7 @@ /**

const DOUBLE_QUOTED_ID_REGEX=/".*?"/;
const SINGLE_QUOTED_ID_REGEX=/'.*?'/;
const BRACKET_QUOTED_ID_REGEX=/\[.*?\]/;
const PLAIN_ID_REGEX=/[^\s!"#%&'()*+,.\/;<=>@\[\\\]^`{|}~]+/;
const PATH_DELIMITER_REGEX=/\.|\//;
const DOUBLE_QUOTED_ID_REGEX = /".*?"/;
const SINGLE_QUOTED_ID_REGEX = /'.*?'/;
const BRACKET_QUOTED_ID_REGEX = /\[.*?\]/;
const PLAIN_ID_REGEX = /[^\s!"#%&'()*+,.\/;<=>@\[\\\]^`{|}~]+/;
const PATH_DELIMITER_REGEX = /\.|\//;

@@ -146,3 +146,5 @@ const IDENTIFIER_REGEX = concat(

begin: /as\s+\|/,
keywords: { keyword: 'as' },
keywords: {
keyword: 'as'
},
end: /\|/,

@@ -177,9 +179,7 @@ contains: [

starts: hljs.inherit(HELPER_PARAMETERS, {
end: /\)/,
end: /\)/
})
});
SUB_EXPRESSION.contains = [
SUB_EXPRESSION_CONTENTS
];
SUB_EXPRESSION.contains = [SUB_EXPRESSION_CONTENTS];

@@ -190,3 +190,3 @@ const OPENING_BLOCK_MUSTACHE_CONTENTS = hljs.inherit(HELPER_NAME_OR_PATH_EXPRESSION, {

starts: hljs.inherit(HELPER_PARAMETERS, {
end: /\}\}/,
end: /\}\}/
})

@@ -204,12 +204,23 @@ });

starts: hljs.inherit(HELPER_PARAMETERS, {
end: /\}\}/,
end: /\}\}/
})
});
const ESCAPE_MUSTACHE_WITH_PRECEEDING_BACKSLASH = {begin: /\\\{\{/, skip: true};
const PREVENT_ESCAPE_WITH_ANOTHER_PRECEEDING_BACKSLASH = {begin: /\\\\(?=\{\{)/, skip: true};
const ESCAPE_MUSTACHE_WITH_PRECEEDING_BACKSLASH = {
begin: /\\\{\{/,
skip: true
};
const PREVENT_ESCAPE_WITH_ANOTHER_PRECEEDING_BACKSLASH = {
begin: /\\\\(?=\{\{)/,
skip: true
};
return {
name: 'Handlebars',
aliases: ['hbs', 'html.hbs', 'html.handlebars', 'htmlbars'],
aliases: [
'hbs',
'html.hbs',
'html.handlebars',
'htmlbars'
],
case_insensitive: true,

@@ -228,3 +239,7 @@ subLanguage: 'xml',

contains: [OPENING_BLOCK_MUSTACHE_CONTENTS],
starts: {end: /\{\{\{\{\//, returnEnd: true, subLanguage: 'xml'}
starts: {
end: /\{\{\{\{\//,
returnEnd: true,
subLanguage: 'xml'
}
},

@@ -243,3 +258,3 @@ {

end: /\}\}/,
contains: [OPENING_BLOCK_MUSTACHE_CONTENTS],
contains: [OPENING_BLOCK_MUSTACHE_CONTENTS]
},

@@ -263,3 +278,3 @@ {

end: /\}\}/,
contains: [CLOSING_BLOCK_MUSTACHE_CONTENTS],
contains: [CLOSING_BLOCK_MUSTACHE_CONTENTS]
},

@@ -266,0 +281,0 @@ {

@@ -10,3 +10,3 @@ /*

function haskell(hljs) {
var COMMENT = {
const COMMENT = {
variants: [

@@ -24,13 +24,15 @@ hljs.COMMENT('--', '$'),

var PRAGMA = {
const PRAGMA = {
className: 'meta',
begin: /\{-#/, end: /#-\}/
begin: /\{-#/,
end: /#-\}/
};
var PREPROCESSOR = {
const PREPROCESSOR = {
className: 'meta',
begin: '^#', end: '$'
begin: '^#',
end: '$'
};
var CONSTRUCTOR = {
const CONSTRUCTOR = {
className: 'type',

@@ -41,4 +43,5 @@ begin: '\\b[A-Z][\\w\']*', // TODO: other constructors (build-in, infix).

var LIST = {
begin: '\\(', end: '\\)',
const LIST = {
begin: '\\(',
end: '\\)',
illegal: '"',

@@ -48,4 +51,9 @@ contains: [

PREPROCESSOR,
{className: 'type', begin: '\\b[A-Z][\\w]*(\\((\\.\\.|,|\\w+)\\))?'},
hljs.inherit(hljs.TITLE_MODE, {begin: '[_a-z][\\w\']*'}),
{
className: 'type',
begin: '\\b[A-Z][\\w]*(\\((\\.\\.|,|\\w+)\\))?'
},
hljs.inherit(hljs.TITLE_MODE, {
begin: '[_a-z][\\w\']*'
}),
COMMENT

@@ -55,4 +63,5 @@ ]

var RECORD = {
begin: /\{/, end: /\}/,
const RECORD = {
begin: /\{/,
end: /\}/,
contains: LIST.contains

@@ -70,51 +79,81 @@ };

contains: [
// Top-level constructions.
{
beginKeywords: 'module', end: 'where',
beginKeywords: 'module',
end: 'where',
keywords: 'module where',
contains: [LIST, COMMENT],
contains: [
LIST,
COMMENT
],
illegal: '\\W\\.|;'
},
{
begin: '\\bimport\\b', end: '$',
begin: '\\bimport\\b',
end: '$',
keywords: 'import qualified as hiding',
contains: [LIST, COMMENT],
contains: [
LIST,
COMMENT
],
illegal: '\\W\\.|;'
},
{
className: 'class',
begin: '^(\\s*)?(class|instance)\\b', end: 'where',
begin: '^(\\s*)?(class|instance)\\b',
end: 'where',
keywords: 'class family instance where',
contains: [CONSTRUCTOR, LIST, COMMENT]
contains: [
CONSTRUCTOR,
LIST,
COMMENT
]
},
{
className: 'class',
begin: '\\b(data|(new)?type)\\b', end: '$',
begin: '\\b(data|(new)?type)\\b',
end: '$',
keywords: 'data family type newtype deriving',
contains: [PRAGMA, CONSTRUCTOR, LIST, RECORD, COMMENT]
contains: [
PRAGMA,
CONSTRUCTOR,
LIST,
RECORD,
COMMENT
]
},
{
beginKeywords: 'default', end: '$',
contains: [CONSTRUCTOR, LIST, COMMENT]
beginKeywords: 'default',
end: '$',
contains: [
CONSTRUCTOR,
LIST,
COMMENT
]
},
{
beginKeywords: 'infix infixl infixr', end: '$',
contains: [hljs.C_NUMBER_MODE, COMMENT]
beginKeywords: 'infix infixl infixr',
end: '$',
contains: [
hljs.C_NUMBER_MODE,
COMMENT
]
},
{
begin: '\\bforeign\\b', end: '$',
begin: '\\bforeign\\b',
end: '$',
keywords: 'foreign import export ccall stdcall cplusplus jvm ' +
'dotnet safe unsafe',
contains: [CONSTRUCTOR, hljs.QUOTE_STRING_MODE, COMMENT]
contains: [
CONSTRUCTOR,
hljs.QUOTE_STRING_MODE,
COMMENT
]
},
{
className: 'meta',
begin: '#!\\/usr\\/bin\\/env\ runhaskell', end: '$'
begin: '#!\\/usr\\/bin\\/env\ runhaskell',
end: '$'
},
// "Whitespaces".
PRAGMA,

@@ -129,7 +168,9 @@ PREPROCESSOR,

CONSTRUCTOR,
hljs.inherit(hljs.TITLE_MODE, {begin: '^[_a-z][\\w\']*'}),
hljs.inherit(hljs.TITLE_MODE, {
begin: '^[_a-z][\\w\']*'
}),
COMMENT,
{begin: '->|<-'} // No markup, relevance booster
{ // No markup, relevance booster
begin: '->|<-'
}
]

@@ -136,0 +177,0 @@ };

@@ -11,3 +11,3 @@ /*

var HAXE_BASIC_TYPES = 'Int Float String Bool Dynamic Void Array ';
const HAXE_BASIC_TYPES = 'Int Float String Bool Dynamic Void Array ';

@@ -28,11 +28,17 @@ return {

contains: [
{ className: 'string', // interpolate-able strings
begin: '\'', end: '\'',
{
className: 'string', // interpolate-able strings
begin: '\'',
end: '\'',
contains: [
hljs.BACKSLASH_ESCAPE,
{ className: 'subst', // interpolation
begin: '\\$\\{', end: '\\}'
{
className: 'subst', // interpolation
begin: '\\$\\{',
end: '\\}'
},
{ className: 'subst', // interpolation
begin: '\\$', end: /\W\}/
{
className: 'subst', // interpolation
begin: '\\$',
end: /\W\}/
}

@@ -45,42 +51,68 @@ ]

hljs.C_NUMBER_MODE,
{ className: 'meta', // compiler meta
begin: '@:', end: '$'
{
className: 'meta', // compiler meta
begin: '@:',
end: '$'
},
{ className: 'meta', // compiler conditionals
begin: '#', end: '$',
keywords: {'meta-keyword': 'if else elseif end error'}
{
className: 'meta', // compiler conditionals
begin: '#',
end: '$',
keywords: {
'meta-keyword': 'if else elseif end error'
}
},
{ className: 'type', // function types
begin: ':[ \t]*', end: '[^A-Za-z0-9_ \t\\->]',
excludeBegin: true, excludeEnd: true,
{
className: 'type', // function types
begin: ':[ \t]*',
end: '[^A-Za-z0-9_ \t\\->]',
excludeBegin: true,
excludeEnd: true,
relevance: 0
},
{ className: 'type', // types
begin: ':[ \t]*', end: '\\W',
excludeBegin: true, excludeEnd: true
{
className: 'type', // types
begin: ':[ \t]*',
end: '\\W',
excludeBegin: true,
excludeEnd: true
},
{ className: 'type', // instantiation
begin: 'new *', end: '\\W',
excludeBegin: true, excludeEnd: true
{
className: 'type', // instantiation
begin: 'new *',
end: '\\W',
excludeBegin: true,
excludeEnd: true
},
{ className: 'class', // enums
beginKeywords: 'enum', end: '\\{',
contains: [
hljs.TITLE_MODE
]
{
className: 'class', // enums
beginKeywords: 'enum',
end: '\\{',
contains: [hljs.TITLE_MODE]
},
{ className: 'class', // abstracts
beginKeywords: 'abstract', end: '[\\{$]',
{
className: 'class', // abstracts
beginKeywords: 'abstract',
end: '[\\{$]',
contains: [
{ className: 'type',
begin: '\\(', end: '\\)',
excludeBegin: true, excludeEnd: true
{
className: 'type',
begin: '\\(',
end: '\\)',
excludeBegin: true,
excludeEnd: true
},
{ className: 'type',
begin: 'from +', end: '\\W',
excludeBegin: true, excludeEnd: true
{
className: 'type',
begin: 'from +',
end: '\\W',
excludeBegin: true,
excludeEnd: true
},
{ className: 'type',
begin: 'to +', end: '\\W',
excludeBegin: true, excludeEnd: true
{
className: 'type',
begin: 'to +',
end: '\\W',
excludeBegin: true,
excludeEnd: true
},

@@ -93,7 +125,11 @@ hljs.TITLE_MODE

},
{ className: 'class', // classes
begin: '\\b(class|interface) +', end: '[\\{$]', excludeEnd: true,
{
className: 'class', // classes
begin: '\\b(class|interface) +',
end: '[\\{$]',
excludeEnd: true,
keywords: 'class interface',
contains: [
{ className: 'keyword',
{
className: 'keyword',
begin: '\\b(extends|implements) +',

@@ -112,8 +148,9 @@ keywords: 'extends implements',

},
{ className: 'function',
beginKeywords: 'function', end: '\\(', excludeEnd: true,
{
className: 'function',
beginKeywords: 'function',
end: '\\(',
excludeEnd: true,
illegal: '\\S',
contains: [
hljs.TITLE_MODE
]
contains: [hljs.TITLE_MODE]
}

@@ -120,0 +157,0 @@ ],

@@ -25,7 +25,10 @@ /*

className: 'string',
begin: /\{"/, end: /"\}/,
begin: /\{"/,
end: /"\}/,
contains: [hljs.BACKSLASH_ESCAPE]
},
hljs.COMMENT(';', '$', {relevance: 0}),
hljs.COMMENT(';', '$', {
relevance: 0
}),

@@ -35,6 +38,11 @@ {

className: 'meta',
begin: '#', end: '$',
keywords: {'meta-keyword': 'addion cfunc cmd cmpopt comfunc const defcfunc deffunc define else endif enum epack func global if ifdef ifndef include modcfunc modfunc modinit modterm module pack packopt regcmd runtime undef usecom uselib'},
begin: '#',
end: '$',
keywords: {
'meta-keyword': 'addion cfunc cmd cmpopt comfunc const defcfunc deffunc define else endif enum epack func global if ifdef ifndef include modcfunc modfunc modinit modterm module pack packopt regcmd runtime undef usecom uselib'
},
contains: [
hljs.inherit(hljs.QUOTE_STRING_MODE, {className: 'meta-string'}),
hljs.inherit(hljs.QUOTE_STRING_MODE, {
className: 'meta-string'
}),
hljs.NUMBER_MODE,

@@ -41,0 +49,0 @@ hljs.C_NUMBER_MODE,

@@ -83,7 +83,7 @@ /**

const DOUBLE_QUOTED_ID_REGEX=/".*?"/;
const SINGLE_QUOTED_ID_REGEX=/'.*?'/;
const BRACKET_QUOTED_ID_REGEX=/\[.*?\]/;
const PLAIN_ID_REGEX=/[^\s!"#%&'()*+,.\/;<=>@\[\\\]^`{|}~]+/;
const PATH_DELIMITER_REGEX=/\.|\//;
const DOUBLE_QUOTED_ID_REGEX = /".*?"/;
const SINGLE_QUOTED_ID_REGEX = /'.*?'/;
const BRACKET_QUOTED_ID_REGEX = /\[.*?\]/;
const PLAIN_ID_REGEX = /[^\s!"#%&'()*+,.\/;<=>@\[\\\]^`{|}~]+/;
const PATH_DELIMITER_REGEX = /\.|\//;

@@ -146,3 +146,5 @@ const IDENTIFIER_REGEX = concat(

begin: /as\s+\|/,
keywords: { keyword: 'as' },
keywords: {
keyword: 'as'
},
end: /\|/,

@@ -177,9 +179,7 @@ contains: [

starts: hljs.inherit(HELPER_PARAMETERS, {
end: /\)/,
end: /\)/
})
});
SUB_EXPRESSION.contains = [
SUB_EXPRESSION_CONTENTS
];
SUB_EXPRESSION.contains = [SUB_EXPRESSION_CONTENTS];

@@ -190,3 +190,3 @@ const OPENING_BLOCK_MUSTACHE_CONTENTS = hljs.inherit(HELPER_NAME_OR_PATH_EXPRESSION, {

starts: hljs.inherit(HELPER_PARAMETERS, {
end: /\}\}/,
end: /\}\}/
})

@@ -204,12 +204,23 @@ });

starts: hljs.inherit(HELPER_PARAMETERS, {
end: /\}\}/,
end: /\}\}/
})
});
const ESCAPE_MUSTACHE_WITH_PRECEEDING_BACKSLASH = {begin: /\\\{\{/, skip: true};
const PREVENT_ESCAPE_WITH_ANOTHER_PRECEEDING_BACKSLASH = {begin: /\\\\(?=\{\{)/, skip: true};
const ESCAPE_MUSTACHE_WITH_PRECEEDING_BACKSLASH = {
begin: /\\\{\{/,
skip: true
};
const PREVENT_ESCAPE_WITH_ANOTHER_PRECEEDING_BACKSLASH = {
begin: /\\\\(?=\{\{)/,
skip: true
};
return {
name: 'Handlebars',
aliases: ['hbs', 'html.hbs', 'html.handlebars', 'htmlbars'],
aliases: [
'hbs',
'html.hbs',
'html.handlebars',
'htmlbars'
],
case_insensitive: true,

@@ -228,3 +239,7 @@ subLanguage: 'xml',

contains: [OPENING_BLOCK_MUSTACHE_CONTENTS],
starts: {end: /\{\{\{\{\//, returnEnd: true, subLanguage: 'xml'}
starts: {
end: /\{\{\{\{\//,
returnEnd: true,
subLanguage: 'xml'
}
},

@@ -243,3 +258,3 @@ {

end: /\}\}/,
contains: [OPENING_BLOCK_MUSTACHE_CONTENTS],
contains: [OPENING_BLOCK_MUSTACHE_CONTENTS]
},

@@ -263,3 +278,3 @@ {

end: /\}\}/,
contains: [CLOSING_BLOCK_MUSTACHE_CONTENTS],
contains: [CLOSING_BLOCK_MUSTACHE_CONTENTS]
},

@@ -309,5 +324,5 @@ {

return definition
return definition;
}
module.exports = htmlbars;

@@ -9,4 +9,4 @@ /*

function inform7(hljs) {
var START_BRACKET = '\\[';
var END_BRACKET = '\\]';
const START_BRACKET = '\\[';
const END_BRACKET = '\\]';
return {

@@ -32,3 +32,4 @@ name: 'Inform 7',

className: 'string',
begin: '"', end: '"',
begin: '"',
end: '"',
relevance: 0,

@@ -38,3 +39,4 @@ contains: [

className: 'subst',
begin: START_BRACKET, end: END_BRACKET
begin: START_BRACKET,
end: END_BRACKET
}

@@ -55,4 +57,5 @@ ]

{
//Rule name
begin: '\\(This', end: '\\)'
// Rule name
begin: '\\(This',
end: '\\)'
}

@@ -63,3 +66,4 @@ ]

className: 'comment',
begin: START_BRACKET, end: END_BRACKET,
begin: START_BRACKET,
end: END_BRACKET,
contains: ['self']

@@ -66,0 +70,0 @@ }

@@ -55,38 +55,67 @@ /**

function ini(hljs) {
var NUMBERS = {
const NUMBERS = {
className: 'number',
relevance: 0,
variants: [
{ begin: /([+-]+)?[\d]+_[\d_]+/ },
{ begin: hljs.NUMBER_RE }
{
begin: /([+-]+)?[\d]+_[\d_]+/
},
{
begin: hljs.NUMBER_RE
}
]
};
var COMMENTS = hljs.COMMENT();
const COMMENTS = hljs.COMMENT();
COMMENTS.variants = [
{begin: /;/, end: /$/},
{begin: /#/, end: /$/},
{
begin: /;/,
end: /$/
},
{
begin: /#/,
end: /$/
}
];
var VARIABLES = {
const VARIABLES = {
className: 'variable',
variants: [
{ begin: /\$[\w\d"][\w\d_]*/ },
{ begin: /\$\{(.*?)\}/ }
{
begin: /\$[\w\d"][\w\d_]*/
},
{
begin: /\$\{(.*?)\}/
}
]
};
var LITERALS = {
const LITERALS = {
className: 'literal',
begin: /\bon|off|true|false|yes|no\b/
};
var STRINGS = {
const STRINGS = {
className: "string",
contains: [hljs.BACKSLASH_ESCAPE],
variants: [
{ begin: "'''", end: "'''", relevance: 10 },
{ begin: '"""', end: '"""', relevance: 10 },
{ begin: '"', end: '"' },
{ begin: "'", end: "'" }
{
begin: "'''",
end: "'''",
relevance: 10
},
{
begin: '"""',
end: '"""',
relevance: 10
},
{
begin: '"',
end: '"'
},
{
begin: "'",
end: "'"
}
]
};
var ARRAY = {
begin: /\[/, end: /\]/,
const ARRAY = {
begin: /\[/,
end: /\]/,
contains: [

@@ -100,12 +129,12 @@ COMMENTS,

],
relevance:0
relevance: 0
};
var BARE_KEY = /[A-Za-z0-9_-]+/;
var QUOTED_KEY_DOUBLE_QUOTE = /"(\\"|[^"])*"/;
var QUOTED_KEY_SINGLE_QUOTE = /'[^']*'/;
var ANY_KEY = either(
const BARE_KEY = /[A-Za-z0-9_-]+/;
const QUOTED_KEY_DOUBLE_QUOTE = /"(\\"|[^"])*"/;
const QUOTED_KEY_SINGLE_QUOTE = /'[^']*'/;
const ANY_KEY = either(
BARE_KEY, QUOTED_KEY_DOUBLE_QUOTE, QUOTED_KEY_SINGLE_QUOTE
);
var DOTTED_KEY = concat(
const DOTTED_KEY = concat(
ANY_KEY, '(\\s*\\.\\s*', ANY_KEY, ')*',

@@ -124,3 +153,4 @@ lookahead(/\s*=\s*[^#\s]/)

className: 'section',
begin: /\[+/, end: /\]+/
begin: /\[+/,
end: /\]+/
},

@@ -127,0 +157,0 @@ {

@@ -10,8 +10,9 @@ /*

function irpf90(hljs) {
var PARAMS = {
const PARAMS = {
className: 'params',
begin: '\\(', end: '\\)'
begin: '\\(',
end: '\\)'
};
var F_KEYWORDS = {
const F_KEYWORDS = {
literal: '.False. .True.',

@@ -54,3 +55,3 @@ keyword: 'kind do while private call intrinsic where elsewhere ' +

'ieee_arithmetic ieee_support_underflow_control ieee_get_underflow_mode ieee_set_underflow_mode ' +
'is_iostat_eor move_alloc new_line selected_char_kind same_type_as extends_type_of ' +
'is_iostat_eor move_alloc new_line selected_char_kind same_type_as extends_type_of ' +
'acosh asinh atanh bessel_j0 bessel_j1 bessel_jn bessel_y0 bessel_y1 bessel_yn erf erfc erfc_scaled gamma log_gamma hypot norm2 ' +

@@ -69,4 +70,10 @@ 'atomic_define atomic_ref execute_command_line leadz trailz storage_size merge_bits ' +

contains: [
hljs.inherit(hljs.APOS_STRING_MODE, {className: 'string', relevance: 0}),
hljs.inherit(hljs.QUOTE_STRING_MODE, {className: 'string', relevance: 0}),
hljs.inherit(hljs.APOS_STRING_MODE, {
className: 'string',
relevance: 0
}),
hljs.inherit(hljs.QUOTE_STRING_MODE, {
className: 'string',
relevance: 0
}),
{

@@ -76,6 +83,13 @@ className: 'function',

illegal: '[${=\\n]',
contains: [hljs.UNDERSCORE_TITLE_MODE, PARAMS]
contains: [
hljs.UNDERSCORE_TITLE_MODE,
PARAMS
]
},
hljs.COMMENT('!', '$', {relevance: 0}),
hljs.COMMENT('begin_doc', 'end_doc', {relevance: 10}),
hljs.COMMENT('!', '$', {
relevance: 0
}),
hljs.COMMENT('begin_doc', 'end_doc', {
relevance: 10
}),
{

@@ -82,0 +96,0 @@ className: 'number',

@@ -9,9 +9,15 @@ /*

function jbossCli (hljs) {
var PARAM = {
begin: /[\w-]+ *=/, returnBegin: true,
function jbossCli(hljs) {
const PARAM = {
begin: /[\w-]+ *=/,
returnBegin: true,
relevance: 0,
contains: [{className: 'attr', begin: /[\w-]+/}]
contains: [
{
className: 'attr',
begin: /[\w-]+/
}
]
};
var PARAMSBLOCK = {
const PARAMSBLOCK = {
className: 'params',

@@ -21,5 +27,5 @@ begin: /\(/,

contains: [PARAM],
relevance : 0
relevance: 0
};
var OPERATION = {
const OPERATION = {
className: 'function',

@@ -29,9 +35,9 @@ begin: /:[\w\-.]+/,

};
var PATH = {
const PATH = {
className: 'string',
begin: /\B(([\/.])[\w\-.\/=]+)+/,
begin: /\B(([\/.])[\w\-.\/=]+)+/
};
var COMMAND_PARAMS = {
const COMMAND_PARAMS = {
className: 'params',
begin: /--[\w\-=\/]+/,
begin: /--[\w\-=\/]+/
};

@@ -57,5 +63,5 @@ return {

]
}
};
}
module.exports = jbossCli;

@@ -10,31 +10,40 @@ /*

function json(hljs) {
var LITERALS = {literal: 'true false null'};
var ALLOWED_COMMENTS = [
const LITERALS = {
literal: 'true false null'
};
const ALLOWED_COMMENTS = [
hljs.C_LINE_COMMENT_MODE,
hljs.C_BLOCK_COMMENT_MODE
];
var TYPES = [
const TYPES = [
hljs.QUOTE_STRING_MODE,
hljs.C_NUMBER_MODE
];
var VALUE_CONTAINER = {
end: ',', endsWithParent: true, excludeEnd: true,
const VALUE_CONTAINER = {
end: ',',
endsWithParent: true,
excludeEnd: true,
contains: TYPES,
keywords: LITERALS
};
var OBJECT = {
begin: /\{/, end: /\}/,
const OBJECT = {
begin: /\{/,
end: /\}/,
contains: [
{
className: 'attr',
begin: /"/, end: /"/,
begin: /"/,
end: /"/,
contains: [hljs.BACKSLASH_ESCAPE],
illegal: '\\n',
illegal: '\\n'
},
hljs.inherit(VALUE_CONTAINER, {begin: /:/})
hljs.inherit(VALUE_CONTAINER, {
begin: /:/
})
].concat(ALLOWED_COMMENTS),
illegal: '\\S'
};
var ARRAY = {
begin: '\\[', end: '\\]',
const ARRAY = {
begin: '\\[',
end: '\\]',
contains: [hljs.inherit(VALUE_CONTAINER)], // inherit is a workaround for a bug that makes shared modes with endsWithParent compile only the ending of one of the parents

@@ -41,0 +50,0 @@ illegal: '\\S'

@@ -9,5 +9,4 @@ /*

function kotlin(hljs) {
var KEYWORDS = {
const KEYWORDS = {
keyword:

@@ -24,3 +23,3 @@ 'abstract as val var vararg get set class object open private protected public noinline ' +

};
var KEYWORDS_WITH_LABEL = {
const KEYWORDS_WITH_LABEL = {
className: 'keyword',

@@ -37,20 +36,28 @@ begin: /\b(break|continue|return|this)\b/,

};
var LABEL = {
className: 'symbol', begin: hljs.UNDERSCORE_IDENT_RE + '@'
const LABEL = {
className: 'symbol',
begin: hljs.UNDERSCORE_IDENT_RE + '@'
};
// for string templates
var SUBST = {
const SUBST = {
className: 'subst',
begin: /\$\{/, end: /\}/, contains: [hljs.C_NUMBER_MODE]
begin: /\$\{/,
end: /\}/,
contains: [ hljs.C_NUMBER_MODE ]
};
var VARIABLE = {
className: 'variable', begin: '\\$' + hljs.UNDERSCORE_IDENT_RE
const VARIABLE = {
className: 'variable',
begin: '\\$' + hljs.UNDERSCORE_IDENT_RE
};
var STRING = {
const STRING = {
className: 'string',
variants: [
{
begin: '"""', end: '"""(?=[^"])',
contains: [VARIABLE, SUBST]
begin: '"""',
end: '"""(?=[^"])',
contains: [
VARIABLE,
SUBST
]
},

@@ -61,10 +68,16 @@ // Can't use built-in modes easily, as we want to use STRING in the meta

{
begin: '\'', end: '\'',
begin: '\'',
end: '\'',
illegal: /\n/,
contains: [hljs.BACKSLASH_ESCAPE]
contains: [ hljs.BACKSLASH_ESCAPE ]
},
{
begin: '"', end: '"',
begin: '"',
end: '"',
illegal: /\n/,
contains: [hljs.BACKSLASH_ESCAPE, VARIABLE, SUBST]
contains: [
hljs.BACKSLASH_ESCAPE,
VARIABLE,
SUBST
]
}

@@ -75,12 +88,17 @@ ]

var ANNOTATION_USE_SITE = {
className: 'meta', begin: '@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*' + hljs.UNDERSCORE_IDENT_RE + ')?'
const ANNOTATION_USE_SITE = {
className: 'meta',
begin: '@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*' + hljs.UNDERSCORE_IDENT_RE + ')?'
};
var ANNOTATION = {
className: 'meta', begin: '@' + hljs.UNDERSCORE_IDENT_RE,
const ANNOTATION = {
className: 'meta',
begin: '@' + hljs.UNDERSCORE_IDENT_RE,
contains: [
{
begin: /\(/, end: /\)/,
begin: /\(/,
end: /\)/,
contains: [
hljs.inherit(STRING, {className: 'meta-string'})
hljs.inherit(STRING, {
className: 'meta-string'
})
]

@@ -94,3 +112,3 @@ }

// so the code below is copied from java.js
var KOTLIN_NUMBER_RE = '\\b' +
const KOTLIN_NUMBER_RE = '\\b' +
'(' +

@@ -109,3 +127,3 @@ '0[bB]([01]+[01_]+[01]+|[01]+)' + // 0b...

'[lLfF]?';
var KOTLIN_NUMBER_MODE = {
const KOTLIN_NUMBER_MODE = {
className: 'number',

@@ -115,17 +133,22 @@ begin: KOTLIN_NUMBER_RE,

};
var KOTLIN_NESTED_COMMENT = hljs.COMMENT(
const KOTLIN_NESTED_COMMENT = hljs.COMMENT(
'/\\*', '\\*/',
{ contains: [ hljs.C_BLOCK_COMMENT_MODE ] }
{
contains: [ hljs.C_BLOCK_COMMENT_MODE ]
}
);
var KOTLIN_PAREN_TYPE = {
const KOTLIN_PAREN_TYPE = {
variants: [
{ className: 'type',
begin: hljs.UNDERSCORE_IDENT_RE
},
{ begin: /\(/, end: /\)/,
contains: [] //defined later
}
]
{
className: 'type',
begin: hljs.UNDERSCORE_IDENT_RE
},
{
begin: /\(/,
end: /\)/,
contains: [] // defined later
}
]
};
var KOTLIN_PAREN_TYPE2 = KOTLIN_PAREN_TYPE;
const KOTLIN_PAREN_TYPE2 = KOTLIN_PAREN_TYPE;
KOTLIN_PAREN_TYPE2.variants[1].contains = [ KOTLIN_PAREN_TYPE ];

@@ -136,5 +159,5 @@ KOTLIN_PAREN_TYPE.variants[1].contains = [ KOTLIN_PAREN_TYPE2 ];

name: 'Kotlin',
aliases: ['kt'],
aliases: [ 'kt' ],
keywords: KEYWORDS,
contains : [
contains: [
hljs.COMMENT(

@@ -144,7 +167,9 @@ '/\\*\\*',

{
relevance : 0,
contains : [{
className : 'doctag',
begin : '@[A-Za-z]+'
}]
relevance: 0,
contains: [
{
className: 'doctag',
begin: '@[A-Za-z]+'
}
]
}

@@ -160,3 +185,4 @@ ),

className: 'function',
beginKeywords: 'fun', end: '[(]|$',
beginKeywords: 'fun',
end: '[(]|$',
returnBegin: true,

@@ -169,9 +195,12 @@ excludeEnd: true,

{
begin: hljs.UNDERSCORE_IDENT_RE + '\\s*\\(', returnBegin: true,
begin: hljs.UNDERSCORE_IDENT_RE + '\\s*\\(',
returnBegin: true,
relevance: 0,
contains: [hljs.UNDERSCORE_TITLE_MODE]
contains: [ hljs.UNDERSCORE_TITLE_MODE ]
},
{
className: 'type',
begin: /</, end: />/, keywords: 'reified',
begin: /</,
end: />/,
keywords: 'reified',
relevance: 0

@@ -181,3 +210,4 @@ },

className: 'params',
begin: /\(/, end: /\)/,
begin: /\(/,
end: /\)/,
endsParent: true,

@@ -188,3 +218,5 @@ keywords: KEYWORDS,

{
begin: /:/, end: /[=,\/]/, endsWithParent: true,
begin: /:/,
end: /[=,\/]/,
endsWithParent: true,
contains: [

@@ -210,11 +242,17 @@ KOTLIN_PAREN_TYPE,

className: 'class',
beginKeywords: 'class interface trait', end: /[:\{(]|$/, // remove 'trait' when removed from KEYWORDS
beginKeywords: 'class interface trait', // remove 'trait' when removed from KEYWORDS
end: /[:\{(]|$/,
excludeEnd: true,
illegal: 'extends implements',
contains: [
{beginKeywords: 'public protected internal private constructor'},
{
beginKeywords: 'public protected internal private constructor'
},
hljs.UNDERSCORE_TITLE_MODE,
{
className: 'type',
begin: /</, end: />/, excludeBegin: true, excludeEnd: true,
begin: /</,
end: />/,
excludeBegin: true,
excludeEnd: true,
relevance: 0

@@ -224,3 +262,6 @@ },

className: 'type',
begin: /[,:]\s*/, end: /[<\(,]|$/, excludeBegin: true, returnEnd: true
begin: /[,:]\s*/,
end: /[<\(,]|$/,
excludeBegin: true,
returnEnd: true
},

@@ -234,3 +275,4 @@ ANNOTATION_USE_SITE,

className: 'meta',
begin: "^#!/usr/bin/env", end: '$',
begin: "^#!/usr/bin/env",
end: '$',
illegal: '\n'

@@ -237,0 +279,0 @@ },

@@ -9,6 +9,6 @@ /*

function lasso(hljs) {
var LASSO_IDENT_RE = '[a-zA-Z_][\\w.]*';
var LASSO_ANGLE_RE = '<\\?(lasso(script)?|=)';
var LASSO_CLOSE_RE = '\\]|\\?>';
var LASSO_KEYWORDS = {
const LASSO_IDENT_RE = '[a-zA-Z_][\\w.]*';
const LASSO_ANGLE_RE = '<\\?(lasso(script)?|=)';
const LASSO_CLOSE_RE = '\\]|\\?>';
const LASSO_KEYWORDS = {
$pattern: LASSO_IDENT_RE + '|&[lg]t;',

@@ -41,3 +41,3 @@ literal:

};
var HTML_COMMENT = hljs.COMMENT(
const HTML_COMMENT = hljs.COMMENT(
'<!--',

@@ -49,3 +49,3 @@ '-->',

);
var LASSO_NOPROCESS = {
const LASSO_NOPROCESS = {
className: 'meta',

@@ -59,19 +59,26 @@ begin: '\\[noprocess\\]',

};
var LASSO_START = {
const LASSO_START = {
className: 'meta',
begin: '\\[/noprocess|' + LASSO_ANGLE_RE
};
var LASSO_DATAMEMBER = {
const LASSO_DATAMEMBER = {
className: 'symbol',
begin: '\'' + LASSO_IDENT_RE + '\''
};
var LASSO_CODE = [
const LASSO_CODE = [
hljs.C_LINE_COMMENT_MODE,
hljs.C_BLOCK_COMMENT_MODE,
hljs.inherit(hljs.C_NUMBER_MODE, {begin: hljs.C_NUMBER_RE + '|(-?infinity|NaN)\\b'}),
hljs.inherit(hljs.APOS_STRING_MODE, {illegal: null}),
hljs.inherit(hljs.QUOTE_STRING_MODE, {illegal: null}),
hljs.inherit(hljs.C_NUMBER_MODE, {
begin: hljs.C_NUMBER_RE + '|(-?infinity|NaN)\\b'
}),
hljs.inherit(hljs.APOS_STRING_MODE, {
illegal: null
}),
hljs.inherit(hljs.QUOTE_STRING_MODE, {
illegal: null
}),
{
className: 'string',
begin: '`', end: '`'
begin: '`',
end: '`'
},

@@ -84,3 +91,4 @@ { // variables

{
begin: '#', end: '\\d+',
begin: '#',
end: '\\d+',
illegal: '\\W'

@@ -92,3 +100,4 @@ }

className: 'type',
begin: '::\\s*', end: LASSO_IDENT_RE,
begin: '::\\s*',
end: LASSO_IDENT_RE,
illegal: '\\W'

@@ -116,5 +125,8 @@ },

beginKeywords: 'define',
returnEnd: true, end: '\\(|=>',
returnEnd: true,
end: '\\(|=>',
contains: [
hljs.inherit(hljs.TITLE_MODE, {begin: LASSO_IDENT_RE + '(=(?!>))?|[-+*/%](?!>)'})
hljs.inherit(hljs.TITLE_MODE, {
begin: LASSO_IDENT_RE + '(=(?!>))?|[-+*/%](?!>)'
})
]

@@ -125,3 +137,6 @@ }

name: 'Lasso',
aliases: ['ls', 'lassoscript'],
aliases: [
'ls',
'lassoscript'
],
case_insensitive: true,

@@ -172,3 +187,4 @@ keywords: LASSO_KEYWORDS,

className: 'meta',
begin: '^#!', end:'lasso9$',
begin: '^#!',
end: 'lasso9$',
relevance: 10

@@ -175,0 +191,0 @@ }

@@ -13,4 +13,9 @@ /*

className: 'attribute',
begin: '^dn', end: ': ', excludeEnd: true,
starts: {end: '$', relevance: 0},
begin: '^dn',
end: ': ',
excludeEnd: true,
starts: {
end: '$',
relevance: 0
},
relevance: 10

@@ -20,8 +25,14 @@ },

className: 'attribute',
begin: '^\\w', end: ': ', excludeEnd: true,
starts: {end: '$', relevance: 0}
begin: '^\\w',
end: ': ',
excludeEnd: true,
starts: {
end: '$',
relevance: 0
}
},
{
className: 'literal',
begin: '^-', end: '$'
begin: '^-',
end: '$'
},

@@ -28,0 +39,0 @@ hljs.HASH_COMMENT_MODE

@@ -7,3 +7,3 @@ /*

function leaf (hljs) {
function leaf(hljs) {
return {

@@ -15,6 +15,6 @@ name: 'Leaf',

begin: '#+' + '[A-Za-z_0-9]*' + '\\(',
end:/ \{/,
end: / \{/,
returnBegin: true,
excludeEnd: true,
contains : [
contains: [
{

@@ -30,3 +30,4 @@ className: 'keyword',

className: 'params',
begin: '\\(', end: '\\)',
begin: '\\(',
end: '\\)',
endsParent: true,

@@ -33,0 +34,0 @@ contains: [

@@ -11,11 +11,15 @@ /*

function livecodeserver(hljs) {
var VARIABLE = {
const VARIABLE = {
className: 'variable',
variants: [
{begin: '\\b([gtps][A-Z]{1}[a-zA-Z0-9]*)(\\[.+\\])?(?:\\s*?)'},
{begin: '\\$_[A-Z]+'}
{
begin: '\\b([gtps][A-Z]{1}[a-zA-Z0-9]*)(\\[.+\\])?(?:\\s*?)'
},
{
begin: '\\$_[A-Z]+'
}
],
relevance: 0
};
var COMMENT_MODES = [
const COMMENT_MODES = [
hljs.C_BLOCK_COMMENT_MODE,

@@ -26,9 +30,15 @@ hljs.HASH_COMMENT_MODE,

];
var TITLE1 = hljs.inherit(hljs.TITLE_MODE, {
const TITLE1 = hljs.inherit(hljs.TITLE_MODE, {
variants: [
{begin: '\\b_*rig[A-Z]+[A-Za-z0-9_\\-]*'},
{begin: '\\b_[a-z0-9\\-]+'}
{
begin: '\\b_*rig[A-Z]+[A-Za-z0-9_\\-]*'
},
{
begin: '\\b_[a-z0-9\\-]+'
}
]
});
var TITLE2 = hljs.inherit(hljs.TITLE_MODE, {begin: '\\b([A-Za-z0-9_\\-]+)\\b'});
const TITLE2 = hljs.inherit(hljs.TITLE_MODE, {
begin: '\\b([A-Za-z0-9_\\-]+)\\b'
});
return {

@@ -120,3 +130,4 @@ name: 'LiveCode',

className: 'function',
beginKeywords: 'function', end: '$',
beginKeywords: 'function',
end: '$',
contains: [

@@ -134,3 +145,4 @@ VARIABLE,

className: 'function',
begin: '\\bend\\s+', end: '$',
begin: '\\bend\\s+',
end: '$',
keywords: 'end',

@@ -144,3 +156,4 @@ contains: [

{
beginKeywords: 'command on', end: '$',
beginKeywords: 'command on',
end: '$',
contains: [

@@ -163,4 +176,8 @@ VARIABLE,

},
{ begin: '<\\?' },
{ begin: '\\?>' }
{
begin: '<\\?'
},
{
begin: '\\?>'
}
]

@@ -167,0 +184,0 @@ },

@@ -149,7 +149,7 @@ const KEYWORDS = [

function livescript(hljs) {
var LIVESCRIPT_BUILT_INS = [
const LIVESCRIPT_BUILT_INS = [
'npm',
'print'
];
var LIVESCRIPT_LITERALS = [
const LIVESCRIPT_LITERALS = [
'yes',

@@ -163,3 +163,3 @@ 'no',

];
var LIVESCRIPT_KEYWORDS = [
const LIVESCRIPT_KEYWORDS = [
'then',

@@ -195,3 +195,3 @@ 'unless',

];
var KEYWORDS$1 = {
const KEYWORDS$1 = {
keyword: KEYWORDS.concat(LIVESCRIPT_KEYWORDS).join(" "),

@@ -201,15 +201,19 @@ literal: LITERALS.concat(LIVESCRIPT_LITERALS).join(" "),

};
var JS_IDENT_RE = '[A-Za-z$_](?:-[0-9A-Za-z$_]|[0-9A-Za-z$_])*';
var TITLE = hljs.inherit(hljs.TITLE_MODE, {begin: JS_IDENT_RE});
var SUBST = {
const JS_IDENT_RE = '[A-Za-z$_](?:-[0-9A-Za-z$_]|[0-9A-Za-z$_])*';
const TITLE = hljs.inherit(hljs.TITLE_MODE, {
begin: JS_IDENT_RE
});
const SUBST = {
className: 'subst',
begin: /#\{/, end: /\}/,
begin: /#\{/,
end: /\}/,
keywords: KEYWORDS$1
};
var SUBST_SIMPLE = {
const SUBST_SIMPLE = {
className: 'subst',
begin: /#[A-Za-z$_]/, end: /(?:-[0-9A-Za-z$_]|[0-9A-Za-z$_])*/,
begin: /#[A-Za-z$_]/,
end: /(?:-[0-9A-Za-z$_]|[0-9A-Za-z$_])*/,
keywords: KEYWORDS$1
};
var EXPRESSIONS = [
const EXPRESSIONS = [
hljs.BINARY_NUMBER_MODE,

@@ -220,3 +224,6 @@ {

relevance: 0,
starts: {end: '(\\s*/)?', relevance: 0} // a number tries to eat the following slash to prevent treating it as a regexp
starts: {
end: '(\\s*/)?',
relevance: 0
} // a number tries to eat the following slash to prevent treating it as a regexp
},

@@ -227,19 +234,32 @@ {

{
begin: /'''/, end: /'''/,
begin: /'''/,
end: /'''/,
contains: [hljs.BACKSLASH_ESCAPE]
},
{
begin: /'/, end: /'/,
begin: /'/,
end: /'/,
contains: [hljs.BACKSLASH_ESCAPE]
},
{
begin: /"""/, end: /"""/,
contains: [hljs.BACKSLASH_ESCAPE, SUBST, SUBST_SIMPLE]
begin: /"""/,
end: /"""/,
contains: [
hljs.BACKSLASH_ESCAPE,
SUBST,
SUBST_SIMPLE
]
},
{
begin: /"/, end: /"/,
contains: [hljs.BACKSLASH_ESCAPE, SUBST, SUBST_SIMPLE]
begin: /"/,
end: /"/,
contains: [
hljs.BACKSLASH_ESCAPE,
SUBST,
SUBST_SIMPLE
]
},
{
begin: /\\/, end: /(\s|$)/,
begin: /\\/,
end: /(\s|$)/,
excludeEnd: true

@@ -253,4 +273,8 @@ }

{
begin: '//', end: '//[gim]*',
contains: [SUBST, hljs.HASH_COMMENT_MODE]
begin: '//',
end: '//[gim]*',
contains: [
SUBST,
hljs.HASH_COMMENT_MODE
]
},

@@ -268,4 +292,6 @@ {

{
begin: '``', end: '``',
excludeBegin: true, excludeEnd: true,
begin: '``',
end: '``',
excludeBegin: true,
excludeEnd: true,
subLanguage: 'javascript'

@@ -276,5 +302,6 @@ }

var PARAMS = {
const PARAMS = {
className: 'params',
begin: '\\(', returnBegin: true,
begin: '\\(',
returnBegin: true,
/* We need another contained nameless mode to not have every nested

@@ -284,3 +311,4 @@ pair of parens to be called "params" */

{
begin: /\(/, end: /\)/,
begin: /\(/,
end: /\)/,
keywords: KEYWORDS$1,

@@ -292,3 +320,3 @@ contains: ['self'].concat(EXPRESSIONS)

var SYMBOLS = {
const SYMBOLS = {
begin: '(#=>|=>|\\|>>|-?->|!->)'

@@ -308,13 +336,19 @@ };

className: 'function',
contains: [TITLE, PARAMS],
contains: [
TITLE,
PARAMS
],
returnBegin: true,
variants: [
{
begin: '(' + JS_IDENT_RE + '\\s*(?:=|:=)\\s*)?(\\(.*\\))?\\s*\\B->\\*?', end: '->\\*?'
begin: '(' + JS_IDENT_RE + '\\s*(?:=|:=)\\s*)?(\\(.*\\))?\\s*\\B->\\*?',
end: '->\\*?'
},
{
begin: '(' + JS_IDENT_RE + '\\s*(?:=|:=)\\s*)?!?(\\(.*\\))?\\s*\\B[-~]{1,2}>\\*?', end: '[-~]{1,2}>\\*?'
begin: '(' + JS_IDENT_RE + '\\s*(?:=|:=)\\s*)?!?(\\(.*\\))?\\s*\\B[-~]{1,2}>\\*?',
end: '[-~]{1,2}>\\*?'
},
{
begin: '(' + JS_IDENT_RE + '\\s*(?:=|:=)\\s*)?(\\(.*\\))?\\s*\\B!?[-~]{1,2}>\\*?', end: '!?[-~]{1,2}>\\*?'
begin: '(' + JS_IDENT_RE + '\\s*(?:=|:=)\\s*)?(\\(.*\\))?\\s*\\B!?[-~]{1,2}>\\*?',
end: '!?[-~]{1,2}>\\*?'
}

@@ -339,4 +373,6 @@ ]

{
begin: JS_IDENT_RE + ':', end: ':',
returnBegin: true, returnEnd: true,
begin: JS_IDENT_RE + ':',
end: ':',
returnBegin: true,
returnEnd: true,
relevance: 0

@@ -343,0 +379,0 @@ }

@@ -10,9 +10,10 @@ /*

function lua(hljs) {
var OPENING_LONG_BRACKET = '\\[=*\\[';
var CLOSING_LONG_BRACKET = '\\]=*\\]';
var LONG_BRACKETS = {
begin: OPENING_LONG_BRACKET, end: CLOSING_LONG_BRACKET,
const OPENING_LONG_BRACKET = '\\[=*\\[';
const CLOSING_LONG_BRACKET = '\\]=*\\]';
const LONG_BRACKETS = {
begin: OPENING_LONG_BRACKET,
end: CLOSING_LONG_BRACKET,
contains: ['self']
};
var COMMENTS = [
const COMMENTS = [
hljs.COMMENT('--(?!' + OPENING_LONG_BRACKET + ')', '$'),

@@ -35,10 +36,10 @@ hljs.COMMENT(

built_in:
//Metatags and globals:
// Metatags and globals:
'_G _ENV _VERSION __index __newindex __mode __call __metatable __tostring __len ' +
'__gc __add __sub __mul __div __mod __pow __concat __unm __eq __lt __le assert ' +
//Standard methods and properties:
// Standard methods and properties:
'collectgarbage dofile error getfenv getmetatable ipairs load loadfile loadstring ' +
'module next pairs pcall print rawequal rawget rawset require select setfenv ' +
'setmetatable tonumber tostring type unpack xpcall arg self ' +
//Library methods and properties (one line per library):
// Library methods and properties (one line per library):
'coroutine resume yield status wrap create running debug getupvalue ' +

@@ -55,8 +56,12 @@ 'debug sethook getmetatable gethook setmetatable setlocal traceback setfenv getinfo setupvalue getlocal getregistry getfenv ' +

className: 'function',
beginKeywords: 'function', end: '\\)',
beginKeywords: 'function',
end: '\\)',
contains: [
hljs.inherit(hljs.TITLE_MODE, {begin: '([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*'}),
hljs.inherit(hljs.TITLE_MODE, {
begin: '([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*'
}),
{
className: 'params',
begin: '\\(', endsWithParent: true,
begin: '\\(',
endsWithParent: true,
contains: COMMENTS

@@ -71,3 +76,4 @@ }

className: 'string',
begin: OPENING_LONG_BRACKET, end: CLOSING_LONG_BRACKET,
begin: OPENING_LONG_BRACKET,
end: CLOSING_LONG_BRACKET,
contains: [LONG_BRACKETS],

@@ -74,0 +80,0 @@ relevance: 5

@@ -11,3 +11,3 @@ /*

/* Variables: simple (eg $(var)) and special (eg $@) */
var VARIABLE = {
const VARIABLE = {
className: 'variable',

@@ -17,22 +17,24 @@ variants: [

begin: '\\$\\(' + hljs.UNDERSCORE_IDENT_RE + '\\)',
contains: [hljs.BACKSLASH_ESCAPE],
contains: [ hljs.BACKSLASH_ESCAPE ]
},
{
begin: /\$[@%<?\^\+\*]/
},
}
]
};
/* Quoted string with variables inside */
var QUOTE_STRING = {
const QUOTE_STRING = {
className: 'string',
begin: /"/, end: /"/,
begin: /"/,
end: /"/,
contains: [
hljs.BACKSLASH_ESCAPE,
VARIABLE,
VARIABLE
]
};
/* Function: $(func arg,...) */
var FUNC = {
const FUNC = {
className: 'variable',
begin: /\$\([\w-]+\s/, end: /\)/,
begin: /\$\([\w-]+\s/,
end: /\)/,
keywords: {

@@ -43,16 +45,15 @@ built_in:

'addsuffix addprefix join wildcard realpath abspath error warning ' +
'shell origin flavor foreach if or and call eval file value',
'shell origin flavor foreach if or and call eval file value'
},
contains: [
VARIABLE,
]
contains: [ VARIABLE ]
};
/* Variable assignment */
var ASSIGNMENT = {
const ASSIGNMENT = {
begin: '^' + hljs.UNDERSCORE_IDENT_RE + '\\s*(?=[:+?]?=)'
};
/* Meta targets (.PHONY) */
var META = {
const META = {
className: 'meta',
begin: /^\.PHONY:/, end: /$/,
begin: /^\.PHONY:/,
end: /$/,
keywords: {

@@ -64,10 +65,14 @@ $pattern: /[\.\w]+/,

/* Targets */
var TARGET = {
const TARGET = {
className: 'section',
begin: /^[^\s]+:/, end: /$/,
contains: [VARIABLE,]
begin: /^[^\s]+:/,
end: /$/,
contains: [ VARIABLE ]
};
return {
name: 'Makefile',
aliases: ['mk', 'mak'],
aliases: [
'mk',
'mak'
],
keywords: {

@@ -85,3 +90,3 @@ $pattern: /[\w-]+/,

META,
TARGET,
TARGET
]

@@ -88,0 +93,0 @@ };

@@ -36,3 +36,4 @@ /**

const INLINE_HTML = {
begin: /<\/?[A-Za-z_]/, end: '>',
begin: /<\/?[A-Za-z_]/,
end: '>',
subLanguage: 'xml',

@@ -42,3 +43,4 @@ relevance: 0

const HORIZONTAL_RULE = {
begin: '^[-\\*]{3,}', end: '$'
begin: '^[-\\*]{3,}',
end: '$'
};

@@ -49,9 +51,21 @@ const CODE = {

// TODO: fix to allow these to work with sublanguage also
{ begin: '(`{3,})(.|\\n)*?\\1`*[ ]*', },
{ begin: '(~{3,})(.|\\n)*?\\1~*[ ]*', },
{
begin: '(`{3,})(.|\\n)*?\\1`*[ ]*'
},
{
begin: '(~{3,})(.|\\n)*?\\1~*[ ]*'
},
// needed to allow markdown as a sublanguage to work
{ begin: '```', end: '```+[ ]*$' },
{ begin: '~~~', end: '~~~+[ ]*$' },
{ begin: '`.+?`' },
{
begin: '```',
end: '```+[ ]*$'
},
{
begin: '~~~',
end: '~~~+[ ]*$'
},
{
begin: '`.+?`'
},
{
begin: '(?=^( {4}|\\t))',

@@ -61,3 +75,6 @@ // use contains to gobble up multiple lines to allow the block to be whatever size

contains: [
{ begin: '^( {4}|\\t)', end: '(\\n)$' }
{
begin: '^( {4}|\\t)',
end: '(\\n)$'
}
],

@@ -80,8 +97,11 @@ relevance: 0

className: 'symbol',
begin: /\[/, end: /\]/,
excludeBegin: true, excludeEnd: true
begin: /\[/,
end: /\]/,
excludeBegin: true,
excludeEnd: true
},
{
className: 'link',
begin: /:\s*/, end: /$/,
begin: /:\s*/,
end: /$/,
excludeBegin: true

@@ -96,10 +116,25 @@ }

// to have any real relevance
{ begin: /\[.+?\]\[.*?\]/, relevance: 0 },
{
begin: /\[.+?\]\[.*?\]/,
relevance: 0
},
// popular internet URLs
{ begin: /\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/, relevance: 2 },
{ begin: concat(/\[.+?\]\(/, URL_SCHEME, /:\/\/.*?\)/), relevance: 2 },
{
begin: /\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,
relevance: 2
},
{
begin: concat(/\[.+?\]\(/, URL_SCHEME, /:\/\/.*?\)/),
relevance: 2
},
// relative urls
{ begin: /\[.+?\]\([./?&#].*?\)/, relevance: 1 },
{
begin: /\[.+?\]\([./?&#].*?\)/,
relevance: 1
},
// whatever else, lower relevance (might not be a link at all)
{ begin: /\[.+?\]\(.*?\)/, relevance: 0 }
{
begin: /\[.+?\]\(.*?\)/,
relevance: 0
}
],

@@ -111,5 +146,6 @@ returnBegin: true,

relevance: 0,
begin: '\\[', end: '\\]',
begin: '\\[',
end: '\\]',
excludeBegin: true,
returnEnd: true,
returnEnd: true
},

@@ -119,3 +155,4 @@ {

relevance: 0,
begin: '\\]\\(', end: '\\)',
begin: '\\]\\(',
end: '\\)',
excludeBegin: true,

@@ -127,3 +164,4 @@ excludeEnd: true

relevance: 0,
begin: '\\]\\[', end: '\\]',
begin: '\\]\\[',
end: '\\]',
excludeBegin: true,

@@ -138,4 +176,10 @@ excludeEnd: true

variants: [
{begin: /_{2}/, end: /_{2}/ },
{begin: /\*{2}/, end: /\*{2}/ }
{
begin: /_{2}/,
end: /_{2}/
},
{
begin: /\*{2}/,
end: /\*{2}/
}
]

@@ -147,4 +191,11 @@ };

variants: [
{ begin: /\*(?!\*)/, end: /\*/ },
{ begin: /_(?!_)/, end: /_/, relevance: 0},
{
begin: /\*(?!\*)/,
end: /\*/
},
{
begin: /_(?!_)/,
end: /_/,
relevance: 0
}
]

@@ -155,3 +206,3 @@ };

var CONTAINABLE = [
let CONTAINABLE = [
INLINE_HTML,

@@ -164,3 +215,3 @@ LINK

CONTAINABLE = CONTAINABLE.concat(BOLD,ITALIC);
CONTAINABLE = CONTAINABLE.concat(BOLD, ITALIC);

@@ -174,10 +225,16 @@ const HEADER = {

contains: CONTAINABLE
},
},
{
begin: '(?=^.+?\\n[=-]{2,}$)',
contains: [
{ begin: '^[=-]*$' },
{ begin: '^', end: "\\n", contains: CONTAINABLE },
{
begin: '^[=-]*$'
},
{
begin: '^',
end: "\\n",
contains: CONTAINABLE
}
]
}
}
]

@@ -190,3 +247,3 @@ };

contains: CONTAINABLE,
end: '$',
end: '$'
};

@@ -196,3 +253,7 @@

name: 'Markdown',
aliases: ['md', 'mkdown', 'mkd'],
aliases: [
'md',
'mkdown',
'mkd'
],
contains: [

@@ -199,0 +260,0 @@ HEADER,

@@ -9,359 +9,361 @@ /*

function maxima(hljs) {
var KEYWORDS = 'if then else elseif for thru do while unless step in and or not';
var LITERALS = 'true false unknown inf minf ind und %e %i %pi %phi %gamma';
var BUILTIN_FUNCTIONS =
' abasep abs absint absolute_real_time acos acosh acot acoth acsc acsch activate'
+ ' addcol add_edge add_edges addmatrices addrow add_vertex add_vertices adjacency_matrix'
+ ' adjoin adjoint af agd airy airy_ai airy_bi airy_dai airy_dbi algsys alg_type'
+ ' alias allroots alphacharp alphanumericp amortization %and annuity_fv'
+ ' annuity_pv antid antidiff AntiDifference append appendfile apply apply1 apply2'
+ ' applyb1 apropos args arit_amortization arithmetic arithsum array arrayapply'
+ ' arrayinfo arraymake arraysetapply ascii asec asech asin asinh askinteger'
+ ' asksign assoc assoc_legendre_p assoc_legendre_q assume assume_external_byte_order'
+ ' asympa at atan atan2 atanh atensimp atom atvalue augcoefmatrix augmented_lagrangian_method'
+ ' av average_degree backtrace bars barsplot barsplot_description base64 base64_decode'
+ ' bashindices batch batchload bc2 bdvac belln benefit_cost bern bernpoly bernstein_approx'
+ ' bernstein_expand bernstein_poly bessel bessel_i bessel_j bessel_k bessel_simplify'
+ ' bessel_y beta beta_incomplete beta_incomplete_generalized beta_incomplete_regularized'
+ ' bezout bfallroots bffac bf_find_root bf_fmin_cobyla bfhzeta bfloat bfloatp'
+ ' bfpsi bfpsi0 bfzeta biconnected_components bimetric binomial bipartition'
+ ' block blockmatrixp bode_gain bode_phase bothcoef box boxplot boxplot_description'
+ ' break bug_report build_info|10 buildq build_sample burn cabs canform canten'
+ ' cardinality carg cartan cartesian_product catch cauchy_matrix cbffac cdf_bernoulli'
+ ' cdf_beta cdf_binomial cdf_cauchy cdf_chi2 cdf_continuous_uniform cdf_discrete_uniform'
+ ' cdf_exp cdf_f cdf_gamma cdf_general_finite_discrete cdf_geometric cdf_gumbel'
+ ' cdf_hypergeometric cdf_laplace cdf_logistic cdf_lognormal cdf_negative_binomial'
+ ' cdf_noncentral_chi2 cdf_noncentral_student_t cdf_normal cdf_pareto cdf_poisson'
+ ' cdf_rank_sum cdf_rayleigh cdf_signed_rank cdf_student_t cdf_weibull cdisplay'
+ ' ceiling central_moment cequal cequalignore cf cfdisrep cfexpand cgeodesic'
+ ' cgreaterp cgreaterpignore changename changevar chaosgame charat charfun charfun2'
+ ' charlist charp charpoly chdir chebyshev_t chebyshev_u checkdiv check_overlaps'
+ ' chinese cholesky christof chromatic_index chromatic_number cint circulant_graph'
+ ' clear_edge_weight clear_rules clear_vertex_label clebsch_gordan clebsch_graph'
+ ' clessp clesspignore close closefile cmetric coeff coefmatrix cograd col collapse'
+ ' collectterms columnop columnspace columnswap columnvector combination combine'
+ ' comp2pui compare compfile compile compile_file complement_graph complete_bipartite_graph'
+ ' complete_graph complex_number_p components compose_functions concan concat'
+ ' conjugate conmetderiv connected_components connect_vertices cons constant'
+ ' constantp constituent constvalue cont2part content continuous_freq contortion'
+ ' contour_plot contract contract_edge contragrad contrib_ode convert coord'
+ ' copy copy_file copy_graph copylist copymatrix cor cos cosh cot coth cov cov1'
+ ' covdiff covect covers crc24sum create_graph create_list csc csch csetup cspline'
+ ' ctaylor ct_coordsys ctransform ctranspose cube_graph cuboctahedron_graph'
+ ' cunlisp cv cycle_digraph cycle_graph cylindrical days360 dblint deactivate'
+ ' declare declare_constvalue declare_dimensions declare_fundamental_dimensions'
+ ' declare_fundamental_units declare_qty declare_translated declare_unit_conversion'
+ ' declare_units declare_weights decsym defcon define define_alt_display define_variable'
+ ' defint defmatch defrule defstruct deftaylor degree_sequence del delete deleten'
+ ' delta demo demoivre denom depends derivdegree derivlist describe desolve'
+ ' determinant dfloat dgauss_a dgauss_b dgeev dgemm dgeqrf dgesv dgesvd diag'
+ ' diagmatrix diag_matrix diagmatrixp diameter diff digitcharp dimacs_export'
+ ' dimacs_import dimension dimensionless dimensions dimensions_as_list direct'
+ ' directory discrete_freq disjoin disjointp disolate disp dispcon dispform'
+ ' dispfun dispJordan display disprule dispterms distrib divide divisors divsum'
+ ' dkummer_m dkummer_u dlange dodecahedron_graph dotproduct dotsimp dpart'
+ ' draw draw2d draw3d drawdf draw_file draw_graph dscalar echelon edge_coloring'
+ ' edge_connectivity edges eigens_by_jacobi eigenvalues eigenvectors eighth'
+ ' einstein eivals eivects elapsed_real_time elapsed_run_time ele2comp ele2polynome'
+ ' ele2pui elem elementp elevation_grid elim elim_allbut eliminate eliminate_using'
+ ' ellipse elliptic_e elliptic_ec elliptic_eu elliptic_f elliptic_kc elliptic_pi'
+ ' ematrix empty_graph emptyp endcons entermatrix entertensor entier equal equalp'
+ ' equiv_classes erf erfc erf_generalized erfi errcatch error errormsg errors'
+ ' euler ev eval_string evenp every evolution evolution2d evundiff example exp'
+ ' expand expandwrt expandwrt_factored expint expintegral_chi expintegral_ci'
+ ' expintegral_e expintegral_e1 expintegral_ei expintegral_e_simplify expintegral_li'
+ ' expintegral_shi expintegral_si explicit explose exponentialize express expt'
+ ' exsec extdiff extract_linear_equations extremal_subset ezgcd %f f90 facsum'
+ ' factcomb factor factorfacsum factorial factorout factorsum facts fast_central_elements'
+ ' fast_linsolve fasttimes featurep fernfale fft fib fibtophi fifth filename_merge'
+ ' file_search file_type fillarray findde find_root find_root_abs find_root_error'
+ ' find_root_rel first fix flatten flength float floatnump floor flower_snark'
+ ' flush flush1deriv flushd flushnd flush_output fmin_cobyla forget fortran'
+ ' fourcos fourexpand fourier fourier_elim fourint fourintcos fourintsin foursimp'
+ ' foursin fourth fposition frame_bracket freeof freshline fresnel_c fresnel_s'
+ ' from_adjacency_matrix frucht_graph full_listify fullmap fullmapl fullratsimp'
+ ' fullratsubst fullsetify funcsolve fundamental_dimensions fundamental_units'
+ ' fundef funmake funp fv g0 g1 gamma gamma_greek gamma_incomplete gamma_incomplete_generalized'
+ ' gamma_incomplete_regularized gauss gauss_a gauss_b gaussprob gcd gcdex gcdivide'
+ ' gcfac gcfactor gd generalized_lambert_w genfact gen_laguerre genmatrix gensym'
+ ' geo_amortization geo_annuity_fv geo_annuity_pv geomap geometric geometric_mean'
+ ' geosum get getcurrentdirectory get_edge_weight getenv get_lu_factors get_output_stream_string'
+ ' get_pixel get_plot_option get_tex_environment get_tex_environment_default'
+ ' get_vertex_label gfactor gfactorsum ggf girth global_variances gn gnuplot_close'
+ ' gnuplot_replot gnuplot_reset gnuplot_restart gnuplot_start go Gosper GosperSum'
+ ' gr2d gr3d gradef gramschmidt graph6_decode graph6_encode graph6_export graph6_import'
+ ' graph_center graph_charpoly graph_eigenvalues graph_flow graph_order graph_periphery'
+ ' graph_product graph_size graph_union great_rhombicosidodecahedron_graph great_rhombicuboctahedron_graph'
+ ' grid_graph grind grobner_basis grotzch_graph hamilton_cycle hamilton_path'
+ ' hankel hankel_1 hankel_2 harmonic harmonic_mean hav heawood_graph hermite'
+ ' hessian hgfred hilbertmap hilbert_matrix hipow histogram histogram_description'
+ ' hodge horner hypergeometric i0 i1 %ibes ic1 ic2 ic_convert ichr1 ichr2 icosahedron_graph'
+ ' icosidodecahedron_graph icurvature ident identfor identity idiff idim idummy'
+ ' ieqn %if ifactors iframes ifs igcdex igeodesic_coords ilt image imagpart'
+ ' imetric implicit implicit_derivative implicit_plot indexed_tensor indices'
+ ' induced_subgraph inferencep inference_result infix info_display init_atensor'
+ ' init_ctensor in_neighbors innerproduct inpart inprod inrt integerp integer_partitions'
+ ' integrate intersect intersection intervalp intopois intosum invariant1 invariant2'
+ ' inverse_fft inverse_jacobi_cd inverse_jacobi_cn inverse_jacobi_cs inverse_jacobi_dc'
+ ' inverse_jacobi_dn inverse_jacobi_ds inverse_jacobi_nc inverse_jacobi_nd inverse_jacobi_ns'
+ ' inverse_jacobi_sc inverse_jacobi_sd inverse_jacobi_sn invert invert_by_adjoint'
+ ' invert_by_lu inv_mod irr is is_biconnected is_bipartite is_connected is_digraph'
+ ' is_edge_in_graph is_graph is_graph_or_digraph ishow is_isomorphic isolate'
+ ' isomorphism is_planar isqrt isreal_p is_sconnected is_tree is_vertex_in_graph'
+ ' items_inference %j j0 j1 jacobi jacobian jacobi_cd jacobi_cn jacobi_cs jacobi_dc'
+ ' jacobi_dn jacobi_ds jacobi_nc jacobi_nd jacobi_ns jacobi_p jacobi_sc jacobi_sd'
+ ' jacobi_sn JF jn join jordan julia julia_set julia_sin %k kdels kdelta kill'
+ ' killcontext kostka kron_delta kronecker_product kummer_m kummer_u kurtosis'
+ ' kurtosis_bernoulli kurtosis_beta kurtosis_binomial kurtosis_chi2 kurtosis_continuous_uniform'
+ ' kurtosis_discrete_uniform kurtosis_exp kurtosis_f kurtosis_gamma kurtosis_general_finite_discrete'
+ ' kurtosis_geometric kurtosis_gumbel kurtosis_hypergeometric kurtosis_laplace'
+ ' kurtosis_logistic kurtosis_lognormal kurtosis_negative_binomial kurtosis_noncentral_chi2'
+ ' kurtosis_noncentral_student_t kurtosis_normal kurtosis_pareto kurtosis_poisson'
+ ' kurtosis_rayleigh kurtosis_student_t kurtosis_weibull label labels lagrange'
+ ' laguerre lambda lambert_w laplace laplacian_matrix last lbfgs lc2kdt lcharp'
+ ' lc_l lcm lc_u ldefint ldisp ldisplay legendre_p legendre_q leinstein length'
+ ' let letrules letsimp levi_civita lfreeof lgtreillis lhs li liediff limit'
+ ' Lindstedt linear linearinterpol linear_program linear_regression line_graph'
+ ' linsolve listarray list_correlations listify list_matrix_entries list_nc_monomials'
+ ' listoftens listofvars listp lmax lmin load loadfile local locate_matrix_entry'
+ ' log logcontract log_gamma lopow lorentz_gauge lowercasep lpart lratsubst'
+ ' lreduce lriemann lsquares_estimates lsquares_estimates_approximate lsquares_estimates_exact'
+ ' lsquares_mse lsquares_residual_mse lsquares_residuals lsum ltreillis lu_backsub'
+ ' lucas lu_factor %m macroexpand macroexpand1 make_array makebox makefact makegamma'
+ ' make_graph make_level_picture makelist makeOrders make_poly_continent make_poly_country'
+ ' make_polygon make_random_state make_rgb_picture makeset make_string_input_stream'
+ ' make_string_output_stream make_transform mandelbrot mandelbrot_set map mapatom'
+ ' maplist matchdeclare matchfix mat_cond mat_fullunblocker mat_function mathml_display'
+ ' mat_norm matrix matrixmap matrixp matrix_size mattrace mat_trace mat_unblocker'
+ ' max max_clique max_degree max_flow maximize_lp max_independent_set max_matching'
+ ' maybe md5sum mean mean_bernoulli mean_beta mean_binomial mean_chi2 mean_continuous_uniform'
+ ' mean_deviation mean_discrete_uniform mean_exp mean_f mean_gamma mean_general_finite_discrete'
+ ' mean_geometric mean_gumbel mean_hypergeometric mean_laplace mean_logistic'
+ ' mean_lognormal mean_negative_binomial mean_noncentral_chi2 mean_noncentral_student_t'
+ ' mean_normal mean_pareto mean_poisson mean_rayleigh mean_student_t mean_weibull'
+ ' median median_deviation member mesh metricexpandall mgf1_sha1 min min_degree'
+ ' min_edge_cut minfactorial minimalPoly minimize_lp minimum_spanning_tree minor'
+ ' minpack_lsquares minpack_solve min_vertex_cover min_vertex_cut mkdir mnewton'
+ ' mod mode_declare mode_identity ModeMatrix moebius mon2schur mono monomial_dimensions'
+ ' multibernstein_poly multi_display_for_texinfo multi_elem multinomial multinomial_coeff'
+ ' multi_orbit multiplot_mode multi_pui multsym multthru mycielski_graph nary'
+ ' natural_unit nc_degree ncexpt ncharpoly negative_picture neighbors new newcontext'
+ ' newdet new_graph newline newton new_variable next_prime nicedummies niceindices'
+ ' ninth nofix nonarray noncentral_moment nonmetricity nonnegintegerp nonscalarp'
+ ' nonzeroandfreeof notequal nounify nptetrad npv nroots nterms ntermst'
+ ' nthroot nullity nullspace num numbered_boundaries numberp number_to_octets'
+ ' num_distinct_partitions numerval numfactor num_partitions nusum nzeta nzetai'
+ ' nzetar octets_to_number octets_to_oid odd_girth oddp ode2 ode_check odelin'
+ ' oid_to_octets op opena opena_binary openr openr_binary openw openw_binary'
+ ' operatorp opsubst optimize %or orbit orbits ordergreat ordergreatp orderless'
+ ' orderlessp orthogonal_complement orthopoly_recur orthopoly_weight outermap'
+ ' out_neighbors outofpois pade parabolic_cylinder_d parametric parametric_surface'
+ ' parg parGosper parse_string parse_timedate part part2cont partfrac partition'
+ ' partition_set partpol path_digraph path_graph pathname_directory pathname_name'
+ ' pathname_type pdf_bernoulli pdf_beta pdf_binomial pdf_cauchy pdf_chi2 pdf_continuous_uniform'
+ ' pdf_discrete_uniform pdf_exp pdf_f pdf_gamma pdf_general_finite_discrete'
+ ' pdf_geometric pdf_gumbel pdf_hypergeometric pdf_laplace pdf_logistic pdf_lognormal'
+ ' pdf_negative_binomial pdf_noncentral_chi2 pdf_noncentral_student_t pdf_normal'
+ ' pdf_pareto pdf_poisson pdf_rank_sum pdf_rayleigh pdf_signed_rank pdf_student_t'
+ ' pdf_weibull pearson_skewness permanent permut permutation permutations petersen_graph'
+ ' petrov pickapart picture_equalp picturep piechart piechart_description planar_embedding'
+ ' playback plog plot2d plot3d plotdf ploteq plsquares pochhammer points poisdiff'
+ ' poisexpt poisint poismap poisplus poissimp poissubst poistimes poistrim polar'
+ ' polarform polartorect polar_to_xy poly_add poly_buchberger poly_buchberger_criterion'
+ ' poly_colon_ideal poly_content polydecomp poly_depends_p poly_elimination_ideal'
+ ' poly_exact_divide poly_expand poly_expt poly_gcd polygon poly_grobner poly_grobner_equal'
+ ' poly_grobner_member poly_grobner_subsetp poly_ideal_intersection poly_ideal_polysaturation'
+ ' poly_ideal_polysaturation1 poly_ideal_saturation poly_ideal_saturation1 poly_lcm'
+ ' poly_minimization polymod poly_multiply polynome2ele polynomialp poly_normal_form'
+ ' poly_normalize poly_normalize_list poly_polysaturation_extension poly_primitive_part'
+ ' poly_pseudo_divide poly_reduced_grobner poly_reduction poly_saturation_extension'
+ ' poly_s_polynomial poly_subtract polytocompanion pop postfix potential power_mod'
+ ' powerseries powerset prefix prev_prime primep primes principal_components'
+ ' print printf printfile print_graph printpois printprops prodrac product properties'
+ ' propvars psi psubst ptriangularize pui pui2comp pui2ele pui2polynome pui_direct'
+ ' puireduc push put pv qput qrange qty quad_control quad_qag quad_qagi quad_qagp'
+ ' quad_qags quad_qawc quad_qawf quad_qawo quad_qaws quadrilateral quantile'
+ ' quantile_bernoulli quantile_beta quantile_binomial quantile_cauchy quantile_chi2'
+ ' quantile_continuous_uniform quantile_discrete_uniform quantile_exp quantile_f'
+ ' quantile_gamma quantile_general_finite_discrete quantile_geometric quantile_gumbel'
+ ' quantile_hypergeometric quantile_laplace quantile_logistic quantile_lognormal'
+ ' quantile_negative_binomial quantile_noncentral_chi2 quantile_noncentral_student_t'
+ ' quantile_normal quantile_pareto quantile_poisson quantile_rayleigh quantile_student_t'
+ ' quantile_weibull quartile_skewness quit qunit quotient racah_v racah_w radcan'
+ ' radius random random_bernoulli random_beta random_binomial random_bipartite_graph'
+ ' random_cauchy random_chi2 random_continuous_uniform random_digraph random_discrete_uniform'
+ ' random_exp random_f random_gamma random_general_finite_discrete random_geometric'
+ ' random_graph random_graph1 random_gumbel random_hypergeometric random_laplace'
+ ' random_logistic random_lognormal random_negative_binomial random_network'
+ ' random_noncentral_chi2 random_noncentral_student_t random_normal random_pareto'
+ ' random_permutation random_poisson random_rayleigh random_regular_graph random_student_t'
+ ' random_tournament random_tree random_weibull range rank rat ratcoef ratdenom'
+ ' ratdiff ratdisrep ratexpand ratinterpol rational rationalize ratnumer ratnump'
+ ' ratp ratsimp ratsubst ratvars ratweight read read_array read_binary_array'
+ ' read_binary_list read_binary_matrix readbyte readchar read_hashed_array readline'
+ ' read_list read_matrix read_nested_list readonly read_xpm real_imagpart_to_conjugate'
+ ' realpart realroots rearray rectangle rectform rectform_log_if_constant recttopolar'
+ ' rediff reduce_consts reduce_order region region_boundaries region_boundaries_plus'
+ ' rem remainder remarray rembox remcomps remcon remcoord remfun remfunction'
+ ' remlet remove remove_constvalue remove_dimensions remove_edge remove_fundamental_dimensions'
+ ' remove_fundamental_units remove_plot_option remove_vertex rempart remrule'
+ ' remsym remvalue rename rename_file reset reset_displays residue resolvante'
+ ' resolvante_alternee1 resolvante_bipartite resolvante_diedrale resolvante_klein'
+ ' resolvante_klein3 resolvante_produit_sym resolvante_unitaire resolvante_vierer'
+ ' rest resultant return reveal reverse revert revert2 rgb2level rhs ricci riemann'
+ ' rinvariant risch rk rmdir rncombine romberg room rootscontract round row'
+ ' rowop rowswap rreduce run_testsuite %s save saving scalarp scaled_bessel_i'
+ ' scaled_bessel_i0 scaled_bessel_i1 scalefactors scanmap scatterplot scatterplot_description'
+ ' scene schur2comp sconcat scopy scsimp scurvature sdowncase sec sech second'
+ ' sequal sequalignore set_alt_display setdifference set_draw_defaults set_edge_weight'
+ ' setelmx setequalp setify setp set_partitions set_plot_option set_prompt set_random_state'
+ ' set_tex_environment set_tex_environment_default setunits setup_autoload set_up_dot_simplifications'
+ ' set_vertex_label seventh sexplode sf sha1sum sha256sum shortest_path shortest_weighted_path'
+ ' show showcomps showratvars sierpinskiale sierpinskimap sign signum similaritytransform'
+ ' simp_inequality simplify_sum simplode simpmetderiv simtran sin sinh sinsert'
+ ' sinvertcase sixth skewness skewness_bernoulli skewness_beta skewness_binomial'
+ ' skewness_chi2 skewness_continuous_uniform skewness_discrete_uniform skewness_exp'
+ ' skewness_f skewness_gamma skewness_general_finite_discrete skewness_geometric'
+ ' skewness_gumbel skewness_hypergeometric skewness_laplace skewness_logistic'
+ ' skewness_lognormal skewness_negative_binomial skewness_noncentral_chi2 skewness_noncentral_student_t'
+ ' skewness_normal skewness_pareto skewness_poisson skewness_rayleigh skewness_student_t'
+ ' skewness_weibull slength smake small_rhombicosidodecahedron_graph small_rhombicuboctahedron_graph'
+ ' smax smin smismatch snowmap snub_cube_graph snub_dodecahedron_graph solve'
+ ' solve_rec solve_rec_rat some somrac sort sparse6_decode sparse6_encode sparse6_export'
+ ' sparse6_import specint spherical spherical_bessel_j spherical_bessel_y spherical_hankel1'
+ ' spherical_hankel2 spherical_harmonic spherical_to_xyz splice split sposition'
+ ' sprint sqfr sqrt sqrtdenest sremove sremovefirst sreverse ssearch ssort sstatus'
+ ' ssubst ssubstfirst staircase standardize standardize_inverse_trig starplot'
+ ' starplot_description status std std1 std_bernoulli std_beta std_binomial'
+ ' std_chi2 std_continuous_uniform std_discrete_uniform std_exp std_f std_gamma'
+ ' std_general_finite_discrete std_geometric std_gumbel std_hypergeometric std_laplace'
+ ' std_logistic std_lognormal std_negative_binomial std_noncentral_chi2 std_noncentral_student_t'
+ ' std_normal std_pareto std_poisson std_rayleigh std_student_t std_weibull'
+ ' stemplot stirling stirling1 stirling2 strim striml strimr string stringout'
+ ' stringp strong_components struve_h struve_l sublis sublist sublist_indices'
+ ' submatrix subsample subset subsetp subst substinpart subst_parallel substpart'
+ ' substring subvar subvarp sum sumcontract summand_to_rec supcase supcontext'
+ ' symbolp symmdifference symmetricp system take_channel take_inference tan'
+ ' tanh taylor taylorinfo taylorp taylor_simplifier taytorat tcl_output tcontract'
+ ' tellrat tellsimp tellsimpafter tentex tenth test_mean test_means_difference'
+ ' test_normality test_proportion test_proportions_difference test_rank_sum'
+ ' test_sign test_signed_rank test_variance test_variance_ratio tex tex1 tex_display'
+ ' texput %th third throw time timedate timer timer_info tldefint tlimit todd_coxeter'
+ ' toeplitz tokens to_lisp topological_sort to_poly to_poly_solve totaldisrep'
+ ' totalfourier totient tpartpol trace tracematrix trace_options transform_sample'
+ ' translate translate_file transpose treefale tree_reduce treillis treinat'
+ ' triangle triangularize trigexpand trigrat trigreduce trigsimp trunc truncate'
+ ' truncated_cube_graph truncated_dodecahedron_graph truncated_icosahedron_graph'
+ ' truncated_tetrahedron_graph tr_warnings_get tube tutte_graph ueivects uforget'
+ ' ultraspherical underlying_graph undiff union unique uniteigenvectors unitp'
+ ' units unit_step unitvector unorder unsum untellrat untimer'
+ ' untrace uppercasep uricci uriemann uvect vandermonde_matrix var var1 var_bernoulli'
+ ' var_beta var_binomial var_chi2 var_continuous_uniform var_discrete_uniform'
+ ' var_exp var_f var_gamma var_general_finite_discrete var_geometric var_gumbel'
+ ' var_hypergeometric var_laplace var_logistic var_lognormal var_negative_binomial'
+ ' var_noncentral_chi2 var_noncentral_student_t var_normal var_pareto var_poisson'
+ ' var_rayleigh var_student_t var_weibull vector vectorpotential vectorsimp'
+ ' verbify vers vertex_coloring vertex_connectivity vertex_degree vertex_distance'
+ ' vertex_eccentricity vertex_in_degree vertex_out_degree vertices vertices_to_cycle'
+ ' vertices_to_path %w weyl wheel_graph wiener_index wigner_3j wigner_6j'
+ ' wigner_9j with_stdout write_binary_data writebyte write_data writefile wronskian'
+ ' xreduce xthru %y Zeilberger zeroequiv zerofor zeromatrix zeromatrixp zeta'
+ ' zgeev zheev zlange zn_add_table zn_carmichael_lambda zn_characteristic_factors'
+ ' zn_determinant zn_factor_generators zn_invert_by_lu zn_log zn_mult_table'
+ ' absboxchar activecontexts adapt_depth additive adim aform algebraic'
+ ' algepsilon algexact aliases allbut all_dotsimp_denoms allocation allsym alphabetic'
+ ' animation antisymmetric arrays askexp assume_pos assume_pos_pred assumescalar'
+ ' asymbol atomgrad atrig1 axes axis_3d axis_bottom axis_left axis_right axis_top'
+ ' azimuth background background_color backsubst berlefact bernstein_explicit'
+ ' besselexpand beta_args_sum_to_integer beta_expand bftorat bftrunc bindtest'
+ ' border boundaries_array box boxchar breakup %c capping cauchysum cbrange'
+ ' cbtics center cflength cframe_flag cnonmet_flag color color_bar color_bar_tics'
+ ' colorbox columns commutative complex cone context contexts contour contour_levels'
+ ' cosnpiflag ctaypov ctaypt ctayswitch ctayvar ct_coords ctorsion_flag ctrgsimp'
+ ' cube current_let_rule_package cylinder data_file_name debugmode decreasing'
+ ' default_let_rule_package delay dependencies derivabbrev derivsubst detout'
+ ' diagmetric diff dim dimensions dispflag display2d|10 display_format_internal'
+ ' distribute_over doallmxops domain domxexpt domxmxops domxnctimes dontfactor'
+ ' doscmxops doscmxplus dot0nscsimp dot0simp dot1simp dotassoc dotconstrules'
+ ' dotdistrib dotexptsimp dotident dotscrules draw_graph_program draw_realpart'
+ ' edge_color edge_coloring edge_partition edge_type edge_width %edispflag'
+ ' elevation %emode endphi endtheta engineering_format_floats enhanced3d %enumer'
+ ' epsilon_lp erfflag erf_representation errormsg error_size error_syms error_type'
+ ' %e_to_numlog eval even evenfun evflag evfun ev_point expandwrt_denom expintexpand'
+ ' expintrep expon expop exptdispflag exptisolate exptsubst facexpand facsum_combine'
+ ' factlim factorflag factorial_expand factors_only fb feature features'
+ ' file_name file_output_append file_search_demo file_search_lisp file_search_maxima|10'
+ ' file_search_tests file_search_usage file_type_lisp file_type_maxima|10 fill_color'
+ ' fill_density filled_func fixed_vertices flipflag float2bf font font_size'
+ ' fortindent fortspaces fpprec fpprintprec functions gamma_expand gammalim'
+ ' gdet genindex gensumnum GGFCFMAX GGFINFINITY globalsolve gnuplot_command'
+ ' gnuplot_curve_styles gnuplot_curve_titles gnuplot_default_term_command gnuplot_dumb_term_command'
+ ' gnuplot_file_args gnuplot_file_name gnuplot_out_file gnuplot_pdf_term_command'
+ ' gnuplot_pm3d gnuplot_png_term_command gnuplot_postamble gnuplot_preamble'
+ ' gnuplot_ps_term_command gnuplot_svg_term_command gnuplot_term gnuplot_view_args'
+ ' Gosper_in_Zeilberger gradefs grid grid2d grind halfangles head_angle head_both'
+ ' head_length head_type height hypergeometric_representation %iargs ibase'
+ ' icc1 icc2 icounter idummyx ieqnprint ifb ifc1 ifc2 ifg ifgi ifr iframe_bracket_form'
+ ' ifri igeowedge_flag ikt1 ikt2 imaginary inchar increasing infeval'
+ ' infinity inflag infolists inm inmc1 inmc2 intanalysis integer integervalued'
+ ' integrate_use_rootsof integration_constant integration_constant_counter interpolate_color'
+ ' intfaclim ip_grid ip_grid_in irrational isolate_wrt_times iterations itr'
+ ' julia_parameter %k1 %k2 keepfloat key key_pos kinvariant kt label label_alignment'
+ ' label_orientation labels lassociative lbfgs_ncorrections lbfgs_nfeval_max'
+ ' leftjust legend letrat let_rule_packages lfg lg lhospitallim limsubst linear'
+ ' linear_solver linechar linel|10 linenum line_type linewidth line_width linsolve_params'
+ ' linsolvewarn lispdisp listarith listconstvars listdummyvars lmxchar load_pathname'
+ ' loadprint logabs logarc logcb logconcoeffp logexpand lognegint logsimp logx'
+ ' logx_secondary logy logy_secondary logz lriem m1pbranch macroexpansion macros'
+ ' mainvar manual_demo maperror mapprint matrix_element_add matrix_element_mult'
+ ' matrix_element_transpose maxapplydepth maxapplyheight maxima_tempdir|10 maxima_userdir|10'
+ ' maxnegex MAX_ORD maxposex maxpsifracdenom maxpsifracnum maxpsinegint maxpsiposint'
+ ' maxtayorder mesh_lines_color method mod_big_prime mode_check_errorp'
+ ' mode_checkp mode_check_warnp mod_test mod_threshold modular_linear_solver'
+ ' modulus multiplicative multiplicities myoptions nary negdistrib negsumdispflag'
+ ' newline newtonepsilon newtonmaxiter nextlayerfactor niceindicespref nm nmc'
+ ' noeval nolabels nonegative_lp noninteger nonscalar noun noundisp nouns np'
+ ' npi nticks ntrig numer numer_pbranch obase odd oddfun opacity opproperties'
+ ' opsubst optimprefix optionset orientation origin orthopoly_returns_intervals'
+ ' outative outchar packagefile palette partswitch pdf_file pfeformat phiresolution'
+ ' %piargs piece pivot_count_sx pivot_max_sx plot_format plot_options plot_realpart'
+ ' png_file pochhammer_max_index points pointsize point_size points_joined point_type'
+ ' poislim poisson poly_coefficient_ring poly_elimination_order polyfactor poly_grobner_algorithm'
+ ' poly_grobner_debug poly_monomial_order poly_primary_elimination_order poly_return_term_list'
+ ' poly_secondary_elimination_order poly_top_reduction_only posfun position'
+ ' powerdisp pred prederror primep_number_of_tests product_use_gamma program'
+ ' programmode promote_float_to_bigfloat prompt proportional_axes props psexpand'
+ ' ps_file radexpand radius radsubstflag rassociative ratalgdenom ratchristof'
+ ' ratdenomdivide rateinstein ratepsilon ratfac rational ratmx ratprint ratriemann'
+ ' ratsimpexpons ratvarswitch ratweights ratweyl ratwtlvl real realonly redraw'
+ ' refcheck resolution restart resultant ric riem rmxchar %rnum_list rombergabs'
+ ' rombergit rombergmin rombergtol rootsconmode rootsepsilon run_viewer same_xy'
+ ' same_xyz savedef savefactors scalar scalarmatrixp scale scale_lp setcheck'
+ ' setcheckbreak setval show_edge_color show_edges show_edge_type show_edge_width'
+ ' show_id show_label showtime show_vertex_color show_vertex_size show_vertex_type'
+ ' show_vertices show_weight simp simplified_output simplify_products simpproduct'
+ ' simpsum sinnpiflag solvedecomposes solveexplicit solvefactors solvenullwarn'
+ ' solveradcan solvetrigwarn space sparse sphere spring_embedding_depth sqrtdispflag'
+ ' stardisp startphi starttheta stats_numer stringdisp structures style sublis_apply_lambda'
+ ' subnumsimp sumexpand sumsplitfact surface surface_hide svg_file symmetric'
+ ' tab taylordepth taylor_logexpand taylor_order_coefficients taylor_truncate_polynomials'
+ ' tensorkill terminal testsuite_files thetaresolution timer_devalue title tlimswitch'
+ ' tr track transcompile transform transform_xy translate_fast_arrays transparent'
+ ' transrun tr_array_as_ref tr_bound_function_applyp tr_file_tty_messagesp tr_float_can_branch_complex'
+ ' tr_function_call_default trigexpandplus trigexpandtimes triginverses trigsign'
+ ' trivial_solutions tr_numer tr_optimize_max_loop tr_semicompile tr_state_vars'
+ ' tr_warn_bad_function_calls tr_warn_fexpr tr_warn_meval tr_warn_mode'
+ ' tr_warn_undeclared tr_warn_undefined_variable tstep ttyoff tube_extremes'
+ ' ufg ug %unitexpand unit_vectors uric uriem use_fast_arrays user_preamble'
+ ' usersetunits values vect_cross verbose vertex_color vertex_coloring vertex_partition'
+ ' vertex_size vertex_type view warnings weyl width windowname windowtitle wired_surface'
+ ' wireframe xaxis xaxis_color xaxis_secondary xaxis_type xaxis_width xlabel'
+ ' xlabel_secondary xlength xrange xrange_secondary xtics xtics_axis xtics_rotate'
+ ' xtics_rotate_secondary xtics_secondary xtics_secondary_axis xu_grid x_voxel'
+ ' xy_file xyplane xy_scale yaxis yaxis_color yaxis_secondary yaxis_type yaxis_width'
+ ' ylabel ylabel_secondary ylength yrange yrange_secondary ytics ytics_axis'
+ ' ytics_rotate ytics_rotate_secondary ytics_secondary ytics_secondary_axis'
+ ' yv_grid y_voxel yx_ratio zaxis zaxis_color zaxis_type zaxis_width zeroa zerob'
+ ' zerobern zeta%pi zlabel zlabel_rotate zlength zmin zn_primroot_limit zn_primroot_pretest';
var SYMBOLS = '_ __ %|0 %%|0';
const KEYWORDS =
'if then else elseif for thru do while unless step in and or not';
const LITERALS =
'true false unknown inf minf ind und %e %i %pi %phi %gamma';
const BUILTIN_FUNCTIONS =
' abasep abs absint absolute_real_time acos acosh acot acoth acsc acsch activate' +
' addcol add_edge add_edges addmatrices addrow add_vertex add_vertices adjacency_matrix' +
' adjoin adjoint af agd airy airy_ai airy_bi airy_dai airy_dbi algsys alg_type' +
' alias allroots alphacharp alphanumericp amortization %and annuity_fv' +
' annuity_pv antid antidiff AntiDifference append appendfile apply apply1 apply2' +
' applyb1 apropos args arit_amortization arithmetic arithsum array arrayapply' +
' arrayinfo arraymake arraysetapply ascii asec asech asin asinh askinteger' +
' asksign assoc assoc_legendre_p assoc_legendre_q assume assume_external_byte_order' +
' asympa at atan atan2 atanh atensimp atom atvalue augcoefmatrix augmented_lagrangian_method' +
' av average_degree backtrace bars barsplot barsplot_description base64 base64_decode' +
' bashindices batch batchload bc2 bdvac belln benefit_cost bern bernpoly bernstein_approx' +
' bernstein_expand bernstein_poly bessel bessel_i bessel_j bessel_k bessel_simplify' +
' bessel_y beta beta_incomplete beta_incomplete_generalized beta_incomplete_regularized' +
' bezout bfallroots bffac bf_find_root bf_fmin_cobyla bfhzeta bfloat bfloatp' +
' bfpsi bfpsi0 bfzeta biconnected_components bimetric binomial bipartition' +
' block blockmatrixp bode_gain bode_phase bothcoef box boxplot boxplot_description' +
' break bug_report build_info|10 buildq build_sample burn cabs canform canten' +
' cardinality carg cartan cartesian_product catch cauchy_matrix cbffac cdf_bernoulli' +
' cdf_beta cdf_binomial cdf_cauchy cdf_chi2 cdf_continuous_uniform cdf_discrete_uniform' +
' cdf_exp cdf_f cdf_gamma cdf_general_finite_discrete cdf_geometric cdf_gumbel' +
' cdf_hypergeometric cdf_laplace cdf_logistic cdf_lognormal cdf_negative_binomial' +
' cdf_noncentral_chi2 cdf_noncentral_student_t cdf_normal cdf_pareto cdf_poisson' +
' cdf_rank_sum cdf_rayleigh cdf_signed_rank cdf_student_t cdf_weibull cdisplay' +
' ceiling central_moment cequal cequalignore cf cfdisrep cfexpand cgeodesic' +
' cgreaterp cgreaterpignore changename changevar chaosgame charat charfun charfun2' +
' charlist charp charpoly chdir chebyshev_t chebyshev_u checkdiv check_overlaps' +
' chinese cholesky christof chromatic_index chromatic_number cint circulant_graph' +
' clear_edge_weight clear_rules clear_vertex_label clebsch_gordan clebsch_graph' +
' clessp clesspignore close closefile cmetric coeff coefmatrix cograd col collapse' +
' collectterms columnop columnspace columnswap columnvector combination combine' +
' comp2pui compare compfile compile compile_file complement_graph complete_bipartite_graph' +
' complete_graph complex_number_p components compose_functions concan concat' +
' conjugate conmetderiv connected_components connect_vertices cons constant' +
' constantp constituent constvalue cont2part content continuous_freq contortion' +
' contour_plot contract contract_edge contragrad contrib_ode convert coord' +
' copy copy_file copy_graph copylist copymatrix cor cos cosh cot coth cov cov1' +
' covdiff covect covers crc24sum create_graph create_list csc csch csetup cspline' +
' ctaylor ct_coordsys ctransform ctranspose cube_graph cuboctahedron_graph' +
' cunlisp cv cycle_digraph cycle_graph cylindrical days360 dblint deactivate' +
' declare declare_constvalue declare_dimensions declare_fundamental_dimensions' +
' declare_fundamental_units declare_qty declare_translated declare_unit_conversion' +
' declare_units declare_weights decsym defcon define define_alt_display define_variable' +
' defint defmatch defrule defstruct deftaylor degree_sequence del delete deleten' +
' delta demo demoivre denom depends derivdegree derivlist describe desolve' +
' determinant dfloat dgauss_a dgauss_b dgeev dgemm dgeqrf dgesv dgesvd diag' +
' diagmatrix diag_matrix diagmatrixp diameter diff digitcharp dimacs_export' +
' dimacs_import dimension dimensionless dimensions dimensions_as_list direct' +
' directory discrete_freq disjoin disjointp disolate disp dispcon dispform' +
' dispfun dispJordan display disprule dispterms distrib divide divisors divsum' +
' dkummer_m dkummer_u dlange dodecahedron_graph dotproduct dotsimp dpart' +
' draw draw2d draw3d drawdf draw_file draw_graph dscalar echelon edge_coloring' +
' edge_connectivity edges eigens_by_jacobi eigenvalues eigenvectors eighth' +
' einstein eivals eivects elapsed_real_time elapsed_run_time ele2comp ele2polynome' +
' ele2pui elem elementp elevation_grid elim elim_allbut eliminate eliminate_using' +
' ellipse elliptic_e elliptic_ec elliptic_eu elliptic_f elliptic_kc elliptic_pi' +
' ematrix empty_graph emptyp endcons entermatrix entertensor entier equal equalp' +
' equiv_classes erf erfc erf_generalized erfi errcatch error errormsg errors' +
' euler ev eval_string evenp every evolution evolution2d evundiff example exp' +
' expand expandwrt expandwrt_factored expint expintegral_chi expintegral_ci' +
' expintegral_e expintegral_e1 expintegral_ei expintegral_e_simplify expintegral_li' +
' expintegral_shi expintegral_si explicit explose exponentialize express expt' +
' exsec extdiff extract_linear_equations extremal_subset ezgcd %f f90 facsum' +
' factcomb factor factorfacsum factorial factorout factorsum facts fast_central_elements' +
' fast_linsolve fasttimes featurep fernfale fft fib fibtophi fifth filename_merge' +
' file_search file_type fillarray findde find_root find_root_abs find_root_error' +
' find_root_rel first fix flatten flength float floatnump floor flower_snark' +
' flush flush1deriv flushd flushnd flush_output fmin_cobyla forget fortran' +
' fourcos fourexpand fourier fourier_elim fourint fourintcos fourintsin foursimp' +
' foursin fourth fposition frame_bracket freeof freshline fresnel_c fresnel_s' +
' from_adjacency_matrix frucht_graph full_listify fullmap fullmapl fullratsimp' +
' fullratsubst fullsetify funcsolve fundamental_dimensions fundamental_units' +
' fundef funmake funp fv g0 g1 gamma gamma_greek gamma_incomplete gamma_incomplete_generalized' +
' gamma_incomplete_regularized gauss gauss_a gauss_b gaussprob gcd gcdex gcdivide' +
' gcfac gcfactor gd generalized_lambert_w genfact gen_laguerre genmatrix gensym' +
' geo_amortization geo_annuity_fv geo_annuity_pv geomap geometric geometric_mean' +
' geosum get getcurrentdirectory get_edge_weight getenv get_lu_factors get_output_stream_string' +
' get_pixel get_plot_option get_tex_environment get_tex_environment_default' +
' get_vertex_label gfactor gfactorsum ggf girth global_variances gn gnuplot_close' +
' gnuplot_replot gnuplot_reset gnuplot_restart gnuplot_start go Gosper GosperSum' +
' gr2d gr3d gradef gramschmidt graph6_decode graph6_encode graph6_export graph6_import' +
' graph_center graph_charpoly graph_eigenvalues graph_flow graph_order graph_periphery' +
' graph_product graph_size graph_union great_rhombicosidodecahedron_graph great_rhombicuboctahedron_graph' +
' grid_graph grind grobner_basis grotzch_graph hamilton_cycle hamilton_path' +
' hankel hankel_1 hankel_2 harmonic harmonic_mean hav heawood_graph hermite' +
' hessian hgfred hilbertmap hilbert_matrix hipow histogram histogram_description' +
' hodge horner hypergeometric i0 i1 %ibes ic1 ic2 ic_convert ichr1 ichr2 icosahedron_graph' +
' icosidodecahedron_graph icurvature ident identfor identity idiff idim idummy' +
' ieqn %if ifactors iframes ifs igcdex igeodesic_coords ilt image imagpart' +
' imetric implicit implicit_derivative implicit_plot indexed_tensor indices' +
' induced_subgraph inferencep inference_result infix info_display init_atensor' +
' init_ctensor in_neighbors innerproduct inpart inprod inrt integerp integer_partitions' +
' integrate intersect intersection intervalp intopois intosum invariant1 invariant2' +
' inverse_fft inverse_jacobi_cd inverse_jacobi_cn inverse_jacobi_cs inverse_jacobi_dc' +
' inverse_jacobi_dn inverse_jacobi_ds inverse_jacobi_nc inverse_jacobi_nd inverse_jacobi_ns' +
' inverse_jacobi_sc inverse_jacobi_sd inverse_jacobi_sn invert invert_by_adjoint' +
' invert_by_lu inv_mod irr is is_biconnected is_bipartite is_connected is_digraph' +
' is_edge_in_graph is_graph is_graph_or_digraph ishow is_isomorphic isolate' +
' isomorphism is_planar isqrt isreal_p is_sconnected is_tree is_vertex_in_graph' +
' items_inference %j j0 j1 jacobi jacobian jacobi_cd jacobi_cn jacobi_cs jacobi_dc' +
' jacobi_dn jacobi_ds jacobi_nc jacobi_nd jacobi_ns jacobi_p jacobi_sc jacobi_sd' +
' jacobi_sn JF jn join jordan julia julia_set julia_sin %k kdels kdelta kill' +
' killcontext kostka kron_delta kronecker_product kummer_m kummer_u kurtosis' +
' kurtosis_bernoulli kurtosis_beta kurtosis_binomial kurtosis_chi2 kurtosis_continuous_uniform' +
' kurtosis_discrete_uniform kurtosis_exp kurtosis_f kurtosis_gamma kurtosis_general_finite_discrete' +
' kurtosis_geometric kurtosis_gumbel kurtosis_hypergeometric kurtosis_laplace' +
' kurtosis_logistic kurtosis_lognormal kurtosis_negative_binomial kurtosis_noncentral_chi2' +
' kurtosis_noncentral_student_t kurtosis_normal kurtosis_pareto kurtosis_poisson' +
' kurtosis_rayleigh kurtosis_student_t kurtosis_weibull label labels lagrange' +
' laguerre lambda lambert_w laplace laplacian_matrix last lbfgs lc2kdt lcharp' +
' lc_l lcm lc_u ldefint ldisp ldisplay legendre_p legendre_q leinstein length' +
' let letrules letsimp levi_civita lfreeof lgtreillis lhs li liediff limit' +
' Lindstedt linear linearinterpol linear_program linear_regression line_graph' +
' linsolve listarray list_correlations listify list_matrix_entries list_nc_monomials' +
' listoftens listofvars listp lmax lmin load loadfile local locate_matrix_entry' +
' log logcontract log_gamma lopow lorentz_gauge lowercasep lpart lratsubst' +
' lreduce lriemann lsquares_estimates lsquares_estimates_approximate lsquares_estimates_exact' +
' lsquares_mse lsquares_residual_mse lsquares_residuals lsum ltreillis lu_backsub' +
' lucas lu_factor %m macroexpand macroexpand1 make_array makebox makefact makegamma' +
' make_graph make_level_picture makelist makeOrders make_poly_continent make_poly_country' +
' make_polygon make_random_state make_rgb_picture makeset make_string_input_stream' +
' make_string_output_stream make_transform mandelbrot mandelbrot_set map mapatom' +
' maplist matchdeclare matchfix mat_cond mat_fullunblocker mat_function mathml_display' +
' mat_norm matrix matrixmap matrixp matrix_size mattrace mat_trace mat_unblocker' +
' max max_clique max_degree max_flow maximize_lp max_independent_set max_matching' +
' maybe md5sum mean mean_bernoulli mean_beta mean_binomial mean_chi2 mean_continuous_uniform' +
' mean_deviation mean_discrete_uniform mean_exp mean_f mean_gamma mean_general_finite_discrete' +
' mean_geometric mean_gumbel mean_hypergeometric mean_laplace mean_logistic' +
' mean_lognormal mean_negative_binomial mean_noncentral_chi2 mean_noncentral_student_t' +
' mean_normal mean_pareto mean_poisson mean_rayleigh mean_student_t mean_weibull' +
' median median_deviation member mesh metricexpandall mgf1_sha1 min min_degree' +
' min_edge_cut minfactorial minimalPoly minimize_lp minimum_spanning_tree minor' +
' minpack_lsquares minpack_solve min_vertex_cover min_vertex_cut mkdir mnewton' +
' mod mode_declare mode_identity ModeMatrix moebius mon2schur mono monomial_dimensions' +
' multibernstein_poly multi_display_for_texinfo multi_elem multinomial multinomial_coeff' +
' multi_orbit multiplot_mode multi_pui multsym multthru mycielski_graph nary' +
' natural_unit nc_degree ncexpt ncharpoly negative_picture neighbors new newcontext' +
' newdet new_graph newline newton new_variable next_prime nicedummies niceindices' +
' ninth nofix nonarray noncentral_moment nonmetricity nonnegintegerp nonscalarp' +
' nonzeroandfreeof notequal nounify nptetrad npv nroots nterms ntermst' +
' nthroot nullity nullspace num numbered_boundaries numberp number_to_octets' +
' num_distinct_partitions numerval numfactor num_partitions nusum nzeta nzetai' +
' nzetar octets_to_number octets_to_oid odd_girth oddp ode2 ode_check odelin' +
' oid_to_octets op opena opena_binary openr openr_binary openw openw_binary' +
' operatorp opsubst optimize %or orbit orbits ordergreat ordergreatp orderless' +
' orderlessp orthogonal_complement orthopoly_recur orthopoly_weight outermap' +
' out_neighbors outofpois pade parabolic_cylinder_d parametric parametric_surface' +
' parg parGosper parse_string parse_timedate part part2cont partfrac partition' +
' partition_set partpol path_digraph path_graph pathname_directory pathname_name' +
' pathname_type pdf_bernoulli pdf_beta pdf_binomial pdf_cauchy pdf_chi2 pdf_continuous_uniform' +
' pdf_discrete_uniform pdf_exp pdf_f pdf_gamma pdf_general_finite_discrete' +
' pdf_geometric pdf_gumbel pdf_hypergeometric pdf_laplace pdf_logistic pdf_lognormal' +
' pdf_negative_binomial pdf_noncentral_chi2 pdf_noncentral_student_t pdf_normal' +
' pdf_pareto pdf_poisson pdf_rank_sum pdf_rayleigh pdf_signed_rank pdf_student_t' +
' pdf_weibull pearson_skewness permanent permut permutation permutations petersen_graph' +
' petrov pickapart picture_equalp picturep piechart piechart_description planar_embedding' +
' playback plog plot2d plot3d plotdf ploteq plsquares pochhammer points poisdiff' +
' poisexpt poisint poismap poisplus poissimp poissubst poistimes poistrim polar' +
' polarform polartorect polar_to_xy poly_add poly_buchberger poly_buchberger_criterion' +
' poly_colon_ideal poly_content polydecomp poly_depends_p poly_elimination_ideal' +
' poly_exact_divide poly_expand poly_expt poly_gcd polygon poly_grobner poly_grobner_equal' +
' poly_grobner_member poly_grobner_subsetp poly_ideal_intersection poly_ideal_polysaturation' +
' poly_ideal_polysaturation1 poly_ideal_saturation poly_ideal_saturation1 poly_lcm' +
' poly_minimization polymod poly_multiply polynome2ele polynomialp poly_normal_form' +
' poly_normalize poly_normalize_list poly_polysaturation_extension poly_primitive_part' +
' poly_pseudo_divide poly_reduced_grobner poly_reduction poly_saturation_extension' +
' poly_s_polynomial poly_subtract polytocompanion pop postfix potential power_mod' +
' powerseries powerset prefix prev_prime primep primes principal_components' +
' print printf printfile print_graph printpois printprops prodrac product properties' +
' propvars psi psubst ptriangularize pui pui2comp pui2ele pui2polynome pui_direct' +
' puireduc push put pv qput qrange qty quad_control quad_qag quad_qagi quad_qagp' +
' quad_qags quad_qawc quad_qawf quad_qawo quad_qaws quadrilateral quantile' +
' quantile_bernoulli quantile_beta quantile_binomial quantile_cauchy quantile_chi2' +
' quantile_continuous_uniform quantile_discrete_uniform quantile_exp quantile_f' +
' quantile_gamma quantile_general_finite_discrete quantile_geometric quantile_gumbel' +
' quantile_hypergeometric quantile_laplace quantile_logistic quantile_lognormal' +
' quantile_negative_binomial quantile_noncentral_chi2 quantile_noncentral_student_t' +
' quantile_normal quantile_pareto quantile_poisson quantile_rayleigh quantile_student_t' +
' quantile_weibull quartile_skewness quit qunit quotient racah_v racah_w radcan' +
' radius random random_bernoulli random_beta random_binomial random_bipartite_graph' +
' random_cauchy random_chi2 random_continuous_uniform random_digraph random_discrete_uniform' +
' random_exp random_f random_gamma random_general_finite_discrete random_geometric' +
' random_graph random_graph1 random_gumbel random_hypergeometric random_laplace' +
' random_logistic random_lognormal random_negative_binomial random_network' +
' random_noncentral_chi2 random_noncentral_student_t random_normal random_pareto' +
' random_permutation random_poisson random_rayleigh random_regular_graph random_student_t' +
' random_tournament random_tree random_weibull range rank rat ratcoef ratdenom' +
' ratdiff ratdisrep ratexpand ratinterpol rational rationalize ratnumer ratnump' +
' ratp ratsimp ratsubst ratvars ratweight read read_array read_binary_array' +
' read_binary_list read_binary_matrix readbyte readchar read_hashed_array readline' +
' read_list read_matrix read_nested_list readonly read_xpm real_imagpart_to_conjugate' +
' realpart realroots rearray rectangle rectform rectform_log_if_constant recttopolar' +
' rediff reduce_consts reduce_order region region_boundaries region_boundaries_plus' +
' rem remainder remarray rembox remcomps remcon remcoord remfun remfunction' +
' remlet remove remove_constvalue remove_dimensions remove_edge remove_fundamental_dimensions' +
' remove_fundamental_units remove_plot_option remove_vertex rempart remrule' +
' remsym remvalue rename rename_file reset reset_displays residue resolvante' +
' resolvante_alternee1 resolvante_bipartite resolvante_diedrale resolvante_klein' +
' resolvante_klein3 resolvante_produit_sym resolvante_unitaire resolvante_vierer' +
' rest resultant return reveal reverse revert revert2 rgb2level rhs ricci riemann' +
' rinvariant risch rk rmdir rncombine romberg room rootscontract round row' +
' rowop rowswap rreduce run_testsuite %s save saving scalarp scaled_bessel_i' +
' scaled_bessel_i0 scaled_bessel_i1 scalefactors scanmap scatterplot scatterplot_description' +
' scene schur2comp sconcat scopy scsimp scurvature sdowncase sec sech second' +
' sequal sequalignore set_alt_display setdifference set_draw_defaults set_edge_weight' +
' setelmx setequalp setify setp set_partitions set_plot_option set_prompt set_random_state' +
' set_tex_environment set_tex_environment_default setunits setup_autoload set_up_dot_simplifications' +
' set_vertex_label seventh sexplode sf sha1sum sha256sum shortest_path shortest_weighted_path' +
' show showcomps showratvars sierpinskiale sierpinskimap sign signum similaritytransform' +
' simp_inequality simplify_sum simplode simpmetderiv simtran sin sinh sinsert' +
' sinvertcase sixth skewness skewness_bernoulli skewness_beta skewness_binomial' +
' skewness_chi2 skewness_continuous_uniform skewness_discrete_uniform skewness_exp' +
' skewness_f skewness_gamma skewness_general_finite_discrete skewness_geometric' +
' skewness_gumbel skewness_hypergeometric skewness_laplace skewness_logistic' +
' skewness_lognormal skewness_negative_binomial skewness_noncentral_chi2 skewness_noncentral_student_t' +
' skewness_normal skewness_pareto skewness_poisson skewness_rayleigh skewness_student_t' +
' skewness_weibull slength smake small_rhombicosidodecahedron_graph small_rhombicuboctahedron_graph' +
' smax smin smismatch snowmap snub_cube_graph snub_dodecahedron_graph solve' +
' solve_rec solve_rec_rat some somrac sort sparse6_decode sparse6_encode sparse6_export' +
' sparse6_import specint spherical spherical_bessel_j spherical_bessel_y spherical_hankel1' +
' spherical_hankel2 spherical_harmonic spherical_to_xyz splice split sposition' +
' sprint sqfr sqrt sqrtdenest sremove sremovefirst sreverse ssearch ssort sstatus' +
' ssubst ssubstfirst staircase standardize standardize_inverse_trig starplot' +
' starplot_description status std std1 std_bernoulli std_beta std_binomial' +
' std_chi2 std_continuous_uniform std_discrete_uniform std_exp std_f std_gamma' +
' std_general_finite_discrete std_geometric std_gumbel std_hypergeometric std_laplace' +
' std_logistic std_lognormal std_negative_binomial std_noncentral_chi2 std_noncentral_student_t' +
' std_normal std_pareto std_poisson std_rayleigh std_student_t std_weibull' +
' stemplot stirling stirling1 stirling2 strim striml strimr string stringout' +
' stringp strong_components struve_h struve_l sublis sublist sublist_indices' +
' submatrix subsample subset subsetp subst substinpart subst_parallel substpart' +
' substring subvar subvarp sum sumcontract summand_to_rec supcase supcontext' +
' symbolp symmdifference symmetricp system take_channel take_inference tan' +
' tanh taylor taylorinfo taylorp taylor_simplifier taytorat tcl_output tcontract' +
' tellrat tellsimp tellsimpafter tentex tenth test_mean test_means_difference' +
' test_normality test_proportion test_proportions_difference test_rank_sum' +
' test_sign test_signed_rank test_variance test_variance_ratio tex tex1 tex_display' +
' texput %th third throw time timedate timer timer_info tldefint tlimit todd_coxeter' +
' toeplitz tokens to_lisp topological_sort to_poly to_poly_solve totaldisrep' +
' totalfourier totient tpartpol trace tracematrix trace_options transform_sample' +
' translate translate_file transpose treefale tree_reduce treillis treinat' +
' triangle triangularize trigexpand trigrat trigreduce trigsimp trunc truncate' +
' truncated_cube_graph truncated_dodecahedron_graph truncated_icosahedron_graph' +
' truncated_tetrahedron_graph tr_warnings_get tube tutte_graph ueivects uforget' +
' ultraspherical underlying_graph undiff union unique uniteigenvectors unitp' +
' units unit_step unitvector unorder unsum untellrat untimer' +
' untrace uppercasep uricci uriemann uvect vandermonde_matrix var var1 var_bernoulli' +
' var_beta var_binomial var_chi2 var_continuous_uniform var_discrete_uniform' +
' var_exp var_f var_gamma var_general_finite_discrete var_geometric var_gumbel' +
' var_hypergeometric var_laplace var_logistic var_lognormal var_negative_binomial' +
' var_noncentral_chi2 var_noncentral_student_t var_normal var_pareto var_poisson' +
' var_rayleigh var_student_t var_weibull vector vectorpotential vectorsimp' +
' verbify vers vertex_coloring vertex_connectivity vertex_degree vertex_distance' +
' vertex_eccentricity vertex_in_degree vertex_out_degree vertices vertices_to_cycle' +
' vertices_to_path %w weyl wheel_graph wiener_index wigner_3j wigner_6j' +
' wigner_9j with_stdout write_binary_data writebyte write_data writefile wronskian' +
' xreduce xthru %y Zeilberger zeroequiv zerofor zeromatrix zeromatrixp zeta' +
' zgeev zheev zlange zn_add_table zn_carmichael_lambda zn_characteristic_factors' +
' zn_determinant zn_factor_generators zn_invert_by_lu zn_log zn_mult_table' +
' absboxchar activecontexts adapt_depth additive adim aform algebraic' +
' algepsilon algexact aliases allbut all_dotsimp_denoms allocation allsym alphabetic' +
' animation antisymmetric arrays askexp assume_pos assume_pos_pred assumescalar' +
' asymbol atomgrad atrig1 axes axis_3d axis_bottom axis_left axis_right axis_top' +
' azimuth background background_color backsubst berlefact bernstein_explicit' +
' besselexpand beta_args_sum_to_integer beta_expand bftorat bftrunc bindtest' +
' border boundaries_array box boxchar breakup %c capping cauchysum cbrange' +
' cbtics center cflength cframe_flag cnonmet_flag color color_bar color_bar_tics' +
' colorbox columns commutative complex cone context contexts contour contour_levels' +
' cosnpiflag ctaypov ctaypt ctayswitch ctayvar ct_coords ctorsion_flag ctrgsimp' +
' cube current_let_rule_package cylinder data_file_name debugmode decreasing' +
' default_let_rule_package delay dependencies derivabbrev derivsubst detout' +
' diagmetric diff dim dimensions dispflag display2d|10 display_format_internal' +
' distribute_over doallmxops domain domxexpt domxmxops domxnctimes dontfactor' +
' doscmxops doscmxplus dot0nscsimp dot0simp dot1simp dotassoc dotconstrules' +
' dotdistrib dotexptsimp dotident dotscrules draw_graph_program draw_realpart' +
' edge_color edge_coloring edge_partition edge_type edge_width %edispflag' +
' elevation %emode endphi endtheta engineering_format_floats enhanced3d %enumer' +
' epsilon_lp erfflag erf_representation errormsg error_size error_syms error_type' +
' %e_to_numlog eval even evenfun evflag evfun ev_point expandwrt_denom expintexpand' +
' expintrep expon expop exptdispflag exptisolate exptsubst facexpand facsum_combine' +
' factlim factorflag factorial_expand factors_only fb feature features' +
' file_name file_output_append file_search_demo file_search_lisp file_search_maxima|10' +
' file_search_tests file_search_usage file_type_lisp file_type_maxima|10 fill_color' +
' fill_density filled_func fixed_vertices flipflag float2bf font font_size' +
' fortindent fortspaces fpprec fpprintprec functions gamma_expand gammalim' +
' gdet genindex gensumnum GGFCFMAX GGFINFINITY globalsolve gnuplot_command' +
' gnuplot_curve_styles gnuplot_curve_titles gnuplot_default_term_command gnuplot_dumb_term_command' +
' gnuplot_file_args gnuplot_file_name gnuplot_out_file gnuplot_pdf_term_command' +
' gnuplot_pm3d gnuplot_png_term_command gnuplot_postamble gnuplot_preamble' +
' gnuplot_ps_term_command gnuplot_svg_term_command gnuplot_term gnuplot_view_args' +
' Gosper_in_Zeilberger gradefs grid grid2d grind halfangles head_angle head_both' +
' head_length head_type height hypergeometric_representation %iargs ibase' +
' icc1 icc2 icounter idummyx ieqnprint ifb ifc1 ifc2 ifg ifgi ifr iframe_bracket_form' +
' ifri igeowedge_flag ikt1 ikt2 imaginary inchar increasing infeval' +
' infinity inflag infolists inm inmc1 inmc2 intanalysis integer integervalued' +
' integrate_use_rootsof integration_constant integration_constant_counter interpolate_color' +
' intfaclim ip_grid ip_grid_in irrational isolate_wrt_times iterations itr' +
' julia_parameter %k1 %k2 keepfloat key key_pos kinvariant kt label label_alignment' +
' label_orientation labels lassociative lbfgs_ncorrections lbfgs_nfeval_max' +
' leftjust legend letrat let_rule_packages lfg lg lhospitallim limsubst linear' +
' linear_solver linechar linel|10 linenum line_type linewidth line_width linsolve_params' +
' linsolvewarn lispdisp listarith listconstvars listdummyvars lmxchar load_pathname' +
' loadprint logabs logarc logcb logconcoeffp logexpand lognegint logsimp logx' +
' logx_secondary logy logy_secondary logz lriem m1pbranch macroexpansion macros' +
' mainvar manual_demo maperror mapprint matrix_element_add matrix_element_mult' +
' matrix_element_transpose maxapplydepth maxapplyheight maxima_tempdir|10 maxima_userdir|10' +
' maxnegex MAX_ORD maxposex maxpsifracdenom maxpsifracnum maxpsinegint maxpsiposint' +
' maxtayorder mesh_lines_color method mod_big_prime mode_check_errorp' +
' mode_checkp mode_check_warnp mod_test mod_threshold modular_linear_solver' +
' modulus multiplicative multiplicities myoptions nary negdistrib negsumdispflag' +
' newline newtonepsilon newtonmaxiter nextlayerfactor niceindicespref nm nmc' +
' noeval nolabels nonegative_lp noninteger nonscalar noun noundisp nouns np' +
' npi nticks ntrig numer numer_pbranch obase odd oddfun opacity opproperties' +
' opsubst optimprefix optionset orientation origin orthopoly_returns_intervals' +
' outative outchar packagefile palette partswitch pdf_file pfeformat phiresolution' +
' %piargs piece pivot_count_sx pivot_max_sx plot_format plot_options plot_realpart' +
' png_file pochhammer_max_index points pointsize point_size points_joined point_type' +
' poislim poisson poly_coefficient_ring poly_elimination_order polyfactor poly_grobner_algorithm' +
' poly_grobner_debug poly_monomial_order poly_primary_elimination_order poly_return_term_list' +
' poly_secondary_elimination_order poly_top_reduction_only posfun position' +
' powerdisp pred prederror primep_number_of_tests product_use_gamma program' +
' programmode promote_float_to_bigfloat prompt proportional_axes props psexpand' +
' ps_file radexpand radius radsubstflag rassociative ratalgdenom ratchristof' +
' ratdenomdivide rateinstein ratepsilon ratfac rational ratmx ratprint ratriemann' +
' ratsimpexpons ratvarswitch ratweights ratweyl ratwtlvl real realonly redraw' +
' refcheck resolution restart resultant ric riem rmxchar %rnum_list rombergabs' +
' rombergit rombergmin rombergtol rootsconmode rootsepsilon run_viewer same_xy' +
' same_xyz savedef savefactors scalar scalarmatrixp scale scale_lp setcheck' +
' setcheckbreak setval show_edge_color show_edges show_edge_type show_edge_width' +
' show_id show_label showtime show_vertex_color show_vertex_size show_vertex_type' +
' show_vertices show_weight simp simplified_output simplify_products simpproduct' +
' simpsum sinnpiflag solvedecomposes solveexplicit solvefactors solvenullwarn' +
' solveradcan solvetrigwarn space sparse sphere spring_embedding_depth sqrtdispflag' +
' stardisp startphi starttheta stats_numer stringdisp structures style sublis_apply_lambda' +
' subnumsimp sumexpand sumsplitfact surface surface_hide svg_file symmetric' +
' tab taylordepth taylor_logexpand taylor_order_coefficients taylor_truncate_polynomials' +
' tensorkill terminal testsuite_files thetaresolution timer_devalue title tlimswitch' +
' tr track transcompile transform transform_xy translate_fast_arrays transparent' +
' transrun tr_array_as_ref tr_bound_function_applyp tr_file_tty_messagesp tr_float_can_branch_complex' +
' tr_function_call_default trigexpandplus trigexpandtimes triginverses trigsign' +
' trivial_solutions tr_numer tr_optimize_max_loop tr_semicompile tr_state_vars' +
' tr_warn_bad_function_calls tr_warn_fexpr tr_warn_meval tr_warn_mode' +
' tr_warn_undeclared tr_warn_undefined_variable tstep ttyoff tube_extremes' +
' ufg ug %unitexpand unit_vectors uric uriem use_fast_arrays user_preamble' +
' usersetunits values vect_cross verbose vertex_color vertex_coloring vertex_partition' +
' vertex_size vertex_type view warnings weyl width windowname windowtitle wired_surface' +
' wireframe xaxis xaxis_color xaxis_secondary xaxis_type xaxis_width xlabel' +
' xlabel_secondary xlength xrange xrange_secondary xtics xtics_axis xtics_rotate' +
' xtics_rotate_secondary xtics_secondary xtics_secondary_axis xu_grid x_voxel' +
' xy_file xyplane xy_scale yaxis yaxis_color yaxis_secondary yaxis_type yaxis_width' +
' ylabel ylabel_secondary ylength yrange yrange_secondary ytics ytics_axis' +
' ytics_rotate ytics_rotate_secondary ytics_secondary ytics_secondary_axis' +
' yv_grid y_voxel yx_ratio zaxis zaxis_color zaxis_type zaxis_width zeroa zerob' +
' zerobern zeta%pi zlabel zlabel_rotate zlength zmin zn_primroot_limit zn_primroot_pretest';
const SYMBOLS = '_ __ %|0 %%|0';

@@ -375,3 +377,3 @@ return {

built_in: BUILTIN_FUNCTIONS,
symbol: SYMBOLS,
symbol: SYMBOLS
},

@@ -383,3 +385,3 @@ contains: [

end: '\\*/',
contains: ['self']
contains: [ 'self' ]
},

@@ -394,3 +396,3 @@ hljs.QUOTE_STRING_MODE,

// hmm, I wonder if we ought to include other exponent markers?
begin: '\\b(\\d+|\\d+\\.|\\.\\d+|\\d+\\.\\d+)[Ee][-+]?\\d+\\b',
begin: '\\b(\\d+|\\d+\\.|\\.\\d+|\\d+\\.\\d+)[Ee][-+]?\\d+\\b'
},

@@ -405,3 +407,3 @@ {

// Doesn't seem to recognize floats which start with '.'
begin: '\\b(\\.\\d+|\\d+\\.\\d+)\\b',
begin: '\\b(\\.\\d+|\\d+\\.\\d+)\\b'
},

@@ -411,3 +413,3 @@ {

// Doesn't seem to recognize integers which end with '.'
begin: '\\b(\\d+|0[0-9A-Za-z]+)\\.?\\b',
begin: '\\b(\\d+|0[0-9A-Za-z]+)\\.?\\b'
}

@@ -418,5 +420,5 @@ ]

illegal: /@/
}
};
}
module.exports = maxima;

@@ -223,4 +223,5 @@ /*

className: 'string',
begin: '`', end: '`',
contains: [hljs.BACKSLASH_ESCAPE]
begin: '`',
end: '`',
contains: [ hljs.BACKSLASH_ESCAPE ]
},

@@ -227,0 +228,0 @@ { // eats variables

@@ -9,3 +9,3 @@ /*

function mercury(hljs) {
var KEYWORDS = {
const KEYWORDS = {
keyword:

@@ -39,5 +39,5 @@ 'module use_module import_module include_module end_module initialise ' +

var COMMENT = hljs.COMMENT('%', '$');
const COMMENT = hljs.COMMENT('%', '$');
var NUMCODE = {
const NUMCODE = {
className: 'number',

@@ -47,5 +47,9 @@ begin: "0'.\\|0[box][0-9a-fA-F]*"

var ATOM = hljs.inherit(hljs.APOS_STRING_MODE, {relevance: 0});
var STRING = hljs.inherit(hljs.QUOTE_STRING_MODE, {relevance: 0});
var STRING_FMT = {
const ATOM = hljs.inherit(hljs.APOS_STRING_MODE, {
relevance: 0
});
const STRING = hljs.inherit(hljs.QUOTE_STRING_MODE, {
relevance: 0
});
const STRING_FMT = {
className: 'subst',

@@ -58,18 +62,35 @@ begin: '\\\\[abfnrtv]\\|\\\\x[0-9a-fA-F]*\\\\\\|%[-+# *.0-9]*[dioxXucsfeEgGp]',

var IMPLICATION = {
const IMPLICATION = {
className: 'built_in',
variants: [
{begin: '<=>'},
{begin: '<=', relevance: 0},
{begin: '=>', relevance: 0},
{begin: '/\\\\'},
{begin: '\\\\/'}
{
begin: '<=>'
},
{
begin: '<=',
relevance: 0
},
{
begin: '=>',
relevance: 0
},
{
begin: '/\\\\'
},
{
begin: '\\\\/'
}
]
};
var HEAD_BODY_CONJUNCTION = {
const HEAD_BODY_CONJUNCTION = {
className: 'built_in',
variants: [
{begin: ':-\\|-->'},
{begin: '=', relevance: 0}
{
begin: ':-\\|-->'
},
{
begin: '=',
relevance: 0
}
]

@@ -80,3 +101,6 @@ };

name: 'Mercury',
aliases: ['m', 'moo'],
aliases: [
'm',
'moo'
],
keywords: KEYWORDS,

@@ -92,4 +116,8 @@ contains: [

STRING,
{begin: /:-/}, // relevance booster
{begin: /\.$/} // relevance booster
{ // relevance booster
begin: /:-/
},
{ // relevance booster
begin: /\.$/
}
]

@@ -96,0 +124,0 @@ };

@@ -10,11 +10,11 @@ /*

function mipsasm(hljs) {
//local labels: %?[FB]?[AT]?\d{1,2}\w+
// local labels: %?[FB]?[AT]?\d{1,2}\w+
return {
name: 'MIPS Assembly',
case_insensitive: true,
aliases: ['mips'],
aliases: [ 'mips' ],
keywords: {
$pattern: '\\.?' + hljs.IDENT_RE,
meta:
//GNU preprocs
// GNU preprocs
'.2byte .4byte .align .ascii .asciz .balign .byte .code .data .else .end .endif .endm .endr .equ .err .exitm .extern .global .hword .if .ifdef .ifndef .include .irp .long .macro .rept .req .section .set .skip .space .text .word .ltorg ',

@@ -37,3 +37,3 @@ built_in:

className: 'keyword',
begin: '\\b('+ //mnemonics
begin: '\\b(' + // mnemonics
// 32-bit integer instructions

@@ -57,3 +57,3 @@ 'addi?u?|andi?|b(al)?|beql?|bgez(al)?l?|bgtzl?|blezl?|bltz(al)?l?|' +

'rdpgpr|sdbbp|ssnop|synci?|syscall|teqi?|tgei?u?|tlb(p|r|w[ir])|' +
'tlti?u?|tnei?|wait|wrpgpr'+
'tlti?u?|tnei?|wait|wrpgpr' +
')',

@@ -74,3 +74,4 @@ end: '\\s'

className: 'title',
begin: '\\|', end: '\\|',
begin: '\\|',
end: '\\|',
illegal: '\\n',

@@ -82,4 +83,8 @@ relevance: 0

variants: [
{begin: '0x[0-9a-f]+'}, //hex
{begin: '\\b-?\\d+'} //bare number
{ // hex
begin: '0x[0-9a-f]+'
},
{ // bare number
begin: '\\b-?\\d+'
}
],

@@ -91,5 +96,11 @@ relevance: 0

variants: [
{begin: '^\\s*[a-z_\\.\\$][a-z0-9_\\.\\$]+:'}, //GNU MIPS syntax
{begin: '^\\s*[0-9]+:'}, // numbered local labels
{begin: '[0-9]+[bf]' } // number local label reference (backwards, forwards)
{ // GNU MIPS syntax
begin: '^\\s*[a-z_\\.\\$][a-z0-9_\\.\\$]+:'
},
{ // numbered local labels
begin: '^\\s*[0-9]+:'
},
{ // number local label reference (backwards, forwards)
begin: '[0-9]+[bf]'
}
],

@@ -96,0 +107,0 @@ relevance: 0

@@ -18,8 +18,9 @@ /*

},
// mojolicious line
// mojolicious line
{
begin: "^\\s*%{1,2}={0,2}", end: '$',
begin: "^\\s*%{1,2}={0,2}",
end: '$',
subLanguage: 'perl'
},
// mojolicious block
// mojolicious block
{

@@ -26,0 +27,0 @@ begin: "<%{1,2}={0,2}",

@@ -9,4 +9,5 @@ /*

function monkey(hljs) {
var NUMBER = {
className: 'number', relevance: 0,
const NUMBER = {
className: 'number',
relevance: 0,
variants: [

@@ -46,11 +47,11 @@ {

className: 'function',
beginKeywords: 'function method', end: '[(=:]|$',
beginKeywords: 'function method',
end: '[(=:]|$',
illegal: /\n/,
contains: [
hljs.UNDERSCORE_TITLE_MODE
]
contains: [ hljs.UNDERSCORE_TITLE_MODE ]
},
{
className: 'class',
beginKeywords: 'class interface', end: '$',
beginKeywords: 'class interface',
end: '$',
contains: [

@@ -69,4 +70,7 @@ {

className: 'meta',
begin: '\\s*#', end: '$',
keywords: {'meta-keyword': 'if else elseif endif end then'}
begin: '\\s*#',
end: '$',
keywords: {
'meta-keyword': 'if else elseif endif end then'
}
},

@@ -78,4 +82,5 @@ {

{
beginKeywords: 'alias', end: '=',
contains: [hljs.UNDERSCORE_TITLE_MODE]
beginKeywords: 'alias',
end: '=',
contains: [ hljs.UNDERSCORE_TITLE_MODE ]
},

@@ -85,5 +90,5 @@ hljs.QUOTE_STRING_MODE,

]
}
};
}
module.exports = monkey;

@@ -11,3 +11,3 @@ /*

function moonscript(hljs) {
var KEYWORDS = {
const KEYWORDS = {
keyword:

@@ -25,11 +25,17 @@ // Moonscript keywords

};
var JS_IDENT_RE = '[A-Za-z$_][0-9A-Za-z$_]*';
var SUBST = {
const JS_IDENT_RE = '[A-Za-z$_][0-9A-Za-z$_]*';
const SUBST = {
className: 'subst',
begin: /#\{/, end: /\}/,
begin: /#\{/,
end: /\}/,
keywords: KEYWORDS
};
var EXPRESSIONS = [
const EXPRESSIONS = [
hljs.inherit(hljs.C_NUMBER_MODE,
{starts: {end: '(\\s*/)?', relevance: 0}}), // a number tries to eat the following slash to prevent treating it as a regexp
{
starts: {
end: '(\\s*/)?',
relevance: 0
}
}), // a number tries to eat the following slash to prevent treating it as a regexp
{

@@ -39,8 +45,13 @@ className: 'string',

{
begin: /'/, end: /'/,
contains: [hljs.BACKSLASH_ESCAPE]
begin: /'/,
end: /'/,
contains: [ hljs.BACKSLASH_ESCAPE ]
},
{
begin: /"/, end: /"/,
contains: [hljs.BACKSLASH_ESCAPE, SUBST]
begin: /"/,
end: /"/,
contains: [
hljs.BACKSLASH_ESCAPE,
SUBST
]
}

@@ -62,14 +73,20 @@ ]

var TITLE = hljs.inherit(hljs.TITLE_MODE, {begin: JS_IDENT_RE});
var PARAMS_RE = '(\\(.*\\))?\\s*\\B[-=]>';
var PARAMS = {
const TITLE = hljs.inherit(hljs.TITLE_MODE, {
begin: JS_IDENT_RE
});
const PARAMS_RE = '(\\(.*\\))?\\s*\\B[-=]>';
const PARAMS = {
className: 'params',
begin: '\\([^\\(]', returnBegin: true,
begin: '\\([^\\(]',
returnBegin: true,
/* We need another contained nameless mode to not have every nested
pair of parens to be called "params" */
contains: [{
begin: /\(/, end: /\)/,
keywords: KEYWORDS,
contains: ['self'].concat(EXPRESSIONS)
}]
contains: [
{
begin: /\(/,
end: /\)/,
keywords: KEYWORDS,
contains: [ 'self' ].concat(EXPRESSIONS)
}
]
};

@@ -79,3 +96,3 @@

name: 'MoonScript',
aliases: ['moon'],
aliases: [ 'moon' ],
keywords: KEYWORDS,

@@ -86,6 +103,10 @@ illegal: /\/\*/,

{
className: 'function', // function: -> =>
begin: '^\\s*' + JS_IDENT_RE + '\\s*=\\s*' + PARAMS_RE, end: '[-=]>',
className: 'function', // function: -> =>
begin: '^\\s*' + JS_IDENT_RE + '\\s*=\\s*' + PARAMS_RE,
end: '[-=]>',
returnBegin: true,
contains: [TITLE, PARAMS]
contains: [
TITLE,
PARAMS
]
},

@@ -98,5 +119,6 @@ {

className: 'function',
begin: PARAMS_RE, end: '[-=]>',
begin: PARAMS_RE,
end: '[-=]>',
returnBegin: true,
contains: [PARAMS]
contains: [ PARAMS ]
}

@@ -115,3 +137,3 @@ ]

illegal: /[:="\[\]]/,
contains: [TITLE]
contains: [ TITLE ]
},

@@ -122,5 +144,7 @@ TITLE

{
className: 'name', // table
begin: JS_IDENT_RE + ':', end: ':',
returnBegin: true, returnEnd: true,
className: 'name', // table
begin: JS_IDENT_RE + ':',
end: ':',
returnBegin: true,
returnEnd: true,
relevance: 0

@@ -127,0 +151,0 @@ }

@@ -10,11 +10,18 @@ /*

function nginx(hljs) {
var VAR = {
const VAR = {
className: 'variable',
variants: [
{begin: /\$\d+/},
{begin: /\$\{/, end: /\}/},
{begin: /[$@]/ + hljs.UNDERSCORE_IDENT_RE}
{
begin: /\$\d+/
},
{
begin: /\$\{/,
end: /\}/
},
{
begin: /[$@]/ + hljs.UNDERSCORE_IDENT_RE
}
]
};
var DEFAULT = {
const DEFAULT = {
endsWithParent: true,

@@ -33,6 +40,15 @@ keywords: {

className: 'string',
contains: [hljs.BACKSLASH_ESCAPE, VAR],
contains: [
hljs.BACKSLASH_ESCAPE,
VAR
],
variants: [
{begin: /"/, end: /"/},
{begin: /'/, end: /'/}
{
begin: /"/,
end: /"/
},
{
begin: /'/,
end: /'/
}
]

@@ -42,16 +58,34 @@ },

{
begin: '([a-z]+):/', end: '\\s', endsWithParent: true, excludeEnd: true,
contains: [VAR]
begin: '([a-z]+):/',
end: '\\s',
endsWithParent: true,
excludeEnd: true,
contains: [ VAR ]
},
{
className: 'regexp',
contains: [hljs.BACKSLASH_ESCAPE, VAR],
contains: [
hljs.BACKSLASH_ESCAPE,
VAR
],
variants: [
{begin: "\\s\\^", end: "\\s|\\{|;", returnEnd: true},
{
begin: "\\s\\^",
end: "\\s|\\{|;",
returnEnd: true
},
// regexp locations (~, ~*)
{begin: "~\\*?\\s+", end: "\\s|\\{|;", returnEnd: true},
{
begin: "~\\*?\\s+",
end: "\\s|\\{|;",
returnEnd: true
},
// *.example.com
{begin: "\\*(\\.[a-z\\-]+)+"},
{
begin: "\\*(\\.[a-z\\-]+)+"
},
// sub.example.*
{begin: "([a-z\\-]+\\.)+\\*"}
{
begin: "([a-z\\-]+\\.)+\\*"
}
]

@@ -76,7 +110,8 @@ },

name: 'Nginx config',
aliases: ['nginxconf'],
aliases: [ 'nginxconf' ],
contains: [
hljs.HASH_COMMENT_MODE,
{
begin: hljs.UNDERSCORE_IDENT_RE + '\\s+\\{', returnBegin: true,
begin: hljs.UNDERSCORE_IDENT_RE + '\\s+\\{',
returnBegin: true,
end: /\{/,

@@ -92,3 +127,5 @@ contains: [

{
begin: hljs.UNDERSCORE_IDENT_RE + '\\s', end: ';|\\{', returnBegin: true,
begin: hljs.UNDERSCORE_IDENT_RE + '\\s',
end: ';|\\{',
returnBegin: true,
contains: [

@@ -95,0 +132,0 @@ {

@@ -11,3 +11,3 @@ /*

name: 'Nim',
aliases: ['nim'],
aliases: [ 'nim' ],
keywords: {

@@ -30,3 +30,4 @@ keyword:

},
contains: [ {
contains: [
{
className: 'meta', // Actually pragma

@@ -36,8 +37,14 @@ begin: /\{\./,

relevance: 10
}, {
},
{
className: 'string',
begin: /[a-zA-Z]\w*"/,
end: /"/,
contains: [{begin: /""/}]
}, {
contains: [
{
begin: /""/
}
]
},
{
className: 'string',

@@ -52,10 +59,19 @@ begin: /([a-zA-Z]\w*)?"""/,

relevance: 0
}, {
},
{
className: 'number',
relevance: 0,
variants: [
{begin: /\b(0[xX][0-9a-fA-F][_0-9a-fA-F]*)('?[iIuU](8|16|32|64))?/},
{begin: /\b(0o[0-7][_0-7]*)('?[iIuUfF](8|16|32|64))?/},
{begin: /\b(0(b|B)[01][_01]*)('?[iIuUfF](8|16|32|64))?/},
{begin: /\b(\d[_\d]*)('?[iIuUfF](8|16|32|64))?/}
{
begin: /\b(0[xX][0-9a-fA-F][_0-9a-fA-F]*)('?[iIuU](8|16|32|64))?/
},
{
begin: /\b(0o[0-7][_0-7]*)('?[iIuUfF](8|16|32|64))?/
},
{
begin: /\b(0(b|B)[01][_01]*)('?[iIuUfF](8|16|32|64))?/
},
{
begin: /\b(\d[_\d]*)('?[iIuUfF](8|16|32|64))?/
}
]

@@ -65,5 +81,5 @@ },

]
}
};
}
module.exports = nim;

@@ -8,5 +8,4 @@ /*

function nix(hljs) {
var NIX_KEYWORDS = {
const NIX_KEYWORDS = {
keyword:

@@ -20,3 +19,3 @@ 'rec with let in inherit assert if else then',

};
var ANTIQUOTE = {
const ANTIQUOTE = {
className: 'subst',

@@ -27,4 +26,5 @@ begin: /\$\{/,

};
var ATTRS = {
begin: /[a-zA-Z0-9-_]+(\s*=)/, returnBegin: true,
const ATTRS = {
begin: /[a-zA-Z0-9-_]+(\s*=)/,
returnBegin: true,
relevance: 0,

@@ -38,11 +38,17 @@ contains: [

};
var STRING = {
const STRING = {
className: 'string',
contains: [ANTIQUOTE],
contains: [ ANTIQUOTE ],
variants: [
{begin: "''", end: "''"},
{begin: '"', end: '"'}
{
begin: "''",
end: "''"
},
{
begin: '"',
end: '"'
}
]
};
var EXPRESSIONS = [
const EXPRESSIONS = [
hljs.NUMBER_MODE,

@@ -57,3 +63,3 @@ hljs.HASH_COMMENT_MODE,

name: 'Nix',
aliases: ["nixos"],
aliases: [ "nixos" ],
keywords: NIX_KEYWORDS,

@@ -60,0 +66,0 @@ contains: EXPRESSIONS

@@ -10,24 +10,29 @@ /*

function nodeRepl(hljs) {
return {
name: 'Node REPL',
contains: [
{
className: 'meta',
return {
name: 'Node REPL',
contains: [
{
className: 'meta',
starts: {
// a space separates the REPL prefix from the actual code
// this is purely for cleaner HTML output
end: / |$/,
starts: {
// a space separates the REPL prefix from the actual code
// this is purely for cleaner HTML output
end: / |$/,
starts: {
end: '$', subLanguage: 'javascript'
}
end: '$',
subLanguage: 'javascript'
}
},
variants: [
{
begin: /^>(?=[ ]|$)/
},
variants: [
{ begin: /^>(?=[ ]|$)/ },
{ begin: /^\.\.\.(?=[ ]|$)/ }
]
},
]
}
}
{
begin: /^\.\.\.(?=[ ]|$)/
}
]
}
]
};
}
module.exports = nodeRepl;

@@ -9,3 +9,3 @@ /*

function nsis(hljs) {
var CONSTANTS = {
const CONSTANTS = {
className: 'variable',

@@ -15,3 +15,3 @@ begin: /\$(ADMINTOOLS|APPDATA|CDBURN_AREA|CMDLINE|COMMONFILES32|COMMONFILES64|COMMONFILES|COOKIES|DESKTOP|DOCUMENTS|EXEDIR|EXEFILE|EXEPATH|FAVORITES|FONTS|HISTORY|HWNDPARENT|INSTDIR|INTERNET_CACHE|LANGUAGE|LOCALAPPDATA|MUSIC|NETHOOD|OUTDIR|PICTURES|PLUGINSDIR|PRINTHOOD|PROFILE|PROGRAMFILES32|PROGRAMFILES64|PROGRAMFILES|QUICKLAUNCH|RECENT|RESOURCES_LOCALIZED|RESOURCES|SENDTO|SMPROGRAMS|SMSTARTUP|STARTMENU|SYSDIR|TEMP|TEMPLATES|VIDEOS|WINDIR)/

var DEFINES = {
const DEFINES = {
// ${defines}

@@ -22,3 +22,3 @@ className: 'variable',

var VARIABLES = {
const VARIABLES = {
// $variables

@@ -30,3 +30,3 @@ className: 'variable',

var LANGUAGES = {
const LANGUAGES = {
// $(language_strings)

@@ -37,3 +37,3 @@ className: 'variable',

var PARAMETERS = {
const PARAMETERS = {
// command parameters

@@ -44,3 +44,3 @@ className: 'params',

var COMPILER = {
const COMPILER = {
// !compiler_flags

@@ -51,3 +51,3 @@ className: 'keyword',

var METACHARS = {
const METACHARS = {
// $\n, $\r, $\t, $$

@@ -58,3 +58,3 @@ className: 'meta',

var PLUGINS = {
const PLUGINS = {
// plug::ins

@@ -65,23 +65,26 @@ className: 'class',

var STRING = {
className: 'string',
variants: [
{
begin: '"', end: '"'
},
{
begin: '\'', end: '\''
},
{
begin: '`', end: '`'
}
],
illegal: /\n/,
contains: [
METACHARS,
CONSTANTS,
DEFINES,
VARIABLES,
LANGUAGES
]
const STRING = {
className: 'string',
variants: [
{
begin: '"',
end: '"'
},
{
begin: '\'',
end: '\''
},
{
begin: '`',
end: '`'
}
],
illegal: /\n/,
contains: [
METACHARS,
CONSTANTS,
DEFINES,
VARIABLES,
LANGUAGES
]
};

@@ -110,3 +113,4 @@

className: 'function',
beginKeywords: 'Function PageEx Section SectionGroup', end: '$'
beginKeywords: 'Function PageEx Section SectionGroup',
end: '$'
},

@@ -113,0 +117,0 @@ STRING,

@@ -10,8 +10,8 @@ /*

function objectivec(hljs) {
var API_CLASS = {
const API_CLASS = {
className: 'built_in',
begin: '\\b(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)\\w+',
begin: '\\b(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)\\w+'
};
var IDENTIFIER_RE = /[a-zA-Z@][a-zA-Z0-9_]*/;
var OBJC_KEYWORDS = {
const IDENTIFIER_RE = /[a-zA-Z@][a-zA-Z0-9_]*/;
const OBJC_KEYWORDS = {
$pattern: IDENTIFIER_RE,

@@ -46,3 +46,3 @@ keyword:

};
var CLASS_KEYWORDS = {
const CLASS_KEYWORDS = {
$pattern: IDENTIFIER_RE,

@@ -53,3 +53,9 @@ keyword: '@interface @class @protocol @implementation'

name: 'Objective-C',
aliases: ['mm', 'objc', 'obj-c', 'obj-c++', 'objective-c++'],
aliases: [
'mm',
'objc',
'obj-c',
'obj-c++',
'objective-c++'
],
keywords: OBJC_KEYWORDS,

@@ -68,5 +74,6 @@ illegal: '</',

{
begin: '@"', end: '"',
begin: '@"',
end: '"',
illegal: '\\n',
contains: [hljs.BACKSLASH_ESCAPE]
contains: [ hljs.BACKSLASH_ESCAPE ]
}

@@ -77,3 +84,4 @@ ]

className: 'meta',
begin: /#\s*[a-z]+\b/, end: /$/,
begin: /#\s*[a-z]+\b/,
end: /$/,
keywords: {

@@ -86,9 +94,13 @@ 'meta-keyword':

{
begin: /\\\n/, relevance: 0
begin: /\\\n/,
relevance: 0
},
hljs.inherit(hljs.QUOTE_STRING_MODE, {className: 'meta-string'}),
hljs.inherit(hljs.QUOTE_STRING_MODE, {
className: 'meta-string'
}),
{
className: 'meta-string',
begin: /<.*?>/, end: /$/,
illegal: '\\n',
begin: /<.*?>/,
end: /$/,
illegal: '\\n'
},

@@ -101,10 +113,10 @@ hljs.C_LINE_COMMENT_MODE,

className: 'class',
begin: '(' + CLASS_KEYWORDS.keyword.split(' ').join('|') + ')\\b', end: /(\{|$)/, excludeEnd: true,
begin: '(' + CLASS_KEYWORDS.keyword.split(' ').join('|') + ')\\b',
end: /(\{|$)/,
excludeEnd: true,
keywords: CLASS_KEYWORDS,
contains: [
hljs.UNDERSCORE_TITLE_MODE
]
contains: [ hljs.UNDERSCORE_TITLE_MODE ]
},
{
begin: '\\.'+hljs.UNDERSCORE_IDENT_RE,
begin: '\\.' + hljs.UNDERSCORE_IDENT_RE,
relevance: 0

@@ -111,0 +123,0 @@ }

@@ -10,59 +10,73 @@ /*

function openscad(hljs) {
var SPECIAL_VARS = {
className: 'keyword',
begin: '\\$(f[asn]|t|vp[rtd]|children)'
},
LITERALS = {
className: 'literal',
begin: 'false|true|PI|undef'
},
NUMBERS = {
className: 'number',
begin: '\\b\\d+(\\.\\d+)?(e-?\\d+)?', //adds 1e5, 1e-10
relevance: 0
},
STRING = hljs.inherit(hljs.QUOTE_STRING_MODE,{illegal: null}),
PREPRO = {
className: 'meta',
keywords: {'meta-keyword': 'include use'},
begin: 'include|use <',
end: '>'
},
PARAMS = {
className: 'params',
begin: '\\(', end: '\\)',
contains: ['self', NUMBERS, STRING, SPECIAL_VARS, LITERALS]
},
MODIFIERS = {
begin: '[*!#%]',
relevance: 0
},
FUNCTIONS = {
className: 'function',
beginKeywords: 'module function',
end: /=|\{/,
contains: [PARAMS, hljs.UNDERSCORE_TITLE_MODE]
};
const SPECIAL_VARS = {
className: 'keyword',
begin: '\\$(f[asn]|t|vp[rtd]|children)'
};
const LITERALS = {
className: 'literal',
begin: 'false|true|PI|undef'
};
const NUMBERS = {
className: 'number',
begin: '\\b\\d+(\\.\\d+)?(e-?\\d+)?', // adds 1e5, 1e-10
relevance: 0
};
const STRING = hljs.inherit(hljs.QUOTE_STRING_MODE, {
illegal: null
});
const PREPRO = {
className: 'meta',
keywords: {
'meta-keyword': 'include use'
},
begin: 'include|use <',
end: '>'
};
const PARAMS = {
className: 'params',
begin: '\\(',
end: '\\)',
contains: [
'self',
NUMBERS,
STRING,
SPECIAL_VARS,
LITERALS
]
};
const MODIFIERS = {
begin: '[*!#%]',
relevance: 0
};
const FUNCTIONS = {
className: 'function',
beginKeywords: 'module function',
end: /=|\{/,
contains: [
PARAMS,
hljs.UNDERSCORE_TITLE_MODE
]
};
return {
name: 'OpenSCAD',
aliases: ['scad'],
keywords: {
keyword: 'function module include use for intersection_for if else \\%',
literal: 'false true PI undef',
built_in: 'circle square polygon text sphere cube cylinder polyhedron translate rotate scale resize mirror multmatrix color offset hull minkowski union difference intersection abs sign sin cos tan acos asin atan atan2 floor round ceil ln log pow sqrt exp rands min max concat lookup str chr search version version_num norm cross parent_module echo import import_dxf dxf_linear_extrude linear_extrude rotate_extrude surface projection render children dxf_cross dxf_dim let assign'
},
contains: [
hljs.C_LINE_COMMENT_MODE,
hljs.C_BLOCK_COMMENT_MODE,
NUMBERS,
PREPRO,
STRING,
SPECIAL_VARS,
MODIFIERS,
FUNCTIONS
]
}
return {
name: 'OpenSCAD',
aliases: [ 'scad' ],
keywords: {
keyword: 'function module include use for intersection_for if else \\%',
literal: 'false true PI undef',
built_in: 'circle square polygon text sphere cube cylinder polyhedron translate rotate scale resize mirror multmatrix color offset hull minkowski union difference intersection abs sign sin cos tan acos asin atan atan2 floor round ceil ln log pow sqrt exp rands min max concat lookup str chr search version version_num norm cross parent_module echo import import_dxf dxf_linear_extrude linear_extrude rotate_extrude surface projection render children dxf_cross dxf_dim let assign'
},
contains: [
hljs.C_LINE_COMMENT_MODE,
hljs.C_BLOCK_COMMENT_MODE,
NUMBERS,
PREPRO,
STRING,
SPECIAL_VARS,
MODIFIERS,
FUNCTIONS
]
};
}
module.exports = openscad;

@@ -9,14 +9,15 @@ /*

function oxygene(hljs) {
var OXYGENE_KEYWORDS = {
const OXYGENE_KEYWORDS = {
$pattern: /\.?\w+/,
keyword: 'abstract add and array as asc aspect assembly async begin break block by case class concat const copy constructor continue '+
'create default delegate desc distinct div do downto dynamic each else empty end ensure enum equals event except exit extension external false '+
'final finalize finalizer finally flags for forward from function future global group has if implementation implements implies in index inherited '+
'inline interface into invariants is iterator join locked locking loop matching method mod module namespace nested new nil not notify nullable of '+
'old on operator or order out override parallel params partial pinned private procedure property protected public queryable raise read readonly '+
'record reintroduce remove repeat require result reverse sealed select self sequence set shl shr skip static step soft take then to true try tuple '+
'type union unit unsafe until uses using var virtual raises volatile where while with write xor yield await mapped deprecated stdcall cdecl pascal '+
'register safecall overload library platform reference packed strict published autoreleasepool selector strong weak unretained'
keyword:
'abstract add and array as asc aspect assembly async begin break block by case class concat const copy constructor continue ' +
'create default delegate desc distinct div do downto dynamic each else empty end ensure enum equals event except exit extension external false ' +
'final finalize finalizer finally flags for forward from function future global group has if implementation implements implies in index inherited ' +
'inline interface into invariants is iterator join locked locking loop matching method mod module namespace nested new nil not notify nullable of ' +
'old on operator or order out override parallel params partial pinned private procedure property protected public queryable raise read readonly ' +
'record reintroduce remove repeat require result reverse sealed select self sequence set shl shr skip static step soft take then to true try tuple ' +
'type union unit unsafe until uses using var virtual raises volatile where while with write xor yield await mapped deprecated stdcall cdecl pascal ' +
'register safecall overload library platform reference packed strict published autoreleasepool selector strong weak unretained'
};
var CURLY_COMMENT = hljs.COMMENT(
const CURLY_COMMENT = hljs.COMMENT(
/\{/,

@@ -28,3 +29,3 @@ /\}/,

);
var PAREN_COMMENT = hljs.COMMENT(
const PAREN_COMMENT = hljs.COMMENT(
'\\(\\*',

@@ -36,13 +37,20 @@ '\\*\\)',

);
var STRING = {
const STRING = {
className: 'string',
begin: '\'', end: '\'',
contains: [{begin: '\'\''}]
begin: '\'',
end: '\'',
contains: [
{
begin: '\'\''
}
]
};
var CHAR_STRING = {
className: 'string', begin: '(#\\d+)+'
const CHAR_STRING = {
className: 'string',
begin: '(#\\d+)+'
};
var FUNCTION = {
const FUNCTION = {
className: 'function',
beginKeywords: 'function constructor destructor procedure method', end: '[:;]',
beginKeywords: 'function constructor destructor procedure method',
end: '[:;]',
keywords: 'function constructor|10 destructor|10 procedure|10 method|10',

@@ -53,7 +61,12 @@ contains: [

className: 'params',
begin: '\\(', end: '\\)',
begin: '\\(',
end: '\\)',
keywords: OXYGENE_KEYWORDS,
contains: [STRING, CHAR_STRING]
contains: [
STRING,
CHAR_STRING
]
},
CURLY_COMMENT, PAREN_COMMENT
CURLY_COMMENT,
PAREN_COMMENT
]

@@ -67,4 +80,7 @@ };

contains: [
CURLY_COMMENT, PAREN_COMMENT, hljs.C_LINE_COMMENT_MODE,
STRING, CHAR_STRING,
CURLY_COMMENT,
PAREN_COMMENT,
hljs.C_LINE_COMMENT_MODE,
STRING,
CHAR_STRING,
hljs.NUMBER_MODE,

@@ -74,7 +90,11 @@ FUNCTION,

className: 'class',
begin: '=\\bclass\\b', end: 'end;',
begin: '=\\bclass\\b',
end: 'end;',
keywords: OXYGENE_KEYWORDS,
contains: [
STRING, CHAR_STRING,
CURLY_COMMENT, PAREN_COMMENT, hljs.C_LINE_COMMENT_MODE,
STRING,
CHAR_STRING,
CURLY_COMMENT,
PAREN_COMMENT,
hljs.C_LINE_COMMENT_MODE,
FUNCTION

@@ -81,0 +101,0 @@ ]

@@ -10,7 +10,7 @@ /*

function parser3(hljs) {
var CURLY_SUBCOMMENT = hljs.COMMENT(
const CURLY_SUBCOMMENT = hljs.COMMENT(
/\{/,
/\}/,
{
contains: ['self']
contains: [ 'self' ]
}

@@ -20,3 +20,4 @@ );

name: 'Parser3',
subLanguage: 'xml', relevance: 0,
subLanguage: 'xml',
relevance: 0,
contains: [

@@ -29,5 +30,3 @@ hljs.COMMENT('^#', '$'),

relevance: 10,
contains: [
CURLY_SUBCOMMENT
]
contains: [ CURLY_SUBCOMMENT ]
}

@@ -34,0 +33,0 @@ ),

@@ -10,9 +10,10 @@ /*

function pf(hljs) {
var MACRO = {
const MACRO = {
className: 'variable',
begin: /\$[\w\d#@][\w\d_]*/
};
var TABLE = {
const TABLE = {
className: 'variable',
begin: /<(?!\/)/, end: />/
begin: /<(?!\/)/,
end: />/
};

@@ -22,3 +23,3 @@

name: 'Packet Filter config',
aliases: ['pf.conf'],
aliases: [ 'pf.conf' ],
keywords: {

@@ -25,0 +26,0 @@ $pattern: /[a-z0-9_<>-]+/,

@@ -20,8 +20,8 @@ /*

function pgsql(hljs) {
var COMMENT_MODE = hljs.COMMENT('--', '$');
var UNQUOTED_IDENT = '[a-zA-Z_][a-zA-Z_0-9$]*';
var DOLLAR_STRING = '\\$([a-zA-Z_]?|[a-zA-Z_][a-zA-Z_0-9]*)\\$';
var LABEL = '<<\\s*' + UNQUOTED_IDENT + '\\s*>>';
const COMMENT_MODE = hljs.COMMENT('--', '$');
const UNQUOTED_IDENT = '[a-zA-Z_][a-zA-Z_0-9$]*';
const DOLLAR_STRING = '\\$([a-zA-Z_]?|[a-zA-Z_][a-zA-Z_0-9]*)\\$';
const LABEL = '<<\\s*' + UNQUOTED_IDENT + '\\s*>>';
var SQL_KW =
const SQL_KW =
// https://www.postgresql.org/docs/11/static/sql-keywords-appendix.html

@@ -72,7 +72,7 @@ // https://www.postgresql.org/docs/11/static/sql-commands.html

var ROLE_ATTRS = // only those not in keywrods already
const ROLE_ATTRS = // only those not in keywrods already
'SUPERUSER NOSUPERUSER CREATEDB NOCREATEDB CREATEROLE NOCREATEROLE INHERIT NOINHERIT ' +
'LOGIN NOLOGIN REPLICATION NOREPLICATION BYPASSRLS NOBYPASSRLS ';
var PLPGSQL_KW =
const PLPGSQL_KW =
'ALIAS BEGIN CONSTANT DECLARE END EXCEPTION RETURN PERFORM|10 RAISE GET DIAGNOSTICS ' +

@@ -82,3 +82,3 @@ 'STACKED|10 FOREACH LOOP ELSIF EXIT WHILE REVERSE SLICE DEBUG LOG INFO NOTICE WARNING ASSERT ' +

var TYPES =
const TYPES =
// https://www.postgresql.org/docs/11/static/datatype.html

@@ -100,13 +100,13 @@ 'BIGINT INT8 BIGSERIAL SERIAL8 BIT VARYING VARBIT BOOLEAN BOOL BOX BYTEA CHARACTER CHAR VARCHAR ' +

var TYPES_RE =
const TYPES_RE =
TYPES.trim()
.split(' ')
.map( function(val) { return val.split('|')[0]; } )
.join('|');
.split(' ')
.map(function(val) { return val.split('|')[0]; })
.join('|');
var SQL_BI =
const SQL_BI =
'CURRENT_TIME CURRENT_TIMESTAMP CURRENT_USER CURRENT_CATALOG|10 CURRENT_DATE LOCALTIME LOCALTIMESTAMP ' +
'CURRENT_ROLE|10 CURRENT_SCHEMA|10 SESSION_USER PUBLIC ';
var PLPGSQL_BI =
const PLPGSQL_BI =
'FOUND NEW OLD TG_NAME|10 TG_WHEN|10 TG_LEVEL|10 TG_OP|10 TG_RELID|10 TG_RELNAME|10 ' +

@@ -119,3 +119,3 @@ 'TG_TABLE_NAME|10 TG_TABLE_SCHEMA|10 TG_NARGS|10 TG_ARGV|10 TG_EVENT|10 TG_TAG|10 ' +

var PLPGSQL_EXCEPTIONS =
const PLPGSQL_EXCEPTIONS =
// exceptions https://www.postgresql.org/docs/current/static/errcodes-appendix.html

@@ -198,3 +198,3 @@ 'SQLSTATE SQLERRM|10 ' +

var FUNCTIONS =
const FUNCTIONS =
// https://www.postgresql.org/docs/11/static/functions-aggregate.html

@@ -290,221 +290,345 @@ 'ARRAY_AGG AVG BIT_AND BIT_OR BOOL_AND BOOL_OR COUNT EVERY JSON_AGG JSONB_AGG JSON_OBJECT_AGG ' +

var FUNCTIONS_RE =
const FUNCTIONS_RE =
FUNCTIONS.trim()
.split(' ')
.map( function(val) { return val.split('|')[0]; } )
.join('|');
.split(' ')
.map(function(val) { return val.split('|')[0]; })
.join('|');
return {
name: 'PostgreSQL',
aliases: ['postgres','postgresql'],
case_insensitive: true,
keywords: {
keyword:
return {
name: 'PostgreSQL',
aliases: [
'postgres',
'postgresql'
],
case_insensitive: true,
keywords: {
keyword:
SQL_KW + PLPGSQL_KW + ROLE_ATTRS,
built_in:
SQL_BI + PLPGSQL_BI + PLPGSQL_EXCEPTIONS,
},
// Forbid some cunstructs from other languages to improve autodetect. In fact
// "[a-z]:" is legal (as part of array slice), but improbabal.
illegal: /:==|\W\s*\(\*|(^|\s)\$[a-z]|\{\{|[a-z]:\s*$|\.\.\.|TO:|DO:/,
contains: [
// special handling of some words, which are reserved only in some contexts
built_in:
SQL_BI + PLPGSQL_BI + PLPGSQL_EXCEPTIONS
},
// Forbid some cunstructs from other languages to improve autodetect. In fact
// "[a-z]:" is legal (as part of array slice), but improbabal.
illegal: /:==|\W\s*\(\*|(^|\s)\$[a-z]|\{\{|[a-z]:\s*$|\.\.\.|TO:|DO:/,
contains: [
// special handling of some words, which are reserved only in some contexts
{
className: 'keyword',
variants: [
{
className: 'keyword',
variants: [
{ begin: /\bTEXT\s*SEARCH\b/ },
{ begin: /\b(PRIMARY|FOREIGN|FOR(\s+NO)?)\s+KEY\b/ },
{ begin: /\bPARALLEL\s+(UNSAFE|RESTRICTED|SAFE)\b/ },
{ begin: /\bSTORAGE\s+(PLAIN|EXTERNAL|EXTENDED|MAIN)\b/ },
{ begin: /\bMATCH\s+(FULL|PARTIAL|SIMPLE)\b/ },
{ begin: /\bNULLS\s+(FIRST|LAST)\b/ },
{ begin: /\bEVENT\s+TRIGGER\b/ },
{ begin: /\b(MAPPING|OR)\s+REPLACE\b/ },
{ begin: /\b(FROM|TO)\s+(PROGRAM|STDIN|STDOUT)\b/ },
{ begin: /\b(SHARE|EXCLUSIVE)\s+MODE\b/ },
{ begin: /\b(LEFT|RIGHT)\s+(OUTER\s+)?JOIN\b/ },
{ begin: /\b(FETCH|MOVE)\s+(NEXT|PRIOR|FIRST|LAST|ABSOLUTE|RELATIVE|FORWARD|BACKWARD)\b/ },
{ begin: /\bPRESERVE\s+ROWS\b/ },
{ begin: /\bDISCARD\s+PLANS\b/ },
{ begin: /\bREFERENCING\s+(OLD|NEW)\b/ },
{ begin: /\bSKIP\s+LOCKED\b/ },
{ begin: /\bGROUPING\s+SETS\b/ },
{ begin: /\b(BINARY|INSENSITIVE|SCROLL|NO\s+SCROLL)\s+(CURSOR|FOR)\b/ },
{ begin: /\b(WITH|WITHOUT)\s+HOLD\b/ },
{ begin: /\bWITH\s+(CASCADED|LOCAL)\s+CHECK\s+OPTION\b/ },
{ begin: /\bEXCLUDE\s+(TIES|NO\s+OTHERS)\b/ },
{ begin: /\bFORMAT\s+(TEXT|XML|JSON|YAML)\b/ },
{ begin: /\bSET\s+((SESSION|LOCAL)\s+)?NAMES\b/ },
{ begin: /\bIS\s+(NOT\s+)?UNKNOWN\b/ },
{ begin: /\bSECURITY\s+LABEL\b/ },
{ begin: /\bSTANDALONE\s+(YES|NO|NO\s+VALUE)\b/ },
{ begin: /\bWITH\s+(NO\s+)?DATA\b/ },
{ begin: /\b(FOREIGN|SET)\s+DATA\b/ },
{ begin: /\bSET\s+(CATALOG|CONSTRAINTS)\b/ },
{ begin: /\b(WITH|FOR)\s+ORDINALITY\b/ },
{ begin: /\bIS\s+(NOT\s+)?DOCUMENT\b/ },
{ begin: /\bXML\s+OPTION\s+(DOCUMENT|CONTENT)\b/ },
{ begin: /\b(STRIP|PRESERVE)\s+WHITESPACE\b/ },
{ begin: /\bNO\s+(ACTION|MAXVALUE|MINVALUE)\b/ },
{ begin: /\bPARTITION\s+BY\s+(RANGE|LIST|HASH)\b/ },
{ begin: /\bAT\s+TIME\s+ZONE\b/ },
{ begin: /\bGRANTED\s+BY\b/ },
{ begin: /\bRETURN\s+(QUERY|NEXT)\b/ },
{ begin: /\b(ATTACH|DETACH)\s+PARTITION\b/ },
{ begin: /\bFORCE\s+ROW\s+LEVEL\s+SECURITY\b/ },
{ begin: /\b(INCLUDING|EXCLUDING)\s+(COMMENTS|CONSTRAINTS|DEFAULTS|IDENTITY|INDEXES|STATISTICS|STORAGE|ALL)\b/ },
{ begin: /\bAS\s+(ASSIGNMENT|IMPLICIT|PERMISSIVE|RESTRICTIVE|ENUM|RANGE)\b/ }
]
begin: /\bTEXT\s*SEARCH\b/
},
// functions named as keywords, followed by '('
{
begin: /\b(FORMAT|FAMILY|VERSION)\s*\(/,
//keywords: { built_in: 'FORMAT FAMILY VERSION' }
begin: /\b(PRIMARY|FOREIGN|FOR(\s+NO)?)\s+KEY\b/
},
// INCLUDE ( ... ) in index_parameters in CREATE TABLE
{
begin: /\bINCLUDE\s*\(/,
keywords: 'INCLUDE'
begin: /\bPARALLEL\s+(UNSAFE|RESTRICTED|SAFE)\b/
},
// not highlight RANGE if not in frame_clause (not 100% correct, but seems satisfactory)
{
begin: /\bRANGE(?!\s*(BETWEEN|UNBOUNDED|CURRENT|[-0-9]+))/
begin: /\bSTORAGE\s+(PLAIN|EXTERNAL|EXTENDED|MAIN)\b/
},
// disable highlighting in commands CREATE AGGREGATE/COLLATION/DATABASE/OPERTOR/TEXT SEARCH .../TYPE
// and in PL/pgSQL RAISE ... USING
{
begin: /\b(VERSION|OWNER|TEMPLATE|TABLESPACE|CONNECTION\s+LIMIT|PROCEDURE|RESTRICT|JOIN|PARSER|COPY|START|END|COLLATION|INPUT|ANALYZE|STORAGE|LIKE|DEFAULT|DELIMITER|ENCODING|COLUMN|CONSTRAINT|TABLE|SCHEMA)\s*=/
begin: /\bMATCH\s+(FULL|PARTIAL|SIMPLE)\b/
},
// PG_smth; HAS_some_PRIVILEGE
{
//className: 'built_in',
begin: /\b(PG_\w+?|HAS_[A-Z_]+_PRIVILEGE)\b/,
relevance: 10
begin: /\bNULLS\s+(FIRST|LAST)\b/
},
// extract
{
begin: /\bEXTRACT\s*\(/,
end: /\bFROM\b/,
returnEnd: true,
keywords: {
//built_in: 'EXTRACT',
type: 'CENTURY DAY DECADE DOW DOY EPOCH HOUR ISODOW ISOYEAR MICROSECONDS ' +
'MILLENNIUM MILLISECONDS MINUTE MONTH QUARTER SECOND TIMEZONE TIMEZONE_HOUR ' +
'TIMEZONE_MINUTE WEEK YEAR'
}
begin: /\bEVENT\s+TRIGGER\b/
},
// xmlelement, xmlpi - special NAME
{
begin: /\b(XMLELEMENT|XMLPI)\s*\(\s*NAME/,
keywords: {
//built_in: 'XMLELEMENT XMLPI',
keyword: 'NAME'
}
begin: /\b(MAPPING|OR)\s+REPLACE\b/
},
// xmlparse, xmlserialize
{
begin: /\b(XMLPARSE|XMLSERIALIZE)\s*\(\s*(DOCUMENT|CONTENT)/,
keywords: {
//built_in: 'XMLPARSE XMLSERIALIZE',
keyword: 'DOCUMENT CONTENT'
}
begin: /\b(FROM|TO)\s+(PROGRAM|STDIN|STDOUT)\b/
},
// Sequences. We actually skip everything between CACHE|INCREMENT|MAXVALUE|MINVALUE and
// nearest following numeric constant. Without with trick we find a lot of "keywords"
// in 'avrasm' autodetection test...
{
beginKeywords: 'CACHE INCREMENT MAXVALUE MINVALUE',
end: hljs.C_NUMBER_RE,
returnEnd: true,
keywords: 'BY CACHE INCREMENT MAXVALUE MINVALUE'
begin: /\b(SHARE|EXCLUSIVE)\s+MODE\b/
},
// WITH|WITHOUT TIME ZONE as part of datatype
{
className: 'type',
begin: /\b(WITH|WITHOUT)\s+TIME\s+ZONE\b/
begin: /\b(LEFT|RIGHT)\s+(OUTER\s+)?JOIN\b/
},
// INTERVAL optional fields
{
className: 'type',
begin: /\bINTERVAL\s+(YEAR|MONTH|DAY|HOUR|MINUTE|SECOND)(\s+TO\s+(MONTH|HOUR|MINUTE|SECOND))?\b/
begin: /\b(FETCH|MOVE)\s+(NEXT|PRIOR|FIRST|LAST|ABSOLUTE|RELATIVE|FORWARD|BACKWARD)\b/
},
// Pseudo-types which allowed only as return type
{
begin: /\bRETURNS\s+(LANGUAGE_HANDLER|TRIGGER|EVENT_TRIGGER|FDW_HANDLER|INDEX_AM_HANDLER|TSM_HANDLER)\b/,
keywords: {
keyword: 'RETURNS',
type: 'LANGUAGE_HANDLER TRIGGER EVENT_TRIGGER FDW_HANDLER INDEX_AM_HANDLER TSM_HANDLER'
}
begin: /\bPRESERVE\s+ROWS\b/
},
// Known functions - only when followed by '('
{
begin: '\\b(' + FUNCTIONS_RE + ')\\s*\\('
//keywords: { built_in: FUNCTIONS }
begin: /\bDISCARD\s+PLANS\b/
},
// Types
{
begin: '\\.(' + TYPES_RE + ')\\b' // prevent highlight as type, say, 'oid' in 'pgclass.oid'
begin: /\bREFERENCING\s+(OLD|NEW)\b/
},
{
begin: '\\b(' + TYPES_RE + ')\\s+PATH\\b', // in XMLTABLE
keywords: {
keyword: 'PATH', // hopefully no one would use PATH type in XMLTABLE...
type: TYPES.replace('PATH ','')
}
begin: /\bSKIP\s+LOCKED\b/
},
{
className: 'type',
begin: '\\b(' + TYPES_RE + ')\\b'
begin: /\bGROUPING\s+SETS\b/
},
// Strings, see https://www.postgresql.org/docs/11/static/sql-syntax-lexical.html#SQL-SYNTAX-CONSTANTS
{
className: 'string',
begin: '\'', end: '\'',
contains: [{begin: '\'\''}]
begin: /\b(BINARY|INSENSITIVE|SCROLL|NO\s+SCROLL)\s+(CURSOR|FOR)\b/
},
{
className: 'string',
begin: '(e|E|u&|U&)\'', end: '\'',
contains: [{begin: '\\\\.'}],
relevance: 10
begin: /\b(WITH|WITHOUT)\s+HOLD\b/
},
hljs.END_SAME_AS_BEGIN({
begin: DOLLAR_STRING,
end: DOLLAR_STRING,
contains: [
{
// actually we want them all except SQL; listed are those with known implementations
// and XML + JSON just in case
subLanguage: ['pgsql','perl','python','tcl','r','lua','java','php','ruby','bash','scheme','xml','json'],
endsWithParent: true
}
]
}),
// identifiers in quotes
{
begin: '"', end: '"',
contains: [{begin: '""'}]
begin: /\bWITH\s+(CASCADED|LOCAL)\s+CHECK\s+OPTION\b/
},
// numbers
hljs.C_NUMBER_MODE,
// comments
hljs.C_BLOCK_COMMENT_MODE,
COMMENT_MODE,
// PL/pgSQL staff
// %ROWTYPE, %TYPE, $n
{
className: 'meta',
variants: [
{begin: '%(ROW)?TYPE', relevance: 10}, // %TYPE, %ROWTYPE
{begin: '\\$\\d+'}, // $n
{begin: '^#\\w', end: '$'} // #compiler option
]
begin: /\bEXCLUDE\s+(TIES|NO\s+OTHERS)\b/
},
// <<labeles>>
{
className: 'symbol',
begin: LABEL,
begin: /\bFORMAT\s+(TEXT|XML|JSON|YAML)\b/
},
{
begin: /\bSET\s+((SESSION|LOCAL)\s+)?NAMES\b/
},
{
begin: /\bIS\s+(NOT\s+)?UNKNOWN\b/
},
{
begin: /\bSECURITY\s+LABEL\b/
},
{
begin: /\bSTANDALONE\s+(YES|NO|NO\s+VALUE)\b/
},
{
begin: /\bWITH\s+(NO\s+)?DATA\b/
},
{
begin: /\b(FOREIGN|SET)\s+DATA\b/
},
{
begin: /\bSET\s+(CATALOG|CONSTRAINTS)\b/
},
{
begin: /\b(WITH|FOR)\s+ORDINALITY\b/
},
{
begin: /\bIS\s+(NOT\s+)?DOCUMENT\b/
},
{
begin: /\bXML\s+OPTION\s+(DOCUMENT|CONTENT)\b/
},
{
begin: /\b(STRIP|PRESERVE)\s+WHITESPACE\b/
},
{
begin: /\bNO\s+(ACTION|MAXVALUE|MINVALUE)\b/
},
{
begin: /\bPARTITION\s+BY\s+(RANGE|LIST|HASH)\b/
},
{
begin: /\bAT\s+TIME\s+ZONE\b/
},
{
begin: /\bGRANTED\s+BY\b/
},
{
begin: /\bRETURN\s+(QUERY|NEXT)\b/
},
{
begin: /\b(ATTACH|DETACH)\s+PARTITION\b/
},
{
begin: /\bFORCE\s+ROW\s+LEVEL\s+SECURITY\b/
},
{
begin: /\b(INCLUDING|EXCLUDING)\s+(COMMENTS|CONSTRAINTS|DEFAULTS|IDENTITY|INDEXES|STATISTICS|STORAGE|ALL)\b/
},
{
begin: /\bAS\s+(ASSIGNMENT|IMPLICIT|PERMISSIVE|RESTRICTIVE|ENUM|RANGE)\b/
}
]
},
// functions named as keywords, followed by '('
{
begin: /\b(FORMAT|FAMILY|VERSION)\s*\(/
// keywords: { built_in: 'FORMAT FAMILY VERSION' }
},
// INCLUDE ( ... ) in index_parameters in CREATE TABLE
{
begin: /\bINCLUDE\s*\(/,
keywords: 'INCLUDE'
},
// not highlight RANGE if not in frame_clause (not 100% correct, but seems satisfactory)
{
begin: /\bRANGE(?!\s*(BETWEEN|UNBOUNDED|CURRENT|[-0-9]+))/
},
// disable highlighting in commands CREATE AGGREGATE/COLLATION/DATABASE/OPERTOR/TEXT SEARCH .../TYPE
// and in PL/pgSQL RAISE ... USING
{
begin: /\b(VERSION|OWNER|TEMPLATE|TABLESPACE|CONNECTION\s+LIMIT|PROCEDURE|RESTRICT|JOIN|PARSER|COPY|START|END|COLLATION|INPUT|ANALYZE|STORAGE|LIKE|DEFAULT|DELIMITER|ENCODING|COLUMN|CONSTRAINT|TABLE|SCHEMA)\s*=/
},
// PG_smth; HAS_some_PRIVILEGE
{
// className: 'built_in',
begin: /\b(PG_\w+?|HAS_[A-Z_]+_PRIVILEGE)\b/,
relevance: 10
},
// extract
{
begin: /\bEXTRACT\s*\(/,
end: /\bFROM\b/,
returnEnd: true,
keywords: {
// built_in: 'EXTRACT',
type: 'CENTURY DAY DECADE DOW DOY EPOCH HOUR ISODOW ISOYEAR MICROSECONDS ' +
'MILLENNIUM MILLISECONDS MINUTE MONTH QUARTER SECOND TIMEZONE TIMEZONE_HOUR ' +
'TIMEZONE_MINUTE WEEK YEAR'
}
},
// xmlelement, xmlpi - special NAME
{
begin: /\b(XMLELEMENT|XMLPI)\s*\(\s*NAME/,
keywords: {
// built_in: 'XMLELEMENT XMLPI',
keyword: 'NAME'
}
},
// xmlparse, xmlserialize
{
begin: /\b(XMLPARSE|XMLSERIALIZE)\s*\(\s*(DOCUMENT|CONTENT)/,
keywords: {
// built_in: 'XMLPARSE XMLSERIALIZE',
keyword: 'DOCUMENT CONTENT'
}
},
// Sequences. We actually skip everything between CACHE|INCREMENT|MAXVALUE|MINVALUE and
// nearest following numeric constant. Without with trick we find a lot of "keywords"
// in 'avrasm' autodetection test...
{
beginKeywords: 'CACHE INCREMENT MAXVALUE MINVALUE',
end: hljs.C_NUMBER_RE,
returnEnd: true,
keywords: 'BY CACHE INCREMENT MAXVALUE MINVALUE'
},
// WITH|WITHOUT TIME ZONE as part of datatype
{
className: 'type',
begin: /\b(WITH|WITHOUT)\s+TIME\s+ZONE\b/
},
// INTERVAL optional fields
{
className: 'type',
begin: /\bINTERVAL\s+(YEAR|MONTH|DAY|HOUR|MINUTE|SECOND)(\s+TO\s+(MONTH|HOUR|MINUTE|SECOND))?\b/
},
// Pseudo-types which allowed only as return type
{
begin: /\bRETURNS\s+(LANGUAGE_HANDLER|TRIGGER|EVENT_TRIGGER|FDW_HANDLER|INDEX_AM_HANDLER|TSM_HANDLER)\b/,
keywords: {
keyword: 'RETURNS',
type: 'LANGUAGE_HANDLER TRIGGER EVENT_TRIGGER FDW_HANDLER INDEX_AM_HANDLER TSM_HANDLER'
}
},
// Known functions - only when followed by '('
{
begin: '\\b(' + FUNCTIONS_RE + ')\\s*\\('
// keywords: { built_in: FUNCTIONS }
},
// Types
{
begin: '\\.(' + TYPES_RE + ')\\b' // prevent highlight as type, say, 'oid' in 'pgclass.oid'
},
{
begin: '\\b(' + TYPES_RE + ')\\s+PATH\\b', // in XMLTABLE
keywords: {
keyword: 'PATH', // hopefully no one would use PATH type in XMLTABLE...
type: TYPES.replace('PATH ', '')
}
},
{
className: 'type',
begin: '\\b(' + TYPES_RE + ')\\b'
},
// Strings, see https://www.postgresql.org/docs/11/static/sql-syntax-lexical.html#SQL-SYNTAX-CONSTANTS
{
className: 'string',
begin: '\'',
end: '\'',
contains: [
{
begin: '\'\''
}
]
},
{
className: 'string',
begin: '(e|E|u&|U&)\'',
end: '\'',
contains: [
{
begin: '\\\\.'
}
],
relevance: 10
},
hljs.END_SAME_AS_BEGIN({
begin: DOLLAR_STRING,
end: DOLLAR_STRING,
contains: [
{
// actually we want them all except SQL; listed are those with known implementations
// and XML + JSON just in case
subLanguage: [
'pgsql',
'perl',
'python',
'tcl',
'r',
'lua',
'java',
'php',
'ruby',
'bash',
'scheme',
'xml',
'json'
],
endsWithParent: true
}
]
}),
// identifiers in quotes
{
begin: '"',
end: '"',
contains: [
{
begin: '""'
}
]
},
// numbers
hljs.C_NUMBER_MODE,
// comments
hljs.C_BLOCK_COMMENT_MODE,
COMMENT_MODE,
// PL/pgSQL staff
// %ROWTYPE, %TYPE, $n
{
className: 'meta',
variants: [
{ // %TYPE, %ROWTYPE
begin: '%(ROW)?TYPE',
relevance: 10
},
{ // $n
begin: '\\$\\d+'
},
{ // #compiler option
begin: '^#\\w',
end: '$'
}
]
},
// <<labeles>>
{
className: 'symbol',
begin: LABEL,
relevance: 10
}
]
};

@@ -511,0 +635,0 @@ }

@@ -21,7 +21,29 @@ /*

// inside any of the following blocks:
{begin: '/\\*', end: '\\*/', skip: true},
{begin: 'b"', end: '"', skip: true},
{begin: 'b\'', end: '\'', skip: true},
hljs.inherit(hljs.APOS_STRING_MODE, {illegal: null, className: null, contains: null, skip: true}),
hljs.inherit(hljs.QUOTE_STRING_MODE, {illegal: null, className: null, contains: null, skip: true})
{
begin: '/\\*',
end: '\\*/',
skip: true
},
{
begin: 'b"',
end: '"',
skip: true
},
{
begin: 'b\'',
end: '\'',
skip: true
},
hljs.inherit(hljs.APOS_STRING_MODE, {
illegal: null,
className: null,
contains: null,
skip: true
}),
hljs.inherit(hljs.QUOTE_STRING_MODE, {
illegal: null,
className: null,
contains: null,
skip: true
})
]

@@ -28,0 +50,0 @@ }

@@ -9,9 +9,12 @@ /*

function plaintext(hljs) {
return {
name: 'Plain text',
aliases: ['text', 'txt'],
disableAutodetect: true
};
return {
name: 'Plain text',
aliases: [
'text',
'txt'
],
disableAutodetect: true
};
}
module.exports = plaintext;

@@ -10,3 +10,3 @@ /*

function pony(hljs) {
var KEYWORDS = {
const KEYWORDS = {
keyword:

@@ -24,22 +24,25 @@ 'actor addressof and as be break class compile_error compile_intrinsic ' +

var TRIPLE_QUOTE_STRING_MODE = {
const TRIPLE_QUOTE_STRING_MODE = {
className: 'string',
begin: '"""', end: '"""',
begin: '"""',
end: '"""',
relevance: 10
};
var QUOTE_STRING_MODE = {
const QUOTE_STRING_MODE = {
className: 'string',
begin: '"', end: '"',
contains: [hljs.BACKSLASH_ESCAPE]
begin: '"',
end: '"',
contains: [ hljs.BACKSLASH_ESCAPE ]
};
var SINGLE_QUOTE_CHAR_MODE = {
const SINGLE_QUOTE_CHAR_MODE = {
className: 'string',
begin: '\'', end: '\'',
contains: [hljs.BACKSLASH_ESCAPE],
begin: '\'',
end: '\'',
contains: [ hljs.BACKSLASH_ESCAPE ],
relevance: 0
};
var TYPE_NAME = {
const TYPE_NAME = {
className: 'type',

@@ -50,7 +53,8 @@ begin: '\\b_?[A-Z][\\w]*',

var PRIMED_NAME = {
begin: hljs.IDENT_RE + '\'', relevance: 0
const PRIMED_NAME = {
begin: hljs.IDENT_RE + '\'',
relevance: 0
};
var NUMBER_MODE = {
const NUMBER_MODE = {
className: 'number',

@@ -57,0 +61,0 @@ begin: '(-?)(\\b0[xX][a-fA-F0-9]+|\\b0[bB][01]+|(\\b\\d+(_\\d+)?(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)',

@@ -10,9 +10,21 @@ /*

function powershell(hljs) {
const TYPES = [
"string",
"char",
"byte",
"int",
"long",
"bool",
"decimal",
"single",
"double",
"DateTime",
"xml",
"array",
"hashtable",
"void"
];
var TYPES =
["string", "char", "byte", "int", "long", "bool", "decimal", "single",
"double", "DateTime", "xml", "array", "hashtable", "void"];
// https://msdn.microsoft.com/en-us/library/ms714428(v=vs.85).aspx
var VALID_VERBS =
const VALID_VERBS =
'Add|Clear|Close|Copy|Enter|Exit|Find|Format|Get|Hide|Join|Lock|' +

@@ -30,3 +42,3 @@ 'Move|New|Open|Optimize|Pop|Push|Redo|Remove|Rename|Reset|Resize|' +

var COMPARISON_OPERATORS =
const COMPARISON_OPERATORS =
'-and|-as|-band|-bnot|-bor|-bxor|-casesensitive|-ccontains|-ceq|-cge|-cgt|' +

@@ -40,22 +52,24 @@ '-cle|-clike|-clt|-cmatch|-cne|-cnotcontains|-cnotlike|-cnotmatch|-contains|' +

var KEYWORDS = {
const KEYWORDS = {
$pattern: /-?[A-z\.\-]+\b/,
keyword: 'if else foreach return do while until elseif begin for trap data dynamicparam ' +
'end break throw param continue finally in switch exit filter try process catch ' +
'hidden static parameter',
keyword:
'if else foreach return do while until elseif begin for trap data dynamicparam ' +
'end break throw param continue finally in switch exit filter try process catch ' +
'hidden static parameter',
// "echo" relevance has been set to 0 to avoid auto-detect conflicts with shell transcripts
built_in: 'ac asnp cat cd CFS chdir clc clear clhy cli clp cls clv cnsn compare copy cp ' +
'cpi cpp curl cvpa dbp del diff dir dnsn ebp echo|0 epal epcsv epsn erase etsn exsn fc fhx ' +
'fl ft fw gal gbp gc gcb gci gcm gcs gdr gerr ghy gi gin gjb gl gm gmo gp gps gpv group ' +
'gsn gsnp gsv gtz gu gv gwmi h history icm iex ihy ii ipal ipcsv ipmo ipsn irm ise iwmi ' +
'iwr kill lp ls man md measure mi mount move mp mv nal ndr ni nmo npssc nsn nv ogv oh ' +
'popd ps pushd pwd r rbp rcjb rcsn rd rdr ren ri rjb rm rmdir rmo rni rnp rp rsn rsnp ' +
'rujb rv rvpa rwmi sajb sal saps sasv sbp sc scb select set shcm si sl sleep sls sort sp ' +
'spjb spps spsv start stz sujb sv swmi tee trcm type wget where wjb write'
built_in:
'ac asnp cat cd CFS chdir clc clear clhy cli clp cls clv cnsn compare copy cp ' +
'cpi cpp curl cvpa dbp del diff dir dnsn ebp echo|0 epal epcsv epsn erase etsn exsn fc fhx ' +
'fl ft fw gal gbp gc gcb gci gcm gcs gdr gerr ghy gi gin gjb gl gm gmo gp gps gpv group ' +
'gsn gsnp gsv gtz gu gv gwmi h history icm iex ihy ii ipal ipcsv ipmo ipsn irm ise iwmi ' +
'iwr kill lp ls man md measure mi mount move mp mv nal ndr ni nmo npssc nsn nv ogv oh ' +
'popd ps pushd pwd r rbp rcjb rcsn rd rdr ren ri rjb rm rmdir rmo rni rnp rp rsn rsnp ' +
'rujb rv rvpa rwmi sajb sal saps sasv sbp sc scb select set shcm si sl sleep sls sort sp ' +
'spjb spps spsv start stz sujb sv swmi tee trcm type wget where wjb write'
// TODO: 'validate[A-Z]+' can't work in keywords
};
var TITLE_NAME_RE = /\w[\w\d]*((-)[\w\d]+)*/;
const TITLE_NAME_RE = /\w[\w\d]*((-)[\w\d]+)*/;
var BACKTICK_ESCAPE = {
const BACKTICK_ESCAPE = {
begin: '`[\\s\\S]',

@@ -65,12 +79,19 @@ relevance: 0

var VAR = {
const VAR = {
className: 'variable',
variants: [
{ begin: /\$\B/ },
{ className: 'keyword', begin: /\$this/ },
{ begin: /\$[\w\d][\w\d_:]*/ }
{
begin: /\$\B/
},
{
className: 'keyword',
begin: /\$this/
},
{
begin: /\$[\w\d][\w\d_:]*/
}
]
};
var LITERAL = {
const LITERAL = {
className: 'literal',

@@ -80,5 +101,14 @@ begin: /\$(null|true|false)\b/

var QUOTE_STRING = {
const QUOTE_STRING = {
className: "string",
variants: [{ begin: /"/, end: /"/ }, { begin: /@"/, end: /^"@/ }],
variants: [
{
begin: /"/,
end: /"/
},
{
begin: /@"/,
end: /^"@/
}
],
contains: [

@@ -89,3 +119,4 @@ BACKTICK_ESCAPE,

className: 'variable',
begin: /\$[A-z]/, end: /[^A-z]/
begin: /\$[A-z]/,
end: /[^A-z]/
}

@@ -95,11 +126,17 @@ ]

var APOS_STRING = {
const APOS_STRING = {
className: 'string',
variants: [
{ begin: /'/, end: /'/ },
{ begin: /@'/, end: /^'@/ }
{
begin: /'/,
end: /'/
},
{
begin: /@'/,
end: /^'@/
}
]
};
var PS_HELPTAGS = {
const PS_HELPTAGS = {
className: "doctag",

@@ -112,7 +149,9 @@ variants: [

/* one parameter help tags */
{ begin: /\.(parameter|forwardhelptargetname|forwardhelpcategory|remotehelprunspace|externalhelp)\s+\S+/ }
{
begin: /\.(parameter|forwardhelptargetname|forwardhelpcategory|remotehelprunspace|externalhelp)\s+\S+/
}
]
};
var PS_COMMENT = hljs.inherit(
const PS_COMMENT = hljs.inherit(
hljs.COMMENT(null, null),

@@ -122,27 +161,38 @@ {

/* single-line comment */
{ begin: /#/, end: /$/ },
{
begin: /#/,
end: /$/
},
/* multi-line comment */
{ begin: /<#/, end: /#>/ }
{
begin: /<#/,
end: /#>/
}
],
contains: [PS_HELPTAGS]
contains: [ PS_HELPTAGS ]
}
);
var CMDLETS = {
const CMDLETS = {
className: 'built_in',
variants: [
{ begin: '('.concat(VALID_VERBS, ')+(-)[\\w\\d]+') }
{
begin: '('.concat(VALID_VERBS, ')+(-)[\\w\\d]+')
}
]
};
var PS_CLASS = {
const PS_CLASS = {
className: 'class',
beginKeywords: 'class enum', end: /\s*[{]/, excludeEnd: true,
beginKeywords: 'class enum',
end: /\s*[{]/,
excludeEnd: true,
relevance: 0,
contains: [hljs.TITLE_MODE]
contains: [ hljs.TITLE_MODE ]
};
var PS_FUNCTION = {
const PS_FUNCTION = {
className: 'function',
begin: /function\s+/, end: /\s*\{|$/,
begin: /function\s+/,
end: /\s*\{|$/,
excludeEnd: true,

@@ -152,8 +202,19 @@ returnBegin: true,

contains: [
{ begin: "function", relevance: 0, className: "keyword" },
{ className: "title",
begin: TITLE_NAME_RE, relevance:0 },
{ begin: /\(/, end: /\)/, className: "params",
{
begin: "function",
relevance: 0,
contains: [VAR] }
className: "keyword"
},
{
className: "title",
begin: TITLE_NAME_RE,
relevance: 0
},
{
begin: /\(/,
end: /\)/,
className: "params",
relevance: 0,
contains: [ VAR ]
}
// CMDLETS

@@ -164,4 +225,5 @@ ]

// Using statment, plus type, plus assembly name.
var PS_USING = {
begin: /using\s/, end: /$/,
const PS_USING = {
begin: /using\s/,
end: /$/,
returnBegin: true,

@@ -171,3 +233,6 @@ contains: [

APOS_STRING,
{ className: 'keyword', begin: /(using|assembly|command|module|namespace|type)/ }
{
className: 'keyword',
begin: /(using|assembly|command|module|namespace|type)/
}
]

@@ -177,11 +242,18 @@ };

// Comperison operators & function named parameters.
var PS_ARGUMENTS = {
const PS_ARGUMENTS = {
variants: [
// PS literals are pretty verbose so it's a good idea to accent them a bit.
{ className: 'operator', begin: '('.concat(COMPARISON_OPERATORS, ')\\b') },
{ className: 'literal', begin: /(-)[\w\d]+/, relevance:0 }
{
className: 'operator',
begin: '('.concat(COMPARISON_OPERATORS, ')\\b')
},
{
className: 'literal',
begin: /(-)[\w\d]+/,
relevance: 0
}
]
};
var HASH_SIGNS = {
const HASH_SIGNS = {
className: 'selector-tag',

@@ -194,5 +266,6 @@ begin: /@\B/,

// to avoid any possible false-positive collisions!
var PS_METHODS = {
const PS_METHODS = {
className: 'function',
begin: /\[.*\]\s*[\w]+[ ]??\(/, end: /$/,
begin: /\[.*\]\s*[\w]+[ ]??\(/,
end: /$/,
returnBegin: true,

@@ -202,13 +275,16 @@ relevance: 0,

{
className: 'keyword', begin: '('.concat(
KEYWORDS.keyword.toString().replace(/\s/g, '|'
), ')\\b'),
className: 'keyword',
begin: '('.concat(
KEYWORDS.keyword.toString().replace(/\s/g, '|'
), ')\\b'),
endsParent: true,
relevance: 0
},
hljs.inherit(hljs.TITLE_MODE, { endsParent: true })
hljs.inherit(hljs.TITLE_MODE, {
endsParent: true
})
]
};
var GENTLEMANS_SET = [
const GENTLEMANS_SET = [
// STATIC_MEMBER,

@@ -228,4 +304,5 @@ PS_METHODS,

var PS_TYPE = {
begin: /\[/, end: /\]/,
const PS_TYPE = {
begin: /\[/,
end: /\]/,
excludeBegin: true,

@@ -237,4 +314,12 @@ excludeEnd: true,

GENTLEMANS_SET,
{ begin: "(" + TYPES.join("|") + ")", className: "built_in", relevance:0 },
{ className: 'type', begin: /[\.\w\d]+/, relevance: 0 }
{
begin: "(" + TYPES.join("|") + ")",
className: "built_in",
relevance: 0
},
{
className: 'type',
begin: /[\.\w\d]+/,
relevance: 0
}
)

@@ -247,3 +332,6 @@ };

name: 'PowerShell',
aliases: ["ps", "ps1"],
aliases: [
"ps",
"ps1"
],
case_insensitive: true,

@@ -250,0 +338,0 @@ keywords: KEYWORDS,

@@ -13,7 +13,9 @@ /*

{
begin: '[a-zA-Z_][\\da-zA-Z_]+\\.[\\da-zA-Z_]{1,3}', end: ':',
begin: '[a-zA-Z_][\\da-zA-Z_]+\\.[\\da-zA-Z_]{1,3}',
end: ':',
excludeEnd: true
},
{
begin: '(ncalls|tottime|cumtime)', end: '$',
begin: '(ncalls|tottime|cumtime)',
end: '$',
keywords: 'ncalls tottime|10 cumtime|10 filename',

@@ -23,4 +25,5 @@ relevance: 10

{
begin: 'function calls', end: '$',
contains: [hljs.C_NUMBER_MODE],
begin: 'function calls',
end: '$',
contains: [ hljs.C_NUMBER_MODE ],
relevance: 10

@@ -32,4 +35,6 @@ },

className: 'string',
begin: '\\(', end: '\\)$',
excludeBegin: true, excludeEnd: true,
begin: '\\(',
end: '\\)$',
excludeBegin: true,
excludeEnd: true,
relevance: 0

@@ -36,0 +41,0 @@ }

@@ -9,5 +9,4 @@ /*

function prolog(hljs) {
const ATOM = {
var ATOM = {
begin: /[a-z][A-Za-z0-9_]*/,

@@ -17,8 +16,12 @@ relevance: 0

var VAR = {
const VAR = {
className: 'symbol',
variants: [
{begin: /[A-Z][a-zA-Z0-9_]*/},
{begin: /_[A-Za-z0-9_]*/},
{
begin: /[A-Z][a-zA-Z0-9_]*/
},
{
begin: /_[A-Za-z0-9_]*/
}
],

@@ -28,3 +31,3 @@ relevance: 0

var PARENTED = {
const PARENTED = {

@@ -36,3 +39,3 @@ begin: /\(/,

var LIST = {
const LIST = {

@@ -43,17 +46,19 @@ begin: /\[/,

var LINE_COMMENT = {
const LINE_COMMENT = {
className: 'comment',
begin: /%/, end: /$/,
contains: [hljs.PHRASAL_WORDS_MODE]
begin: /%/,
end: /$/,
contains: [ hljs.PHRASAL_WORDS_MODE ]
};
var BACKTICK_STRING = {
const BACKTICK_STRING = {
className: 'string',
begin: /`/, end: /`/,
contains: [hljs.BACKSLASH_ESCAPE]
begin: /`/,
end: /`/,
contains: [ hljs.BACKSLASH_ESCAPE ]
};
var CHAR_CODE = {
const CHAR_CODE = {
className: 'string', // 0'a etc.

@@ -63,3 +68,3 @@ begin: /0'(\\'|.)/

var SPACE_CODE = {
const SPACE_CODE = {
className: 'string',

@@ -69,7 +74,7 @@ begin: /0'\\s/ // 0'\s

var PRED_OP = { // relevance booster
const PRED_OP = { // relevance booster
begin: /:-/
};
var inner = [
const inner = [

@@ -97,3 +102,5 @@ ATOM,

contains: inner.concat([
{begin: /\.$/} // relevance booster
{ // relevance booster
begin: /\.$/
}
])

@@ -100,0 +107,0 @@ };

@@ -9,4 +9,3 @@ /*

function puppet(hljs) {
var PUPPET_KEYWORDS = {
const PUPPET_KEYWORDS = {
keyword:

@@ -18,8 +17,8 @@ /* language keywords */

'alias audit before loglevel noop require subscribe tag ' +
/* normal attributes */
/* normal attributes */
'owner ensure group mode name|0 changes context force incl lens load_path onlyif provider returns root show_diff type_check ' +
'en_address ip_address realname command environment hour monute month monthday special target weekday '+
'en_address ip_address realname command environment hour monute month monthday special target weekday ' +
'creates cwd ogoutput refresh refreshonly tries try_sleep umask backup checksum content ctime force ignore ' +
'links mtime purge recurse recurselimit replace selinux_ignore_defaults selrange selrole seltype seluser source ' +
'souirce_permissions sourceselect validate_cmd validate_replacement allowdupe attribute_membership auth_membership forcelocal gid '+
'souirce_permissions sourceselect validate_cmd validate_replacement allowdupe attribute_membership auth_membership forcelocal gid ' +
'ia_load_module members system host_aliases ip allowed_trunk_vlans description device_url duplex encapsulation etherchannel ' +

@@ -38,27 +37,41 @@ 'native_vlan speed principals allow_root auth_class auth_type authenticate_user k_of_n mechanisms rule session_owner shared options ' +

'architecture augeasversion blockdevices boardmanufacturer boardproductname boardserialnumber cfkey dhcp_servers ' +
'domain ec2_ ec2_userdata facterversion filesystems ldom fqdn gid hardwareisa hardwaremodel hostname id|0 interfaces '+
'domain ec2_ ec2_userdata facterversion filesystems ldom fqdn gid hardwareisa hardwaremodel hostname id|0 interfaces ' +
'ipaddress ipaddress_ ipaddress6 ipaddress6_ iphostnumber is_virtual kernel kernelmajversion kernelrelease kernelversion ' +
'kernelrelease kernelversion lsbdistcodename lsbdistdescription lsbdistid lsbdistrelease lsbmajdistrelease lsbminordistrelease ' +
'lsbrelease macaddress macaddress_ macosx_buildversion macosx_productname macosx_productversion macosx_productverson_major ' +
'macosx_productversion_minor manufacturer memoryfree memorysize netmask metmask_ network_ operatingsystem operatingsystemmajrelease '+
'operatingsystemrelease osfamily partitions path physicalprocessorcount processor processorcount productname ps puppetversion '+
'rubysitedir rubyversion selinux selinux_config_mode selinux_config_policy selinux_current_mode selinux_current_mode selinux_enforced '+
'selinux_policyversion serialnumber sp_ sshdsakey sshecdsakey sshrsakey swapencrypted swapfree swapsize timezone type uniqueid uptime '+
'macosx_productversion_minor manufacturer memoryfree memorysize netmask metmask_ network_ operatingsystem operatingsystemmajrelease ' +
'operatingsystemrelease osfamily partitions path physicalprocessorcount processor processorcount productname ps puppetversion ' +
'rubysitedir rubyversion selinux selinux_config_mode selinux_config_policy selinux_current_mode selinux_current_mode selinux_enforced ' +
'selinux_policyversion serialnumber sp_ sshdsakey sshecdsakey sshrsakey swapencrypted swapfree swapsize timezone type uniqueid uptime ' +
'uptime_days uptime_hours uptime_seconds uuid virtual vlans xendomains zfs_version zonenae zones zpool_version'
};
var COMMENT = hljs.COMMENT('#', '$');
const COMMENT = hljs.COMMENT('#', '$');
var IDENT_RE = '([A-Za-z_]|::)(\\w|::)*';
const IDENT_RE = '([A-Za-z_]|::)(\\w|::)*';
var TITLE = hljs.inherit(hljs.TITLE_MODE, {begin: IDENT_RE});
const TITLE = hljs.inherit(hljs.TITLE_MODE, {
begin: IDENT_RE
});
var VARIABLE = {className: 'variable', begin: '\\$' + IDENT_RE};
const VARIABLE = {
className: 'variable',
begin: '\\$' + IDENT_RE
};
var STRING = {
const STRING = {
className: 'string',
contains: [hljs.BACKSLASH_ESCAPE, VARIABLE],
contains: [
hljs.BACKSLASH_ESCAPE,
VARIABLE
],
variants: [
{begin: /'/, end: /'/},
{begin: /"/, end: /"/}
{
begin: /'/,
end: /'/
},
{
begin: /"/,
end: /"/
}
]

@@ -69,3 +82,3 @@ };

name: 'Puppet',
aliases: ['pp'],
aliases: [ 'pp' ],
contains: [

@@ -76,11 +89,18 @@ COMMENT,

{
beginKeywords: 'class', end: '\\{|;',
beginKeywords: 'class',
end: '\\{|;',
illegal: /=/,
contains: [TITLE, COMMENT]
contains: [
TITLE,
COMMENT
]
},
{
beginKeywords: 'define', end: /\{/,
beginKeywords: 'define',
end: /\{/,
contains: [
{
className: 'section', begin: hljs.IDENT_RE, endsParent: true
className: 'section',
begin: hljs.IDENT_RE,
endsParent: true
}

@@ -90,3 +110,4 @@ ]

{
begin: hljs.IDENT_RE + '\\s+\\{', returnBegin: true,
begin: hljs.IDENT_RE + '\\s+\\{',
returnBegin: true,
end: /\S/,

@@ -99,3 +120,4 @@ contains: [

{
begin: /\{/, end: /\}/,
begin: /\{/,
end: /\}/,
keywords: PUPPET_KEYWORDS,

@@ -107,8 +129,9 @@ relevance: 0,

{
begin:'[a-zA-Z_]+\\s*=>',
returnBegin: true, end: '=>',
begin: '[a-zA-Z_]+\\s*=>',
returnBegin: true,
end: '=>',
contains: [
{
className: 'attr',
begin: hljs.IDENT_RE,
begin: hljs.IDENT_RE
}

@@ -129,5 +152,5 @@ ]

]
}
};
}
module.exports = puppet;

@@ -12,8 +12,9 @@ /*

function purebasic(hljs) {
var STRINGS = { // PB IDE color: #0080FF (Azure Radiance)
const STRINGS = { // PB IDE color: #0080FF (Azure Radiance)
className: 'string',
begin: '(~)?"', end: '"',
begin: '(~)?"',
end: '"',
illegal: '\\n'
};
var CONSTANTS = { // PB IDE color: #924B72 (Cannon Pink)
const CONSTANTS = { // PB IDE color: #924B72 (Cannon Pink)
// "#" + a letter or underscore + letters, digits or underscores + (optional) "$"

@@ -26,3 +27,6 @@ className: 'symbol',

name: 'PureBASIC',
aliases: ['pb', 'pbi'],
aliases: [
'pb',
'pbi'
],
keywords: // PB IDE color: #006666 (Blue Stone) + Bold

@@ -47,3 +51,5 @@ // Keywords from all version of PureBASIC 5.00 upward ...

// COMMENTS | PB IDE color: #00AAAA (Persian Green)
hljs.COMMENT(';', '$', {relevance: 0}),
hljs.COMMENT(';', '$', {
relevance: 0
}),

@@ -50,0 +56,0 @@ { // PROCEDURES DEFINITIONS

@@ -10,3 +10,3 @@ /*

return {
aliases: ['pycon'],
aliases: [ 'pycon' ],
contains: [

@@ -20,14 +20,19 @@ {

starts: {
end: '$', subLanguage: 'python'
end: '$',
subLanguage: 'python'
}
},
variants: [
{ begin: /^>>>(?=[ ]|$)/ },
{ begin: /^\.\.\.(?=[ ]|$)/ }
{
begin: /^>>>(?=[ ]|$)/
},
{
begin: /^\.\.\.(?=[ ]|$)/
}
]
},
}
]
}
};
}
module.exports = pythonRepl;

@@ -8,23 +8,28 @@ /*

*/
function q(hljs) {
var Q_KEYWORDS = {
$pattern: /(`?)[A-Za-z0-9_]+\b/,
keyword:
'do while select delete by update from',
literal:
'0b 1b',
built_in:
'neg not null string reciprocal floor ceiling signum mod xbar xlog and or each scan over prior mmu lsq inv md5 ltime gtime count first var dev med cov cor all any rand sums prds mins maxs fills deltas ratios avgs differ prev next rank reverse iasc idesc asc desc msum mcount mavg mdev xrank mmin mmax xprev rotate distinct group where flip type key til get value attr cut set upsert raze union inter except cross sv vs sublist enlist read0 read1 hopen hclose hdel hsym hcount peach system ltrim rtrim trim lower upper ssr view tables views cols xcols keys xkey xcol xasc xdesc fkeys meta lj aj aj0 ij pj asof uj ww wj wj1 fby xgroup ungroup ej save load rsave rload show csv parse eval min max avg wavg wsum sin cos tan sum',
type:
'`float `double int `timestamp `timespan `datetime `time `boolean `symbol `char `byte `short `long `real `month `date `minute `second `guid'
const KEYWORDS = {
$pattern: /(`?)[A-Za-z0-9_]+\b/,
keyword:
'do while select delete by update from',
literal:
'0b 1b',
built_in:
'neg not null string reciprocal floor ceiling signum mod xbar xlog and or each scan over prior mmu lsq inv md5 ltime gtime count first var dev med cov cor all any rand sums prds mins maxs fills deltas ratios avgs differ prev next rank reverse iasc idesc asc desc msum mcount mavg mdev xrank mmin mmax xprev rotate distinct group where flip type key til get value attr cut set upsert raze union inter except cross sv vs sublist enlist read0 read1 hopen hclose hdel hsym hcount peach system ltrim rtrim trim lower upper ssr view tables views cols xcols keys xkey xcol xasc xdesc fkeys meta lj aj aj0 ij pj asof uj ww wj wj1 fby xgroup ungroup ej save load rsave rload show csv parse eval min max avg wavg wsum sin cos tan sum',
type:
'`float `double int `timestamp `timespan `datetime `time `boolean `symbol `char `byte `short `long `real `month `date `minute `second `guid'
};
return {
name: 'Q',
aliases:['k', 'kdb'],
keywords: Q_KEYWORDS,
contains: [
hljs.C_LINE_COMMENT_MODE,
hljs.QUOTE_STRING_MODE,
hljs.C_NUMBER_MODE
]
name: 'Q',
aliases: [
'k',
'kdb'
],
keywords: KEYWORDS,
contains: [
hljs.C_LINE_COMMENT_MODE,
hljs.QUOTE_STRING_MODE,
hljs.C_NUMBER_MODE
]
};

@@ -31,0 +36,0 @@ }

@@ -37,35 +37,35 @@ /**

function qml(hljs) {
var KEYWORDS = {
keyword:
'in of on if for while finally var new function do return void else break catch ' +
'instanceof with throw case default try this switch continue typeof delete ' +
'let yield const export super debugger as async await import',
literal:
'true false null undefined NaN Infinity',
built_in:
'eval isFinite isNaN parseFloat parseInt decodeURI decodeURIComponent ' +
'encodeURI encodeURIComponent escape unescape Object Function Boolean Error ' +
'EvalError InternalError RangeError ReferenceError StopIteration SyntaxError ' +
'TypeError URIError Number Math Date String RegExp Array Float32Array ' +
'Float64Array Int16Array Int32Array Int8Array Uint16Array Uint32Array ' +
'Uint8Array Uint8ClampedArray ArrayBuffer DataView JSON Intl arguments require ' +
'module console window document Symbol Set Map WeakSet WeakMap Proxy Reflect ' +
'Behavior bool color coordinate date double enumeration font geocircle georectangle ' +
'geoshape int list matrix4x4 parent point quaternion real rect ' +
'size string url variant vector2d vector3d vector4d ' +
'Promise'
};
const KEYWORDS = {
keyword:
'in of on if for while finally var new function do return void else break catch ' +
'instanceof with throw case default try this switch continue typeof delete ' +
'let yield const export super debugger as async await import',
literal:
'true false null undefined NaN Infinity',
built_in:
'eval isFinite isNaN parseFloat parseInt decodeURI decodeURIComponent ' +
'encodeURI encodeURIComponent escape unescape Object Function Boolean Error ' +
'EvalError InternalError RangeError ReferenceError StopIteration SyntaxError ' +
'TypeError URIError Number Math Date String RegExp Array Float32Array ' +
'Float64Array Int16Array Int32Array Int8Array Uint16Array Uint32Array ' +
'Uint8Array Uint8ClampedArray ArrayBuffer DataView JSON Intl arguments require ' +
'module console window document Symbol Set Map WeakSet WeakMap Proxy Reflect ' +
'Behavior bool color coordinate date double enumeration font geocircle georectangle ' +
'geoshape int list matrix4x4 parent point quaternion real rect ' +
'size string url variant vector2d vector3d vector4d ' +
'Promise'
};
var QML_IDENT_RE = '[a-zA-Z_][a-zA-Z0-9\\._]*';
const QML_IDENT_RE = '[a-zA-Z_][a-zA-Z0-9\\._]*';
// Isolate property statements. Ends at a :, =, ;, ,, a comment or end of line.
// Use property class.
var PROPERTY = {
className: 'keyword',
begin: '\\bproperty\\b',
starts: {
className: 'string',
end: '(:|=|;|,|//|/\\*|$)',
returnEnd: true
}
const PROPERTY = {
className: 'keyword',
begin: '\\bproperty\\b',
starts: {
className: 'string',
end: '(:|=|;|,|//|/\\*|$)',
returnEnd: true
}
};

@@ -75,10 +75,10 @@

// Use property class.
var SIGNAL = {
className: 'keyword',
begin: '\\bsignal\\b',
starts: {
className: 'string',
end: '(\\(|:|=|;|,|//|/\\*|$)',
returnEnd: true
}
const SIGNAL = {
className: 'keyword',
begin: '\\bsignal\\b',
starts: {
className: 'string',
end: '(\\(|:|=|;|,|//|/\\*|$)',
returnEnd: true
}
};

@@ -88,10 +88,10 @@

// emphasize the token following.
var ID_ID = {
className: 'attribute',
begin: '\\bid\\s*:',
starts: {
className: 'string',
end: QML_IDENT_RE,
returnEnd: false
}
const ID_ID = {
className: 'attribute',
begin: '\\bid\\s*:',
starts: {
className: 'string',
end: QML_IDENT_RE,
returnEnd: false
}
};

@@ -103,3 +103,3 @@

// ends or the next attribute is detected.
var QML_ATTRIBUTE = {
const QML_ATTRIBUTE = {
begin: QML_IDENT_RE + '\\s*:',

@@ -121,8 +121,11 @@ returnBegin: true,

// All we really care about is finding IDENT followed by { and just mark up the IDENT and ignore the {.
var QML_OBJECT = {
begin: concat(QML_IDENT_RE, /\s*\{/), end: /\{/,
const QML_OBJECT = {
begin: concat(QML_IDENT_RE, /\s*\{/),
end: /\{/,
returnBegin: true,
relevance: 0,
contains: [
hljs.inherit(hljs.TITLE_MODE, {begin: QML_IDENT_RE})
hljs.inherit(hljs.TITLE_MODE, {
begin: QML_IDENT_RE
})
]

@@ -133,3 +136,3 @@ };

name: 'QML',
aliases: ['qt'],
aliases: [ 'qt' ],
case_insensitive: false,

@@ -146,3 +149,4 @@ keywords: KEYWORDS,

className: 'string',
begin: '`', end: '`',
begin: '`',
end: '`',
contains: [

@@ -152,3 +156,4 @@ hljs.BACKSLASH_ESCAPE,

className: 'subst',
begin: '\\$\\{', end: '\\}'
begin: '\\$\\{',
end: '\\}'
}

@@ -162,5 +167,11 @@ ]

variants: [
{ begin: '\\b(0[bB][01]+)' },
{ begin: '\\b(0[oO][0-7]+)' },
{ begin: hljs.C_NUMBER_RE }
{
begin: '\\b(0[bB][01]+)'
},
{
begin: '\\b(0[oO][0-7]+)'
},
{
begin: hljs.C_NUMBER_RE
}
],

@@ -177,3 +188,4 @@ relevance: 0

{ // E4X / JSX
begin: /</, end: />\s*[);\]]/,
begin: /</,
end: />\s*[);\]]/,
relevance: 0,

@@ -189,8 +201,13 @@ subLanguage: 'xml'

className: 'function',
beginKeywords: 'function', end: /\{/, excludeEnd: true,
beginKeywords: 'function',
end: /\{/,
excludeEnd: true,
contains: [
hljs.inherit(hljs.TITLE_MODE, {begin: /[A-Za-z$_][0-9A-Za-z$_]*/}),
hljs.inherit(hljs.TITLE_MODE, {
begin: /[A-Za-z$_][0-9A-Za-z$_]*/
}),
{
className: 'params',
begin: /\(/, end: /\)/,
begin: /\(/,
end: /\)/,
excludeBegin: true,

@@ -207,3 +224,5 @@ excludeEnd: true,

{
begin: '\\.' + hljs.IDENT_RE, relevance: 0 // hack: prevents detection of keywords after dots
// hack: prevents detection of keywords after dots
begin: '\\.' + hljs.IDENT_RE,
relevance: 0
},

@@ -210,0 +229,0 @@ ID_ID,

@@ -9,25 +9,35 @@ /*

function reasonml(hljs) {
function orReValues(ops){
function orReValues(ops) {
return ops
.map(function(op) {
return op
.split('')
.map(function(char) {
return '\\' + char;
})
.join('');
})
.join('|');
.map(function(op) {
return op
.split('')
.map(function(char) {
return '\\' + char;
})
.join('');
})
.join('|');
}
var RE_IDENT = '~?[a-z$_][0-9a-zA-Z$_]*';
var RE_MODULE_IDENT = '`?[A-Z$_][0-9a-zA-Z$_]*';
const RE_IDENT = '~?[a-z$_][0-9a-zA-Z$_]*';
const RE_MODULE_IDENT = '`?[A-Z$_][0-9a-zA-Z$_]*';
var RE_PARAM_TYPEPARAM = '\'?[a-z$_][0-9a-z$_]*';
var RE_PARAM_TYPE = '\s*:\s*[a-z$_][0-9a-z$_]*(\(\s*(' + RE_PARAM_TYPEPARAM + '\s*(,' + RE_PARAM_TYPEPARAM + ')*)?\s*\))?';
var RE_PARAM = RE_IDENT + '(' + RE_PARAM_TYPE + ')?(' + RE_PARAM_TYPE + ')?';
var RE_OPERATOR = "(" + orReValues(['||', '++', '**', '+.', '*', '/', '*.', '/.', '...']) + "|\\|>|&&|==|===)";
var RE_OPERATOR_SPACED = "\\s+" + RE_OPERATOR + "\\s+";
const RE_PARAM_TYPEPARAM = '\'?[a-z$_][0-9a-z$_]*';
const RE_PARAM_TYPE = '\s*:\s*[a-z$_][0-9a-z$_]*(\(\s*(' + RE_PARAM_TYPEPARAM + '\s*(,' + RE_PARAM_TYPEPARAM + ')*)?\s*\))?';
const RE_PARAM = RE_IDENT + '(' + RE_PARAM_TYPE + ')?(' + RE_PARAM_TYPE + ')?';
const RE_OPERATOR = "(" + orReValues([
'||',
'++',
'**',
'+.',
'*',
'/',
'*.',
'/.',
'...'
]) + "|\\|>|&&|==|===)";
const RE_OPERATOR_SPACED = "\\s+" + RE_OPERATOR + "\\s+";
var KEYWORDS = {
const KEYWORDS = {
keyword:

@@ -44,3 +54,3 @@ 'and as asr assert begin class constraint do done downto else end exception external ' +

var RE_NUMBER = '\\b(0[xX][a-fA-F0-9_]+[Lln]?|' +
const RE_NUMBER = '\\b(0[xX][a-fA-F0-9_]+[Lln]?|' +
'0[oO][0-7_]+[Lln]?|' +

@@ -50,3 +60,3 @@ '0[bB][01_]+[Lln]?|' +

var NUMBER_MODE = {
const NUMBER_MODE = {
className: 'number',

@@ -64,3 +74,3 @@ relevance: 0,

var OPERATOR_MODE = {
const OPERATOR_MODE = {
className: 'operator',

@@ -70,3 +80,3 @@ relevance: 0,

};
var LIST_CONTENTS_MODES = [
const LIST_CONTENTS_MODES = [
{

@@ -81,3 +91,3 @@ className: 'identifier',

var MODULE_ACCESS_CONTENTS = [
const MODULE_ACCESS_CONTENTS = [
hljs.QUOTE_STRING_MODE,

@@ -87,3 +97,4 @@ OPERATOR_MODE,

className: 'module',
begin: "\\b" + RE_MODULE_IDENT, returnBegin: true,
begin: "\\b" + RE_MODULE_IDENT,
returnBegin: true,
end: "\.",

@@ -100,6 +111,7 @@ contains: [

var PARAMS_CONTENTS = [
const PARAMS_CONTENTS = [
{
className: 'module',
begin: "\\b" + RE_MODULE_IDENT, returnBegin: true,
begin: "\\b" + RE_MODULE_IDENT,
returnBegin: true,
end: "\.",

@@ -117,3 +129,3 @@ relevance: 0,

var PARAMS_MODE = {
const PARAMS_MODE = {
begin: RE_IDENT,

@@ -135,3 +147,3 @@ end: '(,|\\n|\\))',

var FUNCTION_BLOCK_MODE = {
const FUNCTION_BLOCK_MODE = {
className: 'function',

@@ -157,3 +169,3 @@ relevance: 0,

{
begin: /\(\s*\)/,
begin: /\(\s*\)/
}

@@ -173,5 +185,3 @@ ]

relevance: 0,
variants: [
PARAMS_MODE
]
variants: [ PARAMS_MODE ]
}

@@ -187,3 +197,3 @@ ]

var CONSTRUCTOR_MODE = {
const CONSTRUCTOR_MODE = {
className: 'constructor',

@@ -204,3 +214,3 @@ begin: RE_MODULE_IDENT + '\\(',

var PATTERN_MATCH_BLOCK_MODE = {
const PATTERN_MATCH_BLOCK_MODE = {
className: 'pattern-match',

@@ -223,3 +233,3 @@ begin: '\\|',

var MODULE_ACCESS_MODE = {
const MODULE_ACCESS_MODE = {
className: 'module-access',

@@ -257,7 +267,9 @@ keywords: KEYWORDS,

name: 'ReasonML',
aliases: ['re'],
aliases: [ 're' ],
keywords: KEYWORDS,
illegal: '(:-|:=|\\$\\{|\\+=)',
contains: [
hljs.COMMENT('/\\*', '\\*/', { illegal: '^(#,\\/\\/)' }),
hljs.COMMENT('/\\*', '\\*/', {
illegal: '^(#,\\/\\/)'
}),
{

@@ -279,3 +291,3 @@ className: 'character',

end: '\\|\\]',
relevance: 0,
relevance: 0,
contains: LIST_CONTENTS_MODES

@@ -282,0 +294,0 @@ },

@@ -10,7 +10,9 @@ /*

function roboconf(hljs) {
var IDENTIFIER = '[a-zA-Z-_][^\\n{]+\\{';
const IDENTIFIER = '[a-zA-Z-_][^\\n{]+\\{';
var PROPERTY = {
const PROPERTY = {
className: 'attribute',
begin: /[a-zA-Z-_]+/, end: /\s*:/, excludeEnd: true,
begin: /[a-zA-Z-_]+/,
end: /\s*:/,
excludeEnd: true,
starts: {

@@ -34,3 +36,6 @@ end: ';',

name: 'Roboconf',
aliases: ['graph', 'instances'],
aliases: [
'graph',
'instances'
],
case_insensitive: true,

@@ -37,0 +42,0 @@ keywords: 'import',

@@ -30,4 +30,8 @@ /*

variants: [
{ begin: /\$[\w\d#@][\w\d_]*/ },
{ begin: /\$\{(.*?)\}/ }
{
begin: /\$[\w\d#@][\w\d_]*/
},
{
begin: /\$\{(.*?)\}/
}
]

@@ -47,3 +51,3 @@ };

end: /\)/,
contains: [hljs.BACKSLASH_ESCAPE]
contains: [ hljs.BACKSLASH_ESCAPE ]
}

@@ -61,3 +65,6 @@ ]

name: 'Microtik RouterOS script',
aliases: ['routeros', 'mikrotik'],
aliases: [
'routeros',
'mikrotik'
],
case_insensitive: true,

@@ -72,5 +79,14 @@ keywords: {

variants: [
{ begin: /\/\*/, end: /\*\// }, // -- comment
{ begin: /\/\//, end: /$/ }, // Stan comment
{ begin: /<\//, end: />/ }, // HTML tags
{ // -- comment
begin: /\/\*/,
end: /\*\//
},
{ // Stan comment
begin: /\/\//,
end: /$/
},
{ // HTML tags
begin: /<\//,
end: />/
}
],

@@ -77,0 +93,0 @@ illegal: /./

@@ -33,10 +33,13 @@ /*

className: 'meta',
begin: '#', end: '$'
begin: '#',
end: '$'
},
{
className: 'class',
beginKeywords: 'surface displacement light volume imager', end: '\\('
beginKeywords: 'surface displacement light volume imager',
end: '\\('
},
{
beginKeywords: 'illuminate illuminance gather', end: '\\('
beginKeywords: 'illuminate illuminance gather',
end: '\\('
}

@@ -43,0 +46,0 @@ ]

@@ -13,42 +13,44 @@ /*

keywords: {
keyword: 'BILL_PERIOD BILL_START BILL_STOP RS_EFFECTIVE_START RS_EFFECTIVE_STOP RS_JURIS_CODE RS_OPCO_CODE ' +
'INTDADDATTRIBUTE|5 INTDADDVMSG|5 INTDBLOCKOP|5 INTDBLOCKOPNA|5 INTDCLOSE|5 INTDCOUNT|5 ' +
'INTDCOUNTSTATUSCODE|5 INTDCREATEMASK|5 INTDCREATEDAYMASK|5 INTDCREATEFACTORMASK|5 ' +
'INTDCREATEHANDLE|5 INTDCREATEOVERRIDEDAYMASK|5 INTDCREATEOVERRIDEMASK|5 ' +
'INTDCREATESTATUSCODEMASK|5 INTDCREATETOUPERIOD|5 INTDDELETE|5 INTDDIPTEST|5 INTDEXPORT|5 ' +
'INTDGETERRORCODE|5 INTDGETERRORMESSAGE|5 INTDISEQUAL|5 INTDJOIN|5 INTDLOAD|5 INTDLOADACTUALCUT|5 ' +
'INTDLOADDATES|5 INTDLOADHIST|5 INTDLOADLIST|5 INTDLOADLISTDATES|5 INTDLOADLISTENERGY|5 ' +
'INTDLOADLISTHIST|5 INTDLOADRELATEDCHANNEL|5 INTDLOADSP|5 INTDLOADSTAGING|5 INTDLOADUOM|5 ' +
'INTDLOADUOMDATES|5 INTDLOADUOMHIST|5 INTDLOADVERSION|5 INTDOPEN|5 INTDREADFIRST|5 INTDREADNEXT|5 ' +
'INTDRECCOUNT|5 INTDRELEASE|5 INTDREPLACE|5 INTDROLLAVG|5 INTDROLLPEAK|5 INTDSCALAROP|5 INTDSCALE|5 ' +
'INTDSETATTRIBUTE|5 INTDSETDSTPARTICIPANT|5 INTDSETSTRING|5 INTDSETVALUE|5 INTDSETVALUESTATUS|5 ' +
'INTDSHIFTSTARTTIME|5 INTDSMOOTH|5 INTDSORT|5 INTDSPIKETEST|5 INTDSUBSET|5 INTDTOU|5 ' +
'INTDTOURELEASE|5 INTDTOUVALUE|5 INTDUPDATESTATS|5 INTDVALUE|5 STDEV INTDDELETEEX|5 ' +
'INTDLOADEXACTUAL|5 INTDLOADEXCUT|5 INTDLOADEXDATES|5 INTDLOADEX|5 INTDLOADEXRELATEDCHANNEL|5 ' +
'INTDSAVEEX|5 MVLOAD|5 MVLOADACCT|5 MVLOADACCTDATES|5 MVLOADACCTHIST|5 MVLOADDATES|5 MVLOADHIST|5 ' +
'MVLOADLIST|5 MVLOADLISTDATES|5 MVLOADLISTHIST|5 IF FOR NEXT DONE SELECT END CALL ABORT CLEAR CHANNEL FACTOR LIST NUMBER ' +
'OVERRIDE SET WEEK DISTRIBUTIONNODE ELSE WHEN THEN OTHERWISE IENUM CSV INCLUDE LEAVE RIDER SAVE DELETE ' +
'NOVALUE SECTION WARN SAVE_UPDATE DETERMINANT LABEL REPORT REVENUE EACH ' +
'IN FROM TOTAL CHARGE BLOCK AND OR CSV_FILE RATE_CODE AUXILIARY_DEMAND ' +
'UIDACCOUNT RS BILL_PERIOD_SELECT HOURS_PER_MONTH INTD_ERROR_STOP SEASON_SCHEDULE_NAME ' +
'ACCOUNTFACTOR ARRAYUPPERBOUND CALLSTOREDPROC GETADOCONNECTION GETCONNECT GETDATASOURCE ' +
'GETQUALIFIER GETUSERID HASVALUE LISTCOUNT LISTOP LISTUPDATE LISTVALUE PRORATEFACTOR RSPRORATE ' +
'SETBINPATH SETDBMONITOR WQ_OPEN BILLINGHOURS DATE DATEFROMFLOAT DATETIMEFROMSTRING ' +
'DATETIMETOSTRING DATETOFLOAT DAY DAYDIFF DAYNAME DBDATETIME HOUR MINUTE MONTH MONTHDIFF ' +
'MONTHHOURS MONTHNAME ROUNDDATE SAMEWEEKDAYLASTYEAR SECOND WEEKDAY WEEKDIFF YEAR YEARDAY ' +
'YEARSTR COMPSUM HISTCOUNT HISTMAX HISTMIN HISTMINNZ HISTVALUE MAXNRANGE MAXRANGE MINRANGE ' +
'COMPIKVA COMPKVA COMPKVARFROMKQKW COMPLF IDATTR FLAG LF2KW LF2KWH MAXKW POWERFACTOR ' +
'READING2USAGE AVGSEASON MAXSEASON MONTHLYMERGE SEASONVALUE SUMSEASON ACCTREADDATES ' +
'ACCTTABLELOAD CONFIGADD CONFIGGET CREATEOBJECT CREATEREPORT EMAILCLIENT EXPBLKMDMUSAGE ' +
'EXPMDMUSAGE EXPORT_USAGE FACTORINEFFECT GETUSERSPECIFIEDSTOP INEFFECT ISHOLIDAY RUNRATE ' +
'SAVE_PROFILE SETREPORTTITLE USEREXIT WATFORRUNRATE TO TABLE ACOS ASIN ATAN ATAN2 BITAND CEIL ' +
'COS COSECANT COSH COTANGENT DIVQUOT DIVREM EXP FABS FLOOR FMOD FREPM FREXPN LOG LOG10 MAX MAXN ' +
'MIN MINNZ MODF POW ROUND ROUND2VALUE ROUNDINT SECANT SIN SINH SQROOT TAN TANH FLOAT2STRING ' +
'FLOAT2STRINGNC INSTR LEFT LEN LTRIM MID RIGHT RTRIM STRING STRINGNC TOLOWER TOUPPER TRIM ' +
'NUMDAYS READ_DATE STAGING',
built_in: 'IDENTIFIER OPTIONS XML_ELEMENT XML_OP XML_ELEMENT_OF DOMDOCCREATE DOMDOCLOADFILE DOMDOCLOADXML ' +
'DOMDOCSAVEFILE DOMDOCGETROOT DOMDOCADDPI DOMNODEGETNAME DOMNODEGETTYPE DOMNODEGETVALUE DOMNODEGETCHILDCT ' +
'DOMNODEGETFIRSTCHILD DOMNODEGETSIBLING DOMNODECREATECHILDELEMENT DOMNODESETATTRIBUTE ' +
'DOMNODEGETCHILDELEMENTCT DOMNODEGETFIRSTCHILDELEMENT DOMNODEGETSIBLINGELEMENT DOMNODEGETATTRIBUTECT ' +
'DOMNODEGETATTRIBUTEI DOMNODEGETATTRIBUTEBYNAME DOMNODEGETBYNAME'
keyword:
'BILL_PERIOD BILL_START BILL_STOP RS_EFFECTIVE_START RS_EFFECTIVE_STOP RS_JURIS_CODE RS_OPCO_CODE ' +
'INTDADDATTRIBUTE|5 INTDADDVMSG|5 INTDBLOCKOP|5 INTDBLOCKOPNA|5 INTDCLOSE|5 INTDCOUNT|5 ' +
'INTDCOUNTSTATUSCODE|5 INTDCREATEMASK|5 INTDCREATEDAYMASK|5 INTDCREATEFACTORMASK|5 ' +
'INTDCREATEHANDLE|5 INTDCREATEOVERRIDEDAYMASK|5 INTDCREATEOVERRIDEMASK|5 ' +
'INTDCREATESTATUSCODEMASK|5 INTDCREATETOUPERIOD|5 INTDDELETE|5 INTDDIPTEST|5 INTDEXPORT|5 ' +
'INTDGETERRORCODE|5 INTDGETERRORMESSAGE|5 INTDISEQUAL|5 INTDJOIN|5 INTDLOAD|5 INTDLOADACTUALCUT|5 ' +
'INTDLOADDATES|5 INTDLOADHIST|5 INTDLOADLIST|5 INTDLOADLISTDATES|5 INTDLOADLISTENERGY|5 ' +
'INTDLOADLISTHIST|5 INTDLOADRELATEDCHANNEL|5 INTDLOADSP|5 INTDLOADSTAGING|5 INTDLOADUOM|5 ' +
'INTDLOADUOMDATES|5 INTDLOADUOMHIST|5 INTDLOADVERSION|5 INTDOPEN|5 INTDREADFIRST|5 INTDREADNEXT|5 ' +
'INTDRECCOUNT|5 INTDRELEASE|5 INTDREPLACE|5 INTDROLLAVG|5 INTDROLLPEAK|5 INTDSCALAROP|5 INTDSCALE|5 ' +
'INTDSETATTRIBUTE|5 INTDSETDSTPARTICIPANT|5 INTDSETSTRING|5 INTDSETVALUE|5 INTDSETVALUESTATUS|5 ' +
'INTDSHIFTSTARTTIME|5 INTDSMOOTH|5 INTDSORT|5 INTDSPIKETEST|5 INTDSUBSET|5 INTDTOU|5 ' +
'INTDTOURELEASE|5 INTDTOUVALUE|5 INTDUPDATESTATS|5 INTDVALUE|5 STDEV INTDDELETEEX|5 ' +
'INTDLOADEXACTUAL|5 INTDLOADEXCUT|5 INTDLOADEXDATES|5 INTDLOADEX|5 INTDLOADEXRELATEDCHANNEL|5 ' +
'INTDSAVEEX|5 MVLOAD|5 MVLOADACCT|5 MVLOADACCTDATES|5 MVLOADACCTHIST|5 MVLOADDATES|5 MVLOADHIST|5 ' +
'MVLOADLIST|5 MVLOADLISTDATES|5 MVLOADLISTHIST|5 IF FOR NEXT DONE SELECT END CALL ABORT CLEAR CHANNEL FACTOR LIST NUMBER ' +
'OVERRIDE SET WEEK DISTRIBUTIONNODE ELSE WHEN THEN OTHERWISE IENUM CSV INCLUDE LEAVE RIDER SAVE DELETE ' +
'NOVALUE SECTION WARN SAVE_UPDATE DETERMINANT LABEL REPORT REVENUE EACH ' +
'IN FROM TOTAL CHARGE BLOCK AND OR CSV_FILE RATE_CODE AUXILIARY_DEMAND ' +
'UIDACCOUNT RS BILL_PERIOD_SELECT HOURS_PER_MONTH INTD_ERROR_STOP SEASON_SCHEDULE_NAME ' +
'ACCOUNTFACTOR ARRAYUPPERBOUND CALLSTOREDPROC GETADOCONNECTION GETCONNECT GETDATASOURCE ' +
'GETQUALIFIER GETUSERID HASVALUE LISTCOUNT LISTOP LISTUPDATE LISTVALUE PRORATEFACTOR RSPRORATE ' +
'SETBINPATH SETDBMONITOR WQ_OPEN BILLINGHOURS DATE DATEFROMFLOAT DATETIMEFROMSTRING ' +
'DATETIMETOSTRING DATETOFLOAT DAY DAYDIFF DAYNAME DBDATETIME HOUR MINUTE MONTH MONTHDIFF ' +
'MONTHHOURS MONTHNAME ROUNDDATE SAMEWEEKDAYLASTYEAR SECOND WEEKDAY WEEKDIFF YEAR YEARDAY ' +
'YEARSTR COMPSUM HISTCOUNT HISTMAX HISTMIN HISTMINNZ HISTVALUE MAXNRANGE MAXRANGE MINRANGE ' +
'COMPIKVA COMPKVA COMPKVARFROMKQKW COMPLF IDATTR FLAG LF2KW LF2KWH MAXKW POWERFACTOR ' +
'READING2USAGE AVGSEASON MAXSEASON MONTHLYMERGE SEASONVALUE SUMSEASON ACCTREADDATES ' +
'ACCTTABLELOAD CONFIGADD CONFIGGET CREATEOBJECT CREATEREPORT EMAILCLIENT EXPBLKMDMUSAGE ' +
'EXPMDMUSAGE EXPORT_USAGE FACTORINEFFECT GETUSERSPECIFIEDSTOP INEFFECT ISHOLIDAY RUNRATE ' +
'SAVE_PROFILE SETREPORTTITLE USEREXIT WATFORRUNRATE TO TABLE ACOS ASIN ATAN ATAN2 BITAND CEIL ' +
'COS COSECANT COSH COTANGENT DIVQUOT DIVREM EXP FABS FLOOR FMOD FREPM FREXPN LOG LOG10 MAX MAXN ' +
'MIN MINNZ MODF POW ROUND ROUND2VALUE ROUNDINT SECANT SIN SINH SQROOT TAN TANH FLOAT2STRING ' +
'FLOAT2STRINGNC INSTR LEFT LEN LTRIM MID RIGHT RTRIM STRING STRINGNC TOLOWER TOUPPER TRIM ' +
'NUMDAYS READ_DATE STAGING',
built_in:
'IDENTIFIER OPTIONS XML_ELEMENT XML_OP XML_ELEMENT_OF DOMDOCCREATE DOMDOCLOADFILE DOMDOCLOADXML ' +
'DOMDOCSAVEFILE DOMDOCGETROOT DOMDOCADDPI DOMNODEGETNAME DOMNODEGETTYPE DOMNODEGETVALUE DOMNODEGETCHILDCT ' +
'DOMNODEGETFIRSTCHILD DOMNODEGETSIBLING DOMNODECREATECHILDELEMENT DOMNODESETATTRIBUTE ' +
'DOMNODEGETCHILDELEMENTCT DOMNODEGETFIRSTCHILDELEMENT DOMNODEGETSIBLINGELEMENT DOMNODEGETATTRIBUTECT ' +
'DOMNODEGETATTRIBUTEI DOMNODEGETATTRIBUTEBYNAME DOMNODEGETBYNAME'
},

@@ -64,4 +66,9 @@ contains: [

variants: [
{begin: '#\\s+[a-zA-Z .]*', relevance: 0}, // looks like #-comment
{begin: '#[a-zA-Z .]+'}
{ // looks like #-comment
begin: '#\\s+[a-zA-Z .]*',
relevance: 0
},
{
begin: '#[a-zA-Z .]+'
}
]

@@ -68,0 +75,0 @@ }

@@ -10,4 +10,4 @@ /*

function rust(hljs) {
var NUM_SUFFIX = '([ui](8|16|32|64|128|size)|f(32|64))\?';
var KEYWORDS =
const NUM_SUFFIX = '([ui](8|16|32|64|128|size)|f(32|64))\?';
const KEYWORDS =
'abstract as async await become box break const continue crate do dyn ' +

@@ -17,3 +17,3 @@ 'else enum extern false final fn for if impl in let loop macro match mod ' +

'trait true try type typeof unsafe unsized use virtual where while yield';
var BUILTINS =
const BUILTINS =
// functions

@@ -40,3 +40,3 @@ 'drop ' +

name: 'Rust',
aliases: ['rs'],
aliases: [ 'rs' ],
keywords: {

@@ -54,9 +54,18 @@ $pattern: hljs.IDENT_RE + '!?',

hljs.C_LINE_COMMENT_MODE,
hljs.COMMENT('/\\*', '\\*/', {contains: ['self']}),
hljs.inherit(hljs.QUOTE_STRING_MODE, {begin: /b?"/, illegal: null}),
hljs.COMMENT('/\\*', '\\*/', {
contains: [ 'self' ]
}),
hljs.inherit(hljs.QUOTE_STRING_MODE, {
begin: /b?"/,
illegal: null
}),
{
className: 'string',
variants: [
{ begin: /r(#*)"(.|\n)*?"\1(?!#)/ },
{ begin: /b?'\\?(x\w{2}|u\w{4}|U\w{8}|.)'/ }
{
begin: /r(#*)"(.|\n)*?"\1(?!#)/
},
{
begin: /b?'\\?(x\w{2}|u\w{4}|U\w{8}|.)'/
}
]

@@ -71,6 +80,13 @@ },

variants: [
{ begin: '\\b0b([01_]+)' + NUM_SUFFIX },
{ begin: '\\b0o([0-7_]+)' + NUM_SUFFIX },
{ begin: '\\b0x([A-Fa-f0-9_]+)' + NUM_SUFFIX },
{ begin: '\\b(\\d[\\d_]*(\\.[0-9_]+)?([eE][+-]?[0-9_]+)?)' +
{
begin: '\\b0b([01_]+)' + NUM_SUFFIX
},
{
begin: '\\b0o([0-7_]+)' + NUM_SUFFIX
},
{
begin: '\\b0x([A-Fa-f0-9_]+)' + NUM_SUFFIX
},
{
begin: '\\b(\\d[\\d_]*(\\.[0-9_]+)?([eE][+-]?[0-9_]+)?)' +
NUM_SUFFIX

@@ -83,12 +99,16 @@ }

className: 'function',
beginKeywords: 'fn', end: '(\\(|<)', excludeEnd: true,
contains: [hljs.UNDERSCORE_TITLE_MODE]
beginKeywords: 'fn',
end: '(\\(|<)',
excludeEnd: true,
contains: [ hljs.UNDERSCORE_TITLE_MODE ]
},
{
className: 'meta',
begin: '#!?\\[', end: '\\]',
begin: '#!?\\[',
end: '\\]',
contains: [
{
className: 'meta-string',
begin: /"/, end: /"/
begin: /"/,
end: /"/
}

@@ -99,5 +119,8 @@ ]

className: 'class',
beginKeywords: 'type', end: ';',
beginKeywords: 'type',
end: ';',
contains: [
hljs.inherit(hljs.UNDERSCORE_TITLE_MODE, {endsParent: true})
hljs.inherit(hljs.UNDERSCORE_TITLE_MODE, {
endsParent: true
})
],

@@ -108,5 +131,8 @@ illegal: '\\S'

className: 'class',
beginKeywords: 'trait enum struct union', end: /\{/,
beginKeywords: 'trait enum struct union',
end: /\{/,
contains: [
hljs.inherit(hljs.UNDERSCORE_TITLE_MODE, {endsParent: true})
hljs.inherit(hljs.UNDERSCORE_TITLE_MODE, {
endsParent: true
})
],

@@ -117,3 +143,5 @@ illegal: '[\\w\\d]'

begin: hljs.IDENT_RE + '::',
keywords: {built_in: BUILTINS}
keywords: {
built_in: BUILTINS
}
},

@@ -120,0 +148,0 @@ {

@@ -8,128 +8,131 @@ /*

function sas(hljs) {
// Data step and PROC SQL statements
const SAS_KEYWORDS =
'do if then else end until while ' +
'' +
'abort array attrib by call cards cards4 catname continue ' +
'datalines datalines4 delete delim delimiter display dm drop ' +
'endsas error file filename footnote format goto in infile ' +
'informat input keep label leave length libname link list ' +
'lostcard merge missing modify options output out page put ' +
'redirect remove rename replace retain return select set skip ' +
'startsas stop title update waitsas where window x systask ' +
'' +
'add and alter as cascade check create delete describe ' +
'distinct drop foreign from group having index insert into in ' +
'key like message modify msgtype not null on or order primary ' +
'references reset restrict select set table unique update ' +
'validate view where';
// Data step and PROC SQL statements
var SAS_KEYWORDS = ''+
'do if then else end until while '+
''+
'abort array attrib by call cards cards4 catname continue '+
'datalines datalines4 delete delim delimiter display dm drop '+
'endsas error file filename footnote format goto in infile '+
'informat input keep label leave length libname link list '+
'lostcard merge missing modify options output out page put '+
'redirect remove rename replace retain return select set skip '+
'startsas stop title update waitsas where window x systask '+
''+
'add and alter as cascade check create delete describe '+
'distinct drop foreign from group having index insert into in '+
'key like message modify msgtype not null on or order primary '+
'references reset restrict select set table unique update '+
'validate view where';
// Built-in SAS functions
const SAS_FUN =
'abs|addr|airy|arcos|arsin|atan|attrc|attrn|band|' +
'betainv|blshift|bnot|bor|brshift|bxor|byte|cdf|ceil|' +
'cexist|cinv|close|cnonct|collate|compbl|compound|' +
'compress|cos|cosh|css|curobs|cv|daccdb|daccdbsl|' +
'daccsl|daccsyd|dacctab|dairy|date|datejul|datepart|' +
'datetime|day|dclose|depdb|depdbsl|depdbsl|depsl|' +
'depsl|depsyd|depsyd|deptab|deptab|dequote|dhms|dif|' +
'digamma|dim|dinfo|dnum|dopen|doptname|doptnum|dread|' +
'dropnote|dsname|erf|erfc|exist|exp|fappend|fclose|' +
'fcol|fdelete|fetch|fetchobs|fexist|fget|fileexist|' +
'filename|fileref|finfo|finv|fipname|fipnamel|' +
'fipstate|floor|fnonct|fnote|fopen|foptname|foptnum|' +
'fpoint|fpos|fput|fread|frewind|frlen|fsep|fuzz|' +
'fwrite|gaminv|gamma|getoption|getvarc|getvarn|hbound|' +
'hms|hosthelp|hour|ibessel|index|indexc|indexw|input|' +
'inputc|inputn|int|intck|intnx|intrr|irr|jbessel|' +
'juldate|kurtosis|lag|lbound|left|length|lgamma|' +
'libname|libref|log|log10|log2|logpdf|logpmf|logsdf|' +
'lowcase|max|mdy|mean|min|minute|mod|month|mopen|' +
'mort|n|netpv|nmiss|normal|note|npv|open|ordinal|' +
'pathname|pdf|peek|peekc|pmf|point|poisson|poke|' +
'probbeta|probbnml|probchi|probf|probgam|probhypr|' +
'probit|probnegb|probnorm|probt|put|putc|putn|qtr|' +
'quote|ranbin|rancau|ranexp|rangam|range|rank|rannor|' +
'ranpoi|rantbl|rantri|ranuni|repeat|resolve|reverse|' +
'rewind|right|round|saving|scan|sdf|second|sign|' +
'sin|sinh|skewness|soundex|spedis|sqrt|std|stderr|' +
'stfips|stname|stnamel|substr|sum|symget|sysget|' +
'sysmsg|sysprod|sysrc|system|tan|tanh|time|timepart|' +
'tinv|tnonct|today|translate|tranwrd|trigamma|' +
'trim|trimn|trunc|uniform|upcase|uss|var|varfmt|' +
'varinfmt|varlabel|varlen|varname|varnum|varray|' +
'varrayx|vartype|verify|vformat|vformatd|vformatdx|' +
'vformatn|vformatnx|vformatw|vformatwx|vformatx|' +
'vinarray|vinarrayx|vinformat|vinformatd|vinformatdx|' +
'vinformatn|vinformatnx|vinformatw|vinformatwx|' +
'vinformatx|vlabel|vlabelx|vlength|vlengthx|vname|' +
'vnamex|vtype|vtypex|weekday|year|yyq|zipfips|zipname|' +
'zipnamel|zipstate';
// Built-in SAS functions
var SAS_FUN = ''+
'abs|addr|airy|arcos|arsin|atan|attrc|attrn|band|'+
'betainv|blshift|bnot|bor|brshift|bxor|byte|cdf|ceil|'+
'cexist|cinv|close|cnonct|collate|compbl|compound|'+
'compress|cos|cosh|css|curobs|cv|daccdb|daccdbsl|'+
'daccsl|daccsyd|dacctab|dairy|date|datejul|datepart|'+
'datetime|day|dclose|depdb|depdbsl|depdbsl|depsl|'+
'depsl|depsyd|depsyd|deptab|deptab|dequote|dhms|dif|'+
'digamma|dim|dinfo|dnum|dopen|doptname|doptnum|dread|'+
'dropnote|dsname|erf|erfc|exist|exp|fappend|fclose|'+
'fcol|fdelete|fetch|fetchobs|fexist|fget|fileexist|'+
'filename|fileref|finfo|finv|fipname|fipnamel|'+
'fipstate|floor|fnonct|fnote|fopen|foptname|foptnum|'+
'fpoint|fpos|fput|fread|frewind|frlen|fsep|fuzz|'+
'fwrite|gaminv|gamma|getoption|getvarc|getvarn|hbound|'+
'hms|hosthelp|hour|ibessel|index|indexc|indexw|input|'+
'inputc|inputn|int|intck|intnx|intrr|irr|jbessel|'+
'juldate|kurtosis|lag|lbound|left|length|lgamma|'+
'libname|libref|log|log10|log2|logpdf|logpmf|logsdf|'+
'lowcase|max|mdy|mean|min|minute|mod|month|mopen|'+
'mort|n|netpv|nmiss|normal|note|npv|open|ordinal|'+
'pathname|pdf|peek|peekc|pmf|point|poisson|poke|'+
'probbeta|probbnml|probchi|probf|probgam|probhypr|'+
'probit|probnegb|probnorm|probt|put|putc|putn|qtr|'+
'quote|ranbin|rancau|ranexp|rangam|range|rank|rannor|'+
'ranpoi|rantbl|rantri|ranuni|repeat|resolve|reverse|'+
'rewind|right|round|saving|scan|sdf|second|sign|'+
'sin|sinh|skewness|soundex|spedis|sqrt|std|stderr|'+
'stfips|stname|stnamel|substr|sum|symget|sysget|'+
'sysmsg|sysprod|sysrc|system|tan|tanh|time|timepart|'+
'tinv|tnonct|today|translate|tranwrd|trigamma|'+
'trim|trimn|trunc|uniform|upcase|uss|var|varfmt|'+
'varinfmt|varlabel|varlen|varname|varnum|varray|'+
'varrayx|vartype|verify|vformat|vformatd|vformatdx|'+
'vformatn|vformatnx|vformatw|vformatwx|vformatx|'+
'vinarray|vinarrayx|vinformat|vinformatd|vinformatdx|'+
'vinformatn|vinformatnx|vinformatw|vinformatwx|'+
'vinformatx|vlabel|vlabelx|vlength|vlengthx|vname|'+
'vnamex|vtype|vtypex|weekday|year|yyq|zipfips|zipname|'+
'zipnamel|zipstate';
// Built-in macro functions
const SAS_MACRO_FUN =
'bquote|nrbquote|cmpres|qcmpres|compstor|' +
'datatyp|display|do|else|end|eval|global|goto|' +
'if|index|input|keydef|label|left|length|let|' +
'local|lowcase|macro|mend|nrbquote|nrquote|' +
'nrstr|put|qcmpres|qleft|qlowcase|qscan|' +
'qsubstr|qsysfunc|qtrim|quote|qupcase|scan|str|' +
'substr|superq|syscall|sysevalf|sysexec|sysfunc|' +
'sysget|syslput|sysprod|sysrc|sysrput|then|to|' +
'trim|unquote|until|upcase|verify|while|window';
// Built-in macro functions
var SAS_MACRO_FUN = 'bquote|nrbquote|cmpres|qcmpres|compstor|'+
'datatyp|display|do|else|end|eval|global|goto|'+
'if|index|input|keydef|label|left|length|let|'+
'local|lowcase|macro|mend|nrbquote|nrquote|'+
'nrstr|put|qcmpres|qleft|qlowcase|qscan|'+
'qsubstr|qsysfunc|qtrim|quote|qupcase|scan|str|'+
'substr|superq|syscall|sysevalf|sysexec|sysfunc|'+
'sysget|syslput|sysprod|sysrc|sysrput|then|to|'+
'trim|unquote|until|upcase|verify|while|window';
return {
name: 'SAS',
aliases: ['sas', 'SAS'],
case_insensitive: true, // SAS is case-insensitive
keywords: {
literal:
'null missing _all_ _automatic_ _character_ _infile_ '+
'_n_ _name_ _null_ _numeric_ _user_ _webout_',
meta:
SAS_KEYWORDS
},
contains: [
{
// Distinct highlight for proc <proc>, data, run, quit
className: 'keyword',
begin: /^\s*(proc [\w\d_]+|data|run|quit)[\s;]/
},
{
// Macro variables
className: 'variable',
begin: /&[a-zA-Z_&][a-zA-Z0-9_]*\.?/
},
{
// Special emphasis for datalines|cards
className: 'emphasis',
begin: /^\s*datalines|cards.*;/,
end: /^\s*;\s*$/
},
{ // Built-in macro variables take precedence
className: 'built_in',
begin: '%(' + SAS_MACRO_FUN + ')'
},
{
// User-defined macro functions highlighted after
className: 'name',
begin: /%[a-zA-Z_][a-zA-Z_0-9]*/
},
{
className: 'meta',
begin: '[^%](' + SAS_FUN + ')[\(]'
},
{
className: 'string',
variants: [
hljs.APOS_STRING_MODE,
hljs.QUOTE_STRING_MODE
]
},
hljs.COMMENT('\\*', ';'),
hljs.C_BLOCK_COMMENT_MODE
return {
name: 'SAS',
aliases: [
'sas',
'SAS'
],
case_insensitive: true, // SAS is case-insensitive
keywords: {
literal:
'null missing _all_ _automatic_ _character_ _infile_ ' +
'_n_ _name_ _null_ _numeric_ _user_ _webout_',
meta:
SAS_KEYWORDS
},
contains: [
{
// Distinct highlight for proc <proc>, data, run, quit
className: 'keyword',
begin: /^\s*(proc [\w\d_]+|data|run|quit)[\s;]/
},
{
// Macro variables
className: 'variable',
begin: /&[a-zA-Z_&][a-zA-Z0-9_]*\.?/
},
{
// Special emphasis for datalines|cards
className: 'emphasis',
begin: /^\s*datalines|cards.*;/,
end: /^\s*;\s*$/
},
{ // Built-in macro variables take precedence
className: 'built_in',
begin: '%(' + SAS_MACRO_FUN + ')'
},
{
// User-defined macro functions highlighted after
className: 'name',
begin: /%[a-zA-Z_][a-zA-Z_0-9]*/
},
{
className: 'meta',
begin: '[^%](' + SAS_FUN + ')[\(]'
},
{
className: 'string',
variants: [
hljs.APOS_STRING_MODE,
hljs.QUOTE_STRING_MODE
]
};
},
hljs.COMMENT('\\*', ';'),
hljs.C_BLOCK_COMMENT_MODE
]
};
}
module.exports = sas;

@@ -10,35 +10,47 @@ /*

function scala(hljs) {
const ANNOTATION = {
className: 'meta',
begin: '@[A-Za-z]+'
};
var ANNOTATION = { className: 'meta', begin: '@[A-Za-z]+' };
// used in strings for escaping/interpolation/substitution
var SUBST = {
const SUBST = {
className: 'subst',
variants: [
{begin: '\\$[A-Za-z0-9_]+'},
{begin: /\$\{/, end: /\}/}
{
begin: '\\$[A-Za-z0-9_]+'
},
{
begin: /\$\{/,
end: /\}/
}
]
};
var STRING = {
const STRING = {
className: 'string',
variants: [
{
begin: '"', end: '"',
begin: '"',
end: '"',
illegal: '\\n',
contains: [hljs.BACKSLASH_ESCAPE]
contains: [ hljs.BACKSLASH_ESCAPE ]
},
{
begin: '"""', end: '"""',
begin: '"""',
end: '"""',
relevance: 10
},
{
begin: '[a-z]+"', end: '"',
begin: '[a-z]+"',
end: '"',
illegal: '\\n',
contains: [hljs.BACKSLASH_ESCAPE, SUBST]
contains: [ hljs.BACKSLASH_ESCAPE,
SUBST ]
},
{
className: 'string',
begin: '[a-z]+"""', end: '"""',
contains: [SUBST],
begin: '[a-z]+"""',
end: '"""',
contains: [ SUBST ],
relevance: 10

@@ -50,3 +62,3 @@ }

var SYMBOL = {
const SYMBOL = {
className: 'symbol',

@@ -56,3 +68,3 @@ begin: '\'\\w[\\w\\d_]*(?!\')'

var TYPE = {
const TYPE = {
className: 'type',

@@ -63,3 +75,3 @@ begin: '\\b[A-Z][A-Za-z0-9_]*',

var NAME = {
const NAME = {
className: 'title',

@@ -70,3 +82,3 @@ begin: /[^0-9\n\t "'(),.`{}\[\]:;][^\n\t "'(),.`{}\[\]:;]+|[^0-9\n\t "'(),.`{}\[\]:;=]/,

var CLASS = {
const CLASS = {
className: 'class',

@@ -89,3 +101,3 @@ beginKeywords: 'class object trait type',

relevance: 0,
contains: [TYPE]
contains: [ TYPE ]
},

@@ -99,3 +111,3 @@ {

relevance: 0,
contains: [TYPE]
contains: [ TYPE ]
},

@@ -106,3 +118,3 @@ NAME

var METHOD = {
const METHOD = {
className: 'function',

@@ -112,3 +124,3 @@ beginKeywords: 'def',

excludeEnd: true,
contains: [NAME]
contains: [ NAME ]
};

@@ -115,0 +127,0 @@

@@ -11,9 +11,12 @@ /*

function scilab(hljs) {
var COMMON_CONTAINS = [
const COMMON_CONTAINS = [
hljs.C_NUMBER_MODE,
{
className: 'string',
begin: '\'|\"', end: '\'|\"',
contains: [hljs.BACKSLASH_ESCAPE, {begin: '\'\''}]
begin: '\'|\"',
end: '\'|\"',
contains: [ hljs.BACKSLASH_ESCAPE,
{
begin: '\'\''
} ]
}

@@ -24,6 +27,6 @@ ];

name: 'Scilab',
aliases: ['sci'],
aliases: [ 'sci' ],
keywords: {
$pattern: /%?\w+/,
keyword: 'abort break case clear catch continue do elseif else endfunction end for function '+
keyword: 'abort break case clear catch continue do elseif else endfunction end for function ' +
'global if pause return resume select try then while',

@@ -33,7 +36,7 @@ literal:

built_in: // Scilab has more than 2000 functions. Just list the most commons
'abs and acos asin atan ceil cd chdir clearglobal cosh cos cumprod deff disp error '+
'exec execstr exists exp eye gettext floor fprintf fread fsolve imag isdef isempty '+
'isinfisnan isvector lasterror length load linspace list listfiles log10 log2 log '+
'max min msprintf mclose mopen ones or pathconvert poly printf prod pwd rand real '+
'round sinh sin size gsort sprintf sqrt strcat strcmps tring sum system tanh tan '+
'abs and acos asin atan ceil cd chdir clearglobal cosh cos cumprod deff disp error ' +
'exec execstr exists exp eye gettext floor fprintf fread fsolve imag isdef isempty ' +
'isinfisnan isvector lasterror length load linspace list listfiles log10 log2 log ' +
'max min msprintf mclose mopen ones or pathconvert poly printf prod pwd rand real ' +
'round sinh sin size gsort sprintf sqrt strcat strcmps tring sum system tanh tan ' +
'type typename warning zeros matrix'

@@ -45,3 +48,4 @@ },

className: 'function',
beginKeywords: 'function', end: '$',
beginKeywords: 'function',
end: '$',
contains: [

@@ -51,3 +55,4 @@ hljs.UNDERSCORE_TITLE_MODE,

className: 'params',
begin: '\\(', end: '\\)'
begin: '\\(',
end: '\\)'
}

@@ -57,7 +62,9 @@ ]

{
begin: '[a-zA-Z_][a-zA-Z_0-9]*(\'+[\\.\']*|[\\.\']+)', end: '',
begin: '[a-zA-Z_][a-zA-Z_0-9]*(\'+[\\.\']*|[\\.\']+)',
end: '',
relevance: 0
},
{
begin: '\\[', end: '\\]\'*[\\.\']*',
begin: '\\[',
end: '\\]\'*[\\.\']*',
relevance: 0,

@@ -64,0 +71,0 @@ contains: COMMON_CONTAINS

@@ -6,20 +6,26 @@ /*

Category: common
Audit: 2020
*/
/** @type LanguageFn */
function shell(hljs) {
return {
name: 'Shell Session',
aliases: ['console'],
aliases: [ 'console' ],
contains: [
{
className: 'meta',
begin: '^\\s{0,3}[/\\w\\d\\[\\]()@-]*[>%$#]',
// We cannot add \s (spaces) in the regular expression otherwise it will be too broad and produce unexpected result.
// For instance, in the following example, it would match "echo /path/to/home >" as a prompt:
// echo /path/to/home > t.exe
begin: /^\s{0,3}[/~\w\d[\]()@-]*[>%$#]/,
starts: {
end: '$', subLanguage: 'bash'
end: /[^\\](?=\s*$)/,
subLanguage: 'bash'
}
}
]
}
};
}
module.exports = shell;

@@ -9,12 +9,73 @@ /*

function smali(hljs) {
var smali_instr_low_prio = ['add', 'and', 'cmp', 'cmpg', 'cmpl', 'const', 'div', 'double', 'float', 'goto', 'if', 'int', 'long', 'move', 'mul', 'neg', 'new', 'nop', 'not', 'or', 'rem', 'return', 'shl', 'shr', 'sput', 'sub', 'throw', 'ushr', 'xor'];
var smali_instr_high_prio = ['aget', 'aput', 'array', 'check', 'execute', 'fill', 'filled', 'goto/16', 'goto/32', 'iget', 'instance', 'invoke', 'iput', 'monitor', 'packed', 'sget', 'sparse'];
var smali_keywords = ['transient', 'constructor', 'abstract', 'final', 'synthetic', 'public', 'private', 'protected', 'static', 'bridge', 'system'];
const smali_instr_low_prio = [
'add',
'and',
'cmp',
'cmpg',
'cmpl',
'const',
'div',
'double',
'float',
'goto',
'if',
'int',
'long',
'move',
'mul',
'neg',
'new',
'nop',
'not',
'or',
'rem',
'return',
'shl',
'shr',
'sput',
'sub',
'throw',
'ushr',
'xor'
];
const smali_instr_high_prio = [
'aget',
'aput',
'array',
'check',
'execute',
'fill',
'filled',
'goto/16',
'goto/32',
'iget',
'instance',
'invoke',
'iput',
'monitor',
'packed',
'sget',
'sparse'
];
const smali_keywords = [
'transient',
'constructor',
'abstract',
'final',
'synthetic',
'public',
'private',
'protected',
'static',
'bridge',
'system'
];
return {
name: 'Smali',
aliases: ['smali'],
aliases: [ 'smali' ],
contains: [
{
className: 'string',
begin: '"', end: '"',
begin: '"',
end: '"',
relevance: 0

@@ -32,6 +93,16 @@ },

variants: [
{begin: '\\s*\\.end\\s[a-zA-Z0-9]*'},
{begin: '^[ ]*\\.[a-zA-Z]*', relevance: 0},
{begin: '\\s:[a-zA-Z_0-9]*', relevance: 0},
{begin: '\\s(' + smali_keywords.join('|') + ')'}
{
begin: '\\s*\\.end\\s[a-zA-Z0-9]*'
},
{
begin: '^[ ]*\\.[a-zA-Z]*',
relevance: 0
},
{
begin: '\\s:[a-zA-Z_0-9]*',
relevance: 0
},
{
begin: '\\s(' + smali_keywords.join('|') + ')'
}
]

@@ -41,14 +112,14 @@ },

className: 'built_in',
variants : [
variants: [
{
begin: '\\s('+smali_instr_low_prio.join('|')+')\\s'
begin: '\\s(' + smali_instr_low_prio.join('|') + ')\\s'
},
{
begin: '\\s('+smali_instr_low_prio.join('|')+')((-|/)[a-zA-Z0-9]+)+\\s',
begin: '\\s(' + smali_instr_low_prio.join('|') + ')((-|/)[a-zA-Z0-9]+)+\\s',
relevance: 10
},
{
begin: '\\s('+smali_instr_high_prio.join('|')+')((-|/)[a-zA-Z0-9]+)*\\s',
begin: '\\s(' + smali_instr_high_prio.join('|') + ')((-|/)[a-zA-Z0-9]+)*\\s',
relevance: 10
},
}
]

@@ -62,3 +133,3 @@ },

{
begin: '[vp][0-9]+',
begin: '[vp][0-9]+'
}

@@ -65,0 +136,0 @@ ]

@@ -9,8 +9,8 @@ /*

function smalltalk(hljs) {
var VAR_IDENT_RE = '[a-z][a-zA-Z0-9_]*';
var CHAR = {
const VAR_IDENT_RE = '[a-z][a-zA-Z0-9_]*';
const CHAR = {
className: 'string',
begin: '\\$.{1}'
};
var SYMBOL = {
const SYMBOL = {
className: 'symbol',

@@ -21,3 +21,3 @@ begin: '#' + hljs.UNDERSCORE_IDENT_RE

name: 'Smalltalk',
aliases: ['st'],
aliases: [ 'st' ],
keywords: 'self super nil true false thisContext', // only 6

@@ -44,8 +44,12 @@ contains: [

begin: '\\|[ ]*' + VAR_IDENT_RE + '([ ]+' + VAR_IDENT_RE + ')*[ ]*\\|',
returnBegin: true, end: /\|/,
returnBegin: true,
end: /\|/,
illegal: /\S/,
contains: [{begin: '(\\|[ ]*)?' + VAR_IDENT_RE}]
contains: [ {
begin: '(\\|[ ]*)?' + VAR_IDENT_RE
} ]
},
{
begin: '#\\(', end: '\\)',
begin: '#\\(',
end: '\\)',
contains: [

@@ -52,0 +56,0 @@ hljs.APOS_STRING_MODE,

@@ -12,3 +12,3 @@ /*

name: 'SML (Standard ML)',
aliases: ['ml'],
aliases: [ 'ml' ],
keywords: {

@@ -39,3 +39,3 @@ $pattern: '[a-z_]\\w*!?',

{
contains: ['self']
contains: [ 'self' ]
}

@@ -57,7 +57,12 @@ ),

},
{ /* don't color identifiers, but safely catch all identifiers with '*/
{ /* don't color identifiers, but safely catch all identifiers with ' */
begin: '[a-z_]\\w*\'[\\w\']*'
},
hljs.inherit(hljs.APOS_STRING_MODE, {className: 'string', relevance: 0}),
hljs.inherit(hljs.QUOTE_STRING_MODE, {illegal: null}),
hljs.inherit(hljs.APOS_STRING_MODE, {
className: 'string',
relevance: 0
}),
hljs.inherit(hljs.QUOTE_STRING_MODE, {
illegal: null
}),
{

@@ -64,0 +69,0 @@ className: 'number',

@@ -12,3 +12,3 @@ /*

// In SQF, a variable start with _
var VARIABLE = {
const VARIABLE = {
className: 'variable',

@@ -20,3 +20,3 @@ begin: /\b_+[a-zA-Z_]\w*/

// https://community.bistudio.com/wiki/Functions_Library_(Arma_3)#Adding_a_Function
var FUNCTION = {
const FUNCTION = {
className: 'title',

@@ -28,3 +28,3 @@ begin: /[a-zA-Z][a-zA-Z0-9]+_fnc_\w*/

// Example of single escaped quotes: " "" " and ' '' '.
var STRINGS = {
const STRINGS = {
className: 'string',

@@ -35,3 +35,6 @@ variants: [

end: '"',
contains: [{begin: '""', relevance: 0}]
contains: [ {
begin: '""',
relevance: 0
} ]
},

@@ -41,3 +44,6 @@ {

end: '\'',
contains: [{begin: '\'\'', relevance: 0}]
contains: [ {
begin: '\'\'',
relevance: 0
} ]
}

@@ -49,5 +55,6 @@ ]

// https://community.bistudio.com/wiki/PreProcessor_Commands
var PREPROCESSOR = {
const PREPROCESSOR = {
className: 'meta',
begin: /#\s*[a-z]+\b/, end: /$/,
begin: /#\s*[a-z]+\b/,
end: /$/,
keywords: {

@@ -59,9 +66,13 @@ 'meta-keyword':

{
begin: /\\\n/, relevance: 0
begin: /\\\n/,
relevance: 0
},
hljs.inherit(STRINGS, {className: 'meta-string'}),
hljs.inherit(STRINGS, {
className: 'meta-string'
}),
{
className: 'meta-string',
begin: /<[^\n>]*>/, end: /$/,
illegal: '\\n',
begin: /<[^\n>]*>/,
end: /$/,
illegal: '\\n'
},

@@ -75,3 +86,3 @@ hljs.C_LINE_COMMENT_MODE,

name: 'SQF',
aliases: ['sqf'],
aliases: [ 'sqf' ],
case_insensitive: true,

@@ -431,3 +442,3 @@ keywords: {

'locationNull nil objNull opfor pi resistance scriptNull sideAmbientLife sideEmpty sideLogic ' +
'sideUnknown taskNull teamMemberNull true west',
'sideUnknown taskNull teamMemberNull true west'
},

@@ -434,0 +445,0 @@ contains: [

@@ -11,3 +11,3 @@ /*

// variable names cannot conflict with block identifiers
var BLOCKS = [
const BLOCKS = [
'functions',

@@ -21,3 +21,3 @@ 'model',

];
var STATEMENTS = [
const STATEMENTS = [
'for',

@@ -32,3 +32,3 @@ 'in',

];
var SPECIAL_FUNCTIONS = [
const SPECIAL_FUNCTIONS = [
'print',

@@ -42,3 +42,3 @@ 'reject',

];
var VAR_TYPES = [
const VAR_TYPES = [
'int',

@@ -59,98 +59,416 @@ 'real',

];
var FUNCTIONS = [
'Phi', 'Phi_approx', 'abs', 'acos', 'acosh', 'algebra_solver', 'append_array',
'append_col', 'append_row', 'asin', 'asinh', 'atan', 'atan2', 'atanh',
'bernoulli_cdf', 'bernoulli_lccdf', 'bernoulli_lcdf', 'bernoulli_logit_lpmf',
'bernoulli_logit_rng', 'bernoulli_lpmf', 'bernoulli_rng', 'bessel_first_kind',
'bessel_second_kind', 'beta_binomial_cdf', 'beta_binomial_lccdf',
'beta_binomial_lcdf', 'beta_binomial_lpmf', 'beta_binomial_rng', 'beta_cdf',
'beta_lccdf', 'beta_lcdf', 'beta_lpdf', 'beta_rng', 'binary_log_loss',
'binomial_cdf', 'binomial_coefficient_log', 'binomial_lccdf', 'binomial_lcdf',
'binomial_logit_lpmf', 'binomial_lpmf', 'binomial_rng', 'block',
'categorical_logit_lpmf', 'categorical_logit_rng', 'categorical_lpmf',
'categorical_rng', 'cauchy_cdf', 'cauchy_lccdf', 'cauchy_lcdf', 'cauchy_lpdf',
'cauchy_rng', 'cbrt', 'ceil', 'chi_square_cdf', 'chi_square_lccdf',
'chi_square_lcdf', 'chi_square_lpdf', 'chi_square_rng', 'cholesky_decompose',
'choose', 'col', 'cols', 'columns_dot_product', 'columns_dot_self', 'cos',
'cosh', 'cov_exp_quad', 'crossprod', 'csr_extract_u', 'csr_extract_v',
'csr_extract_w', 'csr_matrix_times_vector', 'csr_to_dense_matrix',
'cumulative_sum', 'determinant', 'diag_matrix', 'diag_post_multiply',
'diag_pre_multiply', 'diagonal', 'digamma', 'dims', 'dirichlet_lpdf',
'dirichlet_rng', 'distance', 'dot_product', 'dot_self',
'double_exponential_cdf', 'double_exponential_lccdf', 'double_exponential_lcdf',
'double_exponential_lpdf', 'double_exponential_rng', 'e', 'eigenvalues_sym',
'eigenvectors_sym', 'erf', 'erfc', 'exp', 'exp2', 'exp_mod_normal_cdf',
'exp_mod_normal_lccdf', 'exp_mod_normal_lcdf', 'exp_mod_normal_lpdf',
'exp_mod_normal_rng', 'expm1', 'exponential_cdf', 'exponential_lccdf',
'exponential_lcdf', 'exponential_lpdf', 'exponential_rng', 'fabs',
'falling_factorial', 'fdim', 'floor', 'fma', 'fmax', 'fmin', 'fmod',
'frechet_cdf', 'frechet_lccdf', 'frechet_lcdf', 'frechet_lpdf', 'frechet_rng',
'gamma_cdf', 'gamma_lccdf', 'gamma_lcdf', 'gamma_lpdf', 'gamma_p', 'gamma_q',
'gamma_rng', 'gaussian_dlm_obs_lpdf', 'get_lp', 'gumbel_cdf', 'gumbel_lccdf',
'gumbel_lcdf', 'gumbel_lpdf', 'gumbel_rng', 'head', 'hypergeometric_lpmf',
'hypergeometric_rng', 'hypot', 'inc_beta', 'int_step', 'integrate_ode',
'integrate_ode_bdf', 'integrate_ode_rk45', 'inv', 'inv_Phi',
'inv_chi_square_cdf', 'inv_chi_square_lccdf', 'inv_chi_square_lcdf',
'inv_chi_square_lpdf', 'inv_chi_square_rng', 'inv_cloglog', 'inv_gamma_cdf',
'inv_gamma_lccdf', 'inv_gamma_lcdf', 'inv_gamma_lpdf', 'inv_gamma_rng',
'inv_logit', 'inv_sqrt', 'inv_square', 'inv_wishart_lpdf', 'inv_wishart_rng',
'inverse', 'inverse_spd', 'is_inf', 'is_nan', 'lbeta', 'lchoose', 'lgamma',
'lkj_corr_cholesky_lpdf', 'lkj_corr_cholesky_rng', 'lkj_corr_lpdf',
'lkj_corr_rng', 'lmgamma', 'lmultiply', 'log', 'log10', 'log1m', 'log1m_exp',
'log1m_inv_logit', 'log1p', 'log1p_exp', 'log2', 'log_determinant',
'log_diff_exp', 'log_falling_factorial', 'log_inv_logit', 'log_mix',
'log_rising_factorial', 'log_softmax', 'log_sum_exp', 'logistic_cdf',
'logistic_lccdf', 'logistic_lcdf', 'logistic_lpdf', 'logistic_rng', 'logit',
'lognormal_cdf', 'lognormal_lccdf', 'lognormal_lcdf', 'lognormal_lpdf',
'lognormal_rng', 'machine_precision', 'matrix_exp', 'max', 'mdivide_left_spd',
'mdivide_left_tri_low', 'mdivide_right_spd', 'mdivide_right_tri_low', 'mean',
'min', 'modified_bessel_first_kind', 'modified_bessel_second_kind',
'multi_gp_cholesky_lpdf', 'multi_gp_lpdf', 'multi_normal_cholesky_lpdf',
'multi_normal_cholesky_rng', 'multi_normal_lpdf', 'multi_normal_prec_lpdf',
'multi_normal_rng', 'multi_student_t_lpdf', 'multi_student_t_rng',
'multinomial_lpmf', 'multinomial_rng', 'multiply_log',
'multiply_lower_tri_self_transpose', 'neg_binomial_2_cdf',
'neg_binomial_2_lccdf', 'neg_binomial_2_lcdf', 'neg_binomial_2_log_lpmf',
'neg_binomial_2_log_rng', 'neg_binomial_2_lpmf', 'neg_binomial_2_rng',
'neg_binomial_cdf', 'neg_binomial_lccdf', 'neg_binomial_lcdf',
'neg_binomial_lpmf', 'neg_binomial_rng', 'negative_infinity', 'normal_cdf',
'normal_lccdf', 'normal_lcdf', 'normal_lpdf', 'normal_rng', 'not_a_number',
'num_elements', 'ordered_logistic_lpmf', 'ordered_logistic_rng', 'owens_t',
'pareto_cdf', 'pareto_lccdf', 'pareto_lcdf', 'pareto_lpdf', 'pareto_rng',
'pareto_type_2_cdf', 'pareto_type_2_lccdf', 'pareto_type_2_lcdf',
'pareto_type_2_lpdf', 'pareto_type_2_rng', 'pi', 'poisson_cdf', 'poisson_lccdf',
'poisson_lcdf', 'poisson_log_lpmf', 'poisson_log_rng', 'poisson_lpmf',
'poisson_rng', 'positive_infinity', 'pow', 'print', 'prod', 'qr_Q', 'qr_R',
'quad_form', 'quad_form_diag', 'quad_form_sym', 'rank', 'rayleigh_cdf',
'rayleigh_lccdf', 'rayleigh_lcdf', 'rayleigh_lpdf', 'rayleigh_rng', 'reject',
'rep_array', 'rep_matrix', 'rep_row_vector', 'rep_vector', 'rising_factorial',
'round', 'row', 'rows', 'rows_dot_product', 'rows_dot_self',
'scaled_inv_chi_square_cdf', 'scaled_inv_chi_square_lccdf',
'scaled_inv_chi_square_lcdf', 'scaled_inv_chi_square_lpdf',
'scaled_inv_chi_square_rng', 'sd', 'segment', 'sin', 'singular_values', 'sinh',
'size', 'skew_normal_cdf', 'skew_normal_lccdf', 'skew_normal_lcdf',
'skew_normal_lpdf', 'skew_normal_rng', 'softmax', 'sort_asc', 'sort_desc',
'sort_indices_asc', 'sort_indices_desc', 'sqrt', 'sqrt2', 'square',
'squared_distance', 'step', 'student_t_cdf', 'student_t_lccdf',
'student_t_lcdf', 'student_t_lpdf', 'student_t_rng', 'sub_col', 'sub_row',
'sum', 'tail', 'tan', 'tanh', 'target', 'tcrossprod', 'tgamma', 'to_array_1d',
'to_array_2d', 'to_matrix', 'to_row_vector', 'to_vector', 'trace',
'trace_gen_quad_form', 'trace_quad_form', 'trigamma', 'trunc', 'uniform_cdf',
'uniform_lccdf', 'uniform_lcdf', 'uniform_lpdf', 'uniform_rng', 'variance',
'von_mises_lpdf', 'von_mises_rng', 'weibull_cdf', 'weibull_lccdf',
'weibull_lcdf', 'weibull_lpdf', 'weibull_rng', 'wiener_lpdf', 'wishart_lpdf',
const FUNCTIONS = [
'Phi',
'Phi_approx',
'abs',
'acos',
'acosh',
'algebra_solver',
'append_array',
'append_col',
'append_row',
'asin',
'asinh',
'atan',
'atan2',
'atanh',
'bernoulli_cdf',
'bernoulli_lccdf',
'bernoulli_lcdf',
'bernoulli_logit_lpmf',
'bernoulli_logit_rng',
'bernoulli_lpmf',
'bernoulli_rng',
'bessel_first_kind',
'bessel_second_kind',
'beta_binomial_cdf',
'beta_binomial_lccdf',
'beta_binomial_lcdf',
'beta_binomial_lpmf',
'beta_binomial_rng',
'beta_cdf',
'beta_lccdf',
'beta_lcdf',
'beta_lpdf',
'beta_rng',
'binary_log_loss',
'binomial_cdf',
'binomial_coefficient_log',
'binomial_lccdf',
'binomial_lcdf',
'binomial_logit_lpmf',
'binomial_lpmf',
'binomial_rng',
'block',
'categorical_logit_lpmf',
'categorical_logit_rng',
'categorical_lpmf',
'categorical_rng',
'cauchy_cdf',
'cauchy_lccdf',
'cauchy_lcdf',
'cauchy_lpdf',
'cauchy_rng',
'cbrt',
'ceil',
'chi_square_cdf',
'chi_square_lccdf',
'chi_square_lcdf',
'chi_square_lpdf',
'chi_square_rng',
'cholesky_decompose',
'choose',
'col',
'cols',
'columns_dot_product',
'columns_dot_self',
'cos',
'cosh',
'cov_exp_quad',
'crossprod',
'csr_extract_u',
'csr_extract_v',
'csr_extract_w',
'csr_matrix_times_vector',
'csr_to_dense_matrix',
'cumulative_sum',
'determinant',
'diag_matrix',
'diag_post_multiply',
'diag_pre_multiply',
'diagonal',
'digamma',
'dims',
'dirichlet_lpdf',
'dirichlet_rng',
'distance',
'dot_product',
'dot_self',
'double_exponential_cdf',
'double_exponential_lccdf',
'double_exponential_lcdf',
'double_exponential_lpdf',
'double_exponential_rng',
'e',
'eigenvalues_sym',
'eigenvectors_sym',
'erf',
'erfc',
'exp',
'exp2',
'exp_mod_normal_cdf',
'exp_mod_normal_lccdf',
'exp_mod_normal_lcdf',
'exp_mod_normal_lpdf',
'exp_mod_normal_rng',
'expm1',
'exponential_cdf',
'exponential_lccdf',
'exponential_lcdf',
'exponential_lpdf',
'exponential_rng',
'fabs',
'falling_factorial',
'fdim',
'floor',
'fma',
'fmax',
'fmin',
'fmod',
'frechet_cdf',
'frechet_lccdf',
'frechet_lcdf',
'frechet_lpdf',
'frechet_rng',
'gamma_cdf',
'gamma_lccdf',
'gamma_lcdf',
'gamma_lpdf',
'gamma_p',
'gamma_q',
'gamma_rng',
'gaussian_dlm_obs_lpdf',
'get_lp',
'gumbel_cdf',
'gumbel_lccdf',
'gumbel_lcdf',
'gumbel_lpdf',
'gumbel_rng',
'head',
'hypergeometric_lpmf',
'hypergeometric_rng',
'hypot',
'inc_beta',
'int_step',
'integrate_ode',
'integrate_ode_bdf',
'integrate_ode_rk45',
'inv',
'inv_Phi',
'inv_chi_square_cdf',
'inv_chi_square_lccdf',
'inv_chi_square_lcdf',
'inv_chi_square_lpdf',
'inv_chi_square_rng',
'inv_cloglog',
'inv_gamma_cdf',
'inv_gamma_lccdf',
'inv_gamma_lcdf',
'inv_gamma_lpdf',
'inv_gamma_rng',
'inv_logit',
'inv_sqrt',
'inv_square',
'inv_wishart_lpdf',
'inv_wishart_rng',
'inverse',
'inverse_spd',
'is_inf',
'is_nan',
'lbeta',
'lchoose',
'lgamma',
'lkj_corr_cholesky_lpdf',
'lkj_corr_cholesky_rng',
'lkj_corr_lpdf',
'lkj_corr_rng',
'lmgamma',
'lmultiply',
'log',
'log10',
'log1m',
'log1m_exp',
'log1m_inv_logit',
'log1p',
'log1p_exp',
'log2',
'log_determinant',
'log_diff_exp',
'log_falling_factorial',
'log_inv_logit',
'log_mix',
'log_rising_factorial',
'log_softmax',
'log_sum_exp',
'logistic_cdf',
'logistic_lccdf',
'logistic_lcdf',
'logistic_lpdf',
'logistic_rng',
'logit',
'lognormal_cdf',
'lognormal_lccdf',
'lognormal_lcdf',
'lognormal_lpdf',
'lognormal_rng',
'machine_precision',
'matrix_exp',
'max',
'mdivide_left_spd',
'mdivide_left_tri_low',
'mdivide_right_spd',
'mdivide_right_tri_low',
'mean',
'min',
'modified_bessel_first_kind',
'modified_bessel_second_kind',
'multi_gp_cholesky_lpdf',
'multi_gp_lpdf',
'multi_normal_cholesky_lpdf',
'multi_normal_cholesky_rng',
'multi_normal_lpdf',
'multi_normal_prec_lpdf',
'multi_normal_rng',
'multi_student_t_lpdf',
'multi_student_t_rng',
'multinomial_lpmf',
'multinomial_rng',
'multiply_log',
'multiply_lower_tri_self_transpose',
'neg_binomial_2_cdf',
'neg_binomial_2_lccdf',
'neg_binomial_2_lcdf',
'neg_binomial_2_log_lpmf',
'neg_binomial_2_log_rng',
'neg_binomial_2_lpmf',
'neg_binomial_2_rng',
'neg_binomial_cdf',
'neg_binomial_lccdf',
'neg_binomial_lcdf',
'neg_binomial_lpmf',
'neg_binomial_rng',
'negative_infinity',
'normal_cdf',
'normal_lccdf',
'normal_lcdf',
'normal_lpdf',
'normal_rng',
'not_a_number',
'num_elements',
'ordered_logistic_lpmf',
'ordered_logistic_rng',
'owens_t',
'pareto_cdf',
'pareto_lccdf',
'pareto_lcdf',
'pareto_lpdf',
'pareto_rng',
'pareto_type_2_cdf',
'pareto_type_2_lccdf',
'pareto_type_2_lcdf',
'pareto_type_2_lpdf',
'pareto_type_2_rng',
'pi',
'poisson_cdf',
'poisson_lccdf',
'poisson_lcdf',
'poisson_log_lpmf',
'poisson_log_rng',
'poisson_lpmf',
'poisson_rng',
'positive_infinity',
'pow',
'print',
'prod',
'qr_Q',
'qr_R',
'quad_form',
'quad_form_diag',
'quad_form_sym',
'rank',
'rayleigh_cdf',
'rayleigh_lccdf',
'rayleigh_lcdf',
'rayleigh_lpdf',
'rayleigh_rng',
'reject',
'rep_array',
'rep_matrix',
'rep_row_vector',
'rep_vector',
'rising_factorial',
'round',
'row',
'rows',
'rows_dot_product',
'rows_dot_self',
'scaled_inv_chi_square_cdf',
'scaled_inv_chi_square_lccdf',
'scaled_inv_chi_square_lcdf',
'scaled_inv_chi_square_lpdf',
'scaled_inv_chi_square_rng',
'sd',
'segment',
'sin',
'singular_values',
'sinh',
'size',
'skew_normal_cdf',
'skew_normal_lccdf',
'skew_normal_lcdf',
'skew_normal_lpdf',
'skew_normal_rng',
'softmax',
'sort_asc',
'sort_desc',
'sort_indices_asc',
'sort_indices_desc',
'sqrt',
'sqrt2',
'square',
'squared_distance',
'step',
'student_t_cdf',
'student_t_lccdf',
'student_t_lcdf',
'student_t_lpdf',
'student_t_rng',
'sub_col',
'sub_row',
'sum',
'tail',
'tan',
'tanh',
'target',
'tcrossprod',
'tgamma',
'to_array_1d',
'to_array_2d',
'to_matrix',
'to_row_vector',
'to_vector',
'trace',
'trace_gen_quad_form',
'trace_quad_form',
'trigamma',
'trunc',
'uniform_cdf',
'uniform_lccdf',
'uniform_lcdf',
'uniform_lpdf',
'uniform_rng',
'variance',
'von_mises_lpdf',
'von_mises_rng',
'weibull_cdf',
'weibull_lccdf',
'weibull_lcdf',
'weibull_lpdf',
'weibull_rng',
'wiener_lpdf',
'wishart_lpdf',
'wishart_rng'
];
var DISTRIBUTIONS = [
'bernoulli', 'bernoulli_logit', 'beta', 'beta_binomial', 'binomial',
'binomial_logit', 'categorical', 'categorical_logit', 'cauchy', 'chi_square',
'dirichlet', 'double_exponential', 'exp_mod_normal', 'exponential', 'frechet',
'gamma', 'gaussian_dlm_obs', 'gumbel', 'hypergeometric', 'inv_chi_square',
'inv_gamma', 'inv_wishart', 'lkj_corr', 'lkj_corr_cholesky', 'logistic',
'lognormal', 'multi_gp', 'multi_gp_cholesky', 'multi_normal',
'multi_normal_cholesky', 'multi_normal_prec', 'multi_student_t', 'multinomial',
'neg_binomial', 'neg_binomial_2', 'neg_binomial_2_log', 'normal',
'ordered_logistic', 'pareto', 'pareto_type_2', 'poisson', 'poisson_log',
'rayleigh', 'scaled_inv_chi_square', 'skew_normal', 'student_t', 'uniform',
'von_mises', 'weibull', 'wiener', 'wishart'
const DISTRIBUTIONS = [
'bernoulli',
'bernoulli_logit',
'beta',
'beta_binomial',
'binomial',
'binomial_logit',
'categorical',
'categorical_logit',
'cauchy',
'chi_square',
'dirichlet',
'double_exponential',
'exp_mod_normal',
'exponential',
'frechet',
'gamma',
'gaussian_dlm_obs',
'gumbel',
'hypergeometric',
'inv_chi_square',
'inv_gamma',
'inv_wishart',
'lkj_corr',
'lkj_corr_cholesky',
'logistic',
'lognormal',
'multi_gp',
'multi_gp_cholesky',
'multi_normal',
'multi_normal_cholesky',
'multi_normal_prec',
'multi_student_t',
'multinomial',
'neg_binomial',
'neg_binomial_2',
'neg_binomial_2_log',
'normal',
'ordered_logistic',
'pareto',
'pareto_type_2',
'poisson',
'poisson_log',
'rayleigh',
'scaled_inv_chi_square',
'skew_normal',
'student_t',
'uniform',
'von_mises',
'weibull',
'wiener',
'wishart'
];

@@ -160,3 +478,3 @@

name: 'Stan',
aliases: ['stanfuncs'],
aliases: [ 'stanfuncs' ],
keywords: {

@@ -233,5 +551,5 @@ $pattern: hljs.IDENT_RE,

]
}
};
}
module.exports = stan;

@@ -17,6 +17,9 @@ /*

name: 'Stata',
aliases: ['do', 'ado'],
aliases: [
'do',
'ado'
],
case_insensitive: true,
keywords: 'if else in foreach for forv forva forval forvalu forvalue forvalues by bys bysort xi quietly qui capture about ac ac_7 acprplot acprplot_7 adjust ado adopath adoupdate alpha ameans an ano anov anova anova_estat anova_terms anovadef aorder ap app appe appen append arch arch_dr arch_estat arch_p archlm areg areg_p args arima arima_dr arima_estat arima_p as asmprobit asmprobit_estat asmprobit_lf asmprobit_mfx__dlg asmprobit_p ass asse asser assert avplot avplot_7 avplots avplots_7 bcskew0 bgodfrey bias binreg bip0_lf biplot bipp_lf bipr_lf bipr_p biprobit bitest bitesti bitowt blogit bmemsize boot bootsamp bootstrap bootstrap_8 boxco_l boxco_p boxcox boxcox_6 boxcox_p bprobit br break brier bro brow brows browse brr brrstat bs bs_7 bsampl_w bsample bsample_7 bsqreg bstat bstat_7 bstat_8 bstrap bstrap_7 bubble bubbleplot ca ca_estat ca_p cabiplot camat canon canon_8 canon_8_p canon_estat canon_p cap caprojection capt captu captur capture cat cc cchart cchart_7 cci cd censobs_table centile cf char chdir checkdlgfiles checkestimationsample checkhlpfiles checksum chelp ci cii cl class classutil clear cli clis clist clo clog clog_lf clog_p clogi clogi_sw clogit clogit_lf clogit_p clogitp clogl_sw cloglog clonevar clslistarray cluster cluster_measures cluster_stop cluster_tree cluster_tree_8 clustermat cmdlog cnr cnre cnreg cnreg_p cnreg_sw cnsreg codebook collaps4 collapse colormult_nb colormult_nw compare compress conf confi confir confirm conren cons const constr constra constrai constrain constraint continue contract copy copyright copysource cor corc corr corr2data corr_anti corr_kmo corr_smc corre correl correla correlat correlate corrgram cou coun count cox cox_p cox_sw coxbase coxhaz coxvar cprplot cprplot_7 crc cret cretu cretur creturn cross cs cscript cscript_log csi ct ct_is ctset ctst_5 ctst_st cttost cumsp cumsp_7 cumul cusum cusum_7 cutil d|0 datasig datasign datasigna datasignat datasignatu datasignatur datasignature datetof db dbeta de dec deco decod decode deff des desc descr descri describ describe destring dfbeta dfgls dfuller di di_g dir dirstats dis discard disp disp_res disp_s displ displa display distinct do doe doed doedi doedit dotplot dotplot_7 dprobit drawnorm drop ds ds_util dstdize duplicates durbina dwstat dydx e|0 ed edi edit egen eivreg emdef en enc enco encod encode eq erase ereg ereg_lf ereg_p ereg_sw ereghet ereghet_glf ereghet_glf_sh ereghet_gp ereghet_ilf ereghet_ilf_sh ereghet_ip eret eretu eretur ereturn err erro error esize est est_cfexist est_cfname est_clickable est_expand est_hold est_table est_unhold est_unholdok estat estat_default estat_summ estat_vce_only esti estimates etodow etof etomdy ex exi exit expand expandcl fac fact facto factor factor_estat factor_p factor_pca_rotated factor_rotate factormat fcast fcast_compute fcast_graph fdades fdadesc fdadescr fdadescri fdadescrib fdadescribe fdasav fdasave fdause fh_st file open file read file close file filefilter fillin find_hlp_file findfile findit findit_7 fit fl fli flis flist for5_0 forest forestplot form forma format fpredict frac_154 frac_adj frac_chk frac_cox frac_ddp frac_dis frac_dv frac_in frac_mun frac_pp frac_pq frac_pv frac_wgt frac_xo fracgen fracplot fracplot_7 fracpoly fracpred fron_ex fron_hn fron_p fron_tn fron_tn2 frontier ftodate ftoe ftomdy ftowdate funnel funnelplot g|0 gamhet_glf gamhet_gp gamhet_ilf gamhet_ip gamma gamma_d2 gamma_p gamma_sw gammahet gdi_hexagon gdi_spokes ge gen gene gener genera generat generate genrank genstd genvmean gettoken gl gladder gladder_7 glim_l01 glim_l02 glim_l03 glim_l04 glim_l05 glim_l06 glim_l07 glim_l08 glim_l09 glim_l10 glim_l11 glim_l12 glim_lf glim_mu glim_nw1 glim_nw2 glim_nw3 glim_p glim_v1 glim_v2 glim_v3 glim_v4 glim_v5 glim_v6 glim_v7 glm glm_6 glm_p glm_sw glmpred glo glob globa global glogit glogit_8 glogit_p gmeans gnbre_lf gnbreg gnbreg_5 gnbreg_p gomp_lf gompe_sw gomper_p gompertz gompertzhet gomphet_glf gomphet_glf_sh gomphet_gp gomphet_ilf gomphet_ilf_sh gomphet_ip gphdot gphpen gphprint gprefs gprobi_p gprobit gprobit_8 gr gr7 gr_copy gr_current gr_db gr_describe gr_dir gr_draw gr_draw_replay gr_drop gr_edit gr_editviewopts gr_example gr_example2 gr_export gr_print gr_qscheme gr_query gr_read gr_rename gr_replay gr_save gr_set gr_setscheme gr_table gr_undo gr_use graph graph7 grebar greigen greigen_7 greigen_8 grmeanby grmeanby_7 gs_fileinfo gs_filetype gs_graphinfo gs_stat gsort gwood h|0 hadimvo hareg hausman haver he heck_d2 heckma_p heckman heckp_lf heckpr_p heckprob hel help hereg hetpr_lf hetpr_p hetprob hettest hexdump hilite hist hist_7 histogram hlogit hlu hmeans hotel hotelling hprobit hreg hsearch icd9 icd9_ff icd9p iis impute imtest inbase include inf infi infil infile infix inp inpu input ins insheet insp inspe inspec inspect integ inten intreg intreg_7 intreg_p intrg2_ll intrg_ll intrg_ll2 ipolate iqreg ir irf irf_create irfm iri is_svy is_svysum isid istdize ivprob_1_lf ivprob_lf ivprobit ivprobit_p ivreg ivreg_footnote ivtob_1_lf ivtob_lf ivtobit ivtobit_p jackknife jacknife jknife jknife_6 jknife_8 jkstat joinby kalarma1 kap kap_3 kapmeier kappa kapwgt kdensity kdensity_7 keep ksm ksmirnov ktau kwallis l|0 la lab labbe labbeplot labe label labelbook ladder levels levelsof leverage lfit lfit_p li lincom line linktest lis list lloghet_glf lloghet_glf_sh lloghet_gp lloghet_ilf lloghet_ilf_sh lloghet_ip llogi_sw llogis_p llogist llogistic llogistichet lnorm_lf lnorm_sw lnorma_p lnormal lnormalhet lnormhet_glf lnormhet_glf_sh lnormhet_gp lnormhet_ilf lnormhet_ilf_sh lnormhet_ip lnskew0 loadingplot loc loca local log logi logis_lf logistic logistic_p logit logit_estat logit_p loglogs logrank loneway lookfor lookup lowess lowess_7 lpredict lrecomp lroc lroc_7 lrtest ls lsens lsens_7 lsens_x lstat ltable ltable_7 ltriang lv lvr2plot lvr2plot_7 m|0 ma mac macr macro makecns man manova manova_estat manova_p manovatest mantel mark markin markout marksample mat mat_capp mat_order mat_put_rr mat_rapp mata mata_clear mata_describe mata_drop mata_matdescribe mata_matsave mata_matuse mata_memory mata_mlib mata_mosave mata_rename mata_which matalabel matcproc matlist matname matr matri matrix matrix_input__dlg matstrik mcc mcci md0_ md1_ md1debug_ md2_ md2debug_ mds mds_estat mds_p mdsconfig mdslong mdsmat mdsshepard mdytoe mdytof me_derd mean means median memory memsize menl meqparse mer merg merge meta mfp mfx mhelp mhodds minbound mixed_ll mixed_ll_reparm mkassert mkdir mkmat mkspline ml ml_5 ml_adjs ml_bhhhs ml_c_d ml_check ml_clear ml_cnt ml_debug ml_defd ml_e0 ml_e0_bfgs ml_e0_cycle ml_e0_dfp ml_e0i ml_e1 ml_e1_bfgs ml_e1_bhhh ml_e1_cycle ml_e1_dfp ml_e2 ml_e2_cycle ml_ebfg0 ml_ebfr0 ml_ebfr1 ml_ebh0q ml_ebhh0 ml_ebhr0 ml_ebr0i ml_ecr0i ml_edfp0 ml_edfr0 ml_edfr1 ml_edr0i ml_eds ml_eer0i ml_egr0i ml_elf ml_elf_bfgs ml_elf_bhhh ml_elf_cycle ml_elf_dfp ml_elfi ml_elfs ml_enr0i ml_enrr0 ml_erdu0 ml_erdu0_bfgs ml_erdu0_bhhh ml_erdu0_bhhhq ml_erdu0_cycle ml_erdu0_dfp ml_erdu0_nrbfgs ml_exde ml_footnote ml_geqnr ml_grad0 ml_graph ml_hbhhh ml_hd0 ml_hold ml_init ml_inv ml_log ml_max ml_mlout ml_mlout_8 ml_model ml_nb0 ml_opt ml_p ml_plot ml_query ml_rdgrd ml_repor ml_s_e ml_score ml_searc ml_technique ml_unhold mleval mlf_ mlmatbysum mlmatsum mlog mlogi mlogit mlogit_footnote mlogit_p mlopts mlsum mlvecsum mnl0_ mor more mov move mprobit mprobit_lf mprobit_p mrdu0_ mrdu1_ mvdecode mvencode mvreg mvreg_estat n|0 nbreg nbreg_al nbreg_lf nbreg_p nbreg_sw nestreg net newey newey_7 newey_p news nl nl_7 nl_9 nl_9_p nl_p nl_p_7 nlcom nlcom_p nlexp2 nlexp2_7 nlexp2a nlexp2a_7 nlexp3 nlexp3_7 nlgom3 nlgom3_7 nlgom4 nlgom4_7 nlinit nllog3 nllog3_7 nllog4 nllog4_7 nlog_rd nlogit nlogit_p nlogitgen nlogittree nlpred no nobreak noi nois noisi noisil noisily note notes notes_dlg nptrend numlabel numlist odbc old_ver olo olog ologi ologi_sw ologit ologit_p ologitp on one onew onewa oneway op_colnm op_comp op_diff op_inv op_str opr opro oprob oprob_sw oprobi oprobi_p oprobit oprobitp opts_exclusive order orthog orthpoly ou out outf outfi outfil outfile outs outsh outshe outshee outsheet ovtest pac pac_7 palette parse parse_dissim pause pca pca_8 pca_display pca_estat pca_p pca_rotate pcamat pchart pchart_7 pchi pchi_7 pcorr pctile pentium pergram pergram_7 permute permute_8 personal peto_st pkcollapse pkcross pkequiv pkexamine pkexamine_7 pkshape pksumm pksumm_7 pl plo plot plugin pnorm pnorm_7 poisgof poiss_lf poiss_sw poisso_p poisson poisson_estat post postclose postfile postutil pperron pr prais prais_e prais_e2 prais_p predict predictnl preserve print pro prob probi probit probit_estat probit_p proc_time procoverlay procrustes procrustes_estat procrustes_p profiler prog progr progra program prop proportion prtest prtesti pwcorr pwd q\\s qby qbys qchi qchi_7 qladder qladder_7 qnorm qnorm_7 qqplot qqplot_7 qreg qreg_c qreg_p qreg_sw qu quadchk quantile quantile_7 que quer query range ranksum ratio rchart rchart_7 rcof recast reclink recode reg reg3 reg3_p regdw regr regre regre_p2 regres regres_p regress regress_estat regriv_p remap ren rena renam rename renpfix repeat replace report reshape restore ret retu retur return rm rmdir robvar roccomp roccomp_7 roccomp_8 rocf_lf rocfit rocfit_8 rocgold rocplot rocplot_7 roctab roctab_7 rolling rologit rologit_p rot rota rotat rotate rotatemat rreg rreg_p ru run runtest rvfplot rvfplot_7 rvpplot rvpplot_7 sa safesum sample sampsi sav save savedresults saveold sc sca scal scala scalar scatter scm_mine sco scob_lf scob_p scobi_sw scobit scor score scoreplot scoreplot_help scree screeplot screeplot_help sdtest sdtesti se search separate seperate serrbar serrbar_7 serset set set_defaults sfrancia sh she shel shell shewhart shewhart_7 signestimationsample signrank signtest simul simul_7 simulate simulate_8 sktest sleep slogit slogit_d2 slogit_p smooth snapspan so sor sort spearman spikeplot spikeplot_7 spikeplt spline_x split sqreg sqreg_p sret sretu sretur sreturn ssc st st_ct st_hc st_hcd st_hcd_sh st_is st_issys st_note st_promo st_set st_show st_smpl st_subid stack statsby statsby_8 stbase stci stci_7 stcox stcox_estat stcox_fr stcox_fr_ll stcox_p stcox_sw stcoxkm stcoxkm_7 stcstat stcurv stcurve stcurve_7 stdes stem stepwise stereg stfill stgen stir stjoin stmc stmh stphplot stphplot_7 stphtest stphtest_7 stptime strate strate_7 streg streg_sw streset sts sts_7 stset stsplit stsum sttocc sttoct stvary stweib su suest suest_8 sum summ summa summar summari summariz summarize sunflower sureg survcurv survsum svar svar_p svmat svy svy_disp svy_dreg svy_est svy_est_7 svy_estat svy_get svy_gnbreg_p svy_head svy_header svy_heckman_p svy_heckprob_p svy_intreg_p svy_ivreg_p svy_logistic_p svy_logit_p svy_mlogit_p svy_nbreg_p svy_ologit_p svy_oprobit_p svy_poisson_p svy_probit_p svy_regress_p svy_sub svy_sub_7 svy_x svy_x_7 svy_x_p svydes svydes_8 svygen svygnbreg svyheckman svyheckprob svyintreg svyintreg_7 svyintrg svyivreg svylc svylog_p svylogit svymarkout svymarkout_8 svymean svymlog svymlogit svynbreg svyolog svyologit svyoprob svyoprobit svyopts svypois svypois_7 svypoisson svyprobit svyprobt svyprop svyprop_7 svyratio svyreg svyreg_p svyregress svyset svyset_7 svyset_8 svytab svytab_7 svytest svytotal sw sw_8 swcnreg swcox swereg swilk swlogis swlogit swologit swoprbt swpois swprobit swqreg swtobit swweib symmetry symmi symplot symplot_7 syntax sysdescribe sysdir sysuse szroeter ta tab tab1 tab2 tab_or tabd tabdi tabdis tabdisp tabi table tabodds tabodds_7 tabstat tabu tabul tabula tabulat tabulate te tempfile tempname tempvar tes test testnl testparm teststd tetrachoric time_it timer tis tob tobi tobit tobit_p tobit_sw token tokeni tokeniz tokenize tostring total translate translator transmap treat_ll treatr_p treatreg trim trimfill trnb_cons trnb_mean trpoiss_d2 trunc_ll truncr_p truncreg tsappend tset tsfill tsline tsline_ex tsreport tsrevar tsrline tsset tssmooth tsunab ttest ttesti tut_chk tut_wait tutorial tw tware_st two twoway twoway__fpfit_serset twoway__function_gen twoway__histogram_gen twoway__ipoint_serset twoway__ipoints_serset twoway__kdensity_gen twoway__lfit_serset twoway__normgen_gen twoway__pci_serset twoway__qfit_serset twoway__scatteri_serset twoway__sunflower_gen twoway_ksm_serset ty typ type typeof u|0 unab unabbrev unabcmd update us use uselabel var var_mkcompanion var_p varbasic varfcast vargranger varirf varirf_add varirf_cgraph varirf_create varirf_ctable varirf_describe varirf_dir varirf_drop varirf_erase varirf_graph varirf_ograph varirf_rename varirf_set varirf_table varlist varlmar varnorm varsoc varstable varstable_w varstable_w2 varwle vce vec vec_fevd vec_mkphi vec_p vec_p_w vecirf_create veclmar veclmar_w vecnorm vecnorm_w vecrank vecstable verinst vers versi versio version view viewsource vif vwls wdatetof webdescribe webseek webuse weib1_lf weib2_lf weib_lf weib_lf0 weibhet_glf weibhet_glf_sh weibhet_glfa weibhet_glfa_sh weibhet_gp weibhet_ilf weibhet_ilf_sh weibhet_ilfa weibhet_ilfa_sh weibhet_ip weibu_sw weibul_p weibull weibull_c weibull_s weibullhet wh whelp whi which whil while wilc_st wilcoxon win wind windo window winexec wntestb wntestb_7 wntestq xchart xchart_7 xcorr xcorr_7 xi xi_6 xmlsav xmlsave xmluse xpose xsh xshe xshel xshell xt_iis xt_tis xtab_p xtabond xtbin_p xtclog xtcloglog xtcloglog_8 xtcloglog_d2 xtcloglog_pa_p xtcloglog_re_p xtcnt_p xtcorr xtdata xtdes xtfront_p xtfrontier xtgee xtgee_elink xtgee_estat xtgee_makeivar xtgee_p xtgee_plink xtgls xtgls_p xthaus xthausman xtht_p xthtaylor xtile xtint_p xtintreg xtintreg_8 xtintreg_d2 xtintreg_p xtivp_1 xtivp_2 xtivreg xtline xtline_ex xtlogit xtlogit_8 xtlogit_d2 xtlogit_fe_p xtlogit_pa_p xtlogit_re_p xtmixed xtmixed_estat xtmixed_p xtnb_fe xtnb_lf xtnbreg xtnbreg_pa_p xtnbreg_refe_p xtpcse xtpcse_p xtpois xtpoisson xtpoisson_d2 xtpoisson_pa_p xtpoisson_refe_p xtpred xtprobit xtprobit_8 xtprobit_d2 xtprobit_re_p xtps_fe xtps_lf xtps_ren xtps_ren_8 xtrar_p xtrc xtrc_p xtrchh xtrefe_p xtreg xtreg_be xtreg_fe xtreg_ml xtreg_pa_p xtreg_re xtregar xtrere_p xtset xtsf_ll xtsf_llti xtsum xttab xttest0 xttobit xttobit_8 xttobit_p xttrans yx yxview__barlike_draw yxview_area_draw yxview_bar_draw yxview_dot_draw yxview_dropline_draw yxview_function_draw yxview_iarrow_draw yxview_ilabels_draw yxview_normal_draw yxview_pcarrow_draw yxview_pcbarrow_draw yxview_pccapsym_draw yxview_pcscatter_draw yxview_pcspike_draw yxview_rarea_draw yxview_rbar_draw yxview_rbarm_draw yxview_rcap_draw yxview_rcapsym_draw yxview_rconnected_draw yxview_rline_draw yxview_rscatter_draw yxview_rspike_draw yxview_spike_draw yxview_sunflower_draw zap_s zinb zinb_llf zinb_plf zip zip_llf zip_p zip_plf zt_ct_5 zt_hc_5 zt_hcd_5 zt_is_5 zt_iss_5 zt_sho_5 zt_smp_5 ztbase_5 ztcox_5 ztdes_5 ztereg_5 ztfill_5 ztgen_5 ztir_5 ztjoin_5 ztnb ztnb_p ztp ztp_p zts_5 ztset_5 ztspli_5 ztsum_5 zttoct_5 ztvary_5 ztweib_5',
contains: [
contains: [
{

@@ -33,4 +36,8 @@ className: 'symbol',

variants: [
{begin: '`"[^\r\n]*?"\''},
{begin: '"[^\r\n"]*"'}
{
begin: '`"[^\r\n]*?"\''
},
{
begin: '"[^\r\n"]*"'
}
]

@@ -37,0 +44,0 @@ },

@@ -9,8 +9,8 @@ /*

function step21(hljs) {
var STEP21_IDENT_RE = '[A-Z_][A-Z0-9_.]*';
var STEP21_KEYWORDS = {
const STEP21_IDENT_RE = '[A-Z_][A-Z0-9_.]*';
const STEP21_KEYWORDS = {
$pattern: STEP21_IDENT_RE,
keyword: 'HEADER ENDSEC DATA'
};
var STEP21_START = {
const STEP21_START = {
className: 'meta',

@@ -20,3 +20,3 @@ begin: 'ISO-10303-21;',

};
var STEP21_CLOSE = {
const STEP21_CLOSE = {
className: 'meta',

@@ -29,3 +29,7 @@ begin: 'END-ISO-10303-21;',

name: 'STEP Part 21',
aliases: ['p21', 'step', 'stp'],
aliases: [
'p21',
'step',
'stp'
],
case_insensitive: true, // STEP 21 is case insensitive in theory, in practice all non-comments are capitalized.

@@ -40,7 +44,12 @@ keywords: STEP21_KEYWORDS,

hljs.C_NUMBER_MODE,
hljs.inherit(hljs.APOS_STRING_MODE, {illegal: null}),
hljs.inherit(hljs.QUOTE_STRING_MODE, {illegal: null}),
hljs.inherit(hljs.APOS_STRING_MODE, {
illegal: null
}),
hljs.inherit(hljs.QUOTE_STRING_MODE, {
illegal: null
}),
{
className: 'string',
begin: "'", end: "'"
begin: "'",
end: "'"
},

@@ -51,3 +60,4 @@ {

{
begin: '#', end: '\\d+',
begin: '#',
end: '\\d+',
illegal: '\\W'

@@ -54,0 +64,0 @@ }

@@ -8,23 +8,32 @@ /*

function subunit(hljs) {
var DETAILS = {
const DETAILS = {
className: 'string',
begin: '\\[\n(multipart)?', end: '\\]\n'
begin: '\\[\n(multipart)?',
end: '\\]\n'
};
var TIME = {
const TIME = {
className: 'string',
begin: '\\d{4}-\\d{2}-\\d{2}(\\s+)\\d{2}:\\d{2}:\\d{2}\.\\d+Z'
};
var PROGRESSVALUE = {
const PROGRESSVALUE = {
className: 'string',
begin: '(\\+|-)\\d+'
};
var KEYWORDS = {
const KEYWORDS = {
className: 'keyword',
relevance: 10,
variants: [
{ begin: '^(test|testing|success|successful|failure|error|skip|xfail|uxsuccess)(:?)\\s+(test)?' },
{ begin: '^progress(:?)(\\s+)?(pop|push)?' },
{ begin: '^tags:' },
{ begin: '^time:' }
],
{
begin: '^(test|testing|success|successful|failure|error|skip|xfail|uxsuccess)(:?)\\s+(test)?'
},
{
begin: '^progress(:?)(\\s+)?(pop|push)?'
},
{
begin: '^tags:'
},
{
begin: '^time:'
}
]
};

@@ -31,0 +40,0 @@ return {

@@ -8,18 +8,18 @@ /*

function taggerscript(hljs) {
var COMMENT = {
const COMMENT = {
className: 'comment',
begin: /\$noop\(/,
end: /\)/,
contains: [{
contains: [ {
begin: /\(/,
end: /\)/,
contains: ['self', {
begin: /\\./
}]
}],
contains: [ 'self',
{
begin: /\\./
} ]
} ],
relevance: 10
};
var FUNCTION = {
const FUNCTION = {
className: 'keyword',

@@ -31,3 +31,3 @@ begin: /\$(?!noop)[a-zA-Z][_a-zA-Z0-9]*/,

var VARIABLE = {
const VARIABLE = {
className: 'variable',

@@ -38,3 +38,3 @@ begin: /%[_a-zA-Z0-9:]*/,

var ESCAPE_SEQUENCE = {
const ESCAPE_SEQUENCE = {
className: 'symbol',

@@ -41,0 +41,0 @@ begin: /\\./

@@ -19,13 +19,18 @@ /*

variants: [
{ begin: '^TAP version (\\d+)$' },
{ begin: '^1\\.\\.(\\d+)$' }
],
{
begin: '^TAP version (\\d+)$'
},
{
begin: '^1\\.\\.(\\d+)$'
}
]
},
// YAML block
{
begin: /---$/, end: '\\.\\.\\.$',
begin: /---$/,
end: '\\.\\.\\.$',
subLanguage: 'yaml',
relevance: 0
},
// testcase number
// testcase number
{

@@ -35,10 +40,14 @@ className: 'number',

},
// testcase status and description
// testcase status and description
{
className: 'symbol',
variants: [
{ begin: '^ok' },
{ begin: '^not ok' }
],
},
{
begin: '^ok'
},
{
begin: '^not ok'
}
]
}
]

@@ -45,0 +54,0 @@ };

@@ -10,3 +10,3 @@ /*

function thrift(hljs) {
var BUILT_IN_TYPES = 'bool byte i16 i32 i64 double string binary';
const BUILT_IN_TYPES = 'bool byte i16 i32 i64 double string binary';
return {

@@ -29,7 +29,12 @@ name: 'Thrift',

className: 'class',
beginKeywords: 'struct enum service exception', end: /\{/,
beginKeywords: 'struct enum service exception',
end: /\{/,
illegal: /\n/,
contains: [
hljs.inherit(hljs.TITLE_MODE, {
starts: {endsWithParent: true, excludeEnd: true} // hack: eating everything after the first title
// hack: eating everything after the first title
starts: {
endsWithParent: true,
excludeEnd: true
}
})

@@ -39,5 +44,6 @@ ]

{
begin: '\\b(set|list|map)\\s*<', end: '>',
begin: '\\b(set|list|map)\\s*<',
end: '>',
keywords: BUILT_IN_TYPES,
contains: ['self']
contains: [ 'self' ]
}

@@ -44,0 +50,0 @@ ]

@@ -7,5 +7,4 @@ /*

function tp(hljs) {
var TPID = {
const TPID = {
className: 'number',

@@ -15,10 +14,11 @@ begin: '[1-9][0-9]*', /* no leading zeros */

};
var TPLABEL = {
const TPLABEL = {
className: 'symbol',
begin: ':[^\\]]+'
};
var TPDATA = {
const TPDATA = {
className: 'built_in',
begin: '(AR|P|PAYLOAD|PR|R|SR|RSR|LBL|VR|UALM|MESSAGE|UTOOL|UFRAME|TIMER|' +
'TIMER_OVERFLOW|JOINT_MAX_SPEED|RESUME_PROG|DIAG_REC)\\[', end: '\\]',
'TIMER_OVERFLOW|JOINT_MAX_SPEED|RESUME_PROG|DIAG_REC)\\[',
end: '\\]',
contains: [

@@ -30,5 +30,6 @@ 'self',

};
var TPIO = {
const TPIO = {
className: 'built_in',
begin: '(AI|AO|DI|DO|F|RI|RO|UI|UO|GI|GO|SI|SO)\\[', end: '\\]',
begin: '(AI|AO|DI|DO|F|RI|RO|UI|UO|GI|GO|SI|SO)\\[',
end: '\\]',
contains: [

@@ -85,3 +86,4 @@ 'self',

className: 'string',
begin: '\'', end: '\''
begin: '\'',
end: '\''
},

@@ -88,0 +90,0 @@ hljs.C_NUMBER_MODE,

@@ -34,7 +34,7 @@ /*

className: 'class',
beginKeywords: 'class interface namespace', end: /\{/, excludeEnd: true,
beginKeywords: 'class interface namespace',
end: /\{/,
excludeEnd: true,
illegal: '[^,:\\n\\s\\.]',
contains: [
hljs.UNDERSCORE_TITLE_MODE
]
contains: [ hljs.UNDERSCORE_TITLE_MODE ]
},

@@ -45,3 +45,4 @@ hljs.C_LINE_COMMENT_MODE,

className: 'string',
begin: '"""', end: '"""',
begin: '"""',
end: '"""',
relevance: 5

@@ -54,3 +55,4 @@ },

className: 'meta',
begin: '^#', end: '$',
begin: '^#',
end: '$',
relevance: 2

@@ -57,0 +59,0 @@ }

@@ -11,3 +11,3 @@ /*

name: 'Visual Basic .NET',
aliases: ['vb'],
aliases: [ 'vb' ],
case_insensitive: true,

@@ -28,3 +28,3 @@ keywords: {

built_in:
'boolean byte cbool cbyte cchar cdate cdec cdbl char cint clng cobj csbyte cshort csng cstr ctype ' + /* b-c */
'boolean byte cbool cbyte cchar cdate cdec cdbl char cint clng cobj csbyte cshort csng cstr ctype ' + /* b-c */
'date decimal directcast double gettype getxmlnamespace iif integer long object ' + /* d-o */

@@ -37,3 +37,9 @@ 'sbyte short single string trycast typeof uinteger ulong ushort', /* s-u */

contains: [
hljs.inherit(hljs.QUOTE_STRING_MODE, {contains: [{begin: '""'}]}),
hljs.inherit(hljs.QUOTE_STRING_MODE, {
contains: [
{
begin: '""'
}
]
}),
hljs.COMMENT(

@@ -48,8 +54,9 @@ '\'',

begin: '\'\'\'|<!--|-->',
contains: [hljs.PHRASAL_WORDS_MODE]
contains: [ hljs.PHRASAL_WORDS_MODE ]
},
{
className: 'doctag',
begin: '</?', end: '>',
contains: [hljs.PHRASAL_WORDS_MODE]
begin: '</?',
end: '>',
contains: [ hljs.PHRASAL_WORDS_MODE ]
}

@@ -62,4 +69,7 @@ ]

className: 'meta',
begin: '#', end: '$',
keywords: {'meta-keyword': 'if else elseif end region externalsource'}
begin: '#',
end: '$',
keywords: {
'meta-keyword': 'if else elseif end region externalsource'
}
}

@@ -66,0 +76,0 @@ ]

@@ -16,3 +16,4 @@ /*

{
begin: '<%', end: '%>',
begin: '<%',
end: '%>',
subLanguage: 'vbscript'

@@ -19,0 +20,0 @@ }

@@ -10,3 +10,3 @@ /*

function verilog(hljs) {
var SV_KEYWORDS = {
const SV_KEYWORDS = {
$pattern: /[\w\$]+/,

@@ -70,6 +70,11 @@ keyword:

'$sformatf $fgetc $ungetc $fgets $sscanf $rewind $ftell $ferror'
};
};
return {
name: 'Verilog',
aliases: ['v', 'sv', 'svh'],
aliases: [
'v',
'sv',
'svh'
],
case_insensitive: false,

@@ -83,7 +88,14 @@ keywords: SV_KEYWORDS,

className: 'number',
contains: [hljs.BACKSLASH_ESCAPE],
contains: [ hljs.BACKSLASH_ESCAPE ],
variants: [
{begin: '\\b((\\d+\'(b|h|o|d|B|H|O|D))[0-9xzXZa-fA-F_]+)'},
{begin: '\\B((\'(b|h|o|d|B|H|O|D))[0-9xzXZa-fA-F_]+)'},
{begin: '\\b([0-9_])+', relevance: 0}
{
begin: '\\b((\\d+\'(b|h|o|d|B|H|O|D))[0-9xzXZa-fA-F_]+)'
},
{
begin: '\\B((\'(b|h|o|d|B|H|O|D))[0-9xzXZa-fA-F_]+)'
},
{
begin: '\\b([0-9_])+',
relevance: 0
}
]

@@ -95,4 +107,9 @@ },

variants: [
{begin: '#\\((?!parameter).+\\)'},
{begin: '\\.\\w+', relevance: 0},
{
begin: '#\\((?!parameter).+\\)'
},
{
begin: '\\.\\w+',
relevance: 0
}
]

@@ -102,14 +119,18 @@ },

className: 'meta',
begin: '`', end: '$',
keywords: {'meta-keyword': 'define __FILE__ ' +
'__LINE__ begin_keywords celldefine default_nettype define ' +
'else elsif end_keywords endcelldefine endif ifdef ifndef ' +
'include line nounconnected_drive pragma resetall timescale ' +
'unconnected_drive undef undefineall'},
begin: '`',
end: '$',
keywords: {
'meta-keyword':
'define __FILE__ ' +
'__LINE__ begin_keywords celldefine default_nettype define ' +
'else elsif end_keywords endcelldefine endif ifdef ifndef ' +
'include line nounconnected_drive pragma resetall timescale ' +
'unconnected_drive undef undefineall'
},
relevance: 0
}
]
}; // return
};
}
module.exports = verilog;

@@ -13,10 +13,10 @@ /*

// Decimal literal:
var INTEGER_RE = '\\d(_|\\d)*';
var EXPONENT_RE = '[eE][-+]?' + INTEGER_RE;
var DECIMAL_LITERAL_RE = INTEGER_RE + '(\\.' + INTEGER_RE + ')?' + '(' + EXPONENT_RE + ')?';
const INTEGER_RE = '\\d(_|\\d)*';
const EXPONENT_RE = '[eE][-+]?' + INTEGER_RE;
const DECIMAL_LITERAL_RE = INTEGER_RE + '(\\.' + INTEGER_RE + ')?' + '(' + EXPONENT_RE + ')?';
// Based literal:
var BASED_INTEGER_RE = '\\w+';
var BASED_LITERAL_RE = INTEGER_RE + '#' + BASED_INTEGER_RE + '(\\.' + BASED_INTEGER_RE + ')?' + '#' + '(' + EXPONENT_RE + ')?';
const BASED_INTEGER_RE = '\\w+';
const BASED_LITERAL_RE = INTEGER_RE + '#' + BASED_INTEGER_RE + '(\\.' + BASED_INTEGER_RE + ')?' + '#' + '(' + EXPONENT_RE + ')?';
var NUMBER_RE = '\\b(' + BASED_LITERAL_RE + '|' + DECIMAL_LITERAL_RE + ')';
const NUMBER_RE = '\\b(' + BASED_LITERAL_RE + '|' + DECIMAL_LITERAL_RE + ')';

@@ -45,8 +45,8 @@ return {

literal:
'false true note warning error failure ' + // severity_level
'line text side width' // textio
'false true note warning error failure ' + // severity_level
'line text side width' // textio
},
illegal: /\{/,
contains: [
hljs.C_BLOCK_COMMENT_MODE, // VHDL-2008 block commenting.
hljs.C_BLOCK_COMMENT_MODE, // VHDL-2008 block commenting.
hljs.COMMENT('--', '$'),

@@ -62,3 +62,3 @@ hljs.QUOTE_STRING_MODE,

begin: '\'(U|X|0|1|Z|W|L|H|-)\'',
contains: [hljs.BACKSLASH_ESCAPE]
contains: [ hljs.BACKSLASH_ESCAPE ]
},

@@ -68,3 +68,3 @@ {

begin: '\'[A-Za-z](_?[A-Za-z0-9])*',
contains: [hljs.BACKSLASH_ESCAPE]
contains: [ hljs.BACKSLASH_ESCAPE ]
}

@@ -71,0 +71,0 @@ ]

@@ -16,21 +16,21 @@ /*

// express version except: ! & * < = > !! # @ @@
'N|0 P|0 X|0 a|0 ab abc abo al am an|0 ar arga argd arge argdo argg argl argu as au aug aun b|0 bN ba bad bd be bel bf bl bm bn bo bp br brea breaka breakd breakl bro bufdo buffers bun bw c|0 cN cNf ca cabc caddb cad caddf cal cat cb cc ccl cd ce cex cf cfir cgetb cgete cg changes chd che checkt cl cla clo cm cmapc cme cn cnew cnf cno cnorea cnoreme co col colo com comc comp con conf cope '+
'cp cpf cq cr cs cst cu cuna cunme cw delm deb debugg delc delf dif diffg diffo diffp diffpu diffs diffthis dig di dl dell dj dli do doautoa dp dr ds dsp e|0 ea ec echoe echoh echom echon el elsei em en endfo endf endt endw ene ex exe exi exu f|0 files filet fin fina fini fir fix fo foldc foldd folddoc foldo for fu go gr grepa gu gv ha helpf helpg helpt hi hid his ia iabc if ij il im imapc '+
'ime ino inorea inoreme int is isp iu iuna iunme j|0 ju k|0 keepa kee keepj lN lNf l|0 lad laddb laddf la lan lat lb lc lch lcl lcs le lefta let lex lf lfir lgetb lgete lg lgr lgrepa lh ll lla lli lmak lm lmapc lne lnew lnf ln loadk lo loc lockv lol lope lp lpf lr ls lt lu lua luad luaf lv lvimgrepa lw m|0 ma mak map mapc marks mat me menut mes mk mks mksp mkv mkvie mod mz mzf nbc nb nbs new nm nmapc nme nn nnoreme noa no noh norea noreme norm nu nun nunme ol o|0 om omapc ome on ono onoreme opt ou ounme ow p|0 '+
'profd prof pro promptr pc ped pe perld po popu pp pre prev ps pt ptN ptf ptj ptl ptn ptp ptr pts pu pw py3 python3 py3d py3f py pyd pyf quita qa rec red redi redr redraws reg res ret retu rew ri rightb rub rubyd rubyf rund ru rv sN san sa sal sav sb sbN sba sbf sbl sbm sbn sbp sbr scrip scripte scs se setf setg setl sf sfir sh sim sig sil sl sla sm smap smapc sme sn sni sno snor snoreme sor '+
'so spelld spe spelli spellr spellu spellw sp spr sre st sta startg startr star stopi stj sts sun sunm sunme sus sv sw sy synti sync tN tabN tabc tabdo tabe tabf tabfir tabl tabm tabnew '+
'tabn tabo tabp tabr tabs tab ta tags tc tcld tclf te tf th tj tl tm tn to tp tr try ts tu u|0 undoj undol una unh unl unlo unm unme uns up ve verb vert vim vimgrepa vi viu vie vm vmapc vme vne vn vnoreme vs vu vunme windo w|0 wN wa wh wi winc winp wn wp wq wqa ws wu wv x|0 xa xmapc xm xme xn xnoreme xu xunme y|0 z|0 ~ '+
'N|0 P|0 X|0 a|0 ab abc abo al am an|0 ar arga argd arge argdo argg argl argu as au aug aun b|0 bN ba bad bd be bel bf bl bm bn bo bp br brea breaka breakd breakl bro bufdo buffers bun bw c|0 cN cNf ca cabc caddb cad caddf cal cat cb cc ccl cd ce cex cf cfir cgetb cgete cg changes chd che checkt cl cla clo cm cmapc cme cn cnew cnf cno cnorea cnoreme co col colo com comc comp con conf cope ' +
'cp cpf cq cr cs cst cu cuna cunme cw delm deb debugg delc delf dif diffg diffo diffp diffpu diffs diffthis dig di dl dell dj dli do doautoa dp dr ds dsp e|0 ea ec echoe echoh echom echon el elsei em en endfo endf endt endw ene ex exe exi exu f|0 files filet fin fina fini fir fix fo foldc foldd folddoc foldo for fu go gr grepa gu gv ha helpf helpg helpt hi hid his ia iabc if ij il im imapc ' +
'ime ino inorea inoreme int is isp iu iuna iunme j|0 ju k|0 keepa kee keepj lN lNf l|0 lad laddb laddf la lan lat lb lc lch lcl lcs le lefta let lex lf lfir lgetb lgete lg lgr lgrepa lh ll lla lli lmak lm lmapc lne lnew lnf ln loadk lo loc lockv lol lope lp lpf lr ls lt lu lua luad luaf lv lvimgrepa lw m|0 ma mak map mapc marks mat me menut mes mk mks mksp mkv mkvie mod mz mzf nbc nb nbs new nm nmapc nme nn nnoreme noa no noh norea noreme norm nu nun nunme ol o|0 om omapc ome on ono onoreme opt ou ounme ow p|0 ' +
'profd prof pro promptr pc ped pe perld po popu pp pre prev ps pt ptN ptf ptj ptl ptn ptp ptr pts pu pw py3 python3 py3d py3f py pyd pyf quita qa rec red redi redr redraws reg res ret retu rew ri rightb rub rubyd rubyf rund ru rv sN san sa sal sav sb sbN sba sbf sbl sbm sbn sbp sbr scrip scripte scs se setf setg setl sf sfir sh sim sig sil sl sla sm smap smapc sme sn sni sno snor snoreme sor ' +
'so spelld spe spelli spellr spellu spellw sp spr sre st sta startg startr star stopi stj sts sun sunm sunme sus sv sw sy synti sync tN tabN tabc tabdo tabe tabf tabfir tabl tabm tabnew ' +
'tabn tabo tabp tabr tabs tab ta tags tc tcld tclf te tf th tj tl tm tn to tp tr try ts tu u|0 undoj undol una unh unl unlo unm unme uns up ve verb vert vim vimgrepa vi viu vie vm vmapc vme vne vn vnoreme vs vu vunme windo w|0 wN wa wh wi winc winp wn wp wq wqa ws wu wv x|0 xa xmapc xm xme xn xnoreme xu xunme y|0 z|0 ~ ' +
// full version
'Next Print append abbreviate abclear aboveleft all amenu anoremenu args argadd argdelete argedit argglobal arglocal argument ascii autocmd augroup aunmenu buffer bNext ball badd bdelete behave belowright bfirst blast bmodified bnext botright bprevious brewind break breakadd breakdel breaklist browse bunload '+
'bwipeout change cNext cNfile cabbrev cabclear caddbuffer caddexpr caddfile call catch cbuffer cclose center cexpr cfile cfirst cgetbuffer cgetexpr cgetfile chdir checkpath checktime clist clast close cmap cmapclear cmenu cnext cnewer cnfile cnoremap cnoreabbrev cnoremenu copy colder colorscheme command comclear compiler continue confirm copen cprevious cpfile cquit crewind cscope cstag cunmap '+
'cunabbrev cunmenu cwindow delete delmarks debug debuggreedy delcommand delfunction diffupdate diffget diffoff diffpatch diffput diffsplit digraphs display deletel djump dlist doautocmd doautoall deletep drop dsearch dsplit edit earlier echo echoerr echohl echomsg else elseif emenu endif endfor '+
'endfunction endtry endwhile enew execute exit exusage file filetype find finally finish first fixdel fold foldclose folddoopen folddoclosed foldopen function global goto grep grepadd gui gvim hardcopy help helpfind helpgrep helptags highlight hide history insert iabbrev iabclear ijump ilist imap '+
'imapclear imenu inoremap inoreabbrev inoremenu intro isearch isplit iunmap iunabbrev iunmenu join jumps keepalt keepmarks keepjumps lNext lNfile list laddexpr laddbuffer laddfile last language later lbuffer lcd lchdir lclose lcscope left leftabove lexpr lfile lfirst lgetbuffer lgetexpr lgetfile lgrep lgrepadd lhelpgrep llast llist lmake lmap lmapclear lnext lnewer lnfile lnoremap loadkeymap loadview '+
'lockmarks lockvar lolder lopen lprevious lpfile lrewind ltag lunmap luado luafile lvimgrep lvimgrepadd lwindow move mark make mapclear match menu menutranslate messages mkexrc mksession mkspell mkvimrc mkview mode mzscheme mzfile nbclose nbkey nbsart next nmap nmapclear nmenu nnoremap '+
'nnoremenu noautocmd noremap nohlsearch noreabbrev noremenu normal number nunmap nunmenu oldfiles open omap omapclear omenu only onoremap onoremenu options ounmap ounmenu ownsyntax print profdel profile promptfind promptrepl pclose pedit perl perldo pop popup ppop preserve previous psearch ptag ptNext '+
'ptfirst ptjump ptlast ptnext ptprevious ptrewind ptselect put pwd py3do py3file python pydo pyfile quit quitall qall read recover redo redir redraw redrawstatus registers resize retab return rewind right rightbelow ruby rubydo rubyfile rundo runtime rviminfo substitute sNext sandbox sargument sall saveas sbuffer sbNext sball sbfirst sblast sbmodified sbnext sbprevious sbrewind scriptnames scriptencoding '+
'scscope set setfiletype setglobal setlocal sfind sfirst shell simalt sign silent sleep slast smagic smapclear smenu snext sniff snomagic snoremap snoremenu sort source spelldump spellgood spellinfo spellrepall spellundo spellwrong split sprevious srewind stop stag startgreplace startreplace '+
'startinsert stopinsert stjump stselect sunhide sunmap sunmenu suspend sview swapname syntax syntime syncbind tNext tabNext tabclose tabedit tabfind tabfirst tablast tabmove tabnext tabonly tabprevious tabrewind tag tcl tcldo tclfile tearoff tfirst throw tjump tlast tmenu tnext topleft tprevious '+'trewind tselect tunmenu undo undojoin undolist unabbreviate unhide unlet unlockvar unmap unmenu unsilent update vglobal version verbose vertical vimgrep vimgrepadd visual viusage view vmap vmapclear vmenu vnew '+
'Next Print append abbreviate abclear aboveleft all amenu anoremenu args argadd argdelete argedit argglobal arglocal argument ascii autocmd augroup aunmenu buffer bNext ball badd bdelete behave belowright bfirst blast bmodified bnext botright bprevious brewind break breakadd breakdel breaklist browse bunload ' +
'bwipeout change cNext cNfile cabbrev cabclear caddbuffer caddexpr caddfile call catch cbuffer cclose center cexpr cfile cfirst cgetbuffer cgetexpr cgetfile chdir checkpath checktime clist clast close cmap cmapclear cmenu cnext cnewer cnfile cnoremap cnoreabbrev cnoremenu copy colder colorscheme command comclear compiler continue confirm copen cprevious cpfile cquit crewind cscope cstag cunmap ' +
'cunabbrev cunmenu cwindow delete delmarks debug debuggreedy delcommand delfunction diffupdate diffget diffoff diffpatch diffput diffsplit digraphs display deletel djump dlist doautocmd doautoall deletep drop dsearch dsplit edit earlier echo echoerr echohl echomsg else elseif emenu endif endfor ' +
'endfunction endtry endwhile enew execute exit exusage file filetype find finally finish first fixdel fold foldclose folddoopen folddoclosed foldopen function global goto grep grepadd gui gvim hardcopy help helpfind helpgrep helptags highlight hide history insert iabbrev iabclear ijump ilist imap ' +
'imapclear imenu inoremap inoreabbrev inoremenu intro isearch isplit iunmap iunabbrev iunmenu join jumps keepalt keepmarks keepjumps lNext lNfile list laddexpr laddbuffer laddfile last language later lbuffer lcd lchdir lclose lcscope left leftabove lexpr lfile lfirst lgetbuffer lgetexpr lgetfile lgrep lgrepadd lhelpgrep llast llist lmake lmap lmapclear lnext lnewer lnfile lnoremap loadkeymap loadview ' +
'lockmarks lockvar lolder lopen lprevious lpfile lrewind ltag lunmap luado luafile lvimgrep lvimgrepadd lwindow move mark make mapclear match menu menutranslate messages mkexrc mksession mkspell mkvimrc mkview mode mzscheme mzfile nbclose nbkey nbsart next nmap nmapclear nmenu nnoremap ' +
'nnoremenu noautocmd noremap nohlsearch noreabbrev noremenu normal number nunmap nunmenu oldfiles open omap omapclear omenu only onoremap onoremenu options ounmap ounmenu ownsyntax print profdel profile promptfind promptrepl pclose pedit perl perldo pop popup ppop preserve previous psearch ptag ptNext ' +
'ptfirst ptjump ptlast ptnext ptprevious ptrewind ptselect put pwd py3do py3file python pydo pyfile quit quitall qall read recover redo redir redraw redrawstatus registers resize retab return rewind right rightbelow ruby rubydo rubyfile rundo runtime rviminfo substitute sNext sandbox sargument sall saveas sbuffer sbNext sball sbfirst sblast sbmodified sbnext sbprevious sbrewind scriptnames scriptencoding ' +
'scscope set setfiletype setglobal setlocal sfind sfirst shell simalt sign silent sleep slast smagic smapclear smenu snext sniff snomagic snoremap snoremenu sort source spelldump spellgood spellinfo spellrepall spellundo spellwrong split sprevious srewind stop stag startgreplace startreplace ' +
'startinsert stopinsert stjump stselect sunhide sunmap sunmenu suspend sview swapname syntax syntime syncbind tNext tabNext tabclose tabedit tabfind tabfirst tablast tabmove tabnext tabonly tabprevious tabrewind tag tcl tcldo tclfile tearoff tfirst throw tjump tlast tmenu tnext topleft tprevious ' + 'trewind tselect tunmenu undo undojoin undolist unabbreviate unhide unlet unlockvar unmap unmenu unsilent update vglobal version verbose vertical vimgrep vimgrepadd visual viusage view vmap vmapclear vmenu vnew ' +
'vnoremap vnoremenu vsplit vunmap vunmenu write wNext wall while winsize wincmd winpos wnext wprevious wqall wsverb wundo wviminfo xit xall xmapclear xmap xmenu xnoremap xnoremenu xunmap xunmenu yank',
built_in: //built in func
built_in: // built in func
'synIDtrans atan2 range matcharg did_filetype asin feedkeys xor argv ' +

@@ -77,3 +77,4 @@ 'complete_check add getwinposx getqflist getwinposy screencol ' +

className: 'string',
begin: '\'', end: '\'',
begin: '\'',
end: '\'',
illegal: '\\n'

@@ -104,3 +105,4 @@ },

className: 'function',
beginKeywords: 'function function!', end: '$',
beginKeywords: 'function function!',
end: '$',
relevance: 0,

@@ -111,3 +113,4 @@ contains: [

className: 'params',
begin: '\\(', end: '\\)'
begin: '\\(',
end: '\\)'
}

@@ -114,0 +117,0 @@ ]

@@ -95,9 +95,16 @@ /*

// Hex number in $
{ begin: '\\$[0-9][0-9A-Fa-f]*', relevance: 0 },
{
begin: '\\$[0-9][0-9A-Fa-f]*',
relevance: 0
},
// Number in H,D,T,Q,O,B,Y suffix
{ begin: '\\b(?:[0-9A-Fa-f][0-9A-Fa-f_]*[Hh]|[0-9][0-9_]*[DdTt]?|[0-7][0-7_]*[QqOo]|[0-1][0-1_]*[BbYy])\\b' },
{
begin: '\\b(?:[0-9A-Fa-f][0-9A-Fa-f_]*[Hh]|[0-9][0-9_]*[DdTt]?|[0-7][0-7_]*[QqOo]|[0-1][0-1_]*[BbYy])\\b'
},
// Number in X,D,T,Q,O,B,Y prefix
{ begin: '\\b(?:0[Xx][0-9A-Fa-f_]+|0[DdTt][0-9_]+|0[QqOo][0-7_]+|0[BbYy][0-1_]+)\\b'}
{
begin: '\\b(?:0[Xx][0-9A-Fa-f_]+|0[DdTt][0-9_]+|0[QqOo][0-7_]+|0[BbYy][0-1_]+)\\b'
}
]

@@ -111,5 +118,11 @@ },

// Single-quoted string
{ begin: '\'', end: '[^\\\\]\'' },
{
begin: '\'',
end: '[^\\\\]\''
},
// Backquoted string
{ begin: '`', end: '[^\\\\]`' }
{
begin: '`',
end: '[^\\\\]`'
}
],

@@ -122,5 +135,9 @@ relevance: 0

// Global label and local label
{ begin: '^\\s*[A-Za-z._?][A-Za-z0-9_$#@~.?]*(:|\\s+label)' },
{
begin: '^\\s*[A-Za-z._?][A-Za-z0-9_$#@~.?]*(:|\\s+label)'
},
// Macro-local label
{ begin: '^\\s*%%[A-Za-z0-9_$#@~.?]*:' }
{
begin: '^\\s*%%[A-Za-z0-9_$#@~.?]*:'
}
],

@@ -127,0 +144,0 @@ relevance: 0

@@ -9,7 +9,7 @@ /*

function xl(hljs) {
var BUILTIN_MODULES =
const BUILTIN_MODULES =
'ObjectLoader Animate MovieCredits Slides Filters Shading Materials LensFlare Mapping VLCAudioVideo ' +
'StereoDecoder PointCloud NetworkAccess RemoteControl RegExp ChromaKey Snowfall NodeJS Speech Charts';
var XL_KEYWORDS = {
const XL_KEYWORDS = {
$pattern: /[a-zA-Z][a-zA-Z0-9_?]*/,

@@ -34,31 +34,41 @@ keyword:

var DOUBLE_QUOTE_TEXT = {
const DOUBLE_QUOTE_TEXT = {
className: 'string',
begin: '"', end: '"', illegal: '\\n'
begin: '"',
end: '"',
illegal: '\\n'
};
var SINGLE_QUOTE_TEXT = {
const SINGLE_QUOTE_TEXT = {
className: 'string',
begin: '\'', end: '\'', illegal: '\\n'
begin: '\'',
end: '\'',
illegal: '\\n'
};
var LONG_TEXT = {
const LONG_TEXT = {
className: 'string',
begin: '<<', end: '>>'
begin: '<<',
end: '>>'
};
var BASED_NUMBER = {
const BASED_NUMBER = {
className: 'number',
begin: '[0-9]+#[0-9A-Z_]+(\\.[0-9-A-Z_]+)?#?([Ee][+-]?[0-9]+)?'
};
var IMPORT = {
beginKeywords: 'import', end: '$',
const IMPORT = {
beginKeywords: 'import',
end: '$',
keywords: XL_KEYWORDS,
contains: [DOUBLE_QUOTE_TEXT]
contains: [ DOUBLE_QUOTE_TEXT ]
};
var FUNCTION_DEFINITION = {
const FUNCTION_DEFINITION = {
className: 'function',
begin: /[a-z][^\n]*->/, returnBegin: true, end: /->/,
begin: /[a-z][^\n]*->/,
returnBegin: true,
end: /->/,
contains: [
hljs.inherit(hljs.TITLE_MODE, {starts: {
endsWithParent: true,
keywords: XL_KEYWORDS
}})
hljs.inherit(hljs.TITLE_MODE, {
starts: {
endsWithParent: true,
keywords: XL_KEYWORDS
}
})
]

@@ -68,14 +78,14 @@ };

name: 'XL',
aliases: ['tao'],
aliases: [ 'tao' ],
keywords: XL_KEYWORDS,
contains: [
hljs.C_LINE_COMMENT_MODE,
hljs.C_BLOCK_COMMENT_MODE,
DOUBLE_QUOTE_TEXT,
SINGLE_QUOTE_TEXT,
LONG_TEXT,
FUNCTION_DEFINITION,
IMPORT,
BASED_NUMBER,
hljs.NUMBER_MODE
hljs.C_LINE_COMMENT_MODE,
hljs.C_BLOCK_COMMENT_MODE,
DOUBLE_QUOTE_TEXT,
SINGLE_QUOTE_TEXT,
LONG_TEXT,
FUNCTION_DEFINITION,
IMPORT,
BASED_NUMBER,
hljs.NUMBER_MODE
]

@@ -82,0 +92,0 @@ };

@@ -63,22 +63,29 @@ /**

// Element names can contain letters, digits, hyphens, underscores, and periods
var TAG_NAME_RE = concat(/[A-Z_]/, optional(/[A-Z0-9_.-]+:/), /[A-Z0-9_.-]*/);
var XML_IDENT_RE = '[A-Za-z0-9\\._:-]+';
var XML_ENTITIES = {
const TAG_NAME_RE = concat(/[A-Z_]/, optional(/[A-Z0-9_.-]+:/), /[A-Z0-9_.-]*/);
const XML_IDENT_RE = '[A-Za-z0-9\\._:-]+';
const XML_ENTITIES = {
className: 'symbol',
begin: '&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;'
};
var XML_META_KEYWORDS = {
begin: '\\s',
contains:[
{
className: 'meta-keyword',
begin: '#?[a-z_][a-z1-9_-]+',
illegal: '\\n',
const XML_META_KEYWORDS = {
begin: '\\s',
contains: [
{
className: 'meta-keyword',
begin: '#?[a-z_][a-z1-9_-]+',
illegal: '\\n'
}
]
]
};
var XML_META_PAR_KEYWORDS = hljs.inherit(XML_META_KEYWORDS, {begin: '\\(', end: '\\)'});
var APOS_META_STRING_MODE = hljs.inherit(hljs.APOS_STRING_MODE, {className: 'meta-string'});
var QUOTE_META_STRING_MODE = hljs.inherit(hljs.QUOTE_STRING_MODE, {className: 'meta-string'});
var TAG_INTERNALS = {
const XML_META_PAR_KEYWORDS = hljs.inherit(XML_META_KEYWORDS, {
begin: '\\(',
end: '\\)'
});
const APOS_META_STRING_MODE = hljs.inherit(hljs.APOS_STRING_MODE, {
className: 'meta-string'
});
const QUOTE_META_STRING_MODE = hljs.inherit(hljs.QUOTE_STRING_MODE, {
className: 'meta-string'
});
const TAG_INTERNALS = {
endsWithParent: true,

@@ -101,5 +108,15 @@ illegal: /</,

variants: [
{begin: /"/, end: /"/, contains: [XML_ENTITIES]},
{begin: /'/, end: /'/, contains: [XML_ENTITIES]},
{begin: /[^\s"'=<>`]+/}
{
begin: /"/,
end: /"/,
contains: [ XML_ENTITIES ]
},
{
begin: /'/,
end: /'/,
contains: [ XML_ENTITIES ]
},
{
begin: /[^\s"'=<>`]+/
}
]

@@ -113,3 +130,14 @@ }

name: 'HTML, XML',
aliases: ['html', 'xhtml', 'rss', 'atom', 'xjb', 'xsd', 'xsl', 'plist', 'wsf', 'svg'],
aliases: [
'html',
'xhtml',
'rss',
'atom',
'xjb',
'xsd',
'xsl',
'plist',
'wsf',
'svg'
],
case_insensitive: true,

@@ -119,25 +147,28 @@ contains: [

className: 'meta',
begin: '<![a-z]', end: '>',
begin: '<![a-z]',
end: '>',
relevance: 10,
contains: [
XML_META_KEYWORDS,
QUOTE_META_STRING_MODE,
APOS_META_STRING_MODE,
XML_META_PAR_KEYWORDS,
{
begin: '\\[', end: '\\]',
contains:[
{
className: 'meta',
begin: '<![a-z]', end: '>',
contains: [
XML_META_KEYWORDS,
XML_META_PAR_KEYWORDS,
QUOTE_META_STRING_MODE,
APOS_META_STRING_MODE
]
}
]
}
]
XML_META_KEYWORDS,
QUOTE_META_STRING_MODE,
APOS_META_STRING_MODE,
XML_META_PAR_KEYWORDS,
{
begin: '\\[',
end: '\\]',
contains: [
{
className: 'meta',
begin: '<![a-z]',
end: '>',
contains: [
XML_META_KEYWORDS,
XML_META_PAR_KEYWORDS,
QUOTE_META_STRING_MODE,
APOS_META_STRING_MODE
]
}
]
}
]
},

@@ -152,3 +183,4 @@ hljs.COMMENT(

{
begin: '<!\\[CDATA\\[', end: '\\]\\]>',
begin: '<!\\[CDATA\\[',
end: '\\]\\]>',
relevance: 10

@@ -159,3 +191,5 @@ },

className: 'meta',
begin: /<\?xml/, end: /\?>/, relevance: 10
begin: /<\?xml/,
end: /\?>/,
relevance: 10
},

@@ -170,8 +204,15 @@ {

*/
begin: '<style(?=\\s|>)', end: '>',
keywords: {name: 'style'},
contains: [TAG_INTERNALS],
begin: '<style(?=\\s|>)',
end: '>',
keywords: {
name: 'style'
},
contains: [ TAG_INTERNALS ],
starts: {
end: '</style>', returnEnd: true,
subLanguage: ['css', 'xml']
end: '</style>',
returnEnd: true,
subLanguage: [
'css',
'xml'
]
}

@@ -182,8 +223,16 @@ },

// See the comment in the <style tag about the lookahead pattern
begin: '<script(?=\\s|>)', end: '>',
keywords: {name: 'script'},
contains: [TAG_INTERNALS],
begin: '<script(?=\\s|>)',
end: '>',
keywords: {
name: 'script'
},
contains: [ TAG_INTERNALS ],
starts: {
end: /<\/script>/, returnEnd: true,
subLanguage: ['javascript', 'handlebars', 'xml']
end: /<\/script>/,
returnEnd: true,
subLanguage: [
'javascript',
'handlebars',
'xml'
]
}

@@ -194,3 +243,3 @@ },

className: 'tag',
begin: /<>|<\/>/,
begin: /<>|<\/>/
},

@@ -211,8 +260,10 @@ // open tag

end: /\/?>/,
contains: [{
className: 'name',
begin: TAG_NAME_RE,
relevance: 0,
starts: TAG_INTERNALS
}]
contains: [
{
className: 'name',
begin: TAG_NAME_RE,
relevance: 0,
starts: TAG_INTERNALS
}
]
},

@@ -239,3 +290,3 @@ // close tag

]
},
}
]

@@ -242,0 +293,0 @@ };

@@ -13,16 +13,19 @@ /*

// see https://www.w3.org/TR/xquery/#id-terminal-delimitation
var KEYWORDS = 'module schema namespace boundary-space preserve no-preserve strip default collation base-uri ordering context decimal-format decimal-separator copy-namespaces empty-sequence except exponent-separator external grouping-separator inherit no-inherit lax minus-sign per-mille percent schema-attribute schema-element strict unordered zero-digit ' +
'declare import option function validate variable ' +
'for at in let where order group by return if then else ' +
'tumbling sliding window start when only end previous next stable ' +
'ascending descending allowing empty greatest least some every satisfies switch case typeswitch try catch ' +
'and or to union intersect instance of treat as castable cast map array ' +
'delete insert into replace value rename copy modify update';
const KEYWORDS =
'module schema namespace boundary-space preserve no-preserve strip default collation base-uri ordering context decimal-format decimal-separator copy-namespaces empty-sequence except exponent-separator external grouping-separator inherit no-inherit lax minus-sign per-mille percent schema-attribute schema-element strict unordered zero-digit ' +
'declare import option function validate variable ' +
'for at in let where order group by return if then else ' +
'tumbling sliding window start when only end previous next stable ' +
'ascending descending allowing empty greatest least some every satisfies switch case typeswitch try catch ' +
'and or to union intersect instance of treat as castable cast map array ' +
'delete insert into replace value rename copy modify update';
// Node Types (sorted by inheritance)
// atomic types (sorted by inheritance)
var TYPE = 'item document-node node attribute document element comment namespace namespace-node processing-instruction text construction ' +
'xs:anyAtomicType xs:untypedAtomic xs:duration xs:time xs:decimal xs:float xs:double xs:gYearMonth xs:gYear xs:gMonthDay xs:gMonth xs:gDay xs:boolean xs:base64Binary xs:hexBinary xs:anyURI xs:QName xs:NOTATION xs:dateTime xs:dateTimeStamp xs:date xs:string xs:normalizedString xs:token xs:language xs:NMTOKEN xs:Name xs:NCName xs:ID xs:IDREF xs:ENTITY xs:integer xs:nonPositiveInteger xs:negativeInteger xs:long xs:int xs:short xs:byte xs:nonNegativeInteger xs:unisignedLong xs:unsignedInt xs:unsignedShort xs:unsignedByte xs:positiveInteger xs:yearMonthDuration xs:dayTimeDuration';
const TYPE =
'item document-node node attribute document element comment namespace namespace-node processing-instruction text construction ' +
'xs:anyAtomicType xs:untypedAtomic xs:duration xs:time xs:decimal xs:float xs:double xs:gYearMonth xs:gYear xs:gMonthDay xs:gMonth xs:gDay xs:boolean xs:base64Binary xs:hexBinary xs:anyURI xs:QName xs:NOTATION xs:dateTime xs:dateTimeStamp xs:date xs:string xs:normalizedString xs:token xs:language xs:NMTOKEN xs:Name xs:NCName xs:ID xs:IDREF xs:ENTITY xs:integer xs:nonPositiveInteger xs:negativeInteger xs:long xs:int xs:short xs:byte xs:nonNegativeInteger xs:unisignedLong xs:unsignedInt xs:unsignedShort xs:unsignedByte xs:positiveInteger xs:yearMonthDuration xs:dayTimeDuration';
var LITERAL = 'eq ne lt le gt ge is ' +
const LITERAL =
'eq ne lt le gt ge is ' +
'self:: child:: descendant:: descendant-or-self:: attribute:: following:: following-sibling:: parent:: ancestor:: ancestor-or-self:: preceding:: preceding-sibling:: ' +

@@ -32,41 +35,49 @@ 'NaN';

// functions (TODO: find regex for op: without breaking build)
var BUILT_IN = {
const BUILT_IN = {
className: 'built_in',
variants: [{
begin: /\barray:/,
end: /(?:append|filter|flatten|fold-(?:left|right)|for-each(?:-pair)?|get|head|insert-before|join|put|remove|reverse|size|sort|subarray|tail)\b/
}, {
begin: /\bmap:/,
end: /(?:contains|entry|find|for-each|get|keys|merge|put|remove|size)\b/
}, {
begin: /\bmath:/,
end: /(?:a(?:cos|sin|tan[2]?)|cos|exp(?:10)?|log(?:10)?|pi|pow|sin|sqrt|tan)\b/
}, {
begin: /\bop:/,
end: /\(/,
excludeEnd: true
}, {
begin: /\bfn:/,
end: /\(/,
excludeEnd: true
},
// do not highlight inbuilt strings as variable or xml element names
{
begin: /[^<\/\$:'"-]\b(?:abs|accumulator-(?:after|before)|adjust-(?:date(?:Time)?|time)-to-timezone|analyze-string|apply|available-(?:environment-variables|system-properties)|avg|base-uri|boolean|ceiling|codepoints?-(?:equal|to-string)|collation-key|collection|compare|concat|contains(?:-token)?|copy-of|count|current(?:-)?(?:date(?:Time)?|time|group(?:ing-key)?|output-uri|merge-(?:group|key))?data|dateTime|days?-from-(?:date(?:Time)?|duration)|deep-equal|default-(?:collation|language)|distinct-values|document(?:-uri)?|doc(?:-available)?|element-(?:available|with-id)|empty|encode-for-uri|ends-with|environment-variable|error|escape-html-uri|exactly-one|exists|false|filter|floor|fold-(?:left|right)|for-each(?:-pair)?|format-(?:date(?:Time)?|time|integer|number)|function-(?:arity|available|lookup|name)|generate-id|has-children|head|hours-from-(?:dateTime|duration|time)|id(?:ref)?|implicit-timezone|in-scope-prefixes|index-of|innermost|insert-before|iri-to-uri|json-(?:doc|to-xml)|key|lang|last|load-xquery-module|local-name(?:-from-QName)?|(?:lower|upper)-case|matches|max|minutes-from-(?:dateTime|duration|time)|min|months?-from-(?:date(?:Time)?|duration)|name(?:space-uri-?(?:for-prefix|from-QName)?)?|nilled|node-name|normalize-(?:space|unicode)|not|number|one-or-more|outermost|parse-(?:ietf-date|json)|path|position|(?:prefix-from-)?QName|random-number-generator|regex-group|remove|replace|resolve-(?:QName|uri)|reverse|root|round(?:-half-to-even)?|seconds-from-(?:dateTime|duration|time)|snapshot|sort|starts-with|static-base-uri|stream-available|string-?(?:join|length|to-codepoints)?|subsequence|substring-?(?:after|before)?|sum|system-property|tail|timezone-from-(?:date(?:Time)?|time)|tokenize|trace|trans(?:form|late)|true|type-available|unordered|unparsed-(?:entity|text)?-?(?:public-id|uri|available|lines)?|uri-collection|xml-to-json|years?-from-(?:date(?:Time)?|duration)|zero-or-one)\b/,
}, {
begin: /\blocal:/,
end: /\(/,
excludeEnd: true
}, {
begin: /\bzip:/,
end: /(?:zip-file|(?:xml|html|text|binary)-entry| (?:update-)?entries)\b/
}, {
begin: /\b(?:util|db|functx|app|xdmp|xmldb):/,
end: /\(/,
excludeEnd: true
}
]
variants: [
{
begin: /\barray:/,
end: /(?:append|filter|flatten|fold-(?:left|right)|for-each(?:-pair)?|get|head|insert-before|join|put|remove|reverse|size|sort|subarray|tail)\b/
},
{
begin: /\bmap:/,
end: /(?:contains|entry|find|for-each|get|keys|merge|put|remove|size)\b/
},
{
begin: /\bmath:/,
end: /(?:a(?:cos|sin|tan[2]?)|cos|exp(?:10)?|log(?:10)?|pi|pow|sin|sqrt|tan)\b/
},
{
begin: /\bop:/,
end: /\(/,
excludeEnd: true
},
{
begin: /\bfn:/,
end: /\(/,
excludeEnd: true
},
// do not highlight inbuilt strings as variable or xml element names
{
begin: /[^<\/\$:'"-]\b(?:abs|accumulator-(?:after|before)|adjust-(?:date(?:Time)?|time)-to-timezone|analyze-string|apply|available-(?:environment-variables|system-properties)|avg|base-uri|boolean|ceiling|codepoints?-(?:equal|to-string)|collation-key|collection|compare|concat|contains(?:-token)?|copy-of|count|current(?:-)?(?:date(?:Time)?|time|group(?:ing-key)?|output-uri|merge-(?:group|key))?data|dateTime|days?-from-(?:date(?:Time)?|duration)|deep-equal|default-(?:collation|language)|distinct-values|document(?:-uri)?|doc(?:-available)?|element-(?:available|with-id)|empty|encode-for-uri|ends-with|environment-variable|error|escape-html-uri|exactly-one|exists|false|filter|floor|fold-(?:left|right)|for-each(?:-pair)?|format-(?:date(?:Time)?|time|integer|number)|function-(?:arity|available|lookup|name)|generate-id|has-children|head|hours-from-(?:dateTime|duration|time)|id(?:ref)?|implicit-timezone|in-scope-prefixes|index-of|innermost|insert-before|iri-to-uri|json-(?:doc|to-xml)|key|lang|last|load-xquery-module|local-name(?:-from-QName)?|(?:lower|upper)-case|matches|max|minutes-from-(?:dateTime|duration|time)|min|months?-from-(?:date(?:Time)?|duration)|name(?:space-uri-?(?:for-prefix|from-QName)?)?|nilled|node-name|normalize-(?:space|unicode)|not|number|one-or-more|outermost|parse-(?:ietf-date|json)|path|position|(?:prefix-from-)?QName|random-number-generator|regex-group|remove|replace|resolve-(?:QName|uri)|reverse|root|round(?:-half-to-even)?|seconds-from-(?:dateTime|duration|time)|snapshot|sort|starts-with|static-base-uri|stream-available|string-?(?:join|length|to-codepoints)?|subsequence|substring-?(?:after|before)?|sum|system-property|tail|timezone-from-(?:date(?:Time)?|time)|tokenize|trace|trans(?:form|late)|true|type-available|unordered|unparsed-(?:entity|text)?-?(?:public-id|uri|available|lines)?|uri-collection|xml-to-json|years?-from-(?:date(?:Time)?|duration)|zero-or-one)\b/
},
{
begin: /\blocal:/,
end: /\(/,
excludeEnd: true
},
{
begin: /\bzip:/,
end: /(?:zip-file|(?:xml|html|text|binary)-entry| (?:update-)?entries)\b/
},
{
begin: /\b(?:util|db|functx|app|xdmp|xmldb):/,
end: /\(/,
excludeEnd: true
}
]
};
var TITLE = {
const TITLE = {
className: 'title',

@@ -77,3 +88,3 @@ begin: /\bxquery version "[13]\.[01]"\s?(?:encoding ".+")?/,

var VAR = {
const VAR = {
className: 'variable',

@@ -83,3 +94,3 @@ begin: /[$][\w\-:]+/

var NUMBER = {
const NUMBER = {
className: 'number',

@@ -90,11 +101,14 @@ begin: '(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b',

var STRING = {
const STRING = {
className: 'string',
variants: [{
variants: [
{
begin: /"/,
end: /"/,
contains: [{
begin: /""/,
relevance: 0
}]
contains: [
{
begin: /""/,
relevance: 0
}
]
},

@@ -104,6 +118,8 @@ {

end: /'/,
contains: [{
begin: /''/,
relevance: 0
}]
contains: [
{
begin: /''/,
relevance: 0
}
]
}

@@ -113,3 +129,3 @@ ]

var ANNOTATION = {
const ANNOTATION = {
className: 'meta',

@@ -119,3 +135,3 @@ begin: /%[\w\-:]+/

var COMMENT = {
const COMMENT = {
className: 'comment',

@@ -125,6 +141,8 @@ begin: '\\(:',

relevance: 10,
contains: [{
className: 'doctag',
begin: '@\\w+'
}]
contains: [
{
className: 'doctag',
begin: '@\\w+'
}
]
};

@@ -135,3 +153,3 @@

// see https://www.regexpal.com/?fam=99749
var COMPUTED = {
const COMPUTED = {
beginKeywords: 'element attribute comment document processing-instruction',

@@ -143,14 +161,17 @@ end: /\{/,

// mocha: direct_method
var DIRECT = {
begin: /<([\w\._:\-]+)((\s*.*)=('|").*('|"))?>/,
end: /(\/[\w\._:\-]+>)/,
subLanguage: 'xml',
contains: [{
const DIRECT = {
begin: /<([\w\._:\-]+)((\s*.*)=('|").*('|"))?>/,
end: /(\/[\w\._:\-]+>)/,
subLanguage: 'xml',
contains: [
{
begin: /\{/,
end: /\}/,
subLanguage: 'xquery'
}, 'self']
};
},
'self'
]
};
var CONTAINS = [
const CONTAINS = [
VAR,

@@ -169,3 +190,6 @@ BUILT_IN,

name: 'XQuery',
aliases: ['xpath', 'xq'],
aliases: [
'xpath',
'xq'
],
case_insensitive: false,

@@ -172,0 +196,0 @@ illegal: /(proc)|(abstract)|(extends)|(until)|(#)/,

@@ -9,13 +9,22 @@ /*

function zephir(hljs) {
var STRING = {
const STRING = {
className: 'string',
contains: [hljs.BACKSLASH_ESCAPE],
contains: [ hljs.BACKSLASH_ESCAPE ],
variants: [
hljs.inherit(hljs.APOS_STRING_MODE, {illegal: null}),
hljs.inherit(hljs.QUOTE_STRING_MODE, {illegal: null})
hljs.inherit(hljs.APOS_STRING_MODE, {
illegal: null
}),
hljs.inherit(hljs.QUOTE_STRING_MODE, {
illegal: null
})
]
};
var TITLE_MODE = hljs.UNDERSCORE_TITLE_MODE;
var NUMBER = {variants: [hljs.BINARY_NUMBER_MODE, hljs.C_NUMBER_MODE]};
var KEYWORDS =
const TITLE_MODE = hljs.UNDERSCORE_TITLE_MODE;
const NUMBER = {
variants: [
hljs.BINARY_NUMBER_MODE,
hljs.C_NUMBER_MODE
]
};
const KEYWORDS =
// classes and objects

@@ -49,3 +58,3 @@ 'namespace class interface use extends ' +

name: 'Zephir',
aliases: ['zep'],
aliases: [ 'zep' ],
keywords: KEYWORDS,

@@ -68,4 +77,5 @@ contains: [

className: 'string',
begin: '<<<[\'"]?\\w+[\'"]?$', end: '^\\w+;',
contains: [hljs.BACKSLASH_ESCAPE]
begin: '<<<[\'"]?\\w+[\'"]?$',
end: '^\\w+;',
contains: [ hljs.BACKSLASH_ESCAPE ]
},

@@ -78,3 +88,5 @@ {

className: 'function',
beginKeywords: 'function fn', end: /[;{]/, excludeEnd: true,
beginKeywords: 'function fn',
end: /[;{]/,
excludeEnd: true,
illegal: '\\$|\\[|%',

@@ -85,3 +97,4 @@ contains: [

className: 'params',
begin: '\\(', end: '\\)',
begin: '\\(',
end: '\\)',
keywords: KEYWORDS,

@@ -99,6 +112,10 @@ contains: [

className: 'class',
beginKeywords: 'class interface', end: /\{/, excludeEnd: true,
beginKeywords: 'class interface',
end: /\{/,
excludeEnd: true,
illegal: /[:\(\$"]/,
contains: [
{beginKeywords: 'extends implements'},
{
beginKeywords: 'extends implements'
},
TITLE_MODE

@@ -108,9 +125,11 @@ ]

{
beginKeywords: 'namespace', end: ';',
beginKeywords: 'namespace',
end: ';',
illegal: /[\.']/,
contains: [TITLE_MODE]
contains: [ TITLE_MODE ]
},
{
beginKeywords: 'use', end: ';',
contains: [TITLE_MODE]
beginKeywords: 'use',
end: ';',
contains: [ TITLE_MODE ]
},

@@ -117,0 +136,0 @@ {

@@ -9,3 +9,3 @@ {

"homepage": "https://highlightjs.org/",
"version": "10.4.0-beta1",
"version": "10.4.0",
"author": {

@@ -1183,2 +1183,6 @@ "name": "Ivan Sagalaev",

"email": "mportiz08@gmail.com"
},
{
"name": "Guillaume Grossetie",
"email": "ggrossetie@yuzutech.fr"
}

@@ -1222,3 +1226,3 @@ ],

"commander": "^6.2.0",
"deep-freeze-es6": "^1.3.1",
"deep-freeze-es6": "^1.4.1",
"del": "^6.0.0",

@@ -1225,0 +1229,0 @@ "dependency-resolver": "^2.0.1",

# Highlight.js
[![latest version](https://badgen.net/npm/v/highlight.js?label=latest)](https://www.npmjs.com/package/highlight.js)
[![beta](https://badgen.net/npm/v/highlight.js/beta)](https://www.npmjs.com/package/highlight.js)
[![slack](https://badgen.net/badge/icon/slack?icon=slack&label&color=pink)](https://join.slack.com/t/highlightjs/shared_invite/zt-jatdlkw4-h3LdjU5rC23t7aQ6zqoxzw)
[![license](https://badgen.net/github/license/highlightjs/highlight.js?color=cyan)](https://github.com/highlightjs/highlight.js/blob/master/LICENSE)

@@ -40,3 +42,3 @@ [![install size](https://badgen.net/packagephobia/install/highlight.js?label=npm+install)](https://packagephobia.now.sh/result?p=highlight.js)

Please see [OLD_VERSIONS.md](https://github.com/highlightjs/highlight.js/blob/master/OLD_VERSIONS.md) for support information.
Please see [SECURITY.md](https://github.com/highlightjs/highlight.js/blob/master/SECURITY.md) for support information.

@@ -246,7 +248,7 @@ ## Getting Started

<link rel="stylesheet"
href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/10.1.2/styles/default.min.css">
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/10.1.2/highlight.min.js"></script>
href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/10.4.0/styles/default.min.css">
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/10.4.0/highlight.min.js"></script>
<!-- and it's easy to individually load additional languages -->
<script charset="UTF-8"
src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.1.2/languages/go.min.js"></script>
src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.4.0/languages/go.min.js"></script>
```

@@ -258,4 +260,4 @@

<link rel="stylesheet"
href="//cdn.jsdelivr.net/gh/highlightjs/cdn-release@10.1.2/build/styles/default.min.css">
<script src="//cdn.jsdelivr.net/gh/highlightjs/cdn-release@10.1.2/build/highlight.min.js"></script>
href="//cdn.jsdelivr.net/gh/highlightjs/cdn-release@10.4.0/build/styles/default.min.css">
<script src="//cdn.jsdelivr.net/gh/highlightjs/cdn-release@10.4.0/build/highlight.min.js"></script>
```

@@ -266,4 +268,4 @@

```html
<link rel="stylesheet" href="https://unpkg.com/@highlightjs/cdn-assets@10.3.1/styles/default.min.css">
<script src="https://unpkg.com/@highlightjs/cdn-assets@10.3.1/highlight.min.js"></script>
<link rel="stylesheet" href="https://unpkg.com/@highlightjs/cdn-assets@10.4.0/styles/default.min.css">
<script src="https://unpkg.com/@highlightjs/cdn-assets@10.4.0/highlight.min.js"></script>
```

@@ -270,0 +272,0 @@

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc