You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

254 lines
9.7 KiB
JSON

{
"aliases": [
"ls",
"lassoscript"
],
"case_insensitive": true,
"lexemes": "[a-zA-Z_][\\w.]*|&[lg]t;",
"keywords": {
"literal": "true false none minimal full all void and or not bw nbw ew new cn ncn lt lte gt gte eq neq rx nrx ft",
"built_in": "array date decimal duration integer map pair string tag xml null boolean bytes keyword list locale queue set stack staticarray local var variable global data self inherited currentcapture givenblock",
"keyword": "cache database_names database_schemanames database_tablenames define_tag define_type email_batch encode_set html_comment handle handle_error header if inline iterate ljax_target link link_currentaction link_currentgroup link_currentrecord link_detail link_firstgroup link_firstrecord link_lastgroup link_lastrecord link_nextgroup link_nextrecord link_prevgroup link_prevrecord log loop namespace_using output_none portal private protect records referer referrer repeating resultset rows search_args search_arguments select sort_args sort_arguments thread_atomic value_list while abort case else fail_if fail_ifnot fail if_empty if_false if_null if_true loop_abort loop_continue loop_count params params_up return return_value run_children soap_definetag soap_lastrequest soap_lastresponse tag_name ascending average by define descending do equals frozen group handle_failure import in into join let match max min on order parent protected provide public require returnhome skip split_thread sum take thread to trait type where with yield yieldhome"
},
"contains": [
{
"className": "meta",
"begin": "\\]|\\?>",
"relevance": 0,
"starts": {
"end": "\\[|<\\?(lasso(script)?|=)",
"returnEnd": true,
"relevance": 0,
"contains": [
{
"className": "comment",
"begin": "<!--",
"end": "-->",
"contains": [
{
"begin": "\\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\\b"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
],
"relevance": 0
}
]
}
},
{
"className": "meta",
"begin": "\\[noprocess\\]",
"starts": {
"end": "\\[\/noprocess\\]",
"returnEnd": true,
"contains": [
{
"$ref": "#contains.0.starts.contains.0"
}
]
}
},
{
"className": "meta",
"begin": "\\[\/noprocess|<\\?(lasso(script)?|=)"
},
{
"className": "meta",
"begin": "\\[no_square_brackets",
"starts": {
"end": "\\[\/no_square_brackets\\]",
"lexemes": "[a-zA-Z_][\\w.]*|&[lg]t;",
"keywords": {
"$ref": "#keywords"
},
"contains": [
{
"className": "meta",
"begin": "\\]|\\?>",
"relevance": 0,
"starts": {
"end": "\\[noprocess\\]|<\\?(lasso(script)?|=)",
"returnEnd": true,
"contains": [
{
"$ref": "#contains.0.starts.contains.0"
}
]
}
},
{
"$ref": "#contains.1"
},
{
"$ref": "#contains.2"
},
{
"className": "comment",
"begin": "\/\/",
"end": "$",
"contains": [
{
"$ref": "#contains.0.starts.contains.0.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#contains.0.starts.contains.0.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "number",
"begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)|(-?infinity|NaN)\\b",
"relevance": 0
},
{
"className": "string",
"begin": "'",
"end": "'",
"illegal": null,
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": null,
"contains": [
{
"$ref": "#contains.3.starts.contains.6.contains.0"
}
]
},
{
"className": "string",
"begin": "`",
"end": "`"
},
{
"variants": [
{
"begin": "[#$][a-zA-Z_][\\w.]*"
},
{
"begin": "#",
"end": "\\d+",
"illegal": "\\W"
}
]
},
{
"className": "type",
"begin": "::\\s*",
"end": "[a-zA-Z_][\\w.]*",
"illegal": "\\W"
},
{
"className": "params",
"variants": [
{
"begin": "-(?!infinity)[a-zA-Z_][\\w.]*",
"relevance": 0
},
{
"begin": "(\\.\\.\\.)"
}
]
},
{
"begin": "(->|\\.)\\s*",
"relevance": 0,
"contains": [
{
"className": "symbol",
"begin": "'[a-zA-Z_][\\w.]*'"
}
]
},
{
"className": "class",
"beginKeywords": "define",
"returnEnd": true,
"end": "\\(|=>",
"contains": [
{
"className": "title",
"begin": "[a-zA-Z_][\\w.]*(=(?!>))?|[-+*\/%](?!>)",
"relevance": 0
}
]
}
]
}
},
{
"className": "meta",
"begin": "\\[",
"relevance": 0
},
{
"className": "meta",
"begin": "^#!",
"end": "lasso9$",
"relevance": 10
},
{
"$ref": "#contains.3.starts.contains.3"
},
{
"$ref": "#contains.3.starts.contains.4"
},
{
"$ref": "#contains.3.starts.contains.5"
},
{
"$ref": "#contains.3.starts.contains.6"
},
{
"$ref": "#contains.3.starts.contains.7"
},
{
"$ref": "#contains.3.starts.contains.8"
},
{
"$ref": "#contains.3.starts.contains.9"
},
{
"$ref": "#contains.3.starts.contains.10"
},
{
"$ref": "#contains.3.starts.contains.11"
},
{
"$ref": "#contains.3.starts.contains.12"
},
{
"$ref": "#contains.3.starts.contains.13"
}
]
}