🆙 Add cms i using 🆙

This commit is contained in:
Remco committed 2025-11-25 22:42:56 +01:00
1 parent 94704e0925
commit d44196149e
35591 files changed
+3601123

No files matched your search

@@ -0,0 +1,73 @@
<?php
/* Copyright (c) 2013-2019 Geert Bergman ([email protected]), highlight.php
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. Neither the name of "highlight.js", "highlight.php", nor the names of its
* contributors may be used to endorse or promote products derived from this
* software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
namespace Highlight;
/**
* The autoloader class for Highlight classes for projects without Composer or autoloaders.
*
* ```php
* <?php
*
* require_once("Highlight/Autoloader.php");
* spl_autoload_register("\\Highlight\\Autoloader::load");
*
* // Now use Highlight classes:
* $hl = new \Highlight\Highlighter(...);
* ```
*
* @TODO In v10.x, mark this class final for real
*
* @api
* @final
*
* @since 7.5.0.0
*/
class Autoloader
{
/**
* The method to include the source file for a given class to use in
* the PHP spl_autoload_register function.
*
* @param string $class a name of a Scrivo class
*
* @return bool true if the source file was successfully included
*/
public static function load($class)
{
if (substr($class, 0, 10) !== "Highlight\\") {
return false;
}
$c = str_replace("\\", "/", substr($class, 10)) . ".php";
$res = include __DIR__ . "/$c";
return $res == 1 ? true : false;
}
}
@@ -0,0 +1,60 @@
<?php
/* Copyright (c) 2019 Geert Bergman ([email protected]), highlight.php
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. Neither the name of "highlight.js", "highlight.php", nor the names of its
* contributors may be used to endorse or promote products derived from this
* software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
namespace Highlight;
/**
* @api
*
* @since 9.17.1.0
*/
abstract class HighlightResult
{
/** @var int the relevance score */
public $relevance;
/** @var string the highlighted HTML code */
public $value;
/** @var string the language name */
public $language;
/** @var bool indicates whether any illegal matches were found */
public $illegal;
/** @var Mode|null top of the current mode stack */
public $top;
/** @var \Exception|null */
public $errorRaised;
// @TODO In v10.x, remove \stdClass from this type
/** @var \stdClass|HighlightResult|null */
public $secondBest;
}
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,177 @@
<?php
/* Copyright (c) 2014-2019 Geert Bergman ([email protected]), highlight.php
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. Neither the name of "highlight.js", "highlight.php", nor the names of its
* contributors may be used to endorse or promote products derived from this
* software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
/**
* Implementation of the \Highlight\JsonRef class.
*/
namespace Highlight;
/**
* Class to decode JSON data that contains path-based references.
*
* The language data file for highlight.js are written as JavaScript classes
* and therefore may contain variables. This allows for inner references in
* the language data. This kind of data can be converterd to JSON using the
* path based references. This class can be used to decode such JSON
* structures. It follows the conventions for path based referencing as
* used in dojox.json.ref form the Dojo toolkit (Javascript). A typical
* example of such a structure is as follows:
*
* ```json
* {
* "name":"Kris Zyp",
* "children":[{"name":"Jennika Zyp"},{"name":"Korban Zyp"}],
* "spouse":{
* "name":"Nicole Zyp",
* "spouse":{"$ref":"#"},
* "children":{"$ref":"#children"}
* },
* "oldestChild":{"$ref":"#children.0"}
* }
* ```
*
* Usage example:
*
* ```php
* $jr = new JsonRef();
* $data = $jr->decode(file_get_contents("data.json"));
* echo $data->spouse->spouse->name; // echos 'Kris Zyp'
* echo $data->oldestChild->name; // echos 'Jennika Zyp'
* ```
*
* @todo In Highlight.php 10.x, mark this class final with a keyword.
*
* @since 9.16.0.0 Class has been marked as final
*
* @final
*
* @internal
*/
class JsonRef
{
/**
* Array to hold all data paths in the given JSON data.
*
* @var array<string, mixed>
*/
private $paths = null;
/**
* Recurse through the data tree and fill an array of paths that reference
* the nodes in the decoded JSON data structure.
*
* @param mixed $s Decoded JSON data (decoded with json_decode)
* @param string $r The current path key (for example: '#children.0').
*
* @return void
*/
private function getPaths(&$s, $r = "#")
{
$this->paths[$r] = &$s;
if (is_array($s) || is_object($s)) {
foreach ($s as $k => &$v) {
if ($k !== "\$ref") {
$this->getPaths($v, $r == "#" ? "#{$k}" : "{$r}.{$k}");
}
}
}
}
/**
* Recurse through the data tree and resolve all path references.
*
* @param mixed $s Decoded JSON data (decoded with json_decode)
* @param int $limit
* @param int $depth
*
* @return void
*/
private function resolvePathReferences(&$s, $limit = 20, $depth = 1)
{
if ($depth >= $limit) {
return;
}
++$depth;
if (is_array($s) || is_object($s)) {
foreach ($s as $k => &$v) {
if ($k === "\$ref") {
$s = $this->paths[$v];
} else {
$this->resolvePathReferences($v, $limit, $depth);
}
}
}
}
/**
* Decode JSON data that may contain path based references.
*
* @deprecated 9.16.0.0 This method will be removed in Highlight.php. Make use of `decodeRef` instead.
*
* @param string|object $json JSON data string or JSON data object
*
* @return mixed The decoded JSON data
*/
public function decode($json)
{
// Clear the path array.
$this->paths = array();
// Decode the given JSON data if necessary.
$x = is_string($json) ? json_decode($json) : $json;
// Get all data paths.
$this->getPaths($x);
// Resolve all path references.
$this->resolvePathReferences($x);
// Return the data.
return $x;
}
/**
* Decode JSON data that may contain path based references.
*
* @param object $json JSON data string or JSON data object
*
* @return void
*/
public function decodeRef(&$json)
{
// Clear the path array.
$this->paths = array();
// Get all data paths.
$this->getPaths($json);
// Resolve all path references.
$this->resolvePathReferences($json);
}
}
@@ -0,0 +1,413 @@
<?php
/* Copyright (c)
* - 2006-2013, Ivan Sagalaev (maniacsoftwaremaniacs.org), highlight.js
* (original author)
* - 2013-2019, Geert Bergman (geertscrivo.nl), highlight.php
* - 2014 Daniel Lynge, highlight.php (contributor)
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. Neither the name of "highlight.js", "highlight.php", nor the names of its
* contributors may be used to endorse or promote products derived from this
* software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
namespace Highlight;
/**
* @todo In highlight.php 10.x, replace the @final attribute with the `final` keyword.
*
* @final
*
* @internal
*
* // Backward compatibility properties
*
* @property Mode $mode (DEPRECATED) All properties traditionally inside of $mode are now available directly from this class.
* @property bool $caseInsensitive (DEPRECATED) Due to compatibility requirements with highlight.js, use `case_insensitive` instead.
*/
class Language extends Mode
{
/** @var string[] */
private static $COMMON_KEYWORDS = array('of', 'and', 'for', 'in', 'not', 'or', 'if', 'then');
/** @var string */
public $name;
/** @var Mode|null */
private $mode = null;
/**
* @param string $lang
* @param string $filePath
*
* @throws \InvalidArgumentException when the given $filePath is inaccessible
*/
public function __construct($lang, $filePath)
{
$this->name = $lang;
// We're loading the JSON definition file as an \stdClass object instead of an associative array. This is being
// done to take advantage of objects being pass by reference automatically in PHP whereas arrays are pass by
// value.
$json = file_get_contents($filePath);
if ($json === false) {
throw new \InvalidArgumentException("Language file inaccessible: $filePath");
}
$this->mode = json_decode($json);
}
/**
* @param string $name
*
* @return bool|Mode|null
*/
public function __get($name)
{
if ($name === 'mode') {
@trigger_error('The "mode" property will be removed in highlight.php 10.x', E_USER_DEPRECATED);
return $this->mode;
}
if ($name === 'caseInsensitive') {
@trigger_error('Due to compatibility requirements with highlight.js, use "case_insensitive" instead.', E_USER_DEPRECATED);
if (isset($this->mode->case_insensitive)) {
return $this->mode->case_insensitive;
}
return false;
}
if (isset($this->mode->{$name})) {
return $this->mode->{$name};
}
return null;
}
/**
* @param string $value
* @param bool $global
*
* @return RegEx
*/
private function langRe($value, $global = false)
{
return RegExUtils::langRe($value, $global, $this->case_insensitive);
}
/**
* Performs a shallow merge of multiple objects into one.
*
* @param Mode $params the objects to merge
* @param array<string, mixed> ...$_
*
* @return Mode
*/
private function inherit($params, $_ = array())
{
/** @var Mode $result */
$result = new \stdClass();
$objects = func_get_args();
$parent = array_shift($objects);
foreach ($parent as $key => $value) {
$result->{$key} = $value;
}
foreach ($objects as $object) {
foreach ($object as $key => $value) {
$result->{$key} = $value;
}
}
return $result;
}
/**
* @param Mode|null $mode
*
* @return bool
*/
private function dependencyOnParent($mode)
{
if (!$mode) {
return false;
}
if (isset($mode->endsWithParent) && $mode->endsWithParent) {
return $mode->endsWithParent;
}
return $this->dependencyOnParent(isset($mode->starts) ? $mode->starts : null);
}
/**
* @param Mode $mode
*
* @return array<int, \stdClass|Mode>
*/
private function expandOrCloneMode($mode)
{
if ($mode->variants && !$mode->cachedVariants) {
$mode->cachedVariants = array();
foreach ($mode->variants as $variant) {
$mode->cachedVariants[] = $this->inherit($mode, array('variants' => null), $variant);
}
}
// EXPAND
// if we have variants then essentially "replace" the mode with the variants
// this happens in compileMode, where this function is called from
if ($mode->cachedVariants) {
return $mode->cachedVariants;
}
// CLONE
// if we have dependencies on parents then we need a unique
// instance of ourselves, so we can be reused with many
// different parents without issue
if ($this->dependencyOnParent($mode)) {
return array($this->inherit($mode, array(
'starts' => $mode->starts ? $this->inherit($mode->starts) : null,
)));
}
// highlight.php does not have a concept freezing our Modes
// no special dependency issues, just return ourselves
return array($mode);
}
/**
* @param Mode $mode
* @param Mode|null $parent
*
* @return void
*/
private function compileMode($mode, $parent = null)
{
Mode::_normalize($mode);
if ($mode->compiled) {
return;
}
$mode->compiled = true;
$mode->keywords = $mode->keywords ? $mode->keywords : $mode->beginKeywords;
if ($mode->keywords) {
$mode->keywords = $this->compileKeywords($mode->keywords, (bool) $this->case_insensitive);
}
$mode->lexemesRe = $this->langRe($mode->lexemes ? $mode->lexemes : "\w+", true);
if ($parent) {
if ($mode->beginKeywords) {
$mode->begin = "\\b(" . implode("|", explode(" ", $mode->beginKeywords)) . ")\\b";
}
if (!$mode->begin) {
$mode->begin = "\B|\b";
}
$mode->beginRe = $this->langRe($mode->begin);
if ($mode->endSameAsBegin) {
$mode->end = $mode->begin;
}
if (!$mode->end && !$mode->endsWithParent) {
$mode->end = "\B|\b";
}
if ($mode->end) {
$mode->endRe = $this->langRe($mode->end);
}
$mode->terminator_end = $mode->end;
if ($mode->endsWithParent && $parent->terminator_end) {
$mode->terminator_end .= ($mode->end ? "|" : "") . $parent->terminator_end;
}
}
if ($mode->illegal) {
$mode->illegalRe = $this->langRe($mode->illegal);
}
if ($mode->relevance === null) {
$mode->relevance = 1;
}
if (!$mode->contains) {
$mode->contains = array();
}
/** @var Mode[] $expandedContains */
$expandedContains = array();
foreach ($mode->contains as &$c) {
if ($c instanceof \stdClass) {
Mode::_normalize($c);
}
$expandedContains = array_merge($expandedContains, $this->expandOrCloneMode(
$c === 'self' ? $mode : $c
));
}
$mode->contains = $expandedContains;
/** @var Mode $contain */
foreach ($mode->contains as $contain) {
$this->compileMode($contain, $mode);
}
if ($mode->starts) {
$this->compileMode($mode->starts, $parent);
}
$terminators = new Terminators($this->case_insensitive);
$mode->terminators = $terminators->_buildModeRegex($mode);
Mode::_handleDeprecations($mode);
}
/**
* @param array<string, string>|string $rawKeywords
* @param bool $caseSensitive
*
* @return array<string, array<int, string|int>>
*/
private function compileKeywords($rawKeywords, $caseSensitive)
{
/** @var array<string, array<int, string|int>> $compiledKeywords */
$compiledKeywords = array();
if (is_string($rawKeywords)) {
$this->splitAndCompile("keyword", $rawKeywords, $compiledKeywords, $caseSensitive);
} else {
foreach ($rawKeywords as $className => $rawKeyword) {
$this->splitAndCompile($className, $rawKeyword, $compiledKeywords, $caseSensitive);
}
}
return $compiledKeywords;
}
/**
* @param string $className
* @param string $str
* @param array<string, array<int, string|int>> $compiledKeywords
* @param bool $caseSensitive
*
* @return void
*/
private function splitAndCompile($className, $str, array &$compiledKeywords, $caseSensitive)
{
if ($caseSensitive) {
$str = strtolower($str);
}
$keywords = explode(' ', $str);
foreach ($keywords as $keyword) {
$pair = explode('|', $keyword);
$providedScore = isset($pair[1]) ? $pair[1] : null;
$compiledKeywords[$pair[0]] = array($className, $this->scoreForKeyword($pair[0], $providedScore));
}
}
/**
* @param string $keyword
* @param string $providedScore
*
* @return int
*/
private function scoreForKeyword($keyword, $providedScore)
{
if ($providedScore) {
return (int) $providedScore;
}
return $this->commonKeyword($keyword) ? 0 : 1;
}
/**
* @param string $word
*
* @return bool
*/
private function commonKeyword($word)
{
return in_array(strtolower($word), self::$COMMON_KEYWORDS);
}
/**
* Compile the Language definition.
*
* @param bool $safeMode
*
* @since 9.17.1.0 The 'safeMode' parameter was added.
*
* @return void
*/
public function compile($safeMode)
{
if ($this->compiled) {
return;
}
$jr = new JsonRef();
$jr->decodeRef($this->mode);
// self is not valid at the top-level
if (isset($this->mode->contains) && !in_array("self", $this->mode->contains)) {
if (!$safeMode) {
throw new \LogicException("`self` is not supported at the top-level of a language.");
}
$this->mode->contains = array_filter($this->mode->contains, function ($mode) {
return $mode !== "self";
});
}
$this->compileMode($this->mode);
}
/**
* @todo Remove in highlight.php 10.x
*
* @deprecated 9.16.0 This method should never have been exposed publicly as part of the API.
*
* @param \stdClass|null $e
*
* @return void
*/
public function complete(&$e)
{
Mode::_normalize($e);
}
}
@@ -0,0 +1,195 @@
<?php
/* Copyright (c) 2019 Geert Bergman ([email protected]), highlight.php
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. Neither the name of "highlight.js", "highlight.php", nor the names of its
* contributors may be used to endorse or promote products derived from this
* software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
namespace Highlight;
/**
* A PHP representation of a Mode in the JS library.
*
* @internal
*
* @since 9.16.0.0
* @mixin ModeDeprecations
*
* Language definition set via language definition JSON files
*
* @property bool $case_insensitive = false
* @property string[] $aliases = array()
* @property string|null $className = null
* @property string|null $begin = null
* @property RegEx|null $beginRe = null
* @property string|null $end = null
* @property RegEx|null $endRe = null
* @property string|null $beginKeywords = null
* @property bool $endsWithParent = false
* @property bool $endsParent = false
* @property bool $endSameAsBegin = false
* @property string|null $lexemes = null
* @property RegEx|null $lexemesRe = null
* @property array<string, array<int, string|int>> $keywords = array()
* @property string|null $illegal = null
* @property RegEx|null $illegalRe = null
* @property bool $excludeBegin = false
* @property bool $excludeEnd = false
* @property bool $returnBegin = false
* @property bool $returnEnd = false
* @property Mode[] $contains = array()
* @property Mode|null $starts = null
* @property Mode[] $variants = array()
* @property int|null $relevance = null
* @property string|string[]|null $subLanguage = null
* @property bool $skip = false
* @property bool $disableAutodetect = false
*
* Properties set at runtime by the language compilation process
* @property array<int, Mode> $cachedVariants = array()
* @property Terminators|null $terminators = null
* @property string $terminator_end = ""
* @property bool $compiled = false
* @property Mode|null $parent = null
* @property string $type = ''
*
* @see https://highlightjs.readthedocs.io/en/latest/reference.html
*/
abstract class Mode extends \stdClass
{
/**
* Fill in the missing properties that this Mode does not have.
*
* @internal
*
* @param \stdClass|null $obj
*
* @since 9.16.0.0
*
* @return void
*/
public static function _normalize(&$obj)
{
// Don't overload our Modes if we've already normalized it
if (isset($obj->__IS_COMPLETE)) {
return;
}
if ($obj === null) {
$obj = new \stdClass();
}
$patch = array(
"begin" => true,
"end" => true,
"lexemes" => true,
"illegal" => true,
);
// These values come in from JSON definition files
$defaultValues = array(
"case_insensitive" => false,
"aliases" => array(),
"className" => null,
"begin" => null,
"beginRe" => null,
"end" => null,
"endRe" => null,
"beginKeywords" => null,
"endsWithParent" => false,
"endsParent" => false,
"endSameAsBegin" => false,
"lexemes" => null,
"lexemesRe" => null,
"keywords" => array(),
"illegal" => null,
"illegalRe" => null,
"excludeBegin" => false,
"excludeEnd" => false,
"returnBegin" => false,
"returnEnd" => false,
"contains" => array(),
"starts" => null,
"variants" => array(),
"relevance" => null,
"subLanguage" => null,
"skip" => false,
"disableAutodetect" => false,
);
// These values are set at runtime
$runTimeValues = array(
"cachedVariants" => array(),
"terminators" => null,
"terminator_end" => "",
"compiled" => false,
"parent" => null,
// This value is unique to highlight.php Modes
"__IS_COMPLETE" => true,
);
foreach ($patch as $k => $v) {
if (isset($obj->{$k})) {
$obj->{$k} = str_replace("\\/", "/", $obj->{$k});
$obj->{$k} = str_replace("/", "\\/", $obj->{$k});
}
}
foreach ($defaultValues as $k => $v) {
if (!isset($obj->{$k}) && is_object($obj)) {
$obj->{$k} = $v;
}
}
foreach ($runTimeValues as $k => $v) {
if (is_object($obj)) {
$obj->{$k} = $v;
}
}
}
/**
* Set any deprecated properties values to their replacement values.
*
* @internal
*
* @param \stdClass $obj
*
* @return void
*/
public static function _handleDeprecations(&$obj)
{
$deprecations = array(
// @TODO Deprecated since 9.16.0.0; remove at 10.x
'caseInsensitive' => 'case_insensitive',
'terminatorEnd' => 'terminator_end',
);
foreach ($deprecations as $deprecated => $new) {
$obj->{$deprecated} = &$obj->{$new};
}
}
}
@@ -0,0 +1,50 @@
<?php
/* Copyright (c) 2019 Geert Bergman ([email protected]), highlight.php
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. Neither the name of "highlight.js", "highlight.php", nor the names of its
* contributors may be used to endorse or promote products derived from this
* software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
namespace Highlight;
/**
* @internal
*/
trait ModeDeprecations
{
/**
* @deprecated 9.16.0.0 Use `case_insensitive` instead
*
* @var bool DEPRECATED
*/
public $caseInsensitive;
/**
* @deprecated 9.16.0.0 Use `terminator_end` instead
*
* @var string
*/
public $terminatorEnd;
}
@@ -0,0 +1,108 @@
<?php
/* Copyright (c) 2019 Geert Bergman ([email protected]), highlight.php
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. Neither the name of "highlight.js", "highlight.php", nor the names of its
* contributors may be used to endorse or promote products derived from this
* software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
namespace Highlight;
/**
* A PHP implementation to match JavaScript's RegExp class as closely as possible.
*
* A lot of behavior in this class is reversed engineered, so improvements are welcome!
*
* @internal
*
* @since 9.16.0
*/
final class RegEx
{
/**
* @var string
*/
public $source;
/**
* @var int
*/
public $lastIndex = 0;
/**
* @param RegEx|string $regex
*/
public function __construct($regex)
{
$this->source = (string) $regex;
}
public function __toString()
{
return (string) $this->source;
}
/**
* Run the regular expression against the given string.
*
* @since 9.16.0.0
*
* @param string $str the string to run this regular expression against
*
* @return RegExMatch|null
*/
public function exec($str)
{
$index = null;
$results = array();
preg_match($this->source, $str, $results, PREG_OFFSET_CAPTURE, $this->lastIndex);
if ($results === null || count($results) === 0) {
return null;
}
foreach ($results as &$result) {
if ($result[1] !== -1) {
// Only save the index if it hasn't been set yet
if ($index === null) {
$index = $result[1];
}
$result = $result[0];
} else {
$result = null;
}
}
unset($result);
$this->lastIndex += strlen($results[0]) + ($index - $this->lastIndex);
$matches = new RegExMatch($results);
$matches->index = isset($index) ? $index : 0;
$matches->input = $str;
return $matches;
}
}
@@ -0,0 +1,120 @@
<?php
/* Copyright (c) 2019 Geert Bergman ([email protected]), highlight.php
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. Neither the name of "highlight.js", "highlight.php", nor the names of its
* contributors may be used to endorse or promote products derived from this
* software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
namespace Highlight;
/**
* @internal
*
* @implements \ArrayAccess<int, string|null>
* @implements \IteratorAggregate<int, string|null>
*
* @since 9.16.0.0
*/
class RegExMatch implements \ArrayAccess, \Countable, \IteratorAggregate
{
/** @var array<int, string|null> */
private $data;
/** @var int */
public $index;
/** @var string */
public $input;
/** @var string */
public $type;
/** @var Mode|string */
public $rule;
/**
* @param array<int, string|null> $results
*/
public function __construct(array $results)
{
$this->data = $results;
}
/**
* {@inheritdoc}
*/
#[\ReturnTypeWillChange]
public function getIterator()
{
return new \ArrayIterator($this->data);
}
/**
* {@inheritdoc}
*/
#[\ReturnTypeWillChange]
public function offsetExists($offset)
{
return isset($this->data[$offset]);
}
/**
* {@inheritdoc}
*/
#[\ReturnTypeWillChange]
public function offsetGet($offset)
{
return $this->data[$offset];
}
/**
* {@inheritdoc}
*/
#[\ReturnTypeWillChange]
public function offsetSet($offset, $value)
{
throw new \LogicException(__CLASS__ . ' instances are read-only.');
}
/**
* {@inheritdoc}
*/
#[\ReturnTypeWillChange]
public function offsetUnset($offset)
{
throw new \LogicException(__CLASS__ . ' instances are read-only.');
}
/**
* {@inheritdoc}
*
* @return int
*/
#[\ReturnTypeWillChange]
public function count()
{
return count($this->data);
}
}
@@ -0,0 +1,61 @@
<?php
/* Copyright (c) 2019 Geert Bergman ([email protected]), highlight.php
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. Neither the name of "highlight.js", "highlight.php", nor the names of its
* contributors may be used to endorse or promote products derived from this
* software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
namespace Highlight;
/**
* @internal
*
* @since 9.16.0.0
*/
abstract class RegExUtils
{
/**
* @param string $value
* @param bool $global
* @param bool $case_insensitive
*
* @return RegEx
*/
public static function langRe($value, $global, $case_insensitive)
{
// PCRE allows us to change the definition of "new line." The
// `(*ANYCRLF)` matches `\r`, `\n`, and `\r\n` for `$`
//
// https://www.pcre.org/original/doc/html/pcrepattern.html
// PCRE requires us to tell it the string can be UTF-8, so the 'u' modifier
// is required. The `u` flag for PCRE is different from JS' unicode flag.
$escaped = preg_replace('#(?<!\\\)/#um', '\\/', $value);
$regex = "/(*ANYCRLF){$escaped}/um" . ($case_insensitive ? "i" : "");
return new RegEx($regex);
}
}
@@ -0,0 +1,244 @@
<?php
namespace Highlight;
/**
* @internal
*
* @since 9.16.0.0
*/
final class Terminators
{
/** @var bool */
private $caseInsensitive;
/** @var array<int, Mode|string> */
private $matchIndexes = array();
/** @var RegEx|null */
private $matcherRe = null;
/** @var array<int, array<int, Mode|string>> */
private $regexes = array();
/** @var int */
private $matchAt = 1;
/** @var Mode */
private $mode;
/** @var int */
public $lastIndex = 0;
/**
* @param bool $caseInsensitive
*/
public function __construct($caseInsensitive)
{
$this->caseInsensitive = $caseInsensitive;
}
/**
* @internal
*
* @param Mode $mode
*
* @return self
*/
public function _buildModeRegex($mode)
{
$this->mode = $mode;
$term = null;
for ($i = 0; $i < count($mode->contains); ++$i) {
$re = null;
$term = $mode->contains[$i];
if ($term->beginKeywords) {
$re = "\.?(?:" . $term->begin . ")\.?";
} else {
$re = $term->begin;
}
$this->addRule($term, $re);
}
if ($mode->terminator_end) {
$this->addRule('end', $mode->terminator_end);
}
if ($mode->illegal) {
$this->addRule('illegal', $mode->illegal);
}
/** @var array<int, string> $terminators */
$terminators = array();
foreach ($this->regexes as $regex) {
$terminators[] = $regex[1];
}
$this->matcherRe = $this->langRe($this->joinRe($terminators, '|'), true);
$this->lastIndex = 0;
return $this;
}
/**
* @param string $s
*
* @return RegExMatch|null
*/
public function exec($s)
{
if (count($this->regexes) === 0) {
return null;
}
$this->matcherRe->lastIndex = $this->lastIndex;
$match = $this->matcherRe->exec($s);
if (!$match) {
return null;
}
/** @var Mode|string $rule */
$rule = null;
for ($i = 0; $i < count($match); ++$i) {
if ($match[$i] !== null && isset($this->matchIndexes[$i])) {
$rule = $this->matchIndexes[$i];
break;
}
}
if (is_string($rule)) {
$match->type = $rule;
} else {
$match->type = "begin";
$match->rule = $rule;
}
return $match;
}
/**
* @param string $value
* @param bool $global
*
* @return RegEx
*/
private function langRe($value, $global = false)
{
return RegExUtils::langRe($value, $global, $this->caseInsensitive);
}
/**
* @param Mode|string $rule
* @param string $regex
*
* @return void
*/
private function addRule($rule, $regex)
{
$this->matchIndexes[$this->matchAt] = $rule;
$this->regexes[] = array($rule, $regex);
$this->matchAt += $this->reCountMatchGroups($regex) + 1;
}
/**
* joinRe logically computes regexps.join(separator), but fixes the
* backreferences so they continue to match.
*
* it also places each individual regular expression into it's own
* match group, keeping track of the sequencing of those match groups
* is currently an exercise for the caller. :-)
*
* @param array<int, string> $regexps
* @param string $separator
*
* @return string
*/
private function joinRe($regexps, $separator)
{
// backreferenceRe matches an open parenthesis or backreference. To avoid
// an incorrect parse, it additionally matches the following:
// - [...] elements, where the meaning of parentheses and escapes change
// - other escape sequences, so we do not misparse escape sequences as
// interesting elements
// - non-matching or lookahead parentheses, which do not capture. These
// follow the '(' with a '?'.
$backreferenceRe = '#\[(?:[^\\\\\]]|\\\.)*\]|\(\??|\\\([1-9][0-9]*)|\\\.#';
$numCaptures = 0;
$ret = '';
$strLen = count($regexps);
for ($i = 0; $i < $strLen; ++$i) {
++$numCaptures;
$offset = $numCaptures;
$re = $this->reStr($regexps[$i]);
if ($i > 0) {
$ret .= $separator;
}
$ret .= "(";
while (strlen($re) > 0) {
$matches = array();
$matchFound = preg_match($backreferenceRe, $re, $matches, PREG_OFFSET_CAPTURE);
if ($matchFound === 0) {
$ret .= $re;
break;
}
// PHP aliases to match the JS naming conventions
$match = $matches[0];
$index = $match[1];
$ret .= substr($re, 0, $index);
$re = substr($re, $index + strlen($match[0]));
if (substr($match[0], 0, 1) === '\\' && isset($matches[1])) {
// Adjust the backreference.
$ret .= "\\" . strval(intval($matches[1][0]) + $offset);
} else {
$ret .= $match[0];
if ($match[0] == "(") {
++$numCaptures;
}
}
}
$ret .= ")";
}
return $ret;
}
/**
* @param RegEx|string $re
*
* @return mixed
*/
private function reStr($re)
{
if ($re && isset($re->source)) {
return $re->source;
}
return $re;
}
/**
* @param RegEx|string $re
*
* @return int
*/
private function reCountMatchGroups($re)
{
$results = array();
$escaped = preg_replace('#(?<!\\\)/#um', '\\/', (string) $re);
preg_match_all("/{$escaped}|/u", '', $results);
return count($results) - 1;
}
}
@@ -0,0 +1,130 @@
{
"case_insensitive": true,
"lexemes": "[A-Za-zА\\-Яа-яёЁ_][A-Za-zА\\-Яа-яёЁ_0-9]+",
"keywords": {
"keyword": "далее возврат вызватьисключение выполнить для если и из или иначе иначеесли исключение каждого конецесли конецпопытки конеццикла не новый перейти перем по пока попытка прервать продолжить тогда цикл экспорт ",
"built_in": "разделительстраниц разделительстрок символтабуляции ansitooem oemtoansi ввестивидсубконто ввестиперечисление ввестипериод ввестиплансчетов выбранныйплансчетов датагод датамесяц датачисло заголовоксистемы значениевстроку значениеизстроки каталогиб каталогпользователя кодсимв конгода конецпериодаби конецрассчитанногопериодаби конецстандартногоинтервала конквартала конмесяца коннедели лог лог10 максимальноеколичествосубконто названиеинтерфейса названиенабораправ назначитьвид назначитьсчет найтиссылки началопериодаби началостандартногоинтервала начгода начквартала начмесяца начнедели номерднягода номерднянедели номернеделигода обработкаожидания основнойжурналрасчетов основнойплансчетов основнойязык очиститьокносообщений периодстр получитьвремята получитьдатута получитьдокументта получитьзначенияотбора получитьпозициюта получитьпустоезначение получитьта префиксавтонумерации пропись пустоезначение разм разобратьпозициюдокумента рассчитатьрегистрына рассчитатьрегистрыпо симв создатьобъект статусвозврата стрколичествострок сформироватьпозициюдокумента счетпокоду текущеевремя типзначения типзначениястр установитьтана установитьтапо фиксшаблон шаблон acos asin atan base64значение base64строка cos exp log log10 pow sin sqrt tan xmlзначение xmlстрока xmlтип xmlтипзнч активноеокно безопасныйрежим безопасныйрежимразделенияданных булево ввестидату ввестизначение ввестистроку ввестичисло возможностьчтенияxml вопрос восстановитьзначение врег выгрузитьжурналрегистрации выполнитьобработкуоповещения выполнитьпроверкуправдоступа вычислить год данныеформывзначение дата день деньгода деньнедели добавитьмесяц заблокироватьданныедляредактирования заблокироватьработупользователя завершитьработусистемы загрузитьвнешнююкомпоненту закрытьсправку записатьjson записатьxml записатьдатуjson записьжурналарегистрации заполнитьзначениясвойств запроситьразрешениепользователя запуститьприложение запуститьсистему зафиксироватьтранзакцию значениевданныеформы значениевстрокувнутр значениевфайл значениезаполнено значениеизстрокивнутр значениеизфайла изxmlтипа импортмоделиxdto имякомпьютера имяпользователя инициализироватьпредопределенныеданные информацияобошибке каталогбиблиотекимобильногоустройства каталогвременныхфайлов каталогдокументов каталогпрограммы кодироватьстроку кодлокализацииинформационнойбазы кодсимвола командасистемы конецгода конецдня конецквартала конецмесяца конецминуты конецнедели конецчаса конфигурациябазыданныхизмененадинамически конфигурацияизменена копироватьданныеформы копироватьфайл краткоепредставлениеошибки лев макс местноевремя месяц мин минута монопольныйрежим найти найтинедопустимыесимволыxml нLine truncated
"class": "webцвета windowsцвета windowsшрифты библиотекакартинок рамкистиля символы цветастиля шрифтыстиля автоматическоесохранениеданныхформывнастройках автонумерациявформе автораздвижениесерий анимациядиаграммы вариантвыравниванияэлементовизаголовков вариантуправлениявысотойтаблицы вертикальнаяпрокруткаформы вертикальноеположение вертикальноеположениеэлемента видгруппыформы виддекорацииформы виддополненияэлементаформы видизмененияданных видкнопкиформы видпереключателя видподписейкдиаграмме видполяформы видфлажка влияниеразмеранапузырекдиаграммы горизонтальноеположение горизонтальноеположениеэлемента группировкаколонок группировкаподчиненныхэлементовформы группыиэлементы действиеперетаскивания дополнительныйрежимотображения допустимыедействияперетаскивания интервалмеждуэлементамиформы использованиевывода использованиеполосыпрокрутки используемоезначениеточкибиржевойдиаграммы историявыборапривводе источникзначенийоситочекдиаграммы источникзначенияразмерапузырькадиаграммы категориягруппыкоманд максимумсерий начальноеотображениедерева начальноеотображениесписка обновлениетекстаредактирования ориентациядендрограммы ориентациядиаграммы ориентацияметокдиаграммы ориентацияметоксводнойдиаграммы ориентацияэлементаформы отображениевдиаграмме отображениевлегендедиаграммы отображениегруппыкнопок отображениезаголовкашкалыдиаграммы отображениезначенийсводнойдиаграммы отображениезначенияизмерительнойдиаграммы отображениеинтерваладиаграммыганта отображениекнопки отображениекнопкивыбора отображениеобсужденийформы отображениеобычнойгруппы отображениеотрицательныхзначенийпузырьковойдиаграммы отображениепанелипоиска отображениеподсказки отображениепредупрежденияприредактировании отображениеразметкиполосырегулирования отображениестраницформы отображениетаблицы отображениетекстазначениядиаграммыганта отображениеуправленияобычнойгруппы отображениефигурыкнопки палитрацветовдиаграммы поведениеобычнойгруппы поддержкамасштабадендрограммы поддержкамасштабадиаграммыганта поддержкамасштабасводнойдиаграммы поисквтаблицепривводе положениезаголовкаэлементаформы положениекартинкикнопкиформы положениекартинкиэлементаграфическойсхемы положениекоманднойпанелиформы положениекоманднойпанелиэлементаформы положениеопорнойточкиотрисовки положениеподписейкдиаграмме положениеподписейшкалызначенийизмерительнойдиаграммы положениесостоянияпросмотра положениестрокипоиска положениетекстасоединительнойлинии положениеуправленияпоиском положениешкалывремени порядокотображенияточекгоризонтальнойгистограммы порядоксерийвлегендедиаграммы размеркартинки расположениLine truncated
"type": "comобъект ftpсоединение httpзапрос httpсервисответ httpсоединение wsопределения wsпрокси xbase анализданных аннотацияxs блокировкаданных буфердвоичныхданных включениеxs выражениекомпоновкиданных генераторслучайныхчисел географическаясхема географическиекоординаты графическаясхема группамоделиxs данныерасшифровкикомпоновкиданных двоичныеданные дендрограмма диаграмма диаграммаганта диалогвыборафайла диалогвыборацвета диалогвыборашрифта диалограсписаниярегламентногозадания диалогредактированиястандартногопериода диапазон документdom документhtml документацияxs доставляемоеуведомление записьdom записьfastinfoset записьhtml записьjson записьxml записьzipфайла записьданных записьтекста записьузловdom запрос защищенноесоединениеopenssl значенияполейрасшифровкикомпоновкиданных извлечениетекста импортxs интернетпочта интернетпочтовоесообщение интернетпочтовыйпрофиль интернетпрокси интернетсоединение информациядляприложенияxs использованиеатрибутаxs использованиесобытияжурналарегистрации источникдоступныхнастроеккомпоновкиданных итераторузловdom картинка квалификаторыдаты квалификаторыдвоичныхданных квалификаторыстроки квалификаторычисла компоновщикмакетакомпоновкиданных компоновщикнастроеккомпоновкиданных конструктормакетаоформлениякомпоновкиданных конструкторнастроеккомпоновкиданных конструкторформатнойстроки линия макеткомпоновкиданных макетобластикомпоновкиданных макетоформлениякомпоновкиданных маскаxs менеджеркриптографии наборсхемxml настройкикомпоновкиданных настройкисериализацииjson обработкакартинок обработкарасшифровкикомпоновкиданных обходдереваdom объявлениеатрибутаxs объявлениенотацииxs объявлениеэлементаxs описаниеиспользованиясобытиядоступжурналарегистрации описаниеиспользованиясобытияотказвдоступежурналарегистрации описаниеобработкирасшифровкикомпоновкиданных описаниепередаваемогофайла описаниетипов определениегруппыатрибутовxs определениегруппымоделиxs определениеограниченияидентичностиxs определениепростоготипаxs определениесоставноготипаxs определениетипадокументаdom определенияxpathxs отборкомпоновкиданных пакетотображаемыхдокументов параметрвыбора параметркомпоновкиданных параметрызаписиjson параметрызаписиxml параметрычтенияxml переопределениеxs планировщик полеанализаданных полекомпоновкиданных построительdom построительзапроса построительотчета построительотчетаанализаданных построительсхемxml поток потоквпамяти почта почтовоесообщение преобразованиеxsl преобразованиекканоническомуxml процессорвыводарезультатакомпоновкиданныхвколлекциюзначений процессорвыводарезультатакомпоновкиданныхвтабличныйдокумент процессоркомпоновкиданных разыменовательпространствименdom рамка раLine truncated
"literal": "null истина ложь неопределено"
},
"contains": [
{
"className": "meta",
"lexemes": "[A-Za-zА\\-Яа-яёЁ_][A-Za-zА\\-Яа-яёЁ_0-9]+",
"begin": "#|&",
"end": "$",
"keywords": {
"meta-keyword": "далее возврат вызватьисключение выполнить для если и из или иначе иначеесли исключение каждого конецесли конецпопытки конеццикла не новый перейти перем по пока попытка прервать продолжить тогда цикл экспорт загрузитьизфайла вебклиент вместо внешнеесоединение клиент конецобласти мобильноеприложениеклиент мобильноеприложениесервер наклиенте наклиентенасервере наклиентенасерверебезконтекста насервере насерверебезконтекста область перед после сервер толстыйклиентобычноеприложение толстыйклиентуправляемоеприложение тонкийклиент "
},
"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
}
]
}
]
},
{
"className": "function",
"lexemes": "[A-Za-zА\\-Яа-яёЁ_][A-Za-zА\\-Яа-яёЁ_0-9]+",
"variants": [
{
"begin": "процедура|функция",
"end": "\\)",
"keywords": "процедура функция"
},
{
"begin": "конецпроцедуры|конецфункции",
"keywords": "конецпроцедуры конецфункции"
}
],
"contains": [
{
"begin": "\\(",
"end": "\\)",
"endsParent": true,
"contains": [
{
"className": "params",
"lexemes": "[A-Za-zА\\-Яа-яёЁ_][A-Za-zА\\-Яа-яёЁ_0-9]+",
"begin": "[A-Za-zА\\-Яа-яёЁ_][A-Za-zА\\-Яа-яёЁ_0-9]+",
"end": ",",
"excludeEnd": true,
"endsWithParent": true,
"keywords": {
"keyword": "знач",
"literal": "null истина ложь неопределено"
},
"contains": [
{
"className": "number",
"begin": "\\b\\d+(\\.\\d+)?",
"relevance": 0
},
{
"className": "string",
"begin": "\"|\\|",
"end": "\"|$",
"contains": [
{
"begin": "\"\""
}
]
},
{
"begin": "'",
"end": "'",
"excludeBegin": true,
"excludeEnd": true,
"contains": [
{
"className": "number",
"begin": "\\d{4}([\\.\\Q\\\/:\\E-]?\\d{2}){0,5}"
}
]
}
]
},
{
"$ref": "#contains.0.contains.0"
}
]
},
{
"className": "title",
"begin": "[A-Za-zА\\-Яа-яёЁ_][A-Za-zА\\-Яа-яёЁ_0-9]+",
"relevance": 0
}
]
},
{
"$ref": "#contains.0.contains.0"
},
{
"className": "symbol",
"begin": "~",
"end": ";|:",
"excludeEnd": true
},
{
"$ref": "#contains.1.contains.0.contains.0.contains.0"
},
{
"$ref": "#contains.1.contains.0.contains.0.contains.1"
},
{
"$ref": "#contains.1.contains.0.contains.0.contains.2"
}
]
}
@@ -0,0 +1,58 @@
{
"illegal": "[!@#$^&',?+~`|:]",
"keywords": "ALPHA BIT CHAR CR CRLF CTL DIGIT DQUOTE HEXDIG HTAB LF LWSP OCTET SP VCHAR WSP",
"contains": [
{
"className": "attribute",
"begin": "^[a-zA-Z][a-zA-Z0-9\\-]*(?=\\s*=)"
},
{
"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
}
]
},
{
"className": "symbol",
"begin": "%b[0-1]+(-[0-1]+|(\\.[0-1]+)+){0,1}"
},
{
"className": "symbol",
"begin": "%d[0-9]+(-[0-9]+|(\\.[0-9]+)+){0,1}"
},
{
"className": "symbol",
"begin": "%x[0-9A-F]+(-[0-9A-F]+|(\\.[0-9A-F]+)+){0,1}"
},
{
"className": "symbol",
"begin": "%[si]"
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "number",
"begin": "\\b\\d+(\\.\\d+)?",
"relevance": 0
}
]
}
@@ -0,0 +1,55 @@
{
"contains": [
{
"className": "number",
"begin": "^\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}(:\\d{1,5})?\\b",
"relevance": 5
},
{
"className": "number",
"begin": "\\b\\d+\\b",
"relevance": 0
},
{
"className": "string",
"begin": "\"(GET|POST|HEAD|PUT|DELETE|CONNECT|OPTIONS|PATCH|TRACE)",
"end": "\"",
"keywords": "GET POST HEAD PUT DELETE CONNECT OPTIONS PATCH TRACE",
"illegal": "\\n",
"relevance": 5,
"contains": [
{
"begin": "HTTP\/[12]\\.\\d",
"relevance": 5
}
]
},
{
"className": "string",
"begin": "\\[\\d[^\\]\\n]{8,}\\]",
"illegal": "\\n",
"relevance": 1
},
{
"className": "string",
"begin": "\\[",
"end": "\\]",
"illegal": "\\n",
"relevance": 0
},
{
"className": "string",
"begin": "\"Mozilla\/\\d\\.\\d \\(",
"end": "\"",
"illegal": "\\n",
"relevance": 3
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"relevance": 0
}
]
}
@@ -0,0 +1,148 @@
{
"aliases": [
"as"
],
"keywords": {
"keyword": "as break case catch class const continue default delete do dynamic each else extends final finally for function get if implements import in include instanceof interface internal is namespace native new override package private protected public return set static super switch this throw try typeof use var void while with",
"literal": "true false null undefined"
},
"contains": [
{
"className": "string",
"begin": "'",
"end": "'",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.0.contains.0"
}
]
},
{
"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
}
]
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#contains.2.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+)?)",
"relevance": 0
},
{
"className": "class",
"beginKeywords": "package",
"end": "{",
"contains": [
{
"className": "title",
"begin": "[a-zA-Z]\\w*",
"relevance": 0
}
]
},
{
"className": "class",
"beginKeywords": "class interface",
"end": "{",
"excludeEnd": true,
"contains": [
{
"beginKeywords": "extends implements"
},
{
"$ref": "#contains.5.contains.0"
}
]
},
{
"className": "meta",
"beginKeywords": "import include",
"end": ";",
"keywords": {
"meta-keyword": "import include"
}
},
{
"className": "function",
"beginKeywords": "function",
"end": "[{;]",
"excludeEnd": true,
"illegal": "\\S",
"contains": [
{
"$ref": "#contains.5.contains.0"
},
{
"className": "params",
"begin": "\\(",
"end": "\\)",
"contains": [
{
"$ref": "#contains.0"
},
{
"$ref": "#contains.1"
},
{
"$ref": "#contains.2"
},
{
"$ref": "#contains.3"
},
{
"className": "rest_arg",
"begin": "[.]{3}",
"end": "[a-zA-Z_$][a-zA-Z0-9_$]*",
"relevance": 10
}
]
},
{
"begin": ":\\s*([*]|[a-zA-Z_$][a-zA-Z0-9_$]*)"
}
]
},
{
"begin": "\\.\\s*[a-zA-Z_]\\w*",
"relevance": 0
}
],
"illegal": "#"
}
@@ -0,0 +1,118 @@
{
"case_insensitive": true,
"keywords": {
"keyword": "abort else new return abs elsif not reverse abstract end accept entry select access exception of separate aliased exit or some all others subtype and for out synchronized array function overriding at tagged generic package task begin goto pragma terminate body private then if procedure type case in protected constant interface is raise use declare range delay limited record when delta loop rem while digits renames with do mod requeue xor",
"literal": "True False"
},
"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
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"contains": [
{
"begin": "\"\"",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "'.'"
},
{
"className": "number",
"begin": "\\b(\\d(_|\\d)*#\\w+(\\.\\w+)?#([eE][-+]?\\d(_|\\d)*)?|\\d(_|\\d)*(\\.\\d(_|\\d)*)?([eE][-+]?\\d(_|\\d)*)?)",
"relevance": 0
},
{
"className": "symbol",
"begin": "'[A-Za-z](_?[A-Za-z0-9.])*"
},
{
"className": "title",
"begin": "(\\bwith\\s+)?(\\bprivate\\s+)?\\bpackage\\s+(\\bbody\\s+)?",
"end": "(is|$)",
"keywords": "package body",
"excludeBegin": true,
"excludeEnd": true,
"illegal": "\\Q[]{}%#'\"\\E"
},
{
"begin": "(\\b(with|overriding)\\s+)?\\b(function|procedure)\\s+",
"end": "(\\bis|\\bwith|\\brenames|\\)\\s*;)",
"keywords": "overriding function procedure with is renames return",
"returnBegin": true,
"contains": [
{
"$ref": "#contains.0"
},
{
"className": "title",
"begin": "(\\bwith\\s+)?\\b(function|procedure)\\s+",
"end": "(\\(|\\s+|$)",
"excludeBegin": true,
"excludeEnd": true,
"illegal": "\\Q[]{}%#'\"\\E"
},
{
"begin": "\\s+:\\s+",
"end": "\\s*(:=|;|\\)|=>|$)",
"illegal": "\\Q[]{}%#'\"\\E",
"contains": [
{
"beginKeywords": "loop for declare others",
"endsParent": true
},
{
"className": "keyword",
"beginKeywords": "not null constant access function procedure in out aliased exception"
},
{
"className": "type",
"begin": "[A-Za-z](_?[A-Za-z0-9.])*",
"endsParent": true,
"relevance": 0
}
]
},
{
"className": "type",
"begin": "\\breturn\\s+",
"end": "(\\s+|;|$)",
"keywords": "return",
"excludeBegin": true,
"excludeEnd": true,
"endsParent": true,
"illegal": "\\Q[]{}%#'\"\\E"
}
]
},
{
"className": "type",
"begin": "\\b(sub)?type\\s+",
"end": "\\s+",
"keywords": "type",
"excludeBegin": true,
"illegal": "\\Q[]{}%#'\"\\E"
},
{
"$ref": "#contains.6.contains.2"
}
]
}
@@ -0,0 +1,138 @@
{
"aliases": [
"asc"
],
"keywords": "for in|0 break continue while do|0 return if else case switch namespace is cast or and xor not get|0 in inout|10 out override set|0 private public const default|0 final shared external mixin|10 enum typedef funcdef this super import from interface abstract|0 try catch protected explicit property",
"illegal": "(^using\\s+[A-Za-z0-9_\\.]+;$|\\bfunctions*[^\\(])",
"contains": [
{
"className": "string",
"begin": "'",
"end": "'",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
],
"relevance": 0
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.0.contains.0"
}
],
"relevance": 0
},
{
"className": "string",
"begin": "\"\"\"",
"end": "\"\"\""
},
{
"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
}
]
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#contains.3.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"beginKeywords": "interface namespace",
"end": "{",
"illegal": "[;.\\-]",
"contains": [
{
"className": "symbol",
"begin": "[a-zA-Z0-9_]+"
}
]
},
{
"beginKeywords": "class",
"end": "{",
"illegal": "[;.\\-]",
"contains": [
{
"className": "symbol",
"begin": "[a-zA-Z0-9_]+",
"contains": [
{
"begin": "[:,]\\s*",
"contains": [
{
"className": "symbol",
"begin": "[a-zA-Z0-9_]+"
}
]
}
]
}
]
},
{
"className": "built_in",
"begin": "\\b(void|bool|int|int8|int16|int32|int64|uint|uint8|uint16|uint32|uint64|string|ref|array|double|float|auto|dictionary)",
"contains": [
{
"className": "keyword",
"begin": "<",
"end": ">",
"contains": [
{
"$ref": "#contains.7"
},
{
"className": "symbol",
"begin": "[a-zA-Z0-9_]+@",
"contains": [
{
"$ref": "#contains.7.contains.0"
}
]
}
]
}
]
},
{
"$ref": "#contains.7.contains.0.contains.1"
},
{
"className": "literal",
"begin": "\\b(null|true|false)"
},
{
"className": "number",
"begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?f?|\\.\\d+f?)([eE][-+]?\\d+f?)?)"
}
]
}
@@ -0,0 +1,78 @@
{
"aliases": [
"apacheconf"
],
"case_insensitive": true,
"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
}
]
},
{
"className": "section",
"begin": "<\/?",
"end": ">"
},
{
"className": "attribute",
"begin": "\\w+",
"relevance": 0,
"keywords": {
"nomarkup": "order deny allow setenv rewriterule rewriteengine rewritecond documentroot sethandler errordocument loadmodule options header listen serverroot servername"
},
"starts": {
"end": "$",
"relevance": 0,
"keywords": {
"literal": "on off all"
},
"contains": [
{
"className": "meta",
"begin": "\\s\\[",
"end": "\\]$"
},
{
"className": "variable",
"begin": "[\\$%]\\{",
"end": "\\}",
"contains": [
"self",
{
"className": "number",
"begin": "[\\$%]\\d+"
}
]
},
{
"$ref": "#contains.2.starts.contains.1.contains.1"
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
}
]
}
}
],
"illegal": "\\S"
}
@@ -0,0 +1,116 @@
{
"aliases": [
"osascript"
],
"keywords": {
"keyword": "about above after against and around as at back before beginning behind below beneath beside between but by considering contain contains continue copy div does eighth else end equal equals error every exit fifth first for fourth from front get given global if ignoring in into is it its last local me middle mod my ninth not of on onto or over prop property put ref reference repeat returning script second set seventh since sixth some tell tenth that the|0 then third through thru timeout times to transaction try until where while whose with without",
"literal": "AppleScript false linefeed return pi quote result space tab true",
"built_in": "alias application boolean class constant date file integer list number real record string text activate beep count delay launch log offset read round run say summarize write character characters contents day frontmost id item length month name paragraph paragraphs rest reverse running time version weekday word words year"
},
"contains": [
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "number",
"begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",
"relevance": 0
},
{
"className": "built_in",
"begin": "\\b(clipboard info|the clipboard|info for|list (disks|folder)|mount volume|path to|(close|open for) access|(get|set) eof|current date|do shell script|get volume settings|random number|set volume|system attribute|system info|time to GMT|(load|run|store) script|scripting components|ASCII (character|number)|localized string|choose (application|color|file|file name|folder|from list|remote application|URL)|display (alert|dialog))\\b|^\\s*return\\b"
},
{
"className": "literal",
"begin": "\\b(text item delimiters|current application|missing value)\\b"
},
{
"className": "keyword",
"begin": "\\b(apart from|aside from|instead of|out of|greater than|isn't|(doesn't|does not) (equal|come before|come after|contain)|(greater|less) than( or equal)?|(starts?|ends|begins?) with|contained by|comes (before|after)|a (ref|reference)|POSIX file|POSIX path|(date|time) string|quoted form)\\b"
},
{
"beginKeywords": "on",
"illegal": "[${=;\\n]",
"contains": [
{
"className": "title",
"begin": "[a-zA-Z_]\\w*",
"relevance": 0
},
{
"className": "params",
"begin": "\\(",
"end": "\\)",
"contains": [
"self",
{
"$ref": "#contains.1"
},
{
"$ref": "#contains.0"
}
]
}
]
},
{
"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
}
]
},
{
"className": "comment",
"begin": "\\(\\*",
"end": "\\*\\)",
"contains": [
"self",
{
"$ref": "#contains.6"
},
{
"$ref": "#contains.6.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "comment",
"begin": "#",
"end": "$",
"contains": [
{
"$ref": "#contains.6.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
}
],
"illegal": "\/\/|->|=>|\\[\\["
}
@@ -0,0 +1,250 @@
{
"aliases": [
"arcade"
],
"keywords": {
"keyword": "if for while var new function do return void else break",
"literal": "BackSlash DoubleQuote false ForwardSlash Infinity NaN NewLine null PI SingleQuote Tab TextFormatting true undefined",
"built_in": "Abs Acos Angle Attachments Area AreaGeodetic Asin Atan Atan2 Average Bearing Boolean Buffer BufferGeodetic Ceil Centroid Clip Console Constrain Contains Cos Count Crosses Cut Date DateAdd DateDiff Day Decode DefaultValue Dictionary Difference Disjoint Distance DistanceGeodetic Distinct DomainCode DomainName Equals Exp Extent Feature FeatureSet FeatureSetByAssociation FeatureSetById FeatureSetByPortalItem FeatureSetByRelationshipName FeatureSetByTitle FeatureSetByUrl Filter First Floor Geometry GroupBy Guid HasKey Hour IIf IndexOf Intersection Intersects IsEmpty IsNan IsSelfIntersecting Length LengthGeodetic Log Max Mean Millisecond Min Minute Month MultiPartToSinglePart Multipoint NextSequenceValue Now Number OrderBy Overlaps Point Polygon Polyline Portal Pow Random Relate Reverse RingIsClockWise Round Second SetGeometry Sin Sort Sqrt Stdev Sum SymmetricDifference Tan Text Timestamp Today ToLocal Top Touches ToUTC TrackCurrentTime TrackGeometryWindow TrackIndex TrackStartTime TrackWindow TypeOf Union UrlEncode Variance Weekday When Within Year "
},
"contains": [
{
"className": "string",
"begin": "'",
"end": "'",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.0.contains.0"
}
]
},
{
"className": "string",
"begin": "`",
"end": "`",
"contains": [
{
"$ref": "#contains.0.contains.0"
},
{
"className": "subst",
"begin": "\\$\\{",
"end": "\\}",
"keywords": {
"$ref": "#keywords"
},
"contains": [
{
"$ref": "#contains.0"
},
{
"$ref": "#contains.1"
},
{
"$ref": "#contains.2"
},
{
"className": "number",
"variants": [
{
"begin": "\\b(0[bB][01]+)"
},
{
"begin": "\\b(0[oO][0-7]+)"
},
{
"begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)"
}
],
"relevance": 0
},
{
"className": "regexp",
"begin": "\\\/",
"end": "\\\/[gimuy]*",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.0.contains.0"
},
{
"begin": "\\[",
"end": "\\]",
"relevance": 0,
"contains": [
{
"$ref": "#contains.0.contains.0"
}
]
}
]
}
]
}
]
},
{
"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
}
]
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#contains.3.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "symbol",
"begin": "\\$[datastore|feature|layer|map|measure|sourcefeature|sourcelayer|targetfeature|targetlayer|value|view]+"
},
{
"$ref": "#contains.2.contains.1.contains.3"
},
{
"begin": "[{,]\\s*",
"relevance": 0,
"contains": [
{
"begin": "[A-Za-z_][0-9A-Za-z_]*\\s*:",
"returnBegin": true,
"relevance": 0,
"contains": [
{
"className": "attr",
"begin": "[A-Za-z_][0-9A-Za-z_]*",
"relevance": 0
}
]
}
]
},
{
"begin": "(!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|\/=|\/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~|\\b(return)\\b)\\s*",
"keywords": "return",
"contains": [
{
"$ref": "#contains.3"
},
{
"$ref": "#contains.4"
},
{
"$ref": "#contains.2.contains.1.contains.4"
},
{
"className": "function",
"begin": "(\\(.*?\\)|[A-Za-z_][0-9A-Za-z_]*)\\s*=>",
"returnBegin": true,
"end": "\\s*=>",
"contains": [
{
"className": "params",
"variants": [
{
"begin": "[A-Za-z_][0-9A-Za-z_]*"
},
{
"begin": "\\(\\s*\\)"
},
{
"begin": "\\(",
"end": "\\)",
"excludeBegin": true,
"excludeEnd": true,
"keywords": {
"$ref": "#keywords"
},
"contains": [
{
"$ref": "#contains.0"
},
{
"$ref": "#contains.1"
},
{
"$ref": "#contains.2"
},
{
"$ref": "#contains.2.contains.1.contains.3"
},
{
"$ref": "#contains.2.contains.1.contains.4"
},
{
"$ref": "#contains.4"
},
{
"$ref": "#contains.3"
}
]
}
]
}
]
}
],
"relevance": 0
},
{
"className": "function",
"beginKeywords": "function",
"end": "\\{",
"excludeEnd": true,
"contains": [
{
"className": "title",
"begin": "[A-Za-z_][0-9A-Za-z_]*",
"relevance": 0
},
{
"className": "params",
"begin": "\\(",
"end": "\\)",
"excludeBegin": true,
"excludeEnd": true,
"contains": {
"$ref": "#contains.8.contains.3.contains.0.variants.2.contains"
}
}
],
"illegal": "\\[|%"
},
{
"begin": "\\$[(.]"
}
],
"illegal": "#(?!!)"
}
@@ -0,0 +1,334 @@
{
"aliases": [
"c",
"cc",
"h",
"c++",
"h++",
"hpp",
"hh",
"hxx",
"cxx"
],
"keywords": {
"keyword": "int float while private char char8_t char16_t char32_t catch import module export virtual operator sizeof dynamic_cast|10 typedef const_cast|10 const for static_cast|10 union namespace unsigned long volatile static protected bool template mutable if public friend do goto auto void enum else break extern using asm case typeid wchar_tshort reinterpret_cast|10 default double register explicit signed typename try this switch continue inline delete alignas alignof constexpr consteval constinit decltype concept co_await co_return co_yield requires noexcept static_assert thread_local restrict final override atomic_bool atomic_char atomic_schar atomic_uchar atomic_short atomic_ushort atomic_int atomic_uint atomic_long atomic_ulong atomic_llong atomic_ullong new throw return and and_eq bitand bitor compl not not_eq or or_eq xor xor_eq boolean byte word String",
"built_in": "std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr _Bool complex _Complex imaginary _Imaginary setup loopKeyboardController MouseController SoftwareSerial EthernetServer EthernetClient LiquidCrystal RobotControl GSMVoiceCall EthernetUDP EsploraTFT HttpClient RobotMotor WiFiClient GSMScanner FileSystem Scheduler GSMServer YunClient YunServer IPAddress GSMClient GSMModem Keyboard Ethernet Console GSMBand Esplora Stepper Process WiFiUDP GSM_SMS Mailbox USBHost Firmata PImage Client Server GSMPIN FileIO Bridge Serial EEPROM Stream Mouse Audio Servo File Task GPRS WiFi Wire TFT GSM SPI SD runShellCommandAsynchronously analogWriteResolution retrieveCallingNumber printFirmwareVersion analogReadResolution sendDigitalPortPair noListenOnLocalhost readJoystickButton setFirmwareVersion readJoystickSwitch scrollDisplayRight getVoiceCallStatus scrollDisplayLeft writeMicroseconds delayMicroseconds beginTransmission getSignalStrength runAsynchronously getAsynchronously listenOnLocalhost getCurrentCarrier readAccelerometer messageAvailable sendDigitalPorts lineFollowConfig countryNameWrite runShellCommand readStringUntil rewindDirectory readTemperature setClockDivider readLightSensor endTransmission analogReference detachInterrupt countryNameRead attachInterrupt encryptionType readBytesUntil robotNameWrite readMicrophone robotNameRead cityNameWrite userNameWrite readJoystickY readJoystickX mouseReleased openNextFile scanNetworks noInterrupts digitalWrite beginSpeaker mousePressed isActionDone mouseDragged displayLogos noAutoscroll addParameter remoteNumber getModifiers keyboardRead userNameRead waitContinue processInput parseCommand printVersion readNetworks writeMessage blinkVersion cityNameRead readMessage setDataMode parsePacket isListening setBitOrder beginPacket isDirectory motorsWrite drawCompass digitalRead clearScreen serialEvent rightToLeft setTextSize leftToRight requestFrom keyReleased compassRead analogWrite interrupts WiFiServer disconnect playMelody parseFloat autoscroll getPINUsed setPINUsed setTimeout sendAnalog readSlider analogRead beginWrite createChar motorsStop keyPressed tempoWrite readButton subnetMask debugPrint macAddress writeGreen randomSeed attachGPRS readString sendString remotePort releaseAll mouseMoved background getXChange getYChange answerCall getResult voiceCall endPacket constrain getSocket writeJSON getButton available connected findUntil readBytes exitValue readGreen writeBlue startLoop IPAddress isPressed sendSysex pauseMode gatewayIP setCursor getOemKey tuneWrite noDisplay loadImage switchPIN onRequest onReceive changePIN playFile noBuffer parseInt overflow checkPIN knobRead beginTFT bitClear updateIR bitWrite position writeRGB highByte writeRed setSpeed readBlue noStroke remoteIP transfer shutdown hangCall beginSMS endWrite attached maintain noCursor checkReg checkPUK shiftOut isValid shiftIn pulseIn connect println localIP pinMode getIMEI display noBlink process getBand running beginSD drawBMP lowByte setBand release bitRead prepare pointTo readRed setMode noFill remove listen stroke detach attach noTone exists buffer height bitSet circle config cursor random IRread setDNS endSMS getKey micros millis begin print write ready flush width isPIN blink clear press mkdir rmdir close point yield image BSSID click delay read text move peek beep rect line open seek fill size turn stop home find step tone sqrt RSSI SSID end bit tan cos sin pow map abs max min get run put",
"literal": "true false nullptr NULL DIGITAL_MESSAGE FIRMATA_STRING ANALOG_MESSAGE REPORT_DIGITAL REPORT_ANALOG INPUT_PULLUP SET_PIN_MODE INTERNAL2V56 SYSTEM_RESET LED_BUILTIN INTERNAL1V1 SYSEX_START INTERNAL EXTERNAL DEFAULT OUTPUT INPUT HIGH LOW"
},
"illegal": "<\/",
"contains": [
{
"variants": [
{
"begin": "=",
"end": ";"
},
{
"begin": "\\(",
"end": "\\)"
},
{
"beginKeywords": "new throw return else",
"end": ";"
}
],
"keywords": {
"$ref": "#keywords"
},
"contains": [
{
"className": "keyword",
"begin": "\\b[a-z\\d_]*_t\\b"
},
{
"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
}
]
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#contains.0.contains.1.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "number",
"variants": [
{
"begin": "\\b(0b[01']+)"
},
{
"begin": "(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)(u|U|l|L|ul|UL|f|F|b|B)"
},
{
"begin": "(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"
}
],
"relevance": 0
},
{
"className": "string",
"variants": [
{
"begin": "(u8?|U|L)?\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"begin": "(u8?|U|L)?'(\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)|.)",
"end": "'",
"illegal": "."
},
{
"begin": "(?:u8?|U|L)?R\"([^()\\\\ ]{0,16})\\((?:.|\\n)*?\\)\\1\""
}
]
},
{
"begin": "\\(",
"end": "\\)",
"keywords": {
"$ref": "#keywords"
},
"contains": [
{
"$ref": "#contains.0.contains.0"
},
{
"$ref": "#contains.0.contains.1"
},
{
"$ref": "#contains.0.contains.2"
},
{
"$ref": "#contains.0.contains.3"
},
{
"$ref": "#contains.0.contains.4"
},
"self"
],
"relevance": 0
}
],
"relevance": 0
},
{
"className": "function",
"begin": "((decltype\\(auto\\)|(?:[a-zA-Z_]\\w*::)?[a-zA-Z_]\\w*(?:<.*?>)?)[\\*&\\s]+)+(?:[a-zA-Z_]\\w*::)?[a-zA-Z]\\w*\\s*\\(",
"returnBegin": true,
"end": "[{;=]",
"excludeEnd": true,
"keywords": {
"$ref": "#keywords"
},
"illegal": "[^\\w\\s\\*&:<>]",
"contains": [
{
"begin": "decltype\\(auto\\)",
"keywords": {
"$ref": "#keywords"
},
"relevance": 0
},
{
"begin": "(?:[a-zA-Z_]\\w*::)?[a-zA-Z]\\w*\\s*\\(",
"returnBegin": true,
"contains": [
{
"className": "title",
"begin": "(?:[a-zA-Z_]\\w*::)?[a-zA-Z]\\w*",
"relevance": 0
}
],
"relevance": 0
},
{
"className": "params",
"begin": "\\(",
"end": "\\)",
"keywords": {
"$ref": "#keywords"
},
"relevance": 0,
"contains": [
{
"$ref": "#contains.0.contains.1"
},
{
"$ref": "#contains.0.contains.2"
},
{
"$ref": "#contains.0.contains.4"
},
{
"$ref": "#contains.0.contains.3"
},
{
"$ref": "#contains.0.contains.0"
},
{
"begin": "\\(",
"end": "\\)",
"keywords": {
"$ref": "#keywords"
},
"relevance": 0,
"contains": [
"self",
{
"$ref": "#contains.0.contains.1"
},
{
"$ref": "#contains.0.contains.2"
},
{
"$ref": "#contains.0.contains.4"
},
{
"$ref": "#contains.0.contains.3"
},
{
"$ref": "#contains.0.contains.0"
}
]
}
]
},
{
"$ref": "#contains.0.contains.0"
},
{
"$ref": "#contains.0.contains.1"
},
{
"$ref": "#contains.0.contains.2"
},
{
"className": "meta",
"begin": "#\\s*[a-z]+\\b",
"end": "$",
"keywords": {
"meta-keyword": "if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"
},
"contains": [
{
"begin": "\\\\\\n",
"relevance": 0
},
{
"className": "meta-string",
"variants": {
"$ref": "#contains.0.contains.4.variants"
}
},
{
"className": "meta-string",
"begin": "<.*?>",
"end": "$",
"illegal": "\\n"
},
{
"$ref": "#contains.0.contains.1"
},
{
"$ref": "#contains.0.contains.2"
}
]
}
]
},
{
"$ref": "#contains.0.contains.0"
},
{
"$ref": "#contains.0.contains.1"
},
{
"$ref": "#contains.0.contains.2"
},
{
"$ref": "#contains.0.contains.3"
},
{
"$ref": "#contains.0.contains.4"
},
{
"$ref": "#contains.1.contains.6"
},
{
"begin": "\\b(deque|list|queue|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array)\\s*<",
"end": ">",
"keywords": {
"$ref": "#keywords"
},
"contains": [
"self",
{
"$ref": "#contains.0.contains.0"
}
]
},
{
"begin": "[a-zA-Z]\\w*::",
"keywords": {
"$ref": "#keywords"
}
},
{
"className": "class",
"beginKeywords": "class struct",
"end": "[{;:]",
"contains": [
{
"begin": "<",
"end": ">",
"contains": [
"self"
]
},
{
"className": "title",
"begin": "[a-zA-Z]\\w*",
"relevance": 0
}
]
}
],
"exports": {
"preprocessor": {
"$ref": "#contains.1.contains.6"
},
"strings": {
"$ref": "#contains.0.contains.4"
},
"keywords": {
"$ref": "#keywords"
}
}
}
@@ -0,0 +1,107 @@
{
"case_insensitive": true,
"aliases": [
"arm"
],
"lexemes": "\\.?[a-zA-Z]\\w*",
"keywords": {
"meta": ".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 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 pc lr sp ip sl sb fp a1 a2 a3 a4 v1 v2 v3 v4 v5 v6 v7 v8 f0 f1 f2 f3 f4 f5 f6 f7 p0 p1 p2 p3 p4 p5 p6 p7 p8 p9 p10 p11 p12 p13 p14 p15 c0 c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 c12 c13 c14 c15 q0 q1 q2 q3 q4 q5 q6 q7 q8 q9 q10 q11 q12 q13 q14 q15 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 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 {PC} {VAR} {TRUE} {FALSE} {OPT} {CONFIG} {ENDIAN} {CODESIZE} {CPU} {FPU} {ARCHITECTURE} {PCSTOREOFFSET} {ARMASM_VERSION} {INTER} {ROPI} {RWPI} {SWST} {NOSWST} . @"
},
"contains": [
{
"className": "keyword",
"begin": "\\b(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)?[sptrx]?",
"end": "\\s"
},
{
"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": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#contains.1.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "'",
"end": "[^\\\\]'",
"relevance": 0
},
{
"className": "title",
"begin": "\\|",
"end": "\\|",
"illegal": "\\n",
"relevance": 0
},
{
"className": "number",
"variants": [
{
"begin": "[#$=]?0x[0-9a-f]+"
},
{
"begin": "[#$=]?0b[01]+"
},
{
"begin": "[#$=]\\d+"
},
{
"begin": "\\b\\d+"
}
],
"relevance": 0
},
{
"className": "symbol",
"variants": [
{
"begin": "^[a-z_\\.\\$][a-z0-9_\\.\\$]+"
},
{
"begin": "^\\s*[a-z_\\.\\$][a-z0-9_\\.\\$]+:"
},
{
"begin": "[=#]\\w+"
}
],
"relevance": 0
}
]
}
@@ -0,0 +1,186 @@
{
"aliases": [
"adoc"
],
"contains": [
{
"className": "comment",
"begin": "^\/{4,}\\n",
"end": "\\n\/{4,}$",
"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": 10
},
{
"className": "comment",
"begin": "^\/\/",
"end": "$",
"contains": [
{
"$ref": "#contains.0.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
],
"relevance": 0
},
{
"className": "title",
"begin": "^\\.\\w.*$"
},
{
"begin": "^[=\\*]{4,}\\n",
"end": "\\n^[=\\*]{4,}$",
"relevance": 10
},
{
"className": "section",
"relevance": 10,
"variants": [
{
"begin": "^(={1,5}) .+?( \\1)?$"
},
{
"begin": "^[^\\[\\]\\n]+?\\n[=\\-~\\^\\+]{2,}$"
}
]
},
{
"className": "meta",
"begin": "^:.+?:",
"end": "\\s",
"excludeEnd": true,
"relevance": 10
},
{
"className": "meta",
"begin": "^\\[.+?\\]$",
"relevance": 0
},
{
"className": "quote",
"begin": "^_{4,}\\n",
"end": "\\n_{4,}$",
"relevance": 10
},
{
"className": "code",
"begin": "^[\\-\\.]{4,}\\n",
"end": "\\n[\\-\\.]{4,}$",
"relevance": 10
},
{
"begin": "^\\+{4,}\\n",
"end": "\\n\\+{4,}$",
"contains": [
{
"begin": "<",
"end": ">",
"subLanguage": "xml",
"relevance": 0
}
],
"relevance": 10
},
{
"className": "bullet",
"begin": "^(\\*+|\\-+|\\.+|[^\\n]+?::)\\s+"
},
{
"className": "symbol",
"begin": "^(NOTE|TIP|IMPORTANT|WARNING|CAUTION):\\s+",
"relevance": 10
},
{
"className": "strong",
"begin": "\\B\\*(?![\\*\\s])",
"end": "(\\n{2}|\\*)",
"contains": [
{
"begin": "\\\\*\\w",
"relevance": 0
}
]
},
{
"className": "emphasis",
"begin": "\\B'(?!['\\s])",
"end": "(\\n{2}|')",
"contains": [
{
"begin": "\\\\'\\w",
"relevance": 0
}
],
"relevance": 0
},
{
"className": "emphasis",
"begin": "_(?![_\\s])",
"end": "(\\n{2}|_)",
"relevance": 0
},
{
"className": "string",
"variants": [
{
"begin": "``.+?''"
},
{
"begin": "`.+?'"
}
]
},
{
"className": "code",
"begin": "(`.+?`|\\+.+?\\+)",
"relevance": 0
},
{
"className": "code",
"begin": "^[ \\t]",
"end": "$",
"relevance": 0
},
{
"begin": "^'{3,}[ \\t]*$",
"relevance": 10
},
{
"begin": "(link:)?(http|https|ftp|file|irc|image:?):\\S+\\[.*?\\]",
"returnBegin": true,
"contains": [
{
"begin": "(link|image:?):",
"relevance": 0
},
{
"className": "link",
"begin": "\\w",
"end": "[^\\[]+",
"relevance": 0
},
{
"className": "string",
"begin": "\\[",
"end": "\\]",
"excludeBegin": true,
"excludeEnd": true,
"relevance": 0
}
],
"relevance": 10
}
]
}
@@ -0,0 +1,219 @@
{
"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 enum else extends implements break transient new catch instanceof byte super volatile case assert short package default double public try this switch continue throws privileged aspectOf adviceexecution proceed cflowbelow cflow initialization preinitialization staticinitialization withincode target within execution getWithinTypeName handler thisJoinPoint thisJoinPointStaticPart thisEnclosingJoinPointStaticPart declare parents warning error soft precedence thisAspectInstance",
"illegal": "<\\\/|#",
"contains": [
{
"className": "comment",
"begin": "\/\\*\\*",
"end": "\\*\/",
"contains": [
{
"begin": "\\w+@",
"relevance": 0
},
{
"className": "doctag",
"begin": "@[A-Za-z]+"
},
{
"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": "comment",
"begin": "\/\/",
"end": "$",
"contains": [
{
"$ref": "#contains.0.contains.2"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#contains.0.contains.2"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "'",
"end": "'",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.3.contains.0"
}
]
},
{
"className": "class",
"beginKeywords": "aspect",
"end": "[{;=]",
"excludeEnd": true,
"illegal": "[:;\"\\[\\]]",
"contains": [
{
"beginKeywords": "extends implements pertypewithin perthis pertarget percflowbelow percflow issingleton"
},
{
"className": "title",
"begin": "[a-zA-Z_]\\w*",
"relevance": 0
},
{
"begin": "\\([^\\)]*",
"end": "[)]+",
"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 enum else extends implements break transient new catch instanceof byte super volatile case assert short package default double public try this switch continue throws privileged aspectOf adviceexecution proceed cflowbelow cflow initialization preinitialization staticinitialization withincode target within execution getWithinTypeName handler thisJoinPoint thisJoinPointStaticPart thisEnclosingJoinPointStaticPart declare parents warning error soft precedence thisAspectInstance get set args call",
"excludeEnd": false
}
]
},
{
"className": "class",
"beginKeywords": "class interface",
"end": "[{;=]",
"excludeEnd": true,
"relevance": 0,
"keywords": "class interface",
"illegal": "[:\"\\[\\]]",
"contains": [
{
"beginKeywords": "extends implements"
},
{
"$ref": "#contains.5.contains.1"
}
]
},
{
"beginKeywords": "pointcut after before around throwing returning",
"end": "[)]",
"excludeEnd": false,
"illegal": "[\"\\[\\]]",
"contains": [
{
"begin": "[a-zA-Z_]\\w*\\s*\\(",
"returnBegin": true,
"contains": [
{
"$ref": "#contains.5.contains.1"
}
]
}
]
},
{
"begin": "[:]",
"returnBegin": true,
"end": "[{;]",
"relevance": 0,
"excludeEnd": false,
"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 enum else extends implements break transient new catch instanceof byte super volatile case assert short package default double public try this switch continue throws privileged aspectOf adviceexecution proceed cflowbelow cflow initialization preinitialization staticinitialization withincode target within execution getWithinTypeName handler thisJoinPoint thisJoinPointStaticPart thisEnclosingJoinPointStaticPart declare parents warning error soft precedence thisAspectInstance",
"illegal": "[\"\\[\\]]",
"contains": [
{
"begin": "[a-zA-Z_]\\w*\\s*\\(",
"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 enum else extends implements break transient new catch instanceof byte super volatile case assert short package default double public try this switch continue throws privileged aspectOf adviceexecution proceed cflowbelow cflow initialization preinitialization staticinitialization withincode target within execution getWithinTypeName handler thisJoinPoint thisJoinPointStaticPart thisEnclosingJoinPointStaticPart declare parents warning error soft precedence thisAspectInstance get set args call",
"relevance": 0
},
{
"$ref": "#contains.4"
}
]
},
{
"beginKeywords": "new throw",
"relevance": 0
},
{
"className": "function",
"begin": "\\w+ +\\w+(\\.)?\\w+\\s*\\([^\\)]*\\)\\s*((throws)[\\w\\s,]+)?[\\{;]",
"returnBegin": true,
"end": "[{;=]",
"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 enum else extends implements break transient new catch instanceof byte super volatile case assert short package default double public try this switch continue throws privileged aspectOf adviceexecution proceed cflowbelow cflow initialization preinitialization staticinitialization withincode target within execution getWithinTypeName handler thisJoinPoint thisJoinPointStaticPart thisEnclosingJoinPointStaticPart declare parents warning error soft precedence thisAspectInstance",
"excludeEnd": true,
"contains": [
{
"begin": "[a-zA-Z_]\\w*\\s*\\(",
"returnBegin": true,
"relevance": 0,
"contains": [
{
"$ref": "#contains.5.contains.1"
}
]
},
{
"className": "params",
"begin": "\\(",
"end": "\\)",
"relevance": 0,
"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 enum else extends implements break transient new catch instanceof byte super volatile case assert short package default double public try this switch continue throws privileged aspectOf adviceexecution proceed cflowbelow cflow initialization preinitialization staticinitialization withincode target within execution getWithinTypeName handler thisJoinPoint thisJoinPointStaticPart thisEnclosingJoinPointStaticPart declare parents warning error soft precedence thisAspectInstance",
"contains": [
{
"$ref": "#contains.3"
},
{
"$ref": "#contains.4"
},
{
"className": "number",
"begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",
"relevance": 0
},
{
"$ref": "#contains.2"
}
]
},
{
"$ref": "#contains.1"
},
{
"$ref": "#contains.2"
}
]
},
{
"$ref": "#contains.10.contains.1.contains.2"
},
{
"className": "meta",
"begin": "@[A-Za-z]+"
}
]
}
@@ -0,0 +1,96 @@
{
"case_insensitive": true,
"aliases": [
"ahk"
],
"keywords": {
"keyword": "Break Continue Critical Exit ExitApp Gosub Goto New OnExit Pause return SetBatchLines SetTimer Suspend Thread Throw Until ahk_id ahk_class ahk_pid ahk_exe ahk_group",
"literal": "true false NOT AND OR",
"built_in": "ComSpec Clipboard ClipboardAll ErrorLevel"
},
"contains": [
{
"begin": "`[\\s\\S]"
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.0"
}
]
},
{
"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": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#contains.2.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "number",
"begin": "\\b\\d+(\\.\\d+)?",
"relevance": 0
},
{
"className": "variable",
"begin": "%[a-zA-Z0-9#_$@]+%"
},
{
"className": "built_in",
"begin": "^\\s*\\w+\\s*(,|%)"
},
{
"className": "title",
"variants": [
{
"begin": "^[^\\n\";]+::(?!=)"
},
{
"begin": "^[^\\n\";]+:(?!=)",
"relevance": 0
}
]
},
{
"className": "meta",
"begin": "^\\s*#\\w+",
"end": "$",
"relevance": 0
},
{
"className": "built_in",
"begin": "A_[a-zA-Z0-9]+"
},
{
"begin": ",\\s*,"
}
]
}
@@ -0,0 +1,197 @@
{
"case_insensitive": true,
"illegal": "\\\/\\*",
"keywords": {
"keyword": "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",
"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 WinSetLine truncated
"literal": "True False And Null Not Or"
},
"contains": [
{
"variants": [
{
"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": "comment",
"begin": "#cs",
"end": "#ce",
"contains": [
{
"$ref": "#contains.0.variants.0.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "comment",
"begin": "#comments-start",
"end": "#comments-end",
"contains": [
{
"$ref": "#contains.0.variants.0.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
}
]
},
{
"begin": "\\$[A-z0-9_]+"
},
{
"className": "string",
"variants": [
{
"begin": "\"",
"end": "\"",
"contains": [
{
"begin": "\"\"",
"relevance": 0
}
]
},
{
"begin": "'",
"end": "'",
"contains": [
{
"begin": "''",
"relevance": 0
}
]
}
]
},
{
"variants": [
{
"className": "number",
"begin": "\\b(0b[01]+)",
"relevance": 0
},
{
"className": "number",
"begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",
"relevance": 0
}
]
},
{
"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": [
{
"$ref": "#contains.2"
},
{
"className": "meta-string",
"variants": [
{
"begin": "<",
"end": ">"
},
{
"begin": "\"",
"end": "\"",
"contains": [
{
"begin": "\"\"",
"relevance": 0
}
]
},
{
"begin": "'",
"end": "'",
"contains": [
{
"begin": "''",
"relevance": 0
}
]
}
]
}
]
},
{
"$ref": "#contains.2"
},
{
"$ref": "#contains.0"
}
]
},
{
"className": "symbol",
"begin": "@[A-z0-9_]+"
},
{
"className": "function",
"beginKeywords": "Func",
"end": "$",
"illegal": "\\$|\\[|%",
"contains": [
{
"className": "title",
"begin": "[a-zA-Z_]\\w*",
"relevance": 0
},
{
"className": "params",
"begin": "\\(",
"end": "\\)",
"contains": [
{
"$ref": "#contains.1"
},
{
"$ref": "#contains.2"
},
{
"$ref": "#contains.3"
}
]
}
]
}
]
}
@@ -0,0 +1,87 @@
{
"case_insensitive": true,
"lexemes": "\\.?[a-zA-Z]\\w*",
"keywords": {
"keyword": "adc add adiw and andi asr bclr bld brbc brbs brcc brcs break breq brge brhc brhs brid brie brlo brlt brmi brne brpl brsh brtc brts brvc brvs bset bst call cbi cbr clc clh cli cln clr cls clt clv clz com cp cpc cpi cpse dec eicall eijmp elpm eor fmul fmuls fmulsu icall ijmp in inc jmp ld ldd ldi lds lpm lsl lsr mov movw mul muls mulsu neg nop or ori out pop push rcall ret reti rjmp rol ror sbc sbr sbrc sbrs sec seh sbi sbci sbic sbis sbiw sei sen ser ses set sev sez sleep spm st std sts sub subi swap tst wdr",
"built_in": "r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14 r15 r16 r17 r18 r19 r20 r21 r22 r23 r24 r25 r26 r27 r28 r29 r30 r31 x|0 xh xl y|0 yh yl z|0 zh zl ucsr1c udr1 ucsr1a ucsr1b ubrr1l ubrr1h ucsr0c ubrr0h tccr3c tccr3a tccr3b tcnt3h tcnt3l ocr3ah ocr3al ocr3bh ocr3bl ocr3ch ocr3cl icr3h icr3l etimsk etifr tccr1c ocr1ch ocr1cl twcr twdr twar twsr twbr osccal xmcra xmcrb eicra spmcsr spmcr portg ddrg ping portf ddrf sreg sph spl xdiv rampz eicrb eimsk gimsk gicr eifr gifr timsk tifr mcucr mcucsr tccr0 tcnt0 ocr0 assr tccr1a tccr1b tcnt1h tcnt1l ocr1ah ocr1al ocr1bh ocr1bl icr1h icr1l tccr2 tcnt2 ocr2 ocdr wdtcr sfior eearh eearl eedr eecr porta ddra pina portb ddrb pinb portc ddrc pinc portd ddrd pind spdr spsr spcr udr0 ucsr0a ucsr0b ubrr0l acsr admux adcsr adch adcl porte ddre pine pinf",
"meta": ".byte .cseg .db .def .device .dseg .dw .endmacro .equ .eseg .exit .include .list .listmac .macro .nolist .org .set"
},
"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
}
]
},
{
"className": "comment",
"begin": ";",
"end": "$",
"contains": [
{
"$ref": "#contains.0.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
],
"relevance": 0
},
{
"className": "number",
"begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",
"relevance": 0
},
{
"className": "number",
"begin": "\\b(0b[01]+)",
"relevance": 0
},
{
"className": "number",
"begin": "\\b(\\$[a-zA-Z0-9]+|0o[0-7]+)"
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "'",
"end": "[^\\\\]'",
"illegal": "[^\\\\][^']"
},
{
"className": "symbol",
"begin": "^[A-Za-z0-9_.$]+:"
},
{
"className": "meta",
"begin": "#",
"end": "$"
},
{
"className": "subst",
"begin": "@[0-9]+"
}
]
}
@@ -0,0 +1,120 @@
{
"keywords": {
"keyword": "BEGIN END if else while do for in break continue delete next nextfile function func exit|10"
},
"contains": [
{
"className": "variable",
"variants": [
{
"begin": "\\$[\\w\\d#@][\\w\\d_]*"
},
{
"begin": "\\$\\{(.*?)}"
}
]
},
{
"className": "string",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
],
"variants": [
{
"begin": "(u|b)?r?'''",
"end": "'''",
"relevance": 10
},
{
"begin": "(u|b)?r?\"\"\"",
"end": "\"\"\"",
"relevance": 10
},
{
"begin": "(u|r|ur)'",
"end": "'",
"relevance": 10
},
{
"begin": "(u|r|ur)\"",
"end": "\"",
"relevance": 10
},
{
"begin": "(b|br)'",
"end": "'"
},
{
"begin": "(b|br)\"",
"end": "\""
},
{
"className": "string",
"begin": "'",
"end": "'",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.1.contains.0"
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.1.contains.0"
}
]
}
]
},
{
"className": "regexp",
"begin": "\\\/",
"end": "\\\/[gimuy]*",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.1.contains.0"
},
{
"begin": "\\[",
"end": "\\]",
"relevance": 0,
"contains": [
{
"$ref": "#contains.1.contains.0"
}
]
}
]
},
{
"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
}
]
},
{
"className": "number",
"begin": "\\b\\d+(\\.\\d+)?",
"relevance": 0
}
]
}
@@ -0,0 +1,85 @@
{
"keywords": "false int abstract private char boolean static null if for true while long throw finally protected final return void enum else break new catch byte super case short default double public try this switch continue reverse firstfast firstonly forupdate nofetch sum avg minof maxof count order group by asc desc index hint like dispaly edit client server ttsbegin ttscommit str real date container anytype common div mod",
"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
}
]
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#contains.0.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "'",
"end": "'",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.2.contains.0"
}
]
},
{
"className": "number",
"begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",
"relevance": 0
},
{
"className": "meta",
"begin": "#",
"end": "$"
},
{
"className": "class",
"beginKeywords": "class interface",
"end": "{",
"excludeEnd": true,
"illegal": ":",
"contains": [
{
"beginKeywords": "extends implements"
},
{
"className": "title",
"begin": "[a-zA-Z_]\\w*",
"relevance": 0
}
]
}
]
}
@@ -0,0 +1,92 @@
{
"aliases": [
"sh",
"zsh"
],
"lexemes": "\\b-?[a-z\\._]+\\b",
"keywords": {
"keyword": "if then else elif fi for while in do done case esac function",
"literal": "true false",
"built_in": "break cd continue eval exec exit export getopts hash pwd readonly return shift test times trap umask unset alias bind builtin caller command declare echo enable help let local logout mapfile printf read readarray source type typeset ulimit unalias set shopt autoload bg bindkey bye cap chdir clone comparguments compcall compctl compdescribe compfiles compgroups compquote comptags comptry compvalues dirs disable disown echotc echoti emulate fc fg float functions getcap getln history integer jobs kill limit log noglob popd print pushd pushln rehash sched setcap setopt stat suspend ttyctl unfunction unhash unlimit unsetopt vared wait whence where which zcompile zformat zftp zle zmodload zparseopts zprof zpty zregexparse zsocket zstyle ztcp",
"_": "-ne -eq -lt -gt -f -d -e -s -l -a"
},
"contains": [
{
"className": "meta",
"begin": "^#![^\\n]+sh\\s*$",
"relevance": 10
},
{
"className": "function",
"begin": "\\w[\\w\\d_]*\\s*\\(\\s*\\)\\s*\\{",
"returnBegin": true,
"contains": [
{
"className": "title",
"begin": "\\w[\\w\\d_]*",
"relevance": 0
}
],
"relevance": 0
},
{
"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
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
},
{
"className": "variable",
"variants": [
{
"begin": "\\$[\\w\\d#@][\\w\\d_]*"
},
{
"begin": "\\$\\{(.*?)}"
}
]
},
{
"className": "variable",
"begin": "\\$\\(",
"end": "\\)",
"contains": [
{
"$ref": "#contains.3.contains.0"
}
]
}
]
},
{
"className": "",
"begin": "\\\\\""
},
{
"className": "string",
"begin": "'",
"end": "'"
},
{
"$ref": "#contains.3.contains.1"
}
]
}
@@ -0,0 +1,72 @@
{
"case_insensitive": true,
"illegal": "^.",
"lexemes": "[a-zA-Z][a-zA-Z0-9_$%!#]*",
"keywords": {
"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": [
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "comment",
"begin": "REM",
"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": 10
},
{
"className": "comment",
"begin": "'",
"end": "$",
"contains": [
{
"$ref": "#contains.1.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
],
"relevance": 0
},
{
"className": "symbol",
"begin": "^[0-9]+ ",
"relevance": 10
},
{
"className": "number",
"begin": "\\b([0-9]+[0-9edED.]*[#!]?)",
"relevance": 0
},
{
"className": "number",
"begin": "(&[hH][0-9a-fA-F]{1,4})"
},
{
"className": "number",
"begin": "(&[oO][0-7]{1,6})"
}
]
}
@@ -0,0 +1,74 @@
{
"contains": [
{
"className": "attribute",
"begin": "<",
"end": ">"
},
{
"begin": "::=",
"starts": {
"end": "$",
"contains": [
{
"begin": "<",
"end": ">"
},
{
"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
}
]
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#contains.1.starts.contains.1.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "'",
"end": "'",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.1.starts.contains.3.contains.0"
}
]
}
]
}
}
]
}
@@ -0,0 +1,47 @@
{
"aliases": [
"bf"
],
"contains": [
{
"className": "comment",
"begin": "[^\\[\\]\\.,\\+\\-<> \r\n]",
"end": "[\\[\\]\\.,\\+\\-<> \r\n]",
"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
}
],
"returnEnd": true,
"relevance": 0
},
{
"className": "title",
"begin": "[\\[\\]]",
"relevance": 0
},
{
"className": "string",
"begin": "[\\.,]",
"relevance": 0
},
{
"begin": "(?:\\+\\+|\\-\\-)",
"contains": [
{
"className": "literal",
"begin": "[\\+\\-]",
"relevance": 0
}
]
},
{
"$ref": "#contains.3.contains.0"
}
]
}
@@ -0,0 +1,126 @@
{
"case_insensitive": true,
"keywords": {
"keyword": "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",
"literal": "false true"
},
"illegal": "\\\/\\*",
"contains": [
{
"className": "string",
"begin": "'",
"end": "'",
"contains": [
{
"begin": "''"
}
]
},
{
"className": "string",
"begin": "(#\\d+)+"
},
{
"className": "number",
"begin": "\\b\\d+(\\.\\d+)?(DT|D|T)",
"relevance": 0
},
{
"className": "string",
"begin": "\"",
"end": "\""
},
{
"className": "number",
"begin": "\\b\\d+(\\.\\d+)?",
"relevance": 0
},
{
"className": "class",
"begin": "OBJECT (Table|Form|Report|Dataport|Codeunit|XMLport|MenuSuite|Page|Query) (\\d+) ([^\\r\\n]+)",
"returnBegin": true,
"contains": [
{
"className": "title",
"begin": "[a-zA-Z]\\w*",
"relevance": 0
},
{
"className": "function",
"beginKeywords": "procedure",
"end": "[:;]",
"keywords": "procedure|10",
"contains": [
{
"$ref": "#contains.5.contains.0"
},
{
"className": "params",
"begin": "\\(",
"end": "\\)",
"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",
"contains": [
{
"$ref": "#contains.0"
},
{
"$ref": "#contains.1"
}
]
},
{
"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
}
]
},
{
"className": "comment",
"begin": "\\{",
"end": "\\}",
"contains": [
{
"$ref": "#contains.5.contains.1.contains.2.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
],
"relevance": 0
},
{
"className": "comment",
"begin": "\\(\\*",
"end": "\\*\\)",
"contains": [
{
"$ref": "#contains.5.contains.1.contains.2.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
],
"relevance": 10
}
]
}
]
},
{
"$ref": "#contains.5.contains.1"
}
]
}
@@ -0,0 +1,87 @@
{
"aliases": [
"capnp"
],
"keywords": {
"keyword": "struct enum interface union group import using const annotation extends in of on as with from fixed",
"built_in": "Void Bool Int8 Int16 Int32 Int64 UInt8 UInt16 UInt32 UInt64 Float32 Float64 Text Data AnyPointer AnyStruct Capability List",
"literal": "true false"
},
"contains": [
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "number",
"begin": "\\b\\d+(\\.\\d+)?",
"relevance": 0
},
{
"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
}
]
},
{
"className": "meta",
"begin": "@0x[\\w\\d]{16};",
"illegal": "\\n"
},
{
"className": "symbol",
"begin": "@\\d+\\b"
},
{
"className": "class",
"beginKeywords": "struct enum",
"end": "\\{",
"illegal": "\\n",
"contains": [
{
"className": "title",
"begin": "[a-zA-Z]\\w*",
"relevance": 0,
"starts": {
"endsWithParent": true,
"excludeEnd": true
}
}
]
},
{
"className": "class",
"beginKeywords": "interface",
"end": "\\{",
"illegal": "\\n",
"contains": [
{
"className": "title",
"begin": "[a-zA-Z]\\w*",
"relevance": 0,
"starts": {
"endsWithParent": true,
"excludeEnd": true
}
}
]
}
]
}
@@ -0,0 +1,90 @@
{
"keywords": {
"keyword": "assembly module package import alias class interface object given value assign void function new of extends satisfies abstracts in out return break continue throw assert dynamic if else switch case for while try catch finally then let this outer super is exists nonempty shared abstract formal default actual variable late native deprecatedfinal sealed annotation suppressWarnings small",
"meta": "doc by license see throws tagged"
},
"illegal": "\\$[^01]|#[^0-9a-fA-F]",
"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
}
]
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
"self",
{
"$ref": "#contains.0.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "meta",
"begin": "@[a-z]\\w*(?:\\:\"[^\"]*\")?"
},
{
"className": "string",
"begin": "\"\"\"",
"end": "\"\"\"",
"relevance": 10
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"contains": [
{
"className": "subst",
"excludeBegin": true,
"excludeEnd": true,
"begin": "``",
"end": "``",
"keywords": "assembly module package import alias class interface object given value assign void function new of extends satisfies abstracts in out return break continue throw assert dynamic if else switch case for while try catch finally then let this outer super is exists nonempty",
"relevance": 10,
"contains": [
{
"$ref": "#contains.3"
},
{
"$ref": "#contains.4"
},
{
"className": "string",
"begin": "'",
"end": "'"
},
{
"className": "number",
"begin": "#[0-9a-fA-F_]+|\\$[01_]+|[0-9_]+(?:\\.[0-9_](?:[eE][+-]?\\d+)?)?[kMGTPmunpf]?",
"relevance": 0
}
]
}
]
},
{
"$ref": "#contains.4.contains.0.contains.2"
},
{
"$ref": "#contains.4.contains.0.contains.3"
}
]
}
@@ -0,0 +1,75 @@
{
"aliases": [
"clean",
"icl",
"dcl"
],
"keywords": {
"keyword": "if let in with where case of class instance otherwise implementation definition system module from import qualified as special code inline foreign export ccall stdcall generic derive infix infixl infixr",
"built_in": "Int Real Char Bool",
"literal": "True False"
},
"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
}
]
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#contains.0.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "'",
"end": "'",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.2.contains.0"
}
]
},
{
"className": "number",
"begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",
"relevance": 0
},
{
"begin": "->|<-[|:]?|#!?|>>=|\\{\\||\\|\\}|:==|=:|<>"
}
]
}
@@ -0,0 +1,12 @@
{
"contains": [
{
"className": "meta",
"begin": "^([\\w.-]+|\\s*#_)?=>",
"starts": {
"end": "$",
"subLanguage": "clojure"
}
}
]
}
@@ -0,0 +1,139 @@
{
"aliases": [
"clj"
],
"illegal": "\\S",
"contains": [
{
"begin": "\\(",
"end": "\\)",
"contains": [
{
"className": "comment",
"begin": "comment",
"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
}
]
},
{
"keywords": {
"builtin-name": "def defonce cond apply if-not if-let if not not= = < > <= >= == + \/ * - rem quot neg? pos? delay? symbol? keyword? true? false? integer? empty? coll? list? set? ifn? fn? associative? sequential? sorted? counted? reversible? number? decimal? class? distinct? isa? float? rational? reduced? ratio? odd? even? char? seq? vector? string? map? nil? contains? zero? instance? not-every? not-any? libspec? -> ->> .. . inc compare do dotimes mapcat take remove take-while drop letfn drop-last take-last drop-while while intern condp case reduced cycle split-at split-with repeat replicate iterate range merge zipmap declare line-seq sort comparator sort-by dorun doall nthnext nthrest partition eval doseq await await-for let agent atom send send-off release-pending-sends add-watch mapv filterv remove-watch agent-error restart-agent set-error-handler error-handler set-error-mode! error-mode shutdown-agents quote var fn loop recur throw try monitor-enter monitor-exit defmacro defn defn- macroexpand macroexpand-1 for dosync and or when when-not when-let comp juxt partial sequence memoize constantly complement identity assert peek pop doto proxy defstruct first rest cons defprotocol cast coll deftype defrecord last butlast sigs reify second ffirst fnext nfirst nnext defmulti defmethod meta with-meta ns in-ns create-ns import refer keys select-keys vals key val rseq name namespace promise into transient persistent! conj! assoc! dissoc! pop! disj! use class type num float double short byte boolean bigint biginteger bigdec print-method print-dup throw-if printf format load compile get-in update-in pr pr-on newline flush read slurp read-line subvec with-open memfn time re-find re-groups rand-int rand mod locking assert-valid-fdecl alias resolve ref deref refset swap! reset! set-validator! compare-and-set! alter-meta! reset-meta! commute get-validator alter ref-set ref-history-count ref-min-history ref-max-history ensure sync io! new next conj set! to-array future future-call into-array aset gen-class reduce map filter find empty hash-map hash-set sorted-map sorted-map-by sorted-set sorted-set-by vec vector seq flatten reverse assoc dissoc list disj get union difference intersection extend extend-type extend-protocol int nth delay count concat chunk chunk-buffer chunk-append chunk-first chunk-rest max min dec unchecked-inc-int unchecked-inc unchecked-dec-inc unchecked-dec unchecked-negate unchecked-add-int unchecked-add unchecked-subtract-int unchecked-subtract chunk-next chunk-cons chunked-seq? prn vary-meta lazy-seq spread list* str find-keyword keyword symbol gensym force rationalize"
},
"lexemes": "[a-zA-Z_\\-!.?+*=<>&#'][a-zA-Z_\\-!.?+*=<>&#'0-9\/;:]*",
"className": "name",
"begin": "[a-zA-Z_\\-!.?+*=<>&#'][a-zA-Z_\\-!.?+*=<>&#'0-9\/;:]*",
"starts": {
"endsWithParent": true,
"relevance": 0,
"contains": [
{
"$ref": "#contains.0"
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": null,
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "comment",
"begin": "\\^[a-zA-Z_\\-!.?+*=<>&#'][a-zA-Z_\\-!.?+*=<>&#'0-9\/;:]*"
},
{
"className": "comment",
"begin": "\\^\\{",
"end": "\\}",
"contains": [
{
"begin": "[\\[\\{]",
"end": "[\\]\\}]",
"contains": {
"$ref": "#contains.0.contains.1.starts.contains"
}
}
]
},
{
"className": "comment",
"begin": ";",
"end": "$",
"contains": [
{
"$ref": "#contains.0.contains.0.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
],
"relevance": 0
},
{
"className": "symbol",
"begin": "[:]{1,2}[a-zA-Z_\\-!.?+*=<>&#'][a-zA-Z_\\-!.?+*=<>&#'0-9\/;:]*"
},
{
"$ref": "#contains.0.contains.1.starts.contains.3.contains.0"
},
{
"className": "number",
"begin": "[-+]?\\d+(\\.\\d+)?",
"relevance": 0
},
{
"className": "literal",
"begin": "\\b(true|false|nil)\\b"
},
{
"begin": "[a-zA-Z_\\-!.?+*=<>&#'][a-zA-Z_\\-!.?+*=<>&#'0-9\/;:]*",
"relevance": 0
}
]
}
},
{
"$ref": "#contains.0.contains.1.starts"
}
]
},
{
"$ref": "#contains.0.contains.1.starts.contains.1"
},
{
"$ref": "#contains.0.contains.1.starts.contains.2"
},
{
"$ref": "#contains.0.contains.1.starts.contains.3"
},
{
"$ref": "#contains.0.contains.1.starts.contains.4"
},
{
"$ref": "#contains.0.contains.1.starts.contains.5"
},
{
"$ref": "#contains.0.contains.1.starts.contains.3.contains.0"
},
{
"$ref": "#contains.0.contains.1.starts.contains.7"
},
{
"$ref": "#contains.0.contains.1.starts.contains.8"
}
]
}
@@ -0,0 +1,48 @@
{
"aliases": [
"cmake.in"
],
"case_insensitive": true,
"keywords": {
"keyword": "break cmake_host_system_information cmake_minimum_required cmake_parse_arguments cmake_policy configure_file continue elseif else endforeach endfunction endif endmacro endwhile execute_process file find_file find_library find_package find_path find_program foreach function get_cmake_property get_directory_property get_filename_component get_property if include include_guard list macro mark_as_advanced math message option return separate_arguments set_directory_properties set_property set site_name string unset variable_watch while add_compile_definitions add_compile_options add_custom_command add_custom_target add_definitions add_dependencies add_executable add_library add_link_options add_subdirectory add_test aux_source_directory build_command create_test_sourcelist define_property enable_language enable_testing export fltk_wrap_ui get_source_file_property get_target_property get_test_property include_directories include_external_msproject include_regular_expression install link_directories link_libraries load_cache project qt_wrap_cpp qt_wrap_ui remove_definitions set_source_files_properties set_target_properties set_tests_properties source_group target_compile_definitions target_compile_features target_compile_options target_include_directories target_link_directories target_link_libraries target_link_options target_sources try_compile try_run ctest_build ctest_configure ctest_coverage ctest_empty_binary_directory ctest_memcheck ctest_read_custom_files ctest_run_script ctest_sleep ctest_start ctest_submit ctest_test ctest_update ctest_upload build_name exec_program export_library_dependencies install_files install_programs install_targets load_command make_directory output_required_files remove subdir_depends subdirs use_mangled_mesa utility_source variable_requires write_file qt5_use_modules qt5_use_package qt5_wrap_cpp on off true false and or not command policy target test exists is_newer_than is_directory is_symlink is_absolute matches less greater equal less_equal greater_equal strless strgreater strequal strless_equal strgreater_equal version_less version_greater version_equal version_less_equal version_greater_equal in_list defined"
},
"contains": [
{
"className": "variable",
"begin": "\\${",
"end": "}"
},
{
"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
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "number",
"begin": "\\b\\d+(\\.\\d+)?",
"relevance": 0
}
]
}
@@ -0,0 +1,267 @@
{
"aliases": [
"coffee",
"cson",
"iced"
],
"keywords": {
"keyword": "in if for while finally new do return else break catch instanceof throw try this switch continue typeof delete debugger super yield import export from as default await then unless until loop of by when and or is isnt not",
"literal": "true false null undefined yes no on off",
"built_in": "npm require console print module global window document"
},
"illegal": "\\\/\\*",
"contains": [
{
"className": "number",
"begin": "\\b(0b[01]+)",
"relevance": 0
},
{
"className": "number",
"begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",
"relevance": 0,
"starts": {
"end": "(\\s*\/)?",
"relevance": 0
}
},
{
"className": "string",
"variants": [
{
"begin": "'''",
"end": "'''",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"begin": "'",
"end": "'",
"contains": [
{
"$ref": "#contains.2.variants.0.contains.0"
}
]
},
{
"begin": "\"\"\"",
"end": "\"\"\"",
"contains": [
{
"$ref": "#contains.2.variants.0.contains.0"
},
{
"className": "subst",
"begin": "#\\{",
"end": "}",
"keywords": {
"$ref": "#keywords"
},
"contains": [
{
"$ref": "#contains.0"
},
{
"$ref": "#contains.1"
},
{
"$ref": "#contains.2"
},
{
"className": "regexp",
"variants": [
{
"begin": "\/\/\/",
"end": "\/\/\/",
"contains": [
{
"$ref": "#contains.2.variants.2.contains.1"
},
{
"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
}
]
}
]
},
{
"begin": "\/\/[gim]{0,3}(?=\\W)",
"relevance": 0
},
{
"begin": "\\\/(?![ *]).*?(?![\\\\]).\\\/[gim]{0,3}(?=\\W)"
}
]
},
{
"begin": "@[A-Za-z$_][0-9A-Za-z$_]*"
},
{
"subLanguage": "javascript",
"excludeBegin": true,
"excludeEnd": true,
"variants": [
{
"begin": "```",
"end": "```"
},
{
"begin": "`",
"end": "`"
}
]
}
]
}
]
},
{
"begin": "\"",
"end": "\"",
"contains": [
{
"$ref": "#contains.2.variants.0.contains.0"
},
{
"$ref": "#contains.2.variants.2.contains.1"
}
]
}
]
},
{
"$ref": "#contains.2.variants.2.contains.1.contains.3"
},
{
"$ref": "#contains.2.variants.2.contains.1.contains.4"
},
{
"$ref": "#contains.2.variants.2.contains.1.contains.5"
},
{
"className": "comment",
"begin": "###",
"end": "###",
"contains": [
{
"$ref": "#contains.2.variants.2.contains.1.contains.3.variants.0.contains.1.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"$ref": "#contains.2.variants.2.contains.1.contains.3.variants.0.contains.1"
},
{
"className": "function",
"begin": "^\\s*[A-Za-z$_][0-9A-Za-z$_]*\\s*=\\s*(\\(.*\\))?\\s*\\B[-=]>",
"end": "[-=]>",
"returnBegin": true,
"contains": [
{
"className": "title",
"begin": "[A-Za-z$_][0-9A-Za-z$_]*",
"relevance": 0
},
{
"className": "params",
"begin": "\\([^\\(]",
"returnBegin": true,
"contains": [
{
"begin": "\\(",
"end": "\\)",
"keywords": {
"$ref": "#keywords"
},
"contains": [
"self",
{
"$ref": "#contains.0"
},
{
"$ref": "#contains.1"
},
{
"$ref": "#contains.2"
},
{
"$ref": "#contains.2.variants.2.contains.1.contains.3"
},
{
"$ref": "#contains.2.variants.2.contains.1.contains.4"
},
{
"$ref": "#contains.2.variants.2.contains.1.contains.5"
}
]
}
]
}
]
},
{
"begin": "[:\\(,=]\\s*",
"relevance": 0,
"contains": [
{
"className": "function",
"begin": "(\\(.*\\))?\\s*\\B[-=]>",
"end": "[-=]>",
"returnBegin": true,
"contains": [
{
"$ref": "#contains.8.contains.1"
}
]
}
]
},
{
"className": "class",
"beginKeywords": "class",
"end": "$",
"illegal": "[:=\"\\[\\]]",
"contains": [
{
"beginKeywords": "extends",
"endsWithParent": true,
"illegal": "[:=\"\\[\\]]",
"contains": [
{
"$ref": "#contains.8.contains.0"
}
]
},
{
"$ref": "#contains.8.contains.0"
}
]
},
{
"begin": "[A-Za-z$_][0-9A-Za-z$_]*:",
"end": ":",
"returnBegin": true,
"returnEnd": true,
"relevance": 0
}
]
}
@@ -0,0 +1,49 @@
{
"keywords": {
"keyword": "_|0 as at cofix else end exists exists2 fix for forall fun if IF in let match mod Prop return Set then Type using where with Abort About Add Admit Admitted All Arguments Assumptions Axiom Back BackTo Backtrack Bind Blacklist Canonical Cd Check Class Classes Close Coercion Coercions CoFixpoint CoInductive Collection Combined Compute Conjecture Conjectures Constant constr Constraint Constructors Context Corollary CreateHintDb Cut Declare Defined Definition Delimit Dependencies DependentDerive Drop eauto End Equality Eval Example Existential Existentials Existing Export exporting Extern Extract Extraction Fact Field Fields File Fixpoint Focus for From Function Functional Generalizable Global Goal Grab Grammar Graph Guarded Heap Hint HintDb Hints Hypotheses Hypothesis ident Identity If Immediate Implicit Import Include Inductive Infix Info Initial Inline Inspect Instance Instances Intro Intros Inversion Inversion_clear Language Left Lemma Let Libraries Library Load LoadPath Local Locate Ltac ML Mode Module Modules Monomorphic Morphism Next NoInline Notation Obligation Obligations Opaque Open Optimize Options Parameter Parameters Parametric Path Paths pattern Polymorphic Preterm Print Printing Program Projections Proof Proposition Pwd Qed Quit Rec Record Recursive Redirect Relation Remark Remove Require Reserved Reset Resolve Restart Rewrite Right Ring Rings Save Scheme Scope Scopes Script Search SearchAbout SearchHead SearchPattern SearchRewrite Section Separate Set Setoid Show Solve Sorted Step Strategies Strategy Structure SubClass Table Tables Tactic Term Test Theorem Time Timeout Transparent Type Typeclasses Types Undelimit Undo Unfocus Unfocused Unfold Universe Universes Unset Unshelve using Variable Variables Variant Verbose Visibility where with",
"built_in": "abstract absurd admit after apply as assert assumption at auto autorewrite autounfold before bottom btauto by case case_eq cbn cbv change classical_left classical_right clear clearbody cofix compare compute congruence constr_eq constructor contradict contradiction cut cutrewrite cycle decide decompose dependent destruct destruction dintuition discriminate discrR do double dtauto eapply eassumption eauto ecase econstructor edestruct ediscriminate eelim eexact eexists einduction einjection eleft elim elimtype enough equality erewrite eright esimplify_eq esplit evar exact exactly_once exfalso exists f_equal fail field field_simplify field_simplify_eq first firstorder fix fold fourier functional generalize generalizing gfail give_up has_evar hnf idtac in induction injection instantiate intro intro_pattern intros intuition inversion inversion_clear is_evar is_var lapply lazy left lia lra move native_compute nia nsatz omega once pattern pose progress proof psatz quote record red refine reflexivity remember rename repeat replace revert revgoals rewrite rewrite_strat right ring ring_simplify rtauto set setoid_reflexivity setoid_replace setoid_rewrite setoid_symmetry setoid_transitivity shelve shelve_unifiable simpl simple simplify_eq solve specialize split split_Rabs split_Rmult stepl stepr subst sum swap symmetry tactic tauto time timeout top transitivity trivial try tryif unfold unify until using vm_compute with"
},
"contains": [
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"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
}
]
},
{
"className": "number",
"begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",
"relevance": 0
},
{
"className": "type",
"excludeBegin": true,
"begin": "\\|\\s*",
"end": "\\w+"
},
{
"begin": "[-=]>"
}
]
}
@@ -0,0 +1,105 @@
{
"case_insensitive": true,
"aliases": [
"cos",
"cls"
],
"keywords": "property parameter class classmethod clientmethod extends as break catch close continue do d|0 else elseif for goto halt hang h|0 if job j|0 kill k|0 lock l|0 merge new open quit q|0 read r|0 return set s|0 tcommit throw trollback try tstart use view while write w|0 xecute x|0 zkill znspace zn ztrap zwrite zw zzdump zzwrite print zbreak zinsert zload zprint zremove zsave zzprint mv mvcall mvcrt mvdim mvprint zquit zsync ascii",
"contains": [
{
"className": "number",
"begin": "\\b(\\d+(\\.\\d*)?|\\.\\d+)",
"relevance": 0
},
{
"className": "string",
"variants": [
{
"begin": "\"",
"end": "\"",
"contains": [
{
"begin": "\"\"",
"relevance": 0
}
]
}
]
},
{
"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
}
]
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#contains.2.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "comment",
"begin": ";",
"end": "$",
"relevance": 0
},
{
"className": "built_in",
"begin": "(?:\\$\\$?|\\.\\.)\\^?[a-zA-Z]+"
},
{
"className": "built_in",
"begin": "\\$\\$\\$[a-zA-Z]+"
},
{
"className": "built_in",
"begin": "%[a-z]+(?:\\.[a-z]+)*"
},
{
"className": "symbol",
"begin": "\\^%?[a-zA-Z][\\w]*"
},
{
"className": "keyword",
"begin": "##class|##super|#define|#dim"
},
{
"begin": "&sql\\(",
"end": "\\)",
"excludeBegin": true,
"excludeEnd": true,
"subLanguage": "sql"
},
{
"begin": "&(js|jscript|javascript)<",
"end": ">",
"excludeBegin": true,
"excludeEnd": true,
"subLanguage": "javascript"
},
{
"begin": "&html<\\s*<",
"end": ">\\s*>",
"subLanguage": "xml"
}
]
}
@@ -0,0 +1,334 @@
{
"aliases": [
"c",
"cc",
"h",
"c++",
"h++",
"hpp",
"hh",
"hxx",
"cxx"
],
"keywords": {
"keyword": "int float while private char char8_t char16_t char32_t catch import module export virtual operator sizeof dynamic_cast|10 typedef const_cast|10 const for static_cast|10 union namespace unsigned long volatile static protected bool template mutable if public friend do goto auto void enum else break extern using asm case typeid wchar_tshort reinterpret_cast|10 default double register explicit signed typename try this switch continue inline delete alignas alignof constexpr consteval constinit decltype concept co_await co_return co_yield requires noexcept static_assert thread_local restrict final override atomic_bool atomic_char atomic_schar atomic_uchar atomic_short atomic_ushort atomic_int atomic_uint atomic_long atomic_ulong atomic_llong atomic_ullong new throw return and and_eq bitand bitor compl not not_eq or or_eq xor xor_eq",
"built_in": "std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr _Bool complex _Complex imaginary _Imaginary",
"literal": "true false nullptr NULL"
},
"illegal": "<\/",
"contains": [
{
"variants": [
{
"begin": "=",
"end": ";"
},
{
"begin": "\\(",
"end": "\\)"
},
{
"beginKeywords": "new throw return else",
"end": ";"
}
],
"keywords": {
"$ref": "#keywords"
},
"contains": [
{
"className": "keyword",
"begin": "\\b[a-z\\d_]*_t\\b"
},
{
"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
}
]
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#contains.0.contains.1.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "number",
"variants": [
{
"begin": "\\b(0b[01']+)"
},
{
"begin": "(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)(u|U|l|L|ul|UL|f|F|b|B)"
},
{
"begin": "(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"
}
],
"relevance": 0
},
{
"className": "string",
"variants": [
{
"begin": "(u8?|U|L)?\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"begin": "(u8?|U|L)?'(\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)|.)",
"end": "'",
"illegal": "."
},
{
"begin": "(?:u8?|U|L)?R\"([^()\\\\ ]{0,16})\\((?:.|\\n)*?\\)\\1\""
}
]
},
{
"begin": "\\(",
"end": "\\)",
"keywords": {
"$ref": "#keywords"
},
"contains": [
{
"$ref": "#contains.0.contains.0"
},
{
"$ref": "#contains.0.contains.1"
},
{
"$ref": "#contains.0.contains.2"
},
{
"$ref": "#contains.0.contains.3"
},
{
"$ref": "#contains.0.contains.4"
},
"self"
],
"relevance": 0
}
],
"relevance": 0
},
{
"className": "function",
"begin": "((decltype\\(auto\\)|(?:[a-zA-Z_]\\w*::)?[a-zA-Z_]\\w*(?:<.*?>)?)[\\*&\\s]+)+(?:[a-zA-Z_]\\w*::)?[a-zA-Z]\\w*\\s*\\(",
"returnBegin": true,
"end": "[{;=]",
"excludeEnd": true,
"keywords": {
"$ref": "#keywords"
},
"illegal": "[^\\w\\s\\*&:<>]",
"contains": [
{
"begin": "decltype\\(auto\\)",
"keywords": {
"$ref": "#keywords"
},
"relevance": 0
},
{
"begin": "(?:[a-zA-Z_]\\w*::)?[a-zA-Z]\\w*\\s*\\(",
"returnBegin": true,
"contains": [
{
"className": "title",
"begin": "(?:[a-zA-Z_]\\w*::)?[a-zA-Z]\\w*",
"relevance": 0
}
],
"relevance": 0
},
{
"className": "params",
"begin": "\\(",
"end": "\\)",
"keywords": {
"$ref": "#keywords"
},
"relevance": 0,
"contains": [
{
"$ref": "#contains.0.contains.1"
},
{
"$ref": "#contains.0.contains.2"
},
{
"$ref": "#contains.0.contains.4"
},
{
"$ref": "#contains.0.contains.3"
},
{
"$ref": "#contains.0.contains.0"
},
{
"begin": "\\(",
"end": "\\)",
"keywords": {
"$ref": "#keywords"
},
"relevance": 0,
"contains": [
"self",
{
"$ref": "#contains.0.contains.1"
},
{
"$ref": "#contains.0.contains.2"
},
{
"$ref": "#contains.0.contains.4"
},
{
"$ref": "#contains.0.contains.3"
},
{
"$ref": "#contains.0.contains.0"
}
]
}
]
},
{
"$ref": "#contains.0.contains.0"
},
{
"$ref": "#contains.0.contains.1"
},
{
"$ref": "#contains.0.contains.2"
},
{
"className": "meta",
"begin": "#\\s*[a-z]+\\b",
"end": "$",
"keywords": {
"meta-keyword": "if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"
},
"contains": [
{
"begin": "\\\\\\n",
"relevance": 0
},
{
"className": "meta-string",
"variants": {
"$ref": "#contains.0.contains.4.variants"
}
},
{
"className": "meta-string",
"begin": "<.*?>",
"end": "$",
"illegal": "\\n"
},
{
"$ref": "#contains.0.contains.1"
},
{
"$ref": "#contains.0.contains.2"
}
]
}
]
},
{
"$ref": "#contains.0.contains.0"
},
{
"$ref": "#contains.0.contains.1"
},
{
"$ref": "#contains.0.contains.2"
},
{
"$ref": "#contains.0.contains.3"
},
{
"$ref": "#contains.0.contains.4"
},
{
"$ref": "#contains.1.contains.6"
},
{
"begin": "\\b(deque|list|queue|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array)\\s*<",
"end": ">",
"keywords": {
"$ref": "#keywords"
},
"contains": [
"self",
{
"$ref": "#contains.0.contains.0"
}
]
},
{
"begin": "[a-zA-Z]\\w*::",
"keywords": {
"$ref": "#keywords"
}
},
{
"className": "class",
"beginKeywords": "class struct",
"end": "[{;:]",
"contains": [
{
"begin": "<",
"end": ">",
"contains": [
"self"
]
},
{
"className": "title",
"begin": "[a-zA-Z]\\w*",
"relevance": 0
}
]
}
],
"exports": {
"preprocessor": {
"$ref": "#contains.1.contains.6"
},
"strings": {
"$ref": "#contains.0.contains.4"
},
"keywords": {
"$ref": "#keywords"
}
}
}
@@ -0,0 +1,101 @@
{
"aliases": [
"crm",
"pcmk"
],
"case_insensitive": true,
"keywords": {
"keyword": "params meta operations op rule attributes utilization 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 \\ number string",
"literal": "Master Started Slave Stopped start promote demote stop monitor true false"
},
"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
}
]
},
{
"beginKeywords": "node",
"starts": {
"end": "\\s*([\\w_\\-]+:)?",
"starts": {
"className": "title",
"end": "\\s*[\\$\\w_][\\w_\\-]*"
}
}
},
{
"beginKeywords": "primitive rsc_template",
"starts": {
"className": "title",
"end": "\\s*[\\$\\w_][\\w_\\-]*",
"starts": {
"end": "\\s*@?[\\w_][\\w_\\.:-]*"
}
}
},
{
"begin": "\\b(group|clone|ms|master|location|colocation|order|fencing_topology|rsc_ticket|acl_target|acl_group|user|role|tag|xml)\\s+",
"keywords": "group clone ms master location colocation order fencing_topology rsc_ticket acl_target acl_group user role tag xml",
"starts": {
"className": "title",
"end": "[\\$\\w_][\\w_\\-]*"
}
},
{
"beginKeywords": "property rsc_defaults op_defaults",
"starts": {
"className": "title",
"end": "\\s*([\\w_\\-]+:)?"
}
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "meta",
"begin": "(ocf|systemd|service|lsb):[\\w_:-]+",
"relevance": 0
},
{
"className": "number",
"begin": "\\b\\d+(\\.\\d+)?(ms|s|h|m)?",
"relevance": 0
},
{
"className": "literal",
"begin": "[-]?(infinity|inf)",
"relevance": 0
},
{
"className": "attr",
"begin": "([A-Za-z\\$_\\#][\\w_\\-]+)=",
"relevance": 0
},
{
"className": "tag",
"begin": "<\/?",
"end": "\/?>",
"relevance": 0
}
]
}
@@ -0,0 +1,482 @@
{
"aliases": [
"cr"
],
"lexemes": "[a-zA-Z_]\\w*[!?=]?",
"keywords": {
"keyword": "abstract alias annotation as as? asm begin break case class def do else elsif end ensure enum extend for fun if include instance_sizeof is_a? lib macro module next nil? of out pointerof private protected rescue responds_to? return require select self sizeof struct super then type typeof union uninitialized unless until verbatim when while with yield __DIR__ __END_LINE__ __FILE__ __LINE__",
"literal": "false nil true"
},
"contains": [
{
"className": "template-variable",
"variants": [
{
"begin": "\\{\\{",
"end": "\\}\\}"
},
{
"begin": "\\{%",
"end": "%\\}"
}
],
"keywords": {
"$ref": "#keywords"
},
"contains": [
{
"className": "string",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
},
{
"className": "subst",
"begin": "#{",
"end": "}",
"keywords": {
"$ref": "#keywords"
},
"contains": {
"$ref": "#contains"
}
}
],
"variants": [
{
"begin": "'",
"end": "'"
},
{
"begin": "\"",
"end": "\""
},
{
"begin": "`",
"end": "`"
},
{
"begin": "%[Qwi]?\\(",
"end": "\\)",
"contains": [
{
"begin": "\\(",
"end": "\\)",
"contains": {
"$ref": "#contains.0.contains.0.variants.3.contains"
}
}
]
},
{
"begin": "%[Qwi]?\\[",
"end": "\\]",
"contains": [
{
"begin": "\\[",
"end": "\\]",
"contains": {
"$ref": "#contains.0.contains.0.variants.4.contains"
}
}
]
},
{
"begin": "%[Qwi]?{",
"end": "}",
"contains": [
{
"begin": "{",
"end": "}",
"contains": {
"$ref": "#contains.0.contains.0.variants.5.contains"
}
}
]
},
{
"begin": "%[Qwi]?<",
"end": ">",
"contains": [
{
"begin": "<",
"end": ">",
"contains": {
"$ref": "#contains.0.contains.0.variants.6.contains"
}
}
]
},
{
"begin": "%[Qwi]?\\|",
"end": "\\|"
},
{
"begin": "<<-\\w+$",
"end": "^\\s*\\w+$"
}
],
"relevance": 0
},
{
"className": "string",
"variants": [
{
"begin": "%q\\(",
"end": "\\)",
"contains": [
{
"begin": "\\(",
"end": "\\)",
"contains": {
"$ref": "#contains.0.contains.1.variants.0.contains"
}
}
]
},
{
"begin": "%q\\[",
"end": "\\]",
"contains": [
{
"begin": "\\[",
"end": "\\]",
"contains": {
"$ref": "#contains.0.contains.1.variants.1.contains"
}
}
]
},
{
"begin": "%q{",
"end": "}",
"contains": [
{
"begin": "{",
"end": "}",
"contains": {
"$ref": "#contains.0.contains.1.variants.2.contains"
}
}
]
},
{
"begin": "%q<",
"end": ">",
"contains": [
{
"begin": "<",
"end": ">",
"contains": {
"$ref": "#contains.0.contains.1.variants.3.contains"
}
}
]
},
{
"begin": "%q\\|",
"end": "\\|"
},
{
"begin": "<<-'\\w+'$",
"end": "^\\s*\\w+$"
}
],
"relevance": 0
},
{
"className": "regexp",
"contains": [
{
"$ref": "#contains.0.contains.0.contains.0"
},
{
"$ref": "#contains.0.contains.0.contains.1"
}
],
"variants": [
{
"begin": "%r\\(",
"end": "\\)",
"contains": [
{
"begin": "\\(",
"end": "\\)",
"contains": {
"$ref": "#contains.0.contains.2.variants.0.contains"
}
}
]
},
{
"begin": "%r\\[",
"end": "\\]",
"contains": [
{
"begin": "\\[",
"end": "\\]",
"contains": {
"$ref": "#contains.0.contains.2.variants.1.contains"
}
}
]
},
{
"begin": "%r{",
"end": "}",
"contains": [
{
"begin": "{",
"end": "}",
"contains": {
"$ref": "#contains.0.contains.2.variants.2.contains"
}
}
]
},
{
"begin": "%r<",
"end": ">",
"contains": [
{
"begin": "<",
"end": ">",
"contains": {
"$ref": "#contains.0.contains.2.variants.3.contains"
}
}
]
},
{
"begin": "%r\\|",
"end": "\\|"
}
],
"relevance": 0
},
{
"begin": "(?!%})(!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|\/=|\/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~|\\n|\\b(case|if|select|unless|until|when|while)\\b)\\s*",
"keywords": "case if select unless until when while",
"contains": [
{
"className": "regexp",
"contains": [
{
"$ref": "#contains.0.contains.0.contains.0"
},
{
"$ref": "#contains.0.contains.0.contains.1"
}
],
"variants": [
{
"begin": "\/\/[a-z]*",
"relevance": 0
},
{
"begin": "\/(?!\\\/)",
"end": "\/[a-z]*"
}
]
}
],
"relevance": 0
},
{
"className": "meta",
"begin": "@\\[",
"end": "\\]",
"contains": [
{
"className": "meta-string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.0.contains.0.contains.0"
}
]
}
]
},
{
"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
}
]
},
{
"className": "class",
"beginKeywords": "class module struct",
"end": "$|;",
"illegal": "=",
"contains": [
{
"$ref": "#contains.0.contains.5"
},
{
"className": "title",
"begin": "[A-Za-z_]\\w*(::\\w+)*(\\?|\\!)?",
"relevance": 0
},
{
"begin": "<"
}
]
},
{
"className": "class",
"beginKeywords": "lib enum union",
"end": "$|;",
"illegal": "=",
"contains": [
{
"$ref": "#contains.0.contains.5"
},
{
"className": "title",
"begin": "[A-Za-z_]\\w*(::\\w+)*(\\?|\\!)?",
"relevance": 0
}
],
"relevance": 10
},
{
"beginKeywords": "annotation",
"end": "$|;",
"illegal": "=",
"contains": [
{
"$ref": "#contains.0.contains.5"
},
{
"className": "title",
"begin": "[A-Za-z_]\\w*(::\\w+)*(\\?|\\!)?",
"relevance": 0
}
],
"relevance": 10
},
{
"className": "function",
"beginKeywords": "def",
"end": "\\B\\b",
"contains": [
{
"className": "title",
"begin": "[a-zA-Z_]\\w*[!?=]?|[-+~]\\@|<<|>>|[=!]~|===?|<=>|[<>]=?|\\*\\*|[-\/+%^&*~|]|\/\/|\/\/=|&[-+*]=?|&\\*\\*|\\[\\][=?]?",
"relevance": 0,
"endsParent": true
}
]
},
{
"className": "function",
"beginKeywords": "fun macro",
"end": "\\B\\b",
"contains": [
{
"className": "title",
"begin": "[a-zA-Z_]\\w*[!?=]?|[-+~]\\@|<<|>>|[=!]~|===?|<=>|[<>]=?|\\*\\*|[-\/+%^&*~|]|\/\/|\/\/=|&[-+*]=?|&\\*\\*|\\[\\][=?]?",
"relevance": 0,
"endsParent": true
}
],
"relevance": 5
},
{
"className": "symbol",
"begin": "[a-zA-Z_]\\w*(\\!|\\?)?:",
"relevance": 0
},
{
"className": "symbol",
"begin": ":",
"contains": [
{
"$ref": "#contains.0.contains.0"
},
{
"begin": "[a-zA-Z_]\\w*[!?=]?|[-+~]\\@|<<|>>|[=!]~|===?|<=>|[<>]=?|\\*\\*|[-\/+%^&*~|]|\/\/|\/\/=|&[-+*]=?|&\\*\\*|\\[\\][=?]?"
}
],
"relevance": 0
},
{
"className": "number",
"variants": [
{
"begin": "\\b0b([01_]+)(_*[ui](8|16|32|64|128))?"
},
{
"begin": "\\b0o([0-7_]+)(_*[ui](8|16|32|64|128))?"
},
{
"begin": "\\b0x([A-Fa-f0-9_]+)(_*[ui](8|16|32|64|128))?"
},
{
"begin": "\\b([1-9][0-9_]*[0-9]|[0-9])(\\.[0-9][0-9_]*)?([eE]_*[-+]?[0-9_]*)?(_*f(32|64))?(?!_)"
},
{
"begin": "\\b([1-9][0-9_]*|0)(_*[ui](8|16|32|64|128))?"
}
],
"relevance": 0
}
]
},
{
"$ref": "#contains.0.contains.0"
},
{
"$ref": "#contains.0.contains.1"
},
{
"$ref": "#contains.0.contains.2"
},
{
"$ref": "#contains.0.contains.3"
},
{
"$ref": "#contains.0.contains.4"
},
{
"$ref": "#contains.0.contains.5"
},
{
"$ref": "#contains.0.contains.6"
},
{
"$ref": "#contains.0.contains.7"
},
{
"$ref": "#contains.0.contains.8"
},
{
"$ref": "#contains.0.contains.9"
},
{
"$ref": "#contains.0.contains.10"
},
{
"$ref": "#contains.0.contains.11"
},
{
"$ref": "#contains.0.contains.12"
},
{
"$ref": "#contains.0.contains.13"
}
]
}
@@ -0,0 +1,364 @@
{
"aliases": [
"csharp",
"c#"
],
"keywords": {
"keyword": "abstract as base bool break byte case catch char checked const continue decimal default delegate do double enum event explicit extern finally fixed float for foreach goto if implicit in int interface internal is lock long object operator out override params private protected public readonly ref sbyte sealed short sizeof stackalloc static string struct switch this try typeof uint ulong unchecked unsafe ushort using virtual void volatile while add alias ascending async await by descending dynamic equals from get global group into join let nameof on orderby partial remove select set value var when where yield",
"literal": "null false true"
},
"illegal": "::",
"contains": [
{
"className": "comment",
"begin": "\/\/\/",
"end": "$",
"contains": [
{
"className": "doctag",
"variants": [
{
"begin": "\/\/\/",
"relevance": 0
},
{
"begin": "<!--|-->"
},
{
"begin": "<\/?",
"end": ">"
}
]
},
{
"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
}
],
"returnBegin": true
},
{
"className": "comment",
"begin": "\/\/",
"end": "$",
"contains": [
{
"$ref": "#contains.0.contains.1"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#contains.0.contains.1"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "meta",
"begin": "#",
"end": "$",
"keywords": {
"meta-keyword": "if else elif endif define undef warning error line region endregion pragma checksum"
}
},
{
"variants": [
{
"className": "string",
"begin": "\\$@\"",
"end": "\"",
"contains": [
{
"begin": "{{"
},
{
"begin": "}}"
},
{
"begin": "\"\""
},
{
"className": "subst",
"begin": "{",
"end": "}",
"keywords": {
"$ref": "#keywords"
},
"contains": [
{
"$ref": "#contains.4.variants.0"
},
{
"className": "string",
"begin": "\\$\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"begin": "{{"
},
{
"begin": "}}"
},
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
},
{
"className": "subst",
"begin": "{",
"end": "}",
"keywords": {
"$ref": "#keywords"
},
"illegal": "\\n",
"contains": [
{
"className": "string",
"begin": "\\$@\"",
"end": "\"",
"contains": [
{
"begin": "{{"
},
{
"begin": "}}"
},
{
"begin": "\"\""
},
{
"$ref": "#contains.4.variants.0.contains.3.contains.1.contains.3"
}
],
"illegal": "\\n"
},
{
"$ref": "#contains.4.variants.0.contains.3.contains.1"
},
{
"className": "string",
"begin": "@\"",
"end": "\"",
"contains": [
{
"begin": "\"\""
}
],
"illegal": "\\n"
},
{
"className": "string",
"begin": "'",
"end": "'",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.4.variants.0.contains.3.contains.1.contains.2"
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.4.variants.0.contains.3.contains.1.contains.2"
}
]
},
{
"className": "number",
"variants": [
{
"begin": "\\b(0b[01']+)"
},
{
"begin": "(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)(u|U|l|L|ul|UL|f|F|b|B)"
},
{
"begin": "(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"
}
],
"relevance": 0
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": {
"$ref": "#contains.2.contains"
},
"illegal": "\\n"
}
]
}
]
},
{
"className": "string",
"begin": "@\"",
"end": "\"",
"contains": {
"$ref": "#contains.4.variants.0.contains.3.contains.1.contains.3.contains.2.contains"
}
},
{
"$ref": "#contains.4.variants.0.contains.3.contains.1.contains.3.contains.3"
},
{
"$ref": "#contains.4.variants.0.contains.3.contains.1.contains.3.contains.4"
},
{
"$ref": "#contains.4.variants.0.contains.3.contains.1.contains.3.contains.5"
},
{
"$ref": "#contains.2"
}
]
}
]
},
{
"$ref": "#contains.4.variants.0.contains.3.contains.1"
},
{
"$ref": "#contains.4.variants.0.contains.3.contains.2"
},
{
"$ref": "#contains.4.variants.0.contains.3.contains.1.contains.3.contains.3"
},
{
"$ref": "#contains.4.variants.0.contains.3.contains.1.contains.3.contains.4"
}
]
},
{
"$ref": "#contains.4.variants.0.contains.3.contains.1.contains.3.contains.5"
},
{
"beginKeywords": "class interface",
"end": "[{;=]",
"illegal": "[^\\s:,]",
"contains": [
{
"className": "title",
"begin": "[a-zA-Z]\\w*",
"relevance": 0
},
{
"$ref": "#contains.1"
},
{
"$ref": "#contains.2"
}
]
},
{
"beginKeywords": "namespace",
"end": "[{;=]",
"illegal": "[^\\s:]",
"contains": [
{
"className": "title",
"begin": "[a-zA-Z](\\.?\\w)*",
"relevance": 0
},
{
"$ref": "#contains.1"
},
{
"$ref": "#contains.2"
}
]
},
{
"className": "meta",
"begin": "^\\s*\\[",
"excludeBegin": true,
"end": "\\]",
"excludeEnd": true,
"contains": [
{
"className": "meta-string",
"begin": "\"",
"end": "\""
}
]
},
{
"beginKeywords": "new return throw await else",
"relevance": 0
},
{
"className": "function",
"begin": "([a-zA-Z]\\w*(<[a-zA-Z]\\w*(\\s*,\\s*[a-zA-Z]\\w*)*>)?(\\[\\])?\\s+)+[a-zA-Z]\\w*\\s*\\(",
"returnBegin": true,
"end": "\\s*[{;=]",
"excludeEnd": true,
"keywords": {
"$ref": "#keywords"
},
"contains": [
{
"begin": "[a-zA-Z]\\w*\\s*\\(",
"returnBegin": true,
"contains": [
{
"$ref": "#contains.6.contains.0"
}
],
"relevance": 0
},
{
"className": "params",
"begin": "\\(",
"end": "\\)",
"excludeBegin": true,
"excludeEnd": true,
"keywords": {
"$ref": "#keywords"
},
"relevance": 0,
"contains": [
{
"$ref": "#contains.4"
},
{
"$ref": "#contains.4.variants.0.contains.3.contains.1.contains.3.contains.5"
},
{
"$ref": "#contains.2"
}
]
},
{
"$ref": "#contains.1"
},
{
"$ref": "#contains.2"
}
]
}
]
}
@@ -0,0 +1,20 @@
{
"case_insensitive": false,
"lexemes": "[a-zA-Z][a-zA-Z0-9_\\-]*",
"keywords": {
"keyword": "base-uri child-src connect-src default-src font-src form-action frame-ancestors frame-src img-src media-src object-src plugin-types report-uri sandbox script-src style-src"
},
"contains": [
{
"className": "string",
"begin": "'",
"end": "'"
},
{
"className": "attribute",
"begin": "^Content",
"end": ":",
"excludeEnd": true
}
]
}
@@ -0,0 +1,185 @@
{
"case_insensitive": true,
"illegal": "[=\\\/|'\\$]",
"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
}
]
},
{
"className": "selector-id",
"begin": "#[A-Za-z0-9_\\-]+"
},
{
"className": "selector-class",
"begin": "\\.[A-Za-z0-9_\\-]+"
},
{
"className": "selector-attr",
"begin": "\\[",
"end": "\\]",
"illegal": "$",
"contains": [
{
"className": "string",
"begin": "'",
"end": "'",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.3.contains.0.contains.0"
}
]
}
]
},
{
"className": "selector-pseudo",
"begin": ":(:)?[a-zA-Z0-9\\_\\-\\+\\(\\)\"'.]+"
},
{
"begin": "@(page|font-face)",
"lexemes": "@[a-z\\-]+",
"keywords": "@page @font-face"
},
{
"begin": "@",
"end": "[{;]",
"illegal": ":",
"returnBegin": true,
"contains": [
{
"className": "keyword",
"begin": "@\\-?\\w[\\w]*(\\-\\w+)*"
},
{
"begin": "\\s",
"endsWithParent": true,
"excludeEnd": true,
"relevance": 0,
"keywords": "and or not only",
"contains": [
{
"begin": "[a-z\\-]+:",
"className": "attribute"
},
{
"$ref": "#contains.3.contains.0"
},
{
"$ref": "#contains.3.contains.1"
},
{
"className": "number",
"begin": "\\b\\d+(\\.\\d+)?(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",
"relevance": 0
}
]
}
]
},
{
"className": "selector-tag",
"begin": "[a-zA-Z\\-][a-zA-Z0-9_\\-]*",
"relevance": 0
},
{
"begin": "{",
"end": "}",
"illegal": "\\S",
"contains": [
{
"$ref": "#contains.0"
},
{
"begin": "(?:[A-Z\\_\\.\\-]+|--[a-zA-Z0-9_\\-]+)\\s*:",
"returnBegin": true,
"end": ";",
"endsWithParent": true,
"contains": [
{
"className": "attribute",
"begin": "\\S",
"end": ":",
"excludeEnd": true,
"starts": {
"endsWithParent": true,
"excludeEnd": true,
"contains": [
{
"begin": "[\\w\\-]+\\(",
"returnBegin": true,
"contains": [
{
"className": "built_in",
"begin": "[\\w\\-]+"
},
{
"begin": "\\(",
"end": "\\)",
"contains": [
{
"$ref": "#contains.3.contains.0"
},
{
"$ref": "#contains.3.contains.1"
},
{
"$ref": "#contains.6.contains.1.contains.3"
}
]
}
]
},
{
"$ref": "#contains.6.contains.1.contains.3"
},
{
"$ref": "#contains.3.contains.1"
},
{
"$ref": "#contains.3.contains.0"
},
{
"$ref": "#contains.0"
},
{
"className": "number",
"begin": "#[0-9A-Fa-f]+"
},
{
"className": "meta",
"begin": "!important"
}
]
}
}
]
}
]
}
]
}
@@ -0,0 +1,121 @@
{
"lexemes": "[a-zA-Z_]\\w*",
"keywords": {
"keyword": "abstract alias align asm assert auto body break byte case cast catch class const continue debug default delete deprecated do else enum export extern final finally for foreach foreach_reverse|10 goto if immutable import in inout int interface invariant is lazy macro mixin module new nothrow out override package pragma private protected public pure ref return scope shared static struct super switch synchronized template this throw try typedef typeid typeof union unittest version void volatile while with __FILE__ __LINE__ __gshared|10 __thread __traits __DATE__ __EOF__ __TIME__ __TIMESTAMP__ __VENDOR__ __VERSION__",
"built_in": "bool cdouble cent cfloat char creal dchar delegate double dstring float function idouble ifloat ireal long real short string ubyte ucent uint ulong ushort wchar wstring",
"literal": "false null true"
},
"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
}
]
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#contains.0.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "comment",
"begin": "\\\/\\+",
"end": "\\+\\\/",
"contains": [
"self",
{
"$ref": "#contains.0.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
],
"relevance": 10
},
{
"className": "string",
"begin": "x\"[\\da-fA-F\\s\\n\\r]*\"[cwd]?",
"relevance": 10
},
{
"className": "string",
"begin": "\"",
"contains": [
{
"begin": "\\\\(['\"\\?\\\\abfnrtv]|u[\\dA-Fa-f]{4}|[0-7]{1,3}|x[\\dA-Fa-f]{2}|U[\\dA-Fa-f]{8})|&[a-zA-Z\\d]{2,};",
"relevance": 0
}
],
"end": "\"[cwd]?"
},
{
"className": "string",
"begin": "[rq]\"",
"end": "\"[cwd]?",
"relevance": 5
},
{
"className": "string",
"begin": "`",
"end": "`[cwd]?"
},
{
"className": "string",
"begin": "q\"\\{",
"end": "\\}\""
},
{
"className": "number",
"begin": "\\b(((0[xX](([\\da-fA-F][\\da-fA-F_]*|_[\\da-fA-F][\\da-fA-F_]*)\\.([\\da-fA-F][\\da-fA-F_]*|_[\\da-fA-F][\\da-fA-F_]*)|\\.?([\\da-fA-F][\\da-fA-F_]*|_[\\da-fA-F][\\da-fA-F_]*))[pP][+-]?(0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d))|((0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d)(\\.\\d*|([eE][+-]?(0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d)))|\\d+\\.(0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d)(0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d)|\\.(0|[1-9][\\d_]*)([eE][+-]?(0|[1-9][\\d_]*|\\d[\\d_]*|[\\d_]+?\\d))?))([fF]|L|i|[fF]i|Li)?|((0|[1-9][\\d_]*)|0[bB][01_]+|0[xX]([\\da-fA-F][\\da-fA-F_]*|_[\\da-fA-F][\\da-fA-F_]*))(i|[fF]i|Li))",
"relevance": 0
},
{
"className": "number",
"begin": "\\b((0|[1-9][\\d_]*)|0[bB][01_]+|0[xX]([\\da-fA-F][\\da-fA-F_]*|_[\\da-fA-F][\\da-fA-F_]*))(L|u|U|Lu|LU|uL|UL)?",
"relevance": 0
},
{
"className": "string",
"begin": "'(\\\\(['\"\\?\\\\abfnrtv]|u[\\dA-Fa-f]{4}|[0-7]{1,3}|x[\\dA-Fa-f]{2}|U[\\dA-Fa-f]{8})|&[a-zA-Z\\d]{2,};|.)",
"end": "'",
"illegal": "."
},
{
"className": "meta",
"begin": "^#!",
"end": "$",
"relevance": 5
},
{
"className": "meta",
"begin": "#(line)",
"end": "$",
"relevance": 5
},
{
"className": "keyword",
"begin": "@[a-zA-Z_][a-zA-Z_\\d]*"
}
]
}
@@ -0,0 +1,208 @@
{
"keywords": {
"keyword": "abstract as assert async await break case catch class const continue covariant default deferred do dynamic else enum export extends extension external factory false final finally for Function get hide if implements import in inferface is library mixin new null on operator part rethrow return set show static super switch sync this throw true try typedef var void while with yield",
"built_in": "Comparable DateTime Duration Function Iterable Iterator List Map Match Null Object Pattern RegExp Set Stopwatch String StringBuffer StringSink Symbol Type Uri bool double dynamic int num print Element ElementList document querySelector querySelectorAll window"
},
"contains": [
{
"className": "string",
"variants": [
{
"begin": "r'''",
"end": "'''"
},
{
"begin": "r\"\"\"",
"end": "\"\"\""
},
{
"begin": "r'",
"end": "'",
"illegal": "\\n"
},
{
"begin": "r\"",
"end": "\"",
"illegal": "\\n"
},
{
"begin": "'''",
"end": "'''",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
},
{
"className": "subst",
"variants": [
{
"begin": "\\$[A-Za-z0-9_]+"
}
]
},
{
"className": "subst",
"variants": [
{
"begin": "\\${",
"end": "}"
}
],
"keywords": "true false null this is new super",
"contains": [
{
"className": "number",
"begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",
"relevance": 0
},
{
"$ref": "#contains.0"
}
]
}
]
},
{
"begin": "\"\"\"",
"end": "\"\"\"",
"contains": [
{
"$ref": "#contains.0.variants.4.contains.0"
},
{
"$ref": "#contains.0.variants.4.contains.1"
},
{
"$ref": "#contains.0.variants.4.contains.2"
}
]
},
{
"begin": "'",
"end": "'",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.0.variants.4.contains.0"
},
{
"$ref": "#contains.0.variants.4.contains.1"
},
{
"$ref": "#contains.0.variants.4.contains.2"
}
]
},
{
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.0.variants.4.contains.0"
},
{
"$ref": "#contains.0.variants.4.contains.1"
},
{
"$ref": "#contains.0.variants.4.contains.2"
}
]
}
]
},
{
"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
}
],
"subLanguage": "markdown"
},
{
"className": "comment",
"begin": "\/\/\/+\\s*",
"end": "$",
"contains": [
{
"subLanguage": "markdown",
"begin": ".",
"end": "$"
},
{
"$ref": "#contains.1.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "comment",
"begin": "\/\/",
"end": "$",
"contains": [
{
"$ref": "#contains.1.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#contains.1.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "class",
"beginKeywords": "class interface",
"end": "{",
"excludeEnd": true,
"contains": [
{
"beginKeywords": "extends implements"
},
{
"className": "title",
"begin": "[a-zA-Z_]\\w*",
"relevance": 0
}
]
},
{
"$ref": "#contains.0.variants.4.contains.2.contains.0"
},
{
"className": "meta",
"begin": "@[A-Za-z]+"
},
{
"begin": "=>"
}
]
}
@@ -0,0 +1,156 @@
{
"aliases": [
"dpr",
"dfm",
"pas",
"pascal",
"freepascal",
"lazarus",
"lpr",
"lfm"
],
"case_insensitive": true,
"keywords": "exports register file shl array record property for mod while set ally label uses raise not stored class safecall var interface or private static exit index inherited to else stdcall override shr asm far resourcestring finalization packed virtual out and protected library do xorwrite goto near function end div overload object unit begin string on inline repeat until destructor write message program with read initialization except default nil if case cdecl in downto threadvar of try pascal const external constructor type public then implementation finally published procedure absolute reintroduce operator as is abstract alias assembler bitpacked break continue cppdecl cvar enumerator experimental platform deprecated unimplemented dynamic export far16 forward generic helper implements interrupt iochecks local name nodefault noreturn nostackframe oldfpccall otherwise saveregisters softfloat specialize strict unaligned varargs ",
"illegal": "\"|\\$[G-Zg-z]|\\\/\\*|<\\\/|\\|",
"contains": [
{
"className": "string",
"begin": "'",
"end": "'",
"contains": [
{
"begin": "''"
}
]
},
{
"className": "string",
"begin": "(#\\d+)+"
},
{
"className": "number",
"begin": "\\b\\d+(\\.\\d+)?",
"relevance": 0
},
{
"begin": "[a-zA-Z]\\w*\\s*=\\s*class\\s*\\(",
"returnBegin": true,
"contains": [
{
"className": "title",
"begin": "[a-zA-Z]\\w*",
"relevance": 0
}
]
},
{
"className": "function",
"beginKeywords": "function constructor destructor procedure",
"end": "[:;]",
"keywords": "function constructor|10 destructor|10 procedure|10",
"contains": [
{
"$ref": "#contains.3.contains.0"
},
{
"className": "params",
"begin": "\\(",
"end": "\\)",
"keywords": "exports register file shl array record property for mod while set ally label uses raise not stored class safecall var interface or private static exit index inherited to else stdcall override shr asm far resourcestring finalization packed virtual out and protected library do xorwrite goto near function end div overload object unit begin string on inline repeat until destructor write message program with read initialization except default nil if case cdecl in downto threadvar of try pascal const external constructor type public then implementation finally published procedure absolute reintroduce operator as is abstract alias assembler bitpacked break continue cppdecl cvar enumerator experimental platform deprecated unimplemented dynamic export far16 forward generic helper implements interrupt iochecks local name nodefault noreturn nostackframe oldfpccall otherwise saveregisters softfloat specialize strict unaligned varargs ",
"contains": [
{
"$ref": "#contains.0"
},
{
"$ref": "#contains.1"
},
{
"className": "meta",
"variants": [
{
"begin": "\\{\\$",
"end": "\\}"
},
{
"begin": "\\(\\*\\$",
"end": "\\*\\)"
}
]
},
{
"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
}
]
},
{
"className": "comment",
"begin": "\\{",
"end": "\\}",
"contains": [
{
"$ref": "#contains.4.contains.1.contains.3.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
],
"relevance": 0
},
{
"className": "comment",
"begin": "\\(\\*",
"end": "\\*\\)",
"contains": [
{
"$ref": "#contains.4.contains.1.contains.3.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
],
"relevance": 10
}
]
},
{
"$ref": "#contains.4.contains.1.contains.2"
},
{
"$ref": "#contains.4.contains.1.contains.3"
},
{
"$ref": "#contains.4.contains.1.contains.4"
},
{
"$ref": "#contains.4.contains.1.contains.5"
}
]
},
{
"$ref": "#contains.4.contains.1.contains.2"
},
{
"$ref": "#contains.4.contains.1.contains.3"
},
{
"$ref": "#contains.4.contains.1.contains.4"
},
{
"$ref": "#contains.4.contains.1.contains.5"
}
]
}
@@ -0,0 +1,65 @@
{
"aliases": [
"patch"
],
"contains": [
{
"className": "meta",
"relevance": 10,
"variants": [
{
"begin": "^@@ +\\-\\d+,\\d+ +\\+\\d+,\\d+ +@@$"
},
{
"begin": "^\\*\\*\\* +\\d+,\\d+ +\\*\\*\\*\\*$"
},
{
"begin": "^\\-\\-\\- +\\d+,\\d+ +\\-\\-\\-\\-$"
}
]
},
{
"className": "comment",
"variants": [
{
"begin": "Index: ",
"end": "$"
},
{
"begin": "={3,}",
"end": "$"
},
{
"begin": "^\\-{3}",
"end": "$"
},
{
"begin": "^\\*{3} ",
"end": "$"
},
{
"begin": "^\\+{3}",
"end": "$"
},
{
"begin": "^\\*{15}$"
}
]
},
{
"className": "addition",
"begin": "^\\+",
"end": "$"
},
{
"className": "deletion",
"begin": "^\\-",
"end": "$"
},
{
"className": "addition",
"begin": "^\\!",
"end": "$"
}
]
}
@@ -0,0 +1,101 @@
{
"aliases": [
"jinja"
],
"case_insensitive": true,
"subLanguage": "xml",
"contains": [
{
"className": "comment",
"begin": "\\{%\\s*comment\\s*%}",
"end": "\\{%\\s*endcomment\\s*%}",
"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
}
]
},
{
"className": "comment",
"begin": "\\{#",
"end": "#}",
"contains": [
{
"$ref": "#contains.0.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "template-tag",
"begin": "\\{%",
"end": "%}",
"contains": [
{
"className": "name",
"begin": "\\w+",
"keywords": {
"name": "comment endcomment load templatetag ifchanged endifchanged if endif firstof for endfor ifnotequal endifnotequal widthratio extends include spaceless endspaceless regroup ifequal endifequal ssi now with cycle url filter endfilter debug block endblock else autoescape endautoescape csrf_token empty elif endwith static trans blocktrans endblocktrans get_static_prefix get_media_prefix plural get_current_language language get_available_languages get_current_language_bidi get_language_info get_language_info_list localize endlocalize localtime endlocaltime timezone endtimezone get_current_timezone verbatim"
},
"starts": {
"endsWithParent": true,
"keywords": "in by as",
"contains": [
{
"begin": "\\|[A-Za-z]+:?",
"keywords": {
"name": "truncatewords removetags linebreaksbr yesno get_digit timesince random striptags filesizeformat escape linebreaks length_is ljust rjust cut urlize fix_ampersands title floatformat capfirst pprint divisibleby add make_list unordered_list urlencode timeuntil urlizetrunc wordcount stringformat linenumbers slice date dictsort dictsortreversed default_if_none pluralize lower join center default truncatewords_html upper length phone2numeric wordwrap time addslashes slugify first escapejs force_escape iriencode last safe safeseq truncatechars localize unlocalize localtime utc timezone"
},
"contains": [
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "'",
"end": "'",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.2.contains.0.starts.contains.0.contains.0.contains.0"
}
]
}
]
}
],
"relevance": 0
}
}
]
},
{
"className": "template-variable",
"begin": "\\{\\{",
"end": "}}",
"contains": [
{
"$ref": "#contains.2.contains.0.starts.contains.0"
}
]
}
]
}
@@ -0,0 +1,44 @@
{
"aliases": [
"bind",
"zone"
],
"keywords": {
"keyword": "IN A AAAA AFSDB APL CAA CDNSKEY CDS CERT CNAME DHCID DLV DNAME DNSKEY DS HIP IPSECKEY KEY KX LOC MX NAPTR NS NSEC NSEC3 NSEC3PARAM PTR RRSIG RP SIG SOA SRV SSHFP TA TKEY TLSA TSIG TXT"
},
"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": "^\\$(TTL|GENERATE|INCLUDE|ORIGIN)\\b"
},
{
"className": "number",
"begin": "((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:)))\\b"
},
{
"className": "number",
"begin": "((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]).){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\b"
},
{
"className": "number",
"begin": "\\b\\d+[dhwm]?",
"relevance": 0
}
]
}
@@ -0,0 +1,60 @@
{
"aliases": [
"docker"
],
"case_insensitive": true,
"keywords": "from maintainer expose env arg user onbuild stopsignal",
"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
}
]
},
{
"className": "string",
"begin": "'",
"end": "'",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.1.contains.0"
}
]
},
{
"className": "number",
"begin": "\\b\\d+(\\.\\d+)?",
"relevance": 0
},
{
"beginKeywords": "run cmd entrypoint volume add copy workdir label healthcheck shell",
"starts": {
"end": "[^\\\\]$",
"subLanguage": "bash"
}
}
],
"illegal": "<\/"
}
@@ -0,0 +1,54 @@
{
"aliases": [
"bat",
"cmd"
],
"case_insensitive": true,
"illegal": "\\\/\\*",
"keywords": {
"keyword": "if else goto for in do call exit not exist errorlevel defined equ neq lss leq gtr geq",
"built_in": "prn nul lpt3 lpt2 lpt1 con com4 com3 com2 com1 aux shift cd dir echo setlocal endlocal set pause copy append assoc at attrib break cacls cd chcp chdir chkdsk chkntfs cls cmd color comp compact convert date dir diskcomp diskcopy doskey erase fs find findstr format ftype graftabl help keyb label md mkdir mode more move path pause print popd pushd promt rd recover rem rename replace restore rmdir shiftsort start subst time title tree type ver verify vol ping net ipconfig taskkill xcopy ren del"
},
"contains": [
{
"className": "variable",
"begin": "%%[^ ]|%[^ ]+?%|![^ ]+?!"
},
{
"className": "function",
"begin": "^\\s*[A-Za-z._?][A-Za-z0-9_$#@~.?]*(:|\\s+label)",
"end": "goto:eof",
"contains": [
{
"className": "title",
"begin": "([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*",
"relevance": 0
},
{
"className": "comment",
"begin": "^\\s*@?rem\\b",
"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": 10
}
]
},
{
"className": "number",
"begin": "\\b\\d+",
"relevance": 0
},
{
"$ref": "#contains.1.contains.1"
}
]
}
@@ -0,0 +1,63 @@
{
"keywords": "dsconfig",
"contains": [
{
"className": "keyword",
"begin": "^dsconfig",
"end": "\\s",
"excludeEnd": true,
"relevance": 10
},
{
"className": "built_in",
"begin": "(list|create|get|set|delete)-(\\w+)",
"end": "\\s",
"excludeEnd": true,
"illegal": "!@#$%^&*()",
"relevance": 10
},
{
"className": "built_in",
"begin": "--(\\w+)",
"end": "\\s",
"excludeEnd": true
},
{
"className": "string",
"begin": "\"",
"end": "\""
},
{
"className": "string",
"begin": "'",
"end": "'"
},
{
"className": "string",
"begin": "[\\w\\-?]+:\\w+",
"end": "\\W",
"relevance": 0
},
{
"className": "string",
"begin": "\\w+-?\\w+",
"end": "\\W",
"relevance": 0
},
{
"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
}
]
}
]
}
@@ -0,0 +1,193 @@
{
"keywords": "",
"contains": [
{
"className": "class",
"begin": "\/\\s*{",
"end": "};",
"relevance": 10,
"contains": [
{
"className": "variable",
"begin": "\\&[a-z\\d_]*\\b"
},
{
"className": "meta-keyword",
"begin": "\/[a-z][a-z\\d\\-]*\/"
},
{
"className": "symbol",
"begin": "^\\s*[a-zA-Z_][a-zA-Z\\d_]*:"
},
{
"className": "class",
"begin": "[a-zA-Z_][a-zA-Z\\d_@]*\\s{",
"end": "[{;=]",
"returnBegin": true,
"excludeEnd": true
},
{
"className": "params",
"begin": "<",
"end": ">",
"contains": [
{
"className": "number",
"variants": [
{
"begin": "\\b(\\d+(\\.\\d*)?|\\.\\d+)(u|U|l|L|ul|UL|f|F)"
},
{
"begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)"
}
],
"relevance": 0
},
{
"$ref": "#contains.0.contains.0"
}
]
},
{
"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
}
]
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#contains.0.contains.5.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"$ref": "#contains.0.contains.4.contains.0"
},
{
"className": "string",
"variants": [
{
"className": "string",
"begin": "((u8?|U)|L)?\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"begin": "(u8?|U)?R\"",
"end": "\"",
"contains": [
{
"$ref": "#contains.0.contains.8.variants.0.contains.0"
}
]
},
{
"begin": "'\\\\?.",
"end": "'",
"illegal": "."
}
]
}
]
},
{
"$ref": "#contains.0.contains.0"
},
{
"$ref": "#contains.0.contains.1"
},
{
"$ref": "#contains.0.contains.2"
},
{
"$ref": "#contains.0.contains.3"
},
{
"$ref": "#contains.0.contains.4"
},
{
"$ref": "#contains.0.contains.5"
},
{
"$ref": "#contains.0.contains.6"
},
{
"$ref": "#contains.0.contains.4.contains.0"
},
{
"$ref": "#contains.0.contains.8"
},
{
"className": "meta",
"begin": "#",
"end": "$",
"keywords": {
"meta-keyword": "if else elif endif define undef ifdef ifndef"
},
"contains": [
{
"begin": "\\\\\\n",
"relevance": 0
},
{
"beginKeywords": "include",
"end": "$",
"keywords": {
"meta-keyword": "include"
},
"contains": [
{
"className": "meta-string",
"variants": {
"$ref": "#contains.0.contains.8.variants"
}
},
{
"className": "meta-string",
"begin": "<",
"end": ">",
"illegal": "\\n"
}
]
},
{
"$ref": "#contains.0.contains.8"
},
{
"$ref": "#contains.0.contains.5"
},
{
"$ref": "#contains.0.contains.6"
}
]
},
{
"begin": "[a-zA-Z]\\w*::",
"keywords": ""
}
]
}
@@ -0,0 +1,46 @@
{
"aliases": [
"dst"
],
"case_insensitive": true,
"subLanguage": "xml",
"contains": [
{
"className": "template-tag",
"begin": "\\{[#\\\/]",
"end": "\\}",
"illegal": ";",
"contains": [
{
"className": "name",
"begin": "[a-zA-Z\\.-]+",
"starts": {
"endsWithParent": true,
"relevance": 0,
"contains": [
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
}
]
}
}
]
},
{
"className": "template-variable",
"begin": "\\{",
"end": "\\}",
"illegal": ";",
"keywords": "if eq ne lt lte gt gte select default math sep"
}
]
}
@@ -0,0 +1,69 @@
{
"illegal": "\\S",
"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
}
]
},
{
"className": "attribute",
"begin": "^[ ]*[a-zA-Z][a-zA-Z\\-_]*([\\s\\-_]+[a-zA-Z][a-zA-Z]*)*"
},
{
"begin": "=",
"end": "[.;]",
"contains": [
{
"$ref": "#contains.0"
},
{
"className": "meta",
"begin": "\\?.*\\?"
},
{
"className": "string",
"variants": [
{
"className": "string",
"begin": "'",
"end": "'",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.2.contains.2.variants.0.contains.0"
}
]
},
{
"begin": "`",
"end": "`"
}
]
}
]
}
]
}
@@ -0,0 +1,256 @@
{
"lexemes": "[a-zA-Z_][a-zA-Z0-9_.]*(\\!|\\?)?",
"keywords": "and false then defined module in return redo retry end for true self when next until do begin unless nil break not case cond alias while ensure or include use alias fn quote require import with|0",
"contains": [
{
"className": "string",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
},
{
"className": "subst",
"begin": "#\\{",
"end": "}",
"lexemes": "[a-zA-Z_][a-zA-Z0-9_.]*(\\!|\\?)?",
"keywords": "and false then defined module in return redo retry end for true self when next until do begin unless nil break not case cond alias while ensure or include use alias fn quote require import with|0",
"contains": {
"$ref": "#contains"
}
}
],
"variants": [
{
"begin": "\"\"\"",
"end": "\"\"\""
},
{
"begin": "'''",
"end": "'''"
},
{
"begin": "~S\"\"\"",
"end": "\"\"\"",
"contains": []
},
{
"begin": "~S\"",
"end": "\"",
"contains": []
},
{
"begin": "~S'''",
"end": "'''",
"contains": []
},
{
"begin": "~S'",
"end": "'",
"contains": []
},
{
"begin": "'",
"end": "'"
},
{
"begin": "\"",
"end": "\""
}
]
},
{
"className": "string",
"begin": "~[A-Z](?=[\/|([{<\"'])",
"contains": [
{
"begin": "\"",
"end": "\""
},
{
"begin": "'",
"end": "'"
},
{
"begin": "\\\/",
"end": "\\\/"
},
{
"begin": "\\|",
"end": "\\|"
},
{
"begin": "\\(",
"end": "\\)"
},
{
"begin": "\\[",
"end": "\\]"
},
{
"begin": "\\{",
"end": "\\}"
},
{
"begin": "\\<",
"end": "\\>"
}
]
},
{
"className": "string",
"begin": "~[a-z](?=[\/|([{<\"'])",
"contains": [
{
"endsParent": true,
"contains": [
{
"contains": [
{
"$ref": "#contains.0.contains.0"
},
{
"$ref": "#contains.0.contains.1"
}
],
"variants": [
{
"begin": "\"",
"end": "\""
},
{
"begin": "'",
"end": "'"
},
{
"begin": "\\\/",
"end": "\\\/"
},
{
"begin": "\\|",
"end": "\\|"
},
{
"begin": "\\(",
"end": "\\)"
},
{
"begin": "\\[",
"end": "\\]"
},
{
"begin": "\\{",
"end": "\\}"
},
{
"begin": "<",
"end": ">"
}
]
}
]
}
]
},
{
"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
}
]
},
{
"className": "class",
"beginKeywords": "defimpl defmodule defprotocol defrecord",
"end": "\\bdo\\b|$|;",
"contains": [
{
"className": "title",
"begin": "[a-zA-Z_][a-zA-Z0-9_.]*(\\!|\\?)?",
"relevance": 0,
"endsParent": true
}
]
},
{
"className": "function",
"beginKeywords": "def defp defmacro",
"end": "\\B\\b",
"contains": {
"$ref": "#contains.4.contains"
}
},
{
"begin": "::"
},
{
"className": "symbol",
"begin": ":(?![\\s:])",
"contains": [
{
"$ref": "#contains.0"
},
{
"begin": "[a-zA-Z_]\\w*[!?=]?|[-+~]\\@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-\/+%^&*~`|]|\\[\\]=?"
}
],
"relevance": 0
},
{
"className": "symbol",
"begin": "[a-zA-Z_][a-zA-Z0-9_.]*(\\!|\\?)?:(?!:)",
"relevance": 0
},
{
"className": "number",
"begin": "(\\b0o[0-7_]+)|(\\b0b[01_]+)|(\\b0x[0-9a-fA-F_]+)|(-?\\b[1-9][0-9_]*(.[0-9_]+([eE][-+]?[0-9]+)?)?)",
"relevance": 0
},
{
"className": "variable",
"begin": "(\\$\\W)|((\\$|\\@\\@?)(\\w+))"
},
{
"begin": "->"
},
{
"begin": "(!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|\/=|\/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~)\\s*",
"contains": [
{
"$ref": "#contains.3"
},
{
"className": "regexp",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.0.contains.0"
},
{
"$ref": "#contains.0.contains.1"
}
],
"variants": [
{
"begin": "\/",
"end": "\/[a-z]*"
},
{
"begin": "%r\\[",
"end": "\\][a-z]*"
}
]
}
],
"relevance": 0
}
]
}
@@ -0,0 +1,161 @@
{
"keywords": "let in if then else case of where module import exposing type alias as infix infixl infixr port effect command subscription",
"contains": [
{
"beginKeywords": "port effect module",
"end": "exposing",
"keywords": "port effect module where command subscription exposing",
"contains": [
{
"begin": "\\(",
"end": "\\)",
"illegal": "\"",
"contains": [
{
"className": "type",
"begin": "\\b[A-Z][\\w]*(\\((\\.\\.|,|\\w+)\\))?"
},
{
"variants": [
{
"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
}
]
},
{
"className": "comment",
"begin": "{-",
"end": "-}",
"contains": [
"self",
{
"$ref": "#contains.0.contains.0.contains.1.variants.0.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
}
]
}
]
},
{
"$ref": "#contains.0.contains.0.contains.1"
}
],
"illegal": "\\W\\.|;"
},
{
"begin": "import",
"end": "$",
"keywords": "import as exposing",
"contains": [
{
"$ref": "#contains.0.contains.0"
},
{
"$ref": "#contains.0.contains.0.contains.1"
}
],
"illegal": "\\W\\.|;"
},
{
"begin": "type",
"end": "$",
"keywords": "type alias",
"contains": [
{
"className": "type",
"begin": "\\b[A-Z][\\w']*",
"relevance": 0
},
{
"$ref": "#contains.0.contains.0"
},
{
"begin": "{",
"end": "}",
"contains": {
"$ref": "#contains.0.contains.0.contains"
}
},
{
"$ref": "#contains.0.contains.0.contains.1"
}
]
},
{
"beginKeywords": "infix infixl infixr",
"end": "$",
"contains": [
{
"className": "number",
"begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",
"relevance": 0
},
{
"$ref": "#contains.0.contains.0.contains.1"
}
]
},
{
"begin": "port",
"end": "$",
"keywords": "port",
"contains": [
{
"$ref": "#contains.0.contains.0.contains.1"
}
]
},
{
"className": "string",
"begin": "'\\\\?.",
"end": "'",
"illegal": "."
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"$ref": "#contains.3.contains.0"
},
{
"$ref": "#contains.2.contains.0"
},
{
"className": "title",
"begin": "^[_a-z][\\w']*",
"relevance": 0
},
{
"$ref": "#contains.0.contains.0.contains.1"
},
{
"begin": "->|<-"
}
],
"illegal": ";"
}
@@ -0,0 +1,27 @@
{
"subLanguage": "xml",
"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
}
]
},
{
"begin": "<%[%=-]?",
"end": "[%-]?%>",
"subLanguage": "ruby",
"excludeBegin": true,
"excludeEnd": true
}
]
}
@@ -0,0 +1,76 @@
{
"keywords": {
"built_in": "spawn spawn_link self",
"keyword": "after and andalso|10 band begin bnot bor bsl bsr bxor case catch cond div end fun if let not of or orelse|10 query receive rem try when xor"
},
"contains": [
{
"className": "meta",
"begin": "^[0-9]+> ",
"relevance": 10
},
{
"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
}
]
},
{
"className": "number",
"begin": "\\b(\\d+#[a-fA-F0-9]+|\\d+(\\.\\d+)?([eE][-+]?\\d+)?)",
"relevance": 0
},
{
"className": "string",
"begin": "'",
"end": "'",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.3.contains.0"
}
]
},
{
"begin": "\\?(::)?([A-Z]\\w*(::)?)+"
},
{
"begin": "->"
},
{
"begin": "ok"
},
{
"begin": "!"
},
{
"begin": "(\\b[a-z'][a-zA-Z0-9_']*:[a-z'][a-zA-Z0-9_']*)|(\\b[a-z'][a-zA-Z0-9_']*)",
"relevance": 0
},
{
"begin": "[A-Z][a-zA-Z0-9_']*",
"relevance": 0
}
]
}
@@ -0,0 +1,222 @@
{
"aliases": [
"erl"
],
"keywords": {
"keyword": "after and andalso|10 band begin bnot bor bsl bzr bxor case catch cond div end fun if let not of orelse|10 query receive rem try when xor",
"literal": "false true"
},
"illegal": "(<\/|\\*=|\\+=|-=|\/\\*|\\*\/|\\(\\*|\\*\\))",
"contains": [
{
"className": "function",
"begin": "^[a-z'][a-zA-Z0-9_']*\\s*\\(",
"end": "->",
"returnBegin": true,
"illegal": "\\(|#|\/\/|\/\\*|\\\\|:|;",
"contains": [
{
"className": "params",
"begin": "\\(",
"end": "\\)",
"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
}
]
},
{
"begin": "fun\\s+[a-z'][a-zA-Z0-9_']*\/\\d+"
},
{
"beginKeywords": "fun receive if try case",
"end": "end",
"keywords": {
"$ref": "#keywords"
},
"contains": [
{
"$ref": "#contains.0.contains.0.contains.0"
},
{
"$ref": "#contains.0.contains.0.contains.1"
},
{
"className": "",
"begin": "'",
"end": "'",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"$ref": "#contains.0.contains.0.contains.2"
},
{
"begin": "([a-z'][a-zA-Z0-9_']*:[a-z'][a-zA-Z0-9_']*|[a-z'][a-zA-Z0-9_']*)\\(",
"end": "\\)",
"returnBegin": true,
"relevance": 0,
"contains": [
{
"begin": "([a-z'][a-zA-Z0-9_']*:[a-z'][a-zA-Z0-9_']*|[a-z'][a-zA-Z0-9_']*)",
"relevance": 0
},
{
"begin": "\\(",
"end": "\\)",
"endsWithParent": true,
"returnEnd": true,
"relevance": 0,
"contains": {
"$ref": "#contains.0.contains.0.contains"
}
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.0.contains.0.contains.2.contains.2.contains.0"
}
]
},
{
"className": "number",
"begin": "\\b(\\d+#[a-fA-F0-9]+|\\d+(\\.\\d+)?([eE][-+]?\\d+)?)",
"relevance": 0
},
{
"begin": "{",
"end": "}",
"relevance": 0,
"contains": {
"$ref": "#contains.0.contains.0.contains"
}
},
{
"begin": "\\b_([A-Z][A-Za-z0-9_]*)?",
"relevance": 0
},
{
"begin": "[A-Z][a-zA-Z0-9_]*",
"relevance": 0
},
{
"begin": "#[a-zA-Z_]\\w*",
"relevance": 0,
"returnBegin": true,
"contains": [
{
"begin": "#[a-zA-Z_]\\w*",
"relevance": 0
},
{
"begin": "{",
"end": "}",
"relevance": 0,
"contains": {
"$ref": "#contains.0.contains.0.contains"
}
}
]
}
]
},
{
"$ref": "#contains.0.contains.0.contains.2.contains.4"
},
{
"$ref": "#contains.0.contains.0.contains.2.contains.5"
},
{
"$ref": "#contains.0.contains.0.contains.2.contains.6"
},
{
"$ref": "#contains.0.contains.0.contains.2.contains.7"
},
{
"$ref": "#contains.0.contains.0.contains.2.contains.8"
},
{
"$ref": "#contains.0.contains.0.contains.2.contains.9"
},
{
"$ref": "#contains.0.contains.0.contains.2.contains.10"
}
]
},
{
"className": "title",
"begin": "[a-z'][a-zA-Z0-9_']*",
"relevance": 0
}
],
"starts": {
"end": ";|\\.",
"keywords": {
"$ref": "#keywords"
},
"contains": {
"$ref": "#contains.0.contains.0.contains"
}
}
},
{
"$ref": "#contains.0.contains.0.contains.0"
},
{
"begin": "^-",
"end": "\\.",
"relevance": 0,
"excludeEnd": true,
"returnBegin": true,
"lexemes": "-[a-zA-Z]\\w*",
"keywords": "-module -record -undef -export -ifdef -ifndef -author -copyright -doc -vsn -import -include -include_lib -compile -define -else -endif -file -behaviour -behavior -spec",
"contains": [
{
"$ref": "#contains.0.contains.0"
}
]
},
{
"$ref": "#contains.0.contains.0.contains.2.contains.6"
},
{
"$ref": "#contains.0.contains.0.contains.2.contains.5"
},
{
"$ref": "#contains.0.contains.0.contains.2.contains.10"
},
{
"$ref": "#contains.0.contains.0.contains.2.contains.8"
},
{
"$ref": "#contains.0.contains.0.contains.2.contains.9"
},
{
"$ref": "#contains.0.contains.0.contains.2.contains.7"
},
{
"begin": "\\.$"
}
]
}
@@ -0,0 +1,70 @@
{
"aliases": [
"xlsx",
"xls"
],
"case_insensitive": true,
"lexemes": "[a-zA-Z][\\w\\.]*",
"keywords": {
"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"
},
"contains": [
{
"begin": "^=",
"end": "[^=]",
"returnEnd": true,
"illegal": "=",
"relevance": 10
},
{
"className": "symbol",
"begin": "\\b[A-Z]{1,2}\\d+\\b",
"end": "[^\\d]",
"excludeEnd": true,
"relevance": 0
},
{
"className": "symbol",
"begin": "[A-Z]{0,2}\\d*:[A-Z]{0,2}\\d*",
"relevance": 0
},
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.3"
}
]
},
{
"className": "number",
"begin": "\\b\\d+(\\.\\d+)?(%)?",
"relevance": 0
},
{
"className": "comment",
"begin": "\\bN\\(",
"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
}
],
"excludeBegin": true,
"excludeEnd": true,
"illegal": "\\n"
}
]
}
@@ -0,0 +1,28 @@
{
"contains": [
{
"begin": "[^\\x{2401}\\x{0001}]+",
"end": "[\\x{2401}\\x{0001}]",
"excludeEnd": true,
"returnBegin": true,
"returnEnd": false,
"contains": [
{
"begin": "([^\\x{2401}\\x{0001}=]+)",
"end": "=([^\\x{2401}\\x{0001}=]+)",
"returnEnd": true,
"returnBegin": false,
"className": "attr"
},
{
"begin": "=",
"end": "([\\x{2401}\\x{0001}])",
"excludeEnd": true,
"excludeBegin": true,
"className": "string"
}
]
}
],
"case_insensitive": true
}
@@ -0,0 +1,68 @@
{
"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": [
{
"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
}
]
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#contains.0.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "'(.|\\\\[xXuU][a-zA-Z0-9]+)'"
},
{
"className": "string",
"variants": [
{
"begin": "\"",
"end": "\""
}
]
},
{
"className": "function",
"beginKeywords": "def",
"end": "[:={\\[(\\n;]",
"excludeEnd": true,
"contains": [
{
"className": "title",
"begin": "[^0-9\\n\\t \"'(),.`{}\\[\\]:;][^\\n\\t \"'(),.`{}\\[\\]:;]+|[^0-9\\n\\t \"'(),.`{}\\[\\]:;=]"
}
]
},
{
"className": "number",
"begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",
"relevance": 0
}
]
}
@@ -0,0 +1,78 @@
{
"case_insensitive": true,
"aliases": [
"f90",
"f95"
],
"keywords": {
"literal": ".False. .True.",
"keyword": "kind do while private call intrinsic where elsewhere type endtype endmodule endselect endinterface end enddo endif if forall endforall only contains default return stop then block endblock public subroutine|10 function program .and. .or. .not. .le. .eq. .ge. .gt. .lt. goto save else use module select case access blank direct exist file fmt form formatted iostat name named nextrec number opened rec recl sequential status unformatted unit continue format pause cycle exit c_null_char c_alert c_backspace c_form_feed flush wait decimal round iomsg synchronous nopass non_overridable pass protected volatile abstract extends import non_intrinsic value deferred generic final enumerator class associate bind enum c_int c_short c_long c_long_long c_signed_char c_size_t c_int8_t c_int16_t c_int32_t c_int64_t c_int_least8_t c_int_least16_t c_int_least32_t c_int_least64_t c_int_fast8_t c_int_fast16_t c_int_fast32_t c_int_fast64_t c_intmax_t C_intptr_t c_float c_double c_long_double c_float_complex c_double_complex c_long_double_complex c_bool c_char c_null_ptr c_null_funptr c_new_line c_carriage_return c_horizontal_tab c_vertical_tab iso_c_binding c_loc c_funloc c_associated c_f_pointer c_ptr c_funptr iso_fortran_env character_storage_size error_unit file_storage_size input_unit iostat_end iostat_eor numeric_storage_size output_unit c_f_procpointer ieee_arithmetic ieee_support_underflow_control ieee_get_underflow_mode ieee_set_underflow_mode newunit contiguous recursive pad position action delim readwrite eor advance nml interface procedure namelist include sequence elemental pure integer real character complex logical dimension allocatable|10 parameter external implicit|10 none double precision assign intent optional pointer target in out common equivalence data",
"built_in": "alog alog10 amax0 amax1 amin0 amin1 amod cabs ccos cexp clog csin csqrt dabs dacos dasin datan datan2 dcos dcosh ddim dexp dint dlog dlog10 dmax1 dmin1 dmod dnint dsign dsin dsinh dsqrt dtan dtanh float iabs idim idint idnint ifix isign max0 max1 min0 min1 sngl algama cdabs cdcos cdexp cdlog cdsin cdsqrt cqabs cqcos cqexp cqlog cqsin cqsqrt dcmplx dconjg derf derfc dfloat dgamma dimag dlgama iqint qabs qacos qasin qatan qatan2 qcmplx qconjg qcos qcosh qdim qerf qerfc qexp qgamma qimag qlgama qlog qlog10 qmax1 qmin1 qmod qnint qsign qsin qsinh qsqrt qtan qtanh abs acos aimag aint anint asin atan atan2 char cmplx conjg cos cosh exp ichar index int log log10 max min nint sign sin sinh sqrt tan tanh print write dim lge lgt lle llt mod nullify allocate deallocate adjustl adjustr all allocated any associated bit_size btest ceiling count cshift date_and_time digits dot_product eoshift epsilon exponent floor fraction huge iand ibclr ibits ibset ieor ior ishft ishftc lbound len_trim matmul maxexponent maxloc maxval merge minexponent minloc minval modulo mvbits nearest pack present product radix random_number random_seed range repeat reshape rrspacing scale scan selected_int_kind selected_real_kind set_exponent shape size spacing spread sum system_clock tiny transpose trim ubound unpack verify achar iachar transfer dble entry dprod cpu_time command_argument_count get_command get_command_argument get_environment_variable is_iostat_end 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_ofacosh asinh atanh bessel_j0 bessel_j1 bessel_jn bessel_y0 bessel_y1 bessel_yn erf erfc erfc_scaled gamma log_gamma hypot norm2 atomic_define atomic_ref execute_command_line leadz trailz storage_size merge_bits bge bgt ble blt dshiftl dshiftr findloc iall iany iparity image_index lcobound ucobound maskl maskr num_images parity popcnt poppar shifta shiftl shiftr this_image"
},
"illegal": "\\\/\\*",
"contains": [
{
"className": "string",
"begin": "'",
"end": "'",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
],
"relevance": 0
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.0.contains.0"
}
],
"relevance": 0
},
{
"className": "function",
"beginKeywords": "subroutine function program",
"illegal": "[${=\\n]",
"contains": [
{
"className": "title",
"begin": "[a-zA-Z_]\\w*",
"relevance": 0
},
{
"className": "params",
"begin": "\\(",
"end": "\\)"
}
]
},
{
"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": "number",
"begin": "(?=\\b|\\+|\\-|\\.)(?=\\.\\d|\\d)(?:\\d+)?(?:\\.?\\d*)(?:[de][+-]?\\d+)?\\b\\.?",
"relevance": 0
}
]
}
@@ -0,0 +1,114 @@
{
"aliases": [
"fs"
],
"keywords": "abstract and as assert base begin class default delegate do done downcast downto elif else end exception extern false finally for fun function global if in inherit inline interface internal lazy let match member module mutable namespace new null of open or override private public rec return sig static struct then to true try type upcast use val void when while with yield",
"illegal": "\\\/\\*",
"contains": [
{
"className": "keyword",
"begin": "\\b(yield|return|let|do)!"
},
{
"className": "string",
"begin": "@\"",
"end": "\"",
"contains": [
{
"begin": "\"\""
}
]
},
{
"className": "string",
"begin": "\"\"\"",
"end": "\"\"\""
},
{
"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
}
]
},
{
"className": "class",
"beginKeywords": "type",
"end": "\\(|=|$",
"excludeEnd": true,
"contains": [
{
"className": "title",
"begin": "[a-zA-Z_]\\w*",
"relevance": 0
},
{
"begin": "<",
"end": ">",
"contains": [
{
"className": "title",
"begin": "'[a-zA-Z0-9_]+",
"relevance": 0
}
]
}
]
},
{
"className": "meta",
"begin": "\\[<",
"end": ">\\]",
"relevance": 10
},
{
"className": "symbol",
"begin": "\\B('[A-Za-z])\\b",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "comment",
"begin": "\/\/",
"end": "$",
"contains": [
{
"$ref": "#contains.3.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": null,
"contains": [
{
"$ref": "#contains.6.contains.0"
}
]
},
{
"className": "number",
"begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",
"relevance": 0
}
]
}
@@ -0,0 +1,286 @@
{
"aliases": [
"gms"
],
"case_insensitive": true,
"keywords": {
"keyword": "abort acronym acronyms alias all and assign binary card diag display else eq file files for free ge gt if integer le loop lt maximizing minimizing model models ne negative no not option options or ord positive prod put putpage puttl repeat sameas semicont semiint smax smin solve sos1 sos2 sum system table then until using while xor yes",
"literal": "eps inf na",
"built-in": "abs arccos arcsin arctan arctan2 Beta betaReg binomial ceil centropy cos cosh cvPower div div0 eDist entropy errorf execSeed exp fact floor frac gamma gammaReg log logBeta logGamma log10 log2 mapVal max min mod ncpCM ncpF ncpVUpow ncpVUsin normal pi poly power randBinomial randLinear randTriangle round rPower sigmoid sign signPower sin sinh slexp sllog10 slrec sqexp sqlog10 sqr sqrec sqrt tan tanh trunc uniform uniformInt vcPower bool_and bool_eqv bool_imp bool_not bool_or bool_xor ifThen rel_eq rel_ge rel_gt rel_le rel_lt rel_ne gday gdow ghour gleap gmillisec gminute gmonth gsecond gyear jdate jnow jstart jtime errorLevel execError gamsRelease gamsVersion handleCollect handleDelete handleStatus handleSubmit heapFree heapLimit heapSize jobHandle jobKill jobStatus jobTerminate licenseLevel licenseStatus maxExecError sleep timeClose timeComp timeElapsed timeExec timeStart"
},
"contains": [
{
"className": "comment",
"begin": "^\\$ontext",
"end": "^\\$offtext",
"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
}
]
},
{
"className": "meta",
"begin": "^\\$[a-z0-9]+",
"end": "$",
"returnBegin": true,
"contains": [
{
"className": "meta-keyword",
"begin": "^\\$[a-z0-9]+"
}
]
},
{
"className": "comment",
"begin": "^\\*",
"end": "$",
"contains": [
{
"$ref": "#contains.0.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "comment",
"begin": "\/\/",
"end": "$",
"contains": [
{
"$ref": "#contains.0.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#contains.0.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "'",
"end": "'",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.5.contains.0"
}
]
},
{
"beginKeywords": "set sets parameter parameters variable variables scalar scalars equation equations",
"end": ";",
"contains": [
{
"className": "comment",
"begin": "^\\*",
"end": "$",
"contains": [
{
"$ref": "#contains.0.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"$ref": "#contains.3"
},
{
"$ref": "#contains.4"
},
{
"$ref": "#contains.5"
},
{
"$ref": "#contains.6"
},
{
"begin": "\/",
"end": "\/",
"keywords": {
"$ref": "#keywords"
},
"contains": [
{
"className": "comment",
"variants": [
{
"begin": "'",
"end": "'"
},
{
"begin": "\"",
"end": "\""
}
],
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.5.contains.0"
}
]
},
{
"$ref": "#contains.3"
},
{
"$ref": "#contains.4"
},
{
"$ref": "#contains.5"
},
{
"$ref": "#contains.6"
},
{
"className": "number",
"begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",
"relevance": 0
}
]
},
{
"begin": "[a-z][a-z0-9_]*(\\([a-z0-9_, ]*\\))?[ \\t]+",
"excludeBegin": true,
"end": "$",
"endsWithParent": true,
"contains": [
{
"$ref": "#contains.7.contains.5.contains.0"
},
{
"$ref": "#contains.7.contains.5"
},
{
"className": "comment",
"begin": "([ ]*[a-z0-9&#*=?@>\\\\<:\\-,()$\\[\\]_.{}!+%^]+)+",
"relevance": 0
}
]
}
]
},
{
"beginKeywords": "table",
"end": ";",
"returnBegin": true,
"contains": [
{
"beginKeywords": "table",
"end": "$",
"contains": [
{
"$ref": "#contains.7.contains.6"
}
]
},
{
"className": "comment",
"begin": "^\\*",
"end": "$",
"contains": [
{
"$ref": "#contains.0.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"$ref": "#contains.3"
},
{
"$ref": "#contains.4"
},
{
"$ref": "#contains.5"
},
{
"$ref": "#contains.6"
},
{
"$ref": "#contains.7.contains.5.contains.5"
}
]
},
{
"className": "function",
"begin": "^[a-z][a-z0-9_,\\-+' ()$]+\\.{2}",
"returnBegin": true,
"contains": [
{
"className": "title",
"begin": "^[a-z0-9_]+"
},
{
"className": "params",
"begin": "\\(",
"end": "\\)",
"excludeBegin": true,
"excludeEnd": true
},
{
"className": "symbol",
"variants": [
{
"begin": "\\=[lgenxc]="
},
{
"begin": "\\$"
}
]
}
]
},
{
"$ref": "#contains.7.contains.5.contains.5"
},
{
"$ref": "#contains.9.contains.2"
}
]
}
@@ -0,0 +1,281 @@
{
"aliases": [
"gss"
],
"case_insensitive": true,
"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 elseif enable end endfor endif endp endo errorlog errorlogat expr external fn for format goto gosub graph if keyword let lib library line load loadarray loadexe loadf loadk loadm loadp loads loadx local locate loopnextindex lprint lpwidth lshow matrix msym ndpclex new open output outwidth plot plotsym pop prcsn print printdos proc push retp return rndcon rndmod rndmult rndseed run save saveall screen scroll setarray show sparse stop string struct system trace trap threadfor threadendfor threadbegin threadjoin threadstat threadend until use while winprint ne ge le gt lt and xor or not eq eqv",
"built_in": "abs acf aconcat aeye amax amean AmericanBinomCall AmericanBinomCall_Greeks AmericanBinomCall_ImpVol AmericanBinomPut AmericanBinomPut_Greeks AmericanBinomPut_ImpVol AmericanBSCall AmericanBSCall_Greeks AmericanBSCall_ImpVol AmericanBSPut AmericanBSPut_Greeks AmericanBSPut_ImpVol amin amult annotationGetDefaults annotationSetBkd annotationSetFont annotationSetLineColor annotationSetLineStyle annotationSetLineThickness annualTradingDays arccos arcsin areshape arrayalloc arrayindex arrayinit arraytomat asciiload asclabel astd astds asum atan atan2 atranspose axmargin balance band bandchol bandcholsol bandltsol bandrv bandsolpd bar base10 begwind besselj bessely beta box boxcox cdfBeta cdfBetaInv cdfBinomial cdfBinomialInv cdfBvn cdfBvn2 cdfBvn2e cdfCauchy cdfCauchyInv cdfChic cdfChii cdfChinc cdfChincInv cdfExp cdfExpInv cdfFc cdfFnc cdfFncInv cdfGam cdfGenPareto cdfHyperGeo cdfLaplace cdfLaplaceInv cdfLogistic cdfLogisticInv cdfmControlCreate cdfMvn cdfMvn2e cdfMvnce cdfMvne cdfMvt2e cdfMvtce cdfMvte cdfN cdfN2 cdfNc cdfNegBinomial cdfNegBinomialInv cdfNi cdfPoisson cdfPoissonInv cdfRayleigh cdfRayleighInv cdfTc cdfTci cdfTnc cdfTvn cdfWeibull cdfWeibullInv cdir ceil ChangeDir chdir chiBarSquare chol choldn cholsol cholup chrs close code cols colsf combinate combinated complex con cond conj cons ConScore contour conv convertsatostr convertstrtosa corrm corrms corrvc corrx corrxs cos cosh counts countwts crossprd crout croutp csrcol csrlin csvReadM csvReadSA cumprodc cumsumc curve cvtos datacreate datacreatecomplex datalist dataload dataloop dataopen datasave date datestr datestring datestrymd dayinyr dayofweek dbAddDatabase dbClose dbCommit dbCreateQuery dbExecQuery dbGetConnectOptions dbGetDatabaseName dbGetDriverName dbGetDrivers dbGetHostName dbGetLastErrorNum dbGetLastErrorText dbGetNumericalPrecPolicy dbGetPassword dbGetPort dbGetTableHeaders dbGetTables dbGetUserName dbHasFeature dbIsDriverAvailable dbIsOpen dbIsOpenError dbOpen dbQueryBindValue dbQueryClear dbQueryCols dbQueryExecPrepared dbQueryFetchAllM dbQueryFetchAllSA dbQueryFetchOneM dbQueryFetchOneSA dbQueryFinish dbQueryGetBoundValue dbQueryGetBoundValues dbQueryGetField dbQueryGetLastErrorNum dbQueryGetLastErrorText dbQueryGetLastInsertID dbQueryGetLastQuery dbQueryGetPosition dbQueryIsActive dbQueryIsForwardOnly dbQueryIsNull dbQueryIsSelect dbQueryIsValid dbQueryPrepare dbQueryRows dbQuerySeek dbQuerySeekFirst dbQuerySeekLast dbQuerySeekNext dbQuerySeekPrevious dbQuerySetForwardOnly dbRemoveDatabase dbRollback dbSetConnectOptions dbSetDatabaseName dbSetHostName dbSetNumericalPrecPolicy dbSetPort dbSetUserName dbTransaction DeleteFile delif delrows denseToSp denseToSpRE denToZero design det detl dfft dffti diag diagrv digamma doswin DOSWinCloseall DOSWinOpen dotfeq dotfeqmt dotfge dotfgemt dotfgt dotfgtmt dotfle dotflemt dotflt dotfltmt dotfne dotfnemt draw drop dsCreate dstat dstatmt dstatmtControlCreate dtdate dtday dttime dttodtv dttostr dttoutc dtvnormal dtvtodt dtvtoutc dummy dummybr dummydn eig eigh eighv eigv elapsedTradingDays endwind envget eof eqSolve eqSolvemt eqSolvemtControlCreate eqSolvemtOutCreate eqSolveset erf erfc erfccplx erfcplx error etdays ethsec etstr EuropeanBinomCall EuropeanBinomCall_Greeks EuropeanBinomCall_ImpVol EuropeanBinomPut EuropeanBinomPut_Greeks EuropeanBinomPut_ImpVol EuropeanBSCall EuropeanBSCall_Greeks EuropeanBSCall_ImpVol EuropeanBSPut EuropeanBSPut_Greeks EuropeanBSPut_ImpVol exctsmpl exec execbg exp extern eye fcheckerr fclearerr feq feqmt fflush fft ffti fftm fftmi fftn fge fgemt fgets fgetsa fgetsat fgetst fgt fgtmt fileinfo filesa fle flemt floor flt fltmt fmod fne fnemt fonts fopen formatcv formatnv fputs fputst fseek fstrerror ftell ftocv ftos ftostrC gamma gammacplx gammaii gausset gdaAppend gdaCreate gdaDStat gdaDStatMat gdaGetIndex gdaGetName gdaGetNames gdaGetOrders gdaGetType gdaGetTypes gdaGetVarInfo gdaIsCplx gdaLoad gdaPack gdaRead gdaReadByIndex gdaReadSome gdaReadSparse gdaReadStruct gdaReportVarInfo gdaSave gdaUpdate gdaUpdateAndPack gdaVars gdaWrite gdaWrite32 gdaWriteSome getarray getdims getf getGAUSShome getmatrix getmatrix4D getname getnamef getNextTradingDay getNextWeekDay getnr getorders getpath getPreviousTradingDay getPreviousWeekDay getRow getscalar3D getscalar4D getTrRow getwind glm gradcplx gradMT gradMTm gradMTT gradMTTm gradp graphprt graphset hasimag header headermt hess hessMT hessMTg hessMTgw hessMTm hessMTmw hessMTT hessMTTg hessMTTgw hessMTTm hessMTw hessp hist histf histp hsec imag indcv indexcat indices indices2 indicesf indicesfn indnv indsav integrate1d integrateControlCreate intgrat2 intgrat3 inthp1 inthp2 inthp3 inthp4 inthpControlCreate intquad1 intquad2 intquad3 intrleav intrleavsa intrsect intsimp inv invpd invswp iscplx iscplxf isden isinfnanmiss ismiss key keyav keyw lag lag1 lagn lapEighb lapEighi lapEighvb lapEighvi lapgEig lapgEigh lapgEighv lapgEigv lapgSchur lapgSvdcst lapgSvds lapgSvdst lapSvdcusv lapSvds lapSvdusv ldlp ldlsol Line truncated
"literal": "DB_AFTER_LAST_ROW DB_ALL_TABLES DB_BATCH_OPERATIONS DB_BEFORE_FIRST_ROW DB_BLOB DB_EVENT_NOTIFICATIONS DB_FINISH_QUERY DB_HIGH_PRECISION DB_LAST_INSERT_ID DB_LOW_PRECISION_DOUBLE DB_LOW_PRECISION_INT32 DB_LOW_PRECISION_INT64 DB_LOW_PRECISION_NUMBERS DB_MULTIPLE_RESULT_SETS DB_NAMED_PLACEHOLDERS DB_POSITIONAL_PLACEHOLDERS DB_PREPARED_QUERIES DB_QUERY_SIZE DB_SIMPLE_LOCKING DB_SYSTEM_TABLES DB_TABLES DB_TRANSACTIONS DB_UNICODE DB_VIEWS __STDIN __STDOUT __STDERR __FILE_DIR"
},
"illegal": "(\\{[%#]|[%#]\\}| <- )",
"contains": [
{
"className": "number",
"begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",
"relevance": 0
},
{
"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
}
]
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#contains.1.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "comment",
"begin": "@",
"end": "@",
"contains": [
{
"$ref": "#contains.1.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
],
"relevance": 0
},
{
"className": "meta",
"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
},
{
"beginKeywords": "include",
"end": "$",
"keywords": {
"meta-keyword": "include"
},
"contains": [
{
"className": "meta-string",
"begin": "\"",
"end": "\"",
"illegal": "\\n"
}
]
},
{
"$ref": "#contains.1"
},
{
"$ref": "#contains.2"
},
{
"$ref": "#contains.3"
}
]
},
{
"className": "keyword",
"begin": "\\bexternal (matrix|string|array|sparse matrix|struct|proc|keyword|fn)"
},
{
"className": "function",
"beginKeywords": "proc keyword",
"end": ";",
"excludeEnd": true,
"contains": [
{
"className": "params",
"begin": "\\(",
"end": "\\)",
"excludeBegin": true,
"excludeEnd": true,
"endsWithParent": true,
"relevance": 0,
"contains": [
{
"className": "literal",
"begin": "\\.\\.\\."
},
{
"$ref": "#contains.0"
},
{
"$ref": "#contains.2"
},
{
"$ref": "#contains.3"
},
{
"begin": "\\bstruct\\s+",
"end": "\\s",
"keywords": "struct",
"contains": [
{
"className": "type",
"begin": "[a-zA-Z_]\\w*",
"relevance": 0
}
]
}
]
},
{
"className": "title",
"begin": "[a-zA-Z_]\\w*",
"relevance": 0
},
{
"$ref": "#contains.0"
},
{
"$ref": "#contains.2"
},
{
"$ref": "#contains.3"
}
]
},
{
"className": "function",
"beginKeywords": "fn",
"end": "=",
"excludeEnd": true,
"contains": [
{
"$ref": "#contains.7.contains.0"
},
{
"$ref": "#contains.7.contains.1"
},
{
"$ref": "#contains.0"
},
{
"$ref": "#contains.2"
},
{
"$ref": "#contains.3"
}
]
},
{
"beginKeywords": "for threadfor",
"end": ";",
"relevance": 0,
"contains": [
{
"$ref": "#contains.2"
},
{
"$ref": "#contains.3"
},
{
"begin": "\\(",
"end": "\\)",
"relevance": 0,
"keywords": {
"built_in": "abs acf aconcat aeye amax amean AmericanBinomCall AmericanBinomCall_Greeks AmericanBinomCall_ImpVol AmericanBinomPut AmericanBinomPut_Greeks AmericanBinomPut_ImpVol AmericanBSCall AmericanBSCall_Greeks AmericanBSCall_ImpVol AmericanBSPut AmericanBSPut_Greeks AmericanBSPut_ImpVol amin amult annotationGetDefaults annotationSetBkd annotationSetFont annotationSetLineColor annotationSetLineStyle annotationSetLineThickness annualTradingDays arccos arcsin areshape arrayalloc arrayindex arrayinit arraytomat asciiload asclabel astd astds asum atan atan2 atranspose axmargin balance band bandchol bandcholsol bandltsol bandrv bandsolpd bar base10 begwind besselj bessely beta box boxcox cdfBeta cdfBetaInv cdfBinomial cdfBinomialInv cdfBvn cdfBvn2 cdfBvn2e cdfCauchy cdfCauchyInv cdfChic cdfChii cdfChinc cdfChincInv cdfExp cdfExpInv cdfFc cdfFnc cdfFncInv cdfGam cdfGenPareto cdfHyperGeo cdfLaplace cdfLaplaceInv cdfLogistic cdfLogisticInv cdfmControlCreate cdfMvn cdfMvn2e cdfMvnce cdfMvne cdfMvt2e cdfMvtce cdfMvte cdfN cdfN2 cdfNc cdfNegBinomial cdfNegBinomialInv cdfNi cdfPoisson cdfPoissonInv cdfRayleigh cdfRayleighInv cdfTc cdfTci cdfTnc cdfTvn cdfWeibull cdfWeibullInv cdir ceil ChangeDir chdir chiBarSquare chol choldn cholsol cholup chrs close code cols colsf combinate combinated complex con cond conj cons ConScore contour conv convertsatostr convertstrtosa corrm corrms corrvc corrx corrxs cos cosh counts countwts crossprd crout croutp csrcol csrlin csvReadM csvReadSA cumprodc cumsumc curve cvtos datacreate datacreatecomplex datalist dataload dataloop dataopen datasave date datestr datestring datestrymd dayinyr dayofweek dbAddDatabase dbClose dbCommit dbCreateQuery dbExecQuery dbGetConnectOptions dbGetDatabaseName dbGetDriverName dbGetDrivers dbGetHostName dbGetLastErrorNum dbGetLastErrorText dbGetNumericalPrecPolicy dbGetPassword dbGetPort dbGetTableHeaders dbGetTables dbGetUserName dbHasFeature dbIsDriverAvailable dbIsOpen dbIsOpenError dbOpen dbQueryBindValue dbQueryClear dbQueryCols dbQueryExecPrepared dbQueryFetchAllM dbQueryFetchAllSA dbQueryFetchOneM dbQueryFetchOneSA dbQueryFinish dbQueryGetBoundValue dbQueryGetBoundValues dbQueryGetField dbQueryGetLastErrorNum dbQueryGetLastErrorText dbQueryGetLastInsertID dbQueryGetLastQuery dbQueryGetPosition dbQueryIsActive dbQueryIsForwardOnly dbQueryIsNull dbQueryIsSelect dbQueryIsValid dbQueryPrepare dbQueryRows dbQuerySeek dbQuerySeekFirst dbQuerySeekLast dbQuerySeekNext dbQuerySeekPrevious dbQuerySetForwardOnly dbRemoveDatabase dbRollback dbSetConnectOptions dbSetDatabaseName dbSetHostName dbSetNumericalPrecPolicy dbSetPort dbSetUserName dbTransaction DeleteFile delif delrows denseToSp denseToSpRE denToZero design det detl dfft dffti diag diagrv digamma doswin DOSWinCloseall DOSWinOpen dotfeq dotfeqmt dotfge dotfgemt dotfgt dotfgtmt dotfle dotflemt dotflt dotfltmt dotfne dotfnemt draw drop dsCreate dstat dstatmt dstatmtControlCreate dtdate dtday dttime dttodtv dttostr dttoutc dtvnormal dtvtodt dtvtoutc dummy dummybr dummydn eig eigh eighv eigv elapsedTradingDays endwind envget eof eqSolve eqSolvemt eqSolvemtControlCreate eqSolvemtOutCreate eqSolveset erf erfc erfccplx erfcplx error etdays ethsec etstr EuropeanBinomCall EuropeanBinomCall_Greeks EuropeanBinomCall_ImpVol EuropeanBinomPut EuropeanBinomPut_Greeks EuropeanBinomPut_ImpVol EuropeanBSCall EuropeanBSCall_Greeks EuropeanBSCall_ImpVol EuropeanBSPut EuropeanBSPut_Greeks EuropeanBSPut_ImpVol exctsmpl exec execbg exp extern eye fcheckerr fclearerr feq feqmt fflush fft ffti fftm fftmi fftn fge fgemt fgets fgetsa fgetsat fgetst fgt fgtmt fileinfo filesa fle flemt floor flt fltmt fmod fne fnemt fonts fopen formatcv formatnv fputs fputst fseek fstrerror ftell ftocv ftos ftostrC gamma gammacplx gammaii gausset gdaAppend gdaCreate gdaDStat gdaDStatMat gdaGetIndex gdaGetName gdaGetNames gdaGetOrders gdaGetType gdaGetTypes gdaGetVarInfo gdaIsCplx gdaLoad gdaPack gdaRead gdaReadByIndex gdaReadSome gdaReadSparse gdaReadStruct gdaReportVarInfo gdaSave gdaUpdate gdaUpdateAndPack gdaVars gdaWrite gdaWrite32 gdaWriteSome getarray getdims getf getGAUSShome getmatrix getmatrix4D getname getnamef getNextTradingDay getNextWeekDay getnr getorders getpath getPreviousTradingDay getPreviousWeekDay getRow getscalar3D getscalar4D getTrRow getwind glm gradcplx gradMT gradMTm gradMTT gradMTTm gradp graphprt graphset hasimag header headermt hess hessMT hessMTg hessMTgw hessMTm hessMTmw hessMTT hessMTTg hessMTTgw hessMTTm hessMTw hessp hist histf histp hsec imag indcv indexcat indices indices2 indicesf indicesfn indnv indsav integrate1d integrateControlCreate intgrat2 intgrat3 inthp1 inthp2 inthp3 inthp4 inthpControlCreate intquad1 intquad2 intquad3 intrleav intrleavsa intrsect intsimp inv invpd invswp iscplx iscplxf isden isinfnanmiss ismiss key keyav keyw lag lag1 lagn lapEighb lapEighi lapEighvb lapEighvi lapgEig lapgEigh lapgEighv lapgEigv lapgSchur lapgSvdcst lapgSvds lapgSvdst lapSvdcusv lapSvds lapSvdLine truncated
"literal": "DB_AFTER_LAST_ROW DB_ALL_TABLES DB_BATCH_OPERATIONS DB_BEFORE_FIRST_ROW DB_BLOB DB_EVENT_NOTIFICATIONS DB_FINISH_QUERY DB_HIGH_PRECISION DB_LAST_INSERT_ID DB_LOW_PRECISION_DOUBLE DB_LOW_PRECISION_INT32 DB_LOW_PRECISION_INT64 DB_LOW_PRECISION_NUMBERS DB_MULTIPLE_RESULT_SETS DB_NAMED_PLACEHOLDERS DB_POSITIONAL_PLACEHOLDERS DB_PREPARED_QUERIES DB_QUERY_SIZE DB_SIMPLE_LOCKING DB_SYSTEM_TABLES DB_TABLES DB_TRANSACTIONS DB_UNICODE DB_VIEWS __STDIN __STDOUT __STDERR __FILE_DIR"
},
"contains": [
{
"$ref": "#contains.0"
},
{
"$ref": "#contains.2"
},
{
"$ref": "#contains.3"
},
{
"className": "built_in",
"begin": "\\b(abs|acf|aconcat|aeye|amax|amean|AmericanBinomCall|AmericanBinomCall_Greeks|AmericanBinomCall_ImpVol|AmericanBinomPut|AmericanBinomPut_Greeks|AmericanBinomPut_ImpVol|AmericanBSCall|AmericanBSCall_Greeks|AmericanBSCall_ImpVol|AmericanBSPut|AmericanBSPut_Greeks|AmericanBSPut_ImpVol|amin|amult|annotationGetDefaults|annotationSetBkd|annotationSetFont|annotationSetLineColor|annotationSetLineStyle|annotationSetLineThickness|annualTradingDays|arccos|arcsin|areshape|arrayalloc|arrayindex|arrayinit|arraytomat|asciiload|asclabel|astd|astds|asum|atan|atan2|atranspose|axmargin|balance|band|bandchol|bandcholsol|bandltsol|bandrv|bandsolpd|bar|base10|begwind|besselj|bessely|beta|box|boxcox|cdfBeta|cdfBetaInv|cdfBinomial|cdfBinomialInv|cdfBvn|cdfBvn2|cdfBvn2e|cdfCauchy|cdfCauchyInv|cdfChic|cdfChii|cdfChinc|cdfChincInv|cdfExp|cdfExpInv|cdfFc|cdfFnc|cdfFncInv|cdfGam|cdfGenPareto|cdfHyperGeo|cdfLaplace|cdfLaplaceInv|cdfLogistic|cdfLogisticInv|cdfmControlCreate|cdfMvn|cdfMvn2e|cdfMvnce|cdfMvne|cdfMvt2e|cdfMvtce|cdfMvte|cdfN|cdfN2|cdfNc|cdfNegBinomial|cdfNegBinomialInv|cdfNi|cdfPoisson|cdfPoissonInv|cdfRayleigh|cdfRayleighInv|cdfTc|cdfTci|cdfTnc|cdfTvn|cdfWeibull|cdfWeibullInv|cdir|ceil|ChangeDir|chdir|chiBarSquare|chol|choldn|cholsol|cholup|chrs|close|code|cols|colsf|combinate|combinated|complex|con|cond|conj|cons|ConScore|contour|conv|convertsatostr|convertstrtosa|corrm|corrms|corrvc|corrx|corrxs|cos|cosh|counts|countwts|crossprd|crout|croutp|csrcol|csrlin|csvReadM|csvReadSA|cumprodc|cumsumc|curve|cvtos|datacreate|datacreatecomplex|datalist|dataload|dataloop|dataopen|datasave|date|datestr|datestring|datestrymd|dayinyr|dayofweek|dbAddDatabase|dbClose|dbCommit|dbCreateQuery|dbExecQuery|dbGetConnectOptions|dbGetDatabaseName|dbGetDriverName|dbGetDrivers|dbGetHostName|dbGetLastErrorNum|dbGetLastErrorText|dbGetNumericalPrecPolicy|dbGetPassword|dbGetPort|dbGetTableHeaders|dbGetTables|dbGetUserName|dbHasFeature|dbIsDriverAvailable|dbIsOpen|dbIsOpenError|dbOpen|dbQueryBindValue|dbQueryClear|dbQueryCols|dbQueryExecPrepared|dbQueryFetchAllM|dbQueryFetchAllSA|dbQueryFetchOneM|dbQueryFetchOneSA|dbQueryFinish|dbQueryGetBoundValue|dbQueryGetBoundValues|dbQueryGetField|dbQueryGetLastErrorNum|dbQueryGetLastErrorText|dbQueryGetLastInsertID|dbQueryGetLastQuery|dbQueryGetPosition|dbQueryIsActive|dbQueryIsForwardOnly|dbQueryIsNull|dbQueryIsSelect|dbQueryIsValid|dbQueryPrepare|dbQueryRows|dbQuerySeek|dbQuerySeekFirst|dbQuerySeekLast|dbQuerySeekNext|dbQuerySeekPrevious|dbQuerySetForwardOnly|dbRemoveDatabase|dbRollback|dbSetConnectOptions|dbSetDatabaseName|dbSetHostName|dbSetNumericalPrecPolicy|dbSetPort|dbSetUserName|dbTransaction|DeleteFile|delif|delrows|denseToSp|denseToSpRE|denToZero|design|det|detl|dfft|dffti|diag|diagrv|digamma|doswin|DOSWinCloseall|DOSWinOpen|dotfeq|dotfeqmt|dotfge|dotfgemt|dotfgt|dotfgtmt|dotfle|dotflemt|dotflt|dotfltmt|dotfne|dotfnemt|draw|drop|dsCreate|dstat|dstatmt|dstatmtControlCreate|dtdate|dtday|dttime|dttodtv|dttostr|dttoutc|dtvnormal|dtvtodt|dtvtoutc|dummy|dummybr|dummydn|eig|eigh|eighv|eigv|elapsedTradingDays|endwind|envget|eof|eqSolve|eqSolvemt|eqSolvemtControlCreate|eqSolvemtOutCreate|eqSolveset|erf|erfc|erfccplx|erfcplx|error|etdays|ethsec|etstr|EuropeanBinomCall|EuropeanBinomCall_Greeks|EuropeanBinomCall_ImpVol|EuropeanBinomPut|EuropeanBinomPut_Greeks|EuropeanBinomPut_ImpVol|EuropeanBSCall|EuropeanBSCall_Greeks|EuropeanBSCall_ImpVol|EuropeanBSPut|EuropeanBSPut_Greeks|EuropeanBSPut_ImpVol|exctsmpl|exec|execbg|exp|extern|eye|fcheckerr|fclearerr|feq|feqmt|fflush|fft|ffti|fftm|fftmi|fftn|fge|fgemt|fgets|fgetsa|fgetsat|fgetst|fgt|fgtmt|fileinfo|filesa|fle|flemt|floor|flt|fltmt|fmod|fne|fnemt|fonts|fopen|formatcv|formatnv|fputs|fputst|fseek|fstrerror|ftell|ftocv|ftos|ftostrC|gamma|gammacplx|gammaii|gausset|gdaAppend|gdaCreate|gdaDStat|gdaDStatMat|gdaGetIndex|gdaGetName|gdaGetNames|gdaGetOrders|gdaGetType|gdaGetTypes|gdaGetVarInfo|gdaIsCplx|gdaLoad|gdaPack|gdaRead|gdaReadByIndex|gdaReadSome|gdaReadSparse|gdaReadStruct|gdaReportVarInfo|gdaSave|gdaUpdate|gdaUpdateAndPack|gdaVars|gdaWrite|gdaWrite32|gdaWriteSome|getarray|getdims|getf|getGAUSShome|getmatrix|getmatrix4D|getname|getnamef|getNextTradingDay|getNextWeekDay|getnr|getorders|getpath|getPreviousTradingDay|getPreviousWeekDay|getRow|getscalar3D|getscalar4D|getTrRow|getwind|glm|gradcplx|gradMT|gradMTm|gradMTT|gradMTTm|gradp|graphprt|graphset|hasimag|header|headermt|hess|hessMT|hessMTg|hessMTgw|hessMTm|hessMTmw|hessMTT|hessMTTg|hessMTTgw|hessMTTm|hessMTw|hessp|hist|histf|histp|hsec|imag|indcv|indexcat|indices|indices2|indicesf|indicesfn|indnv|indsav|integrate1d|integrateControlCreate|intgrat2|intgrat3|inthp1|inthp2|inthp3|inthp4|inthpControlCreate|intquad1|intquad2|intquad3|intrleav|intrleavsa|intrsect|intsimp|inv|invpd|invswp|iscplx|iscplxf|isden|isinfnanmiss|ismiss|key|keyav|keyw|lag|lag1|lagn|lapEighb|lapEighi|lapEighvb|lapEighvi|lapgEig|lapgEigh|lapgEighv|lapgEigv|lapgSchur|lapgSvdcst|lapgSvds|lapgSvdst|lapSvdcusv|lapSvds|lLine truncated
},
{
"begin": "[a-zA-Z_]\\w*\\s*\\(",
"returnBegin": true,
"keywords": {
"$ref": "#keywords"
},
"relevance": 0,
"contains": [
{
"beginKeywords": "bool break call callexe checkinterrupt clear clearg closeall cls comlog compile continue create debug declare delete disable dlibrary dllcall do dos ed edit else elseif enable end endfor endif endp endo errorlog errorlogat expr external fn for format goto gosub graph if keyword let lib library line load loadarray loadexe loadf loadk loadm loadp loads loadx local locate loopnextindex lprint lpwidth lshow matrix msym ndpclex new open output outwidth plot plotsym pop prcsn print printdos proc push retp return rndcon rndmod rndmult rndseed run save saveall screen scroll setarray show sparse stop string struct system trace trap threadfor threadendfor threadbegin threadjoin threadstat threadend until use while winprint ne ge le gt lt and xor or not eq eqv"
},
{
"$ref": "#contains.9.contains.2.contains.3"
},
{
"className": "built_in",
"begin": "[a-zA-Z_]\\w*",
"relevance": 0
},
{
"$ref": "#contains.9.contains.2"
}
]
},
{
"$ref": "#contains.4"
},
"self"
]
}
]
},
{
"variants": [
{
"begin": "[a-zA-Z_]\\w*\\.[a-zA-Z_]\\w*"
},
{
"begin": "[a-zA-Z_]\\w*\\s*="
}
],
"relevance": 0
},
{
"$ref": "#contains.9.contains.2.contains.4"
},
{
"$ref": "#contains.7.contains.0.contains.4"
}
]
}
@@ -0,0 +1,123 @@
{
"aliases": [
"nc"
],
"case_insensitive": true,
"lexemes": "[A-Z_][A-Z0-9_.]*",
"keywords": "IF DO WHILE ENDWHILE CALL ENDIF SUB ENDSUB GOTO REPEAT ENDREPEAT EQ LT GT NE GE LE OR XOR",
"contains": [
{
"className": "meta",
"begin": "\\%"
},
{
"className": "meta",
"begin": "([O])([0-9]+)"
},
{
"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
}
]
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#contains.2.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "comment",
"begin": "\\(",
"end": "\\)",
"contains": [
{
"$ref": "#contains.2.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "number",
"begin": "([-+]?([0-9]*\\.?[0-9]+\\.?))|(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",
"relevance": 0
},
{
"className": "string",
"begin": "'",
"end": "'",
"illegal": null,
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": null,
"contains": [
{
"$ref": "#contains.6.contains.0"
}
]
},
{
"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"
}
]
}
]
}
@@ -0,0 +1,64 @@
{
"aliases": [
"feature"
],
"keywords": "Feature Background Ability Business Need Scenario Scenarios Scenario Outline Scenario Template Examples Given And Then But When",
"contains": [
{
"className": "symbol",
"begin": "\\*",
"relevance": 0
},
{
"className": "meta",
"begin": "@[^@\\s]+"
},
{
"begin": "\\|",
"end": "\\|\\w*$",
"contains": [
{
"className": "string",
"begin": "[^|]+"
}
]
},
{
"className": "variable",
"begin": "<",
"end": ">"
},
{
"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
}
]
},
{
"className": "string",
"begin": "\"\"\"",
"end": "\"\"\""
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
}
]
}
@@ -0,0 +1,51 @@
{
"keywords": {
"keyword": "break continue discard do else for if return while switch case default attribute binding buffer ccw centroid centroid varying coherent column_major const cw depth_any depth_greater depth_less depth_unchanged early_fragment_tests equal_spacing flat fractional_even_spacing fractional_odd_spacing highp in index inout invariant invocations isolines layout line_strip lines lines_adjacency local_size_x local_size_y 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 r16 r16_snorm r16f r16i r16ui r32f r32i r32ui r8 r8_snorm r8i r8ui readonly restrict rg16 rg16_snorm rg16f rg16i rg16ui rg32f rg32i rg32ui rg8 rg8_snorm rg8i rg8ui rgb10_a2 rgb10_a2ui rgba16 rgba16_snorm rgba16f rgba16i rgba16ui rgba32f rgba32i rgba32ui rgba8 rgba8_snorm rgba8i rgba8ui row_major sample shared smooth std140 std430 stream triangle_strip triangles triangles_adjacency uniform varying vertices volatile writeonly",
"type": "atomic_uint bool bvec2 bvec3 bvec4 dmat2 dmat2x2 dmat2x3 dmat2x4 dmat3 dmat3x2 dmat3x3 dmat3x4 dmat4 dmat4x2 dmat4x3 dmat4x4 double dvec2 dvec3 dvec4 float iimage1D iimage1DArray iimage2D iimage2DArray iimage2DMS iimage2DMSArray iimage2DRect iimage3D iimageBufferiimageCube iimageCubeArray image1D image1DArray image2D image2DArray image2DMS image2DMSArray image2DRect image3D imageBuffer imageCube imageCubeArray int isampler1D isampler1DArray isampler2D isampler2DArray isampler2DMS isampler2DMSArray isampler2DRect isampler3D isamplerBuffer isamplerCube isamplerCubeArray ivec2 ivec3 ivec4 mat2 mat2x2 mat2x3 mat2x4 mat3 mat3x2 mat3x3 mat3x4 mat4 mat4x2 mat4x3 mat4x4 sampler1D sampler1DArray sampler1DArrayShadow sampler1DShadow sampler2D sampler2DArray sampler2DArrayShadow sampler2DMS sampler2DMSArray sampler2DRect sampler2DRectShadow sampler2DShadow sampler3D samplerBuffer samplerCube samplerCubeArray samplerCubeArrayShadow samplerCubeShadow image1D uimage1DArray uimage2D uimage2DArray uimage2DMS uimage2DMSArray uimage2DRect uimage3D uimageBuffer uimageCube uimageCubeArray uint usampler1D usampler1DArray usampler2D usampler2DArray usampler2DMS usampler2DMSArray usampler2DRect usampler3D samplerBuffer usamplerCube usamplerCubeArray uvec2 uvec3 uvec4 vec2 vec3 vec4 void",
"built_in": "gl_MaxAtomicCounterBindings gl_MaxAtomicCounterBufferSize gl_MaxClipDistances gl_MaxClipPlanes gl_MaxCombinedAtomicCounterBuffers gl_MaxCombinedAtomicCounters gl_MaxCombinedImageUniforms gl_MaxCombinedImageUnitsAndFragmentOutputs gl_MaxCombinedTextureImageUnits gl_MaxComputeAtomicCounterBuffers gl_MaxComputeAtomicCounters gl_MaxComputeImageUniforms gl_MaxComputeTextureImageUnits gl_MaxComputeUniformComponents gl_MaxComputeWorkGroupCount gl_MaxComputeWorkGroupSize gl_MaxDrawBuffers gl_MaxFragmentAtomicCounterBuffers gl_MaxFragmentAtomicCounters gl_MaxFragmentImageUniforms gl_MaxFragmentInputComponents gl_MaxFragmentInputVectors gl_MaxFragmentUniformComponents gl_MaxFragmentUniformVectors gl_MaxGeometryAtomicCounterBuffers gl_MaxGeometryAtomicCounters gl_MaxGeometryImageUniforms gl_MaxGeometryInputComponents gl_MaxGeometryOutputComponents gl_MaxGeometryOutputVertices gl_MaxGeometryTextureImageUnits gl_MaxGeometryTotalOutputComponents gl_MaxGeometryUniformComponents gl_MaxGeometryVaryingComponents gl_MaxImageSamples gl_MaxImageUnits gl_MaxLights gl_MaxPatchVertices gl_MaxProgramTexelOffset gl_MaxTessControlAtomicCounterBuffers gl_MaxTessControlAtomicCounters gl_MaxTessControlImageUniforms gl_MaxTessControlInputComponents gl_MaxTessControlOutputComponents gl_MaxTessControlTextureImageUnits gl_MaxTessControlTotalOutputComponents gl_MaxTessControlUniformComponents gl_MaxTessEvaluationAtomicCounterBuffers gl_MaxTessEvaluationAtomicCounters gl_MaxTessEvaluationImageUniforms gl_MaxTessEvaluationInputComponents gl_MaxTessEvaluationOutputComponents gl_MaxTessEvaluationTextureImageUnits gl_MaxTessEvaluationUniformComponents gl_MaxTessGenLevel gl_MaxTessPatchComponents gl_MaxTextureCoords gl_MaxTextureImageUnits gl_MaxTextureUnits gl_MaxVaryingComponents gl_MaxVaryingFloats gl_MaxVaryingVectors gl_MaxVertexAtomicCounterBuffers gl_MaxVertexAtomicCounters gl_MaxVertexAttribs gl_MaxVertexImageUniforms gl_MaxVertexOutputComponents gl_MaxVertexOutputVectors gl_MaxVertexTextureImageUnits gl_MaxVertexUniformComponents gl_MaxVertexUniformVectors gl_MaxViewports gl_MinProgramTexelOffset gl_BackColor gl_BackLightModelProduct gl_BackLightProduct gl_BackMaterial gl_BackSecondaryColor gl_ClipDistance gl_ClipPlane gl_ClipVertex gl_Color gl_DepthRange gl_EyePlaneQ gl_EyePlaneR gl_EyePlaneS gl_EyePlaneT gl_Fog gl_FogCoord gl_FogFragCoord gl_FragColor gl_FragCoord gl_FragData gl_FragDepth gl_FrontColor gl_FrontFacing gl_FrontLightModelProduct gl_FrontLightProduct gl_FrontMaterial gl_FrontSecondaryColor gl_GlobalInvocationID gl_InstanceID gl_InvocationID gl_Layer gl_LightModel gl_LightSource gl_LocalInvocationID gl_LocalInvocationIndex gl_ModelViewMatrix gl_ModelViewMatrixInverse gl_ModelViewMatrixInverseTranspose gl_ModelViewMatrixTranspose gl_ModelViewProjectionMatrix gl_ModelViewProjectionMatrixInverse gl_ModelViewProjectionMatrixInverseTranspose gl_ModelViewProjectionMatrixTranspose gl_MultiTexCoord0 gl_MultiTexCoord1 gl_MultiTexCoord2 gl_MultiTexCoord3 gl_MultiTexCoord4 gl_MultiTexCoord5 gl_MultiTexCoord6 gl_MultiTexCoord7 gl_Normal gl_NormalMatrix gl_NormalScale gl_NumSamples gl_NumWorkGroups gl_ObjectPlaneQ gl_ObjectPlaneR gl_ObjectPlaneS gl_ObjectPlaneT gl_PatchVerticesIn gl_Point gl_PointCoord gl_PointSize gl_Position gl_PrimitiveID gl_PrimitiveIDIn gl_ProjectionMatrix gl_ProjectionMatrixInverse gl_ProjectionMatrixInverseTranspose gl_ProjectionMatrixTranspose gl_SampleID gl_SampleMask gl_SampleMaskIn gl_SamplePosition gl_SecondaryColor gl_TessCoord gl_TessLevelInner gl_TessLevelOuter gl_TexCoord gl_TextureEnvColor gl_TextureMatrix gl_TextureMatrixInverse gl_TextureMatrixInverseTranspose gl_TextureMatrixTranspose gl_Vertex gl_VertexID gl_ViewportIndex gl_WorkGroupID gl_WorkGroupSize gl_in gl_out EmitStreamVertex EmitVertex EndPrimitive EndStreamPrimitive abs acos acosh all any asin asinh atan atanh atomicAdd atomicAnd atomicCompSwap atomicCounter atomicCounterDecrement atomicCounterIncrement atomicExchange atomicMax atomicMin atomicOr atomicXor barrier bitCount bitfieldExtract bitfieldInsert bitfieldReverse ceil clamp cos cosh cross dFdx dFdy degrees determinant distance dot equal exp exp2 faceforward findLSB findMSB floatBitsToInt floatBitsToUint floor fma fract frexp ftransform fwidth greaterThan greaterThanEqual groupMemoryBarrier imageAtomicAdd imageAtomicAnd imageAtomicCompSwap imageAtomicExchange imageAtomicMax imageAtomicMin imageAtomicOr imageAtomicXor imageLoad imageSize imageStore imulExtended intBitsToFloat interpolateAtCentroid interpolateAtOffset interpolateAtSample inverse inversesqrt isinf isnan ldexp length lessThan lessThanEqual log log2 matrixCompMult max memoryBarrier memoryBarrierAtomicCounter memoryBarrierBuffer memoryBarrierImage memoryBarrierShared min mix mod modf noise1 noise2 noise3 noise4 normalize not notEqual outerProduct packDouble2x32 packHalf2x16 packSnorm2x16 packSnorm4x8 packUnorm2x16 packUnorm4x8 pow radians reflect refract round roundEven shadow1D shadow1DLod shadow1DProj Line truncated
"literal": "true false"
},
"illegal": "\"",
"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
}
]
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#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+)?)",
"relevance": 0
},
{
"className": "meta",
"begin": "#",
"end": "$"
}
]
}
@@ -0,0 +1,73 @@
{
"aliases": [
"gml",
"GML"
],
"case_insensitive": false,
"keywords": {
"keyword": "begin end if then else while do for break continue with until repeat exit and or xor not return mod div switch case default var globalvar enum #macro #region #endregion",
"built_in": "is_real is_string is_array is_undefined is_int32 is_int64 is_ptr is_vec3 is_vec4 is_matrix is_bool typeof variable_global_exists variable_global_get variable_global_set variable_instance_exists variable_instance_get variable_instance_set variable_instance_get_names array_length_1d array_length_2d array_height_2d array_equals array_create array_copy random random_range irandom irandom_range random_set_seed random_get_seed randomize randomise choose abs round floor ceil sign frac sqrt sqr exp ln log2 log10 sin cos tan arcsin arccos arctan arctan2 dsin dcos dtan darcsin darccos darctan darctan2 degtorad radtodeg power logn min max mean median clamp lerp dot_product dot_product_3d dot_product_normalised dot_product_3d_normalised dot_product_normalized dot_product_3d_normalized math_set_epsilon math_get_epsilon angle_difference point_distance_3d point_distance point_direction lengthdir_x lengthdir_y real string int64 ptr string_format chr ansi_char ord string_length string_byte_length string_pos string_copy string_char_at string_ord_at string_byte_at string_set_byte_at string_delete string_insert string_lower string_upper string_repeat string_letters string_digits string_lettersdigits string_replace string_replace_all string_count string_hash_to_newline clipboard_has_text clipboard_set_text clipboard_get_text date_current_datetime date_create_datetime date_valid_datetime date_inc_year date_inc_month date_inc_week date_inc_day date_inc_hour date_inc_minute date_inc_second date_get_year date_get_month date_get_week date_get_day date_get_hour date_get_minute date_get_second date_get_weekday date_get_day_of_year date_get_hour_of_year date_get_minute_of_year date_get_second_of_year date_year_span date_month_span date_week_span date_day_span date_hour_span date_minute_span date_second_span date_compare_datetime date_compare_date date_compare_time date_date_of date_time_of date_datetime_string date_date_string date_time_string date_days_in_month date_days_in_year date_leap_year date_is_today date_set_timezone date_get_timezone game_set_speed game_get_speed motion_set motion_add place_free place_empty place_meeting place_snapped move_random move_snap move_towards_point move_contact_solid move_contact_all move_outside_solid move_outside_all move_bounce_solid move_bounce_all move_wrap distance_to_point distance_to_object position_empty position_meeting path_start path_end mp_linear_step mp_potential_step mp_linear_step_object mp_potential_step_object mp_potential_settings mp_linear_path mp_potential_path mp_linear_path_object mp_potential_path_object mp_grid_create mp_grid_destroy mp_grid_clear_all mp_grid_clear_cell mp_grid_clear_rectangle mp_grid_add_cell mp_grid_get_cell mp_grid_add_rectangle mp_grid_add_instances mp_grid_path mp_grid_draw mp_grid_to_ds_grid collision_point collision_rectangle collision_circle collision_ellipse collision_line collision_point_list collision_rectangle_list collision_circle_list collision_ellipse_list collision_line_list instance_position_list instance_place_list point_in_rectangle point_in_triangle point_in_circle rectangle_in_rectangle rectangle_in_triangle rectangle_in_circle instance_find instance_exists instance_number instance_position instance_nearest instance_furthest instance_place instance_create_depth instance_create_layer instance_copy instance_change instance_destroy position_destroy position_change instance_id_get instance_deactivate_all instance_deactivate_object instance_deactivate_region instance_activate_all instance_activate_object instance_activate_region room_goto room_goto_previous room_goto_next room_previous room_next room_restart game_end game_restart game_load game_save game_save_buffer game_load_buffer event_perform event_user event_perform_object event_inherited show_debug_message show_debug_overlay debug_event debug_get_callstack alarm_get alarm_set font_texture_page_size keyboard_set_map keyboard_get_map keyboard_unset_map keyboard_check keyboard_check_pressed keyboard_check_released keyboard_check_direct keyboard_get_numlock keyboard_set_numlock keyboard_key_press keyboard_key_release keyboard_clear io_clear mouse_check_button mouse_check_button_pressed mouse_check_button_released mouse_wheel_up mouse_wheel_down mouse_clear draw_self draw_sprite draw_sprite_pos draw_sprite_ext draw_sprite_stretched draw_sprite_stretched_ext draw_sprite_tiled draw_sprite_tiled_ext draw_sprite_part draw_sprite_part_ext draw_sprite_general draw_clear draw_clear_alpha draw_point draw_line draw_line_width draw_rectangle draw_roundrect draw_roundrect_ext draw_triangle draw_circle draw_ellipse draw_set_circle_precision draw_arrow draw_button draw_path draw_healthbar draw_getpixel draw_getpixel_ext draw_set_colour draw_set_color draw_set_alpha draw_get_colour draw_get_color draw_get_alpha merge_colour make_colour_rgb make_colour_hsv colour_get_red colour_get_green colour_get_blue colour_get_hue colour_get_saturation colour_get_value merge_color make_color_rgb mLine truncated
"literal": "self other all noone global local undefined pointer_invalid pointer_null path_action_stop path_action_restart path_action_continue path_action_reverse true false pi GM_build_date GM_version GM_runtime_version timezone_local timezone_utc gamespeed_fps gamespeed_microseconds ev_create ev_destroy ev_step ev_alarm ev_keyboard ev_mouse ev_collision ev_other ev_draw ev_draw_begin ev_draw_end ev_draw_pre ev_draw_post ev_keypress ev_keyrelease ev_trigger ev_left_button ev_right_button ev_middle_button ev_no_button ev_left_press ev_right_press ev_middle_press ev_left_release ev_right_release ev_middle_release ev_mouse_enter ev_mouse_leave ev_mouse_wheel_up ev_mouse_wheel_down ev_global_left_button ev_global_right_button ev_global_middle_button ev_global_left_press ev_global_right_press ev_global_middle_press ev_global_left_release ev_global_right_release ev_global_middle_release ev_joystick1_left ev_joystick1_right ev_joystick1_up ev_joystick1_down ev_joystick1_button1 ev_joystick1_button2 ev_joystick1_button3 ev_joystick1_button4 ev_joystick1_button5 ev_joystick1_button6 ev_joystick1_button7 ev_joystick1_button8 ev_joystick2_left ev_joystick2_right ev_joystick2_up ev_joystick2_down ev_joystick2_button1 ev_joystick2_button2 ev_joystick2_button3 ev_joystick2_button4 ev_joystick2_button5 ev_joystick2_button6 ev_joystick2_button7 ev_joystick2_button8 ev_outside ev_boundary ev_game_start ev_game_end ev_room_start ev_room_end ev_no_more_lives ev_animation_end ev_end_of_path ev_no_more_health ev_close_button ev_user0 ev_user1 ev_user2 ev_user3 ev_user4 ev_user5 ev_user6 ev_user7 ev_user8 ev_user9 ev_user10 ev_user11 ev_user12 ev_user13 ev_user14 ev_user15 ev_step_normal ev_step_begin ev_step_end ev_gui ev_gui_begin ev_gui_end ev_cleanup ev_gesture ev_gesture_tap ev_gesture_double_tap ev_gesture_drag_start ev_gesture_dragging ev_gesture_drag_end ev_gesture_flick ev_gesture_pinch_start ev_gesture_pinch_in ev_gesture_pinch_out ev_gesture_pinch_end ev_gesture_rotate_start ev_gesture_rotating ev_gesture_rotate_end ev_global_gesture_tap ev_global_gesture_double_tap ev_global_gesture_drag_start ev_global_gesture_dragging ev_global_gesture_drag_end ev_global_gesture_flick ev_global_gesture_pinch_start ev_global_gesture_pinch_in ev_global_gesture_pinch_out ev_global_gesture_pinch_end ev_global_gesture_rotate_start ev_global_gesture_rotating ev_global_gesture_rotate_end vk_nokey vk_anykey vk_enter vk_return vk_shift vk_control vk_alt vk_escape vk_space vk_backspace vk_tab vk_pause vk_printscreen vk_left vk_right vk_up vk_down vk_home vk_end vk_delete vk_insert vk_pageup vk_pagedown vk_f1 vk_f2 vk_f3 vk_f4 vk_f5 vk_f6 vk_f7 vk_f8 vk_f9 vk_f10 vk_f11 vk_f12 vk_numpad0 vk_numpad1 vk_numpad2 vk_numpad3 vk_numpad4 vk_numpad5 vk_numpad6 vk_numpad7 vk_numpad8 vk_numpad9 vk_divide vk_multiply vk_subtract vk_add vk_decimal vk_lshift vk_lcontrol vk_lalt vk_rshift vk_rcontrol vk_ralt mb_any mb_none mb_left mb_right mb_middle c_aqua c_black c_blue c_dkgray c_fuchsia c_gray c_green c_lime c_ltgray c_maroon c_navy c_olive c_purple c_red c_silver c_teal c_white c_yellow c_orange fa_left fa_center fa_right fa_top fa_middle fa_bottom pr_pointlist pr_linelist pr_linestrip pr_trianglelist pr_trianglestrip pr_trianglefan bm_complex bm_normal bm_add bm_max bm_subtract bm_zero bm_one bm_src_colour bm_inv_src_colour bm_src_color bm_inv_src_color bm_src_alpha bm_inv_src_alpha bm_dest_alpha bm_inv_dest_alpha bm_dest_colour bm_inv_dest_colour bm_dest_color bm_inv_dest_color bm_src_alpha_sat tf_point tf_linear tf_anisotropic mip_off mip_on mip_markedonly audio_falloff_none audio_falloff_inverse_distance audio_falloff_inverse_distance_clamped audio_falloff_linear_distance audio_falloff_linear_distance_clamped audio_falloff_exponent_distance audio_falloff_exponent_distance_clamped audio_old_system audio_new_system audio_mono audio_stereo audio_3d cr_default cr_none cr_arrow cr_cross cr_beam cr_size_nesw cr_size_ns cr_size_nwse cr_size_we cr_uparrow cr_hourglass cr_drag cr_appstart cr_handpoint cr_size_all spritespeed_framespersecond spritespeed_framespergameframe asset_object asset_unknown asset_sprite asset_sound asset_room asset_path asset_script asset_font asset_timeline asset_tiles asset_shader fa_readonly fa_hidden fa_sysfile fa_volumeid fa_directory fa_archive ds_type_map ds_type_list ds_type_stack ds_type_queue ds_type_grid ds_type_priority ef_explosion ef_ring ef_ellipse ef_firework ef_smoke ef_smokeup ef_star ef_spark ef_flare ef_cloud ef_rain ef_snow pt_shape_pixel pt_shape_disk pt_shape_square pt_shape_line pt_shape_star pt_shape_circle pt_shape_ring pt_shape_sphere pt_shape_flare pt_shape_spark pt_shape_explosion pt_shape_cloud pt_shape_smoke pt_shape_snow ps_distr_linear ps_distr_gaussian ps_distr_invgaussian ps_shape_rectangle ps_shape_ellipse ps_shape_diamond ps_shape_line ty_real ty_string dll_cdecl dll_stdcall matrix_view matrix_projection matrix_world os_win32 os_windows os_macosx os_ios os_android os_symbian os_linuxLine truncated
"symbol": "argument_relative argument argument0 argument1 argument2 argument3 argument4 argument5 argument6 argument7 argument8 argument9 argument10 argument11 argument12 argument13 argument14 argument15 argument_count x y xprevious yprevious xstart ystart hspeed vspeed direction speed friction gravity gravity_direction path_index path_position path_positionprevious path_speed path_scale path_orientation path_endaction object_index id solid persistent mask_index instance_count instance_id room_speed fps fps_real current_time current_year current_month current_day current_weekday current_hour current_minute current_second alarm timeline_index timeline_position timeline_speed timeline_running timeline_loop room room_first room_last room_width room_height room_caption room_persistent score lives health show_score show_lives show_health caption_score caption_lives caption_health event_type event_number event_object event_action application_surface gamemaker_pro gamemaker_registered gamemaker_version error_occurred error_last debug_mode keyboard_key keyboard_lastkey keyboard_lastchar keyboard_string mouse_x mouse_y mouse_button mouse_lastbutton cursor_sprite visible sprite_index sprite_width sprite_height sprite_xoffset sprite_yoffset image_number image_index image_speed depth image_xscale image_yscale image_angle image_alpha image_blend bbox_left bbox_right bbox_top bbox_bottom layer background_colour background_showcolour background_color background_showcolor view_enabled view_current view_visible view_xview view_yview view_wview view_hview view_xport view_yport view_wport view_hport view_angle view_hborder view_vborder view_hspeed view_vspeed view_object view_surface_id view_camera game_id game_display_name game_project_name game_save_id working_directory temp_directory program_directory browser_width browser_height os_type os_device os_browser os_version display_aa async_load delta_time webgl_enabled event_data iap_data phy_rotation phy_position_x phy_position_y phy_angular_velocity phy_linear_velocity_x phy_linear_velocity_y phy_speed_x phy_speed_y phy_speed phy_angular_damping phy_linear_damping phy_bullet phy_fixed_rotation phy_active phy_mass phy_inertia phy_com_x phy_com_y phy_dynamic phy_kinematic phy_sleeping phy_collision_points phy_collision_x phy_collision_y phy_col_normal_x phy_col_normal_y phy_position_xprevious phy_position_yprevious"
},
"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
}
]
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#contains.0.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "'",
"end": "'",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.2.contains.0"
}
]
},
{
"className": "number",
"begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",
"relevance": 0
}
]
}
@@ -0,0 +1,114 @@
{
"aliases": [
"golang"
],
"keywords": {
"keyword": "break default func interface select case map struct chan else goto package switch const fallthrough if range type continue for import return var go defer bool byte complex64 complex128 float32 float64 int8 int16 int32 int64 string uint8 uint16 uint32 uint64 int uint uintptr rune",
"literal": "true false iota nil",
"built_in": "append cap close complex copy imag len make new panic print println real recover delete"
},
"illegal": "<\/",
"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
}
]
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#contains.0.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "string",
"variants": [
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "'",
"end": "'",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.2.variants.0.contains.0"
}
]
},
{
"begin": "`",
"end": "`"
}
]
},
{
"className": "number",
"variants": [
{
"begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)[i]",
"relevance": 1
},
{
"className": "number",
"begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",
"relevance": 0
}
]
},
{
"begin": ":="
},
{
"className": "function",
"beginKeywords": "func",
"end": "\\s*(\\{|$)",
"excludeEnd": true,
"contains": [
{
"className": "title",
"begin": "[a-zA-Z]\\w*",
"relevance": 0
},
{
"className": "params",
"begin": "\\(",
"end": "\\)",
"keywords": {
"$ref": "#keywords"
},
"illegal": "[\"']"
}
]
}
]
}
@@ -0,0 +1,44 @@
{
"keywords": {
"keyword": "println readln print import module function local return let var while for foreach times in case when match with break continue augment augmentation each find filter reduce if then else otherwise try catch finally raise throw orIfNull DynamicObject|10 DynamicVariable struct Observable map set vector list array",
"literal": "true false null"
},
"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
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "number",
"begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",
"relevance": 0
},
{
"className": "meta",
"begin": "@[A-Za-z]+"
}
]
}
@@ -0,0 +1,87 @@
{
"case_insensitive": true,
"keywords": {
"keyword": "task project allprojects subprojects artifacts buildscript configurations dependencies repositories sourceSets description delete from into include exclude source classpath destinationDir includes options sourceCompatibility targetCompatibility group flatDir doLast doFirst flatten todir fromdir ant def abstract break case catch continue default do else extends final finally for if implements instanceof native new private protected public return static switch synchronized throw throws transient try volatile while strictfp package import false null super this true antlrtask checkstyle codenarc copy boolean byte char class double float int interface long short void compile runTime file fileTree abs any append asList asWritable call collect compareTo count div dump each eachByte eachFile eachLine every find findAll flatten getAt getErr getIn getOut getText grep immutable inject inspect intersect invokeMethods isCase join leftShift minus multiply newInputStream newOutputStream newPrintWriter newReader newWriter next plus pop power previous print println push putAt read readBytes readLines reverse reverseEach round size sort splitEachLine step subMap times toInteger toList tokenize upto waitForOrKill withPrintWriter withReader withStream withWriter withWriterAppend write writeLine"
},
"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
}
]
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#contains.0.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "'",
"end": "'",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.2.contains.0"
}
]
},
{
"className": "number",
"begin": "\\b\\d+(\\.\\d+)?",
"relevance": 0
},
{
"className": "regexp",
"begin": "\\\/",
"end": "\\\/[gimuy]*",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.2.contains.0"
},
{
"begin": "\\[",
"end": "\\]",
"relevance": 0,
"contains": [
{
"$ref": "#contains.2.contains.0"
}
]
}
]
}
]
}
@@ -0,0 +1,160 @@
{
"keywords": {
"literal": "true false null",
"keyword": "byte short char int long boolean float double void def as in assert trait super this abstract static volatile transient public private protected synchronized final class interface enum if else for while switch case break default continue throw throws try catch finally implements extends new import package return instanceof"
},
"contains": [
{
"className": "comment",
"begin": "\/\\*\\*",
"end": "\\*\/",
"contains": [
{
"begin": "\\w+@",
"relevance": 0
},
{
"className": "doctag",
"begin": "@[A-Za-z]+"
},
{
"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": "comment",
"begin": "\/\/",
"end": "$",
"contains": [
{
"$ref": "#contains.0.contains.2"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#contains.0.contains.2"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "\"\"\"",
"end": "\"\"\""
},
{
"className": "string",
"begin": "'''",
"end": "'''"
},
{
"className": "string",
"begin": "\\$\/",
"end": "\/\\$",
"relevance": 10
},
{
"className": "string",
"begin": "'",
"end": "'",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "regexp",
"begin": "~?\\\/[^\\\/\\n]+\\\/",
"contains": [
{
"$ref": "#contains.6.contains.0"
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.6.contains.0"
}
]
},
{
"className": "meta",
"begin": "^#!\/usr\/bin\/env",
"end": "$",
"illegal": "\n"
},
{
"className": "number",
"begin": "\\b(0b[01]+)",
"relevance": 0
},
{
"className": "class",
"beginKeywords": "class interface trait enum",
"end": "{",
"illegal": ":",
"contains": [
{
"beginKeywords": "extends implements"
},
{
"className": "title",
"begin": "[a-zA-Z_]\\w*",
"relevance": 0
}
]
},
{
"className": "number",
"begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",
"relevance": 0
},
{
"className": "meta",
"begin": "@[A-Za-z]+"
},
{
"className": "string",
"begin": "[^\\?]{0}[A-Za-z0-9_$]+ *:"
},
{
"begin": "\\?",
"end": "\\:"
},
{
"className": "symbol",
"begin": "^\\s*[A-Za-z0-9_$]+:",
"relevance": 0
}
],
"illegal": "#|<\\\/"
}
@@ -0,0 +1,136 @@
{
"case_insensitive": true,
"contains": [
{
"className": "meta",
"begin": "^!!!( (5|1\\.1|Strict|Frameset|Basic|Mobile|RDFa|XML\\b.*))?$",
"relevance": 10
},
{
"className": "comment",
"begin": "^\\s*(!=#|=#|-#|\/).*$",
"end": false,
"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
},
{
"begin": "^\\s*(-|=|!=)(?!#)",
"starts": {
"end": "\\n",
"subLanguage": "ruby"
}
},
{
"className": "tag",
"begin": "^\\s*%",
"contains": [
{
"className": "selector-tag",
"begin": "\\w+"
},
{
"className": "selector-id",
"begin": "#[\\w\\-]+"
},
{
"className": "selector-class",
"begin": "\\.[\\w\\-]+"
},
{
"begin": "{\\s*",
"end": "\\s*}",
"contains": [
{
"begin": ":\\w+\\s*=>",
"end": ",\\s+",
"returnBegin": true,
"endsWithParent": true,
"contains": [
{
"className": "attr",
"begin": ":\\w+"
},
{
"className": "string",
"begin": "'",
"end": "'",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.3.contains.3.contains.0.contains.1.contains.0"
}
]
},
{
"begin": "\\w+",
"relevance": 0
}
]
}
]
},
{
"begin": "\\(\\s*",
"end": "\\s*\\)",
"excludeEnd": true,
"contains": [
{
"begin": "\\w+\\s*=",
"end": "\\s+",
"returnBegin": true,
"endsWithParent": true,
"contains": [
{
"className": "attr",
"begin": "\\w+",
"relevance": 0
},
{
"$ref": "#contains.3.contains.3.contains.0.contains.1"
},
{
"$ref": "#contains.3.contains.3.contains.0.contains.2"
},
{
"begin": "\\w+",
"relevance": 0
}
]
}
]
}
]
},
{
"begin": "^\\s*[=~]\\s*"
},
{
"begin": "#{",
"starts": {
"end": "}",
"subLanguage": "ruby"
}
}
]
}
@@ -0,0 +1,131 @@
{
"aliases": [
"hbs",
"html.hbs",
"html.handlebars"
],
"case_insensitive": true,
"subLanguage": "xml",
"contains": [
{
"begin": "\\\\\\{\\{",
"skip": true
},
{
"begin": "\\\\\\\\(?=\\{\\{)",
"skip": true
},
{
"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
}
]
},
{
"className": "comment",
"begin": "\\{\\{!",
"end": "\\}\\}",
"contains": [
{
"$ref": "#contains.2.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "template-tag",
"begin": "\\{\\{\\{\\{(?!\\\/)",
"end": "\\}\\}\\}\\}",
"contains": [
{
"begin": "\".*?\"|'.*?'|\\[.*?\\]|\\w+",
"keywords": {
"builtin-name": "each in with if else unless bindattr action collection debugger log outlet template unbound view yield lookup"
},
"starts": {
"endsWithParent": true,
"relevance": 0,
"contains": [
{
"begin": "\".*?\"|'.*?'|\\[.*?\\]|\\w+",
"relevance": 0
}
]
},
"className": "name"
}
],
"starts": {
"end": "\\{\\{\\{\\{\\\/",
"returnEnd": true,
"subLanguage": "xml"
}
},
{
"className": "template-tag",
"begin": "\\{\\{\\{\\{\\\/",
"end": "\\}\\}\\}\\}",
"contains": [
{
"$ref": "#contains.4.contains.0"
}
]
},
{
"className": "template-tag",
"begin": "\\{\\{[#\\\/]",
"end": "\\}\\}",
"contains": [
{
"$ref": "#contains.4.contains.0"
}
]
},
{
"className": "template-variable",
"begin": "\\{\\{\\{",
"end": "\\}\\}\\}",
"keywords": {
"$ref": "#contains.4.contains.0.keywords"
},
"contains": [
{
"begin": "\".*?\"|'.*?'|\\[.*?\\]|\\w+",
"keywords": {
"$ref": "#contains.4.contains.0.keywords"
},
"starts": {
"$ref": "#contains.4.contains.0.starts"
},
"relevance": 0
}
]
},
{
"className": "template-variable",
"begin": "\\{\\{",
"end": "\\}\\}",
"keywords": {
"$ref": "#contains.4.contains.0.keywords"
},
"contains": [
{
"$ref": "#contains.7.contains.0"
}
]
}
]
}
@@ -0,0 +1,225 @@
{
"aliases": [
"hs"
],
"keywords": "let in if then else case of where do module import hiding qualified type data newtype deriving class instance as default infix infixl infixr foreign export ccall stdcall cplusplus jvm dotnet safe unsafe family forall mdo proc rec",
"contains": [
{
"beginKeywords": "module",
"end": "where",
"keywords": "module where",
"contains": [
{
"begin": "\\(",
"end": "\\)",
"illegal": "\"",
"contains": [
{
"className": "meta",
"begin": "{-#",
"end": "#-}"
},
{
"className": "meta",
"begin": "^#",
"end": "$"
},
{
"className": "type",
"begin": "\\b[A-Z][\\w]*(\\((\\.\\.|,|\\w+)\\))?"
},
{
"className": "title",
"begin": "[_a-z][\\w']*",
"relevance": 0
},
{
"variants": [
{
"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
}
]
},
{
"className": "comment",
"begin": "{-",
"end": "-}",
"contains": [
"self",
{
"$ref": "#contains.0.contains.0.contains.4.variants.0.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
}
]
}
]
},
{
"$ref": "#contains.0.contains.0.contains.4"
}
],
"illegal": "\\W\\.|;"
},
{
"begin": "\\bimport\\b",
"end": "$",
"keywords": "import qualified as hiding",
"contains": [
{
"$ref": "#contains.0.contains.0"
},
{
"$ref": "#contains.0.contains.0.contains.4"
}
],
"illegal": "\\W\\.|;"
},
{
"className": "class",
"begin": "^(\\s*)?(class|instance)\\b",
"end": "where",
"keywords": "class family instance where",
"contains": [
{
"className": "type",
"begin": "\\b[A-Z][\\w']*",
"relevance": 0
},
{
"$ref": "#contains.0.contains.0"
},
{
"$ref": "#contains.0.contains.0.contains.4"
}
]
},
{
"className": "class",
"begin": "\\b(data|(new)?type)\\b",
"end": "$",
"keywords": "data family type newtype deriving",
"contains": [
{
"$ref": "#contains.0.contains.0.contains.0"
},
{
"$ref": "#contains.2.contains.0"
},
{
"$ref": "#contains.0.contains.0"
},
{
"begin": "{",
"end": "}",
"contains": {
"$ref": "#contains.0.contains.0.contains"
}
},
{
"$ref": "#contains.0.contains.0.contains.4"
}
]
},
{
"beginKeywords": "default",
"end": "$",
"contains": [
{
"$ref": "#contains.2.contains.0"
},
{
"$ref": "#contains.0.contains.0"
},
{
"$ref": "#contains.0.contains.0.contains.4"
}
]
},
{
"beginKeywords": "infix infixl infixr",
"end": "$",
"contains": [
{
"className": "number",
"begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",
"relevance": 0
},
{
"$ref": "#contains.0.contains.0.contains.4"
}
]
},
{
"begin": "\\bforeign\\b",
"end": "$",
"keywords": "foreign import export ccall stdcall cplusplus jvm dotnet safe unsafe",
"contains": [
{
"$ref": "#contains.2.contains.0"
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"$ref": "#contains.0.contains.0.contains.4"
}
]
},
{
"className": "meta",
"begin": "#!\\\/usr\\\/bin\\\/env runhaskell",
"end": "$"
},
{
"$ref": "#contains.0.contains.0.contains.0"
},
{
"$ref": "#contains.0.contains.0.contains.1"
},
{
"$ref": "#contains.6.contains.1"
},
{
"$ref": "#contains.5.contains.0"
},
{
"$ref": "#contains.2.contains.0"
},
{
"className": "title",
"begin": "^[_a-z][\\w']*",
"relevance": 0
},
{
"$ref": "#contains.0.contains.0.contains.4"
},
{
"begin": "->|<-"
}
]
}
@@ -0,0 +1,197 @@
{
"aliases": [
"hx"
],
"keywords": {
"keyword": "break case cast catch continue default do dynamic else enum extern for function here if import in inline never new override package private get set public return static super switch this throw trace try typedef untyped using var while Int Float String Bool Dynamic Void Array ",
"built_in": "trace this",
"literal": "true false null _"
},
"contains": [
{
"className": "string",
"begin": "'",
"end": "'",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
},
{
"className": "subst",
"begin": "\\$\\{",
"end": "\\}"
},
{
"className": "subst",
"begin": "\\$",
"end": "\\W}"
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.0.contains.0"
}
]
},
{
"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
}
]
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#contains.2.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+)?)",
"relevance": 0
},
{
"className": "meta",
"begin": "@:",
"end": "$"
},
{
"className": "meta",
"begin": "#",
"end": "$",
"keywords": {
"meta-keyword": "if else elseif end error"
}
},
{
"className": "type",
"begin": ":[ \t]*",
"end": "[^A-Za-z0-9_ \t\\->]",
"excludeBegin": true,
"excludeEnd": true,
"relevance": 0
},
{
"className": "type",
"begin": ":[ \t]*",
"end": "\\W",
"excludeBegin": true,
"excludeEnd": true
},
{
"className": "type",
"begin": "new *",
"end": "\\W",
"excludeBegin": true,
"excludeEnd": true
},
{
"className": "class",
"beginKeywords": "enum",
"end": "\\{",
"contains": [
{
"className": "title",
"begin": "[a-zA-Z]\\w*",
"relevance": 0
}
]
},
{
"className": "class",
"beginKeywords": "abstract",
"end": "[\\{$]",
"contains": [
{
"className": "type",
"begin": "\\(",
"end": "\\)",
"excludeBegin": true,
"excludeEnd": true
},
{
"className": "type",
"begin": "from +",
"end": "\\W",
"excludeBegin": true,
"excludeEnd": true
},
{
"className": "type",
"begin": "to +",
"end": "\\W",
"excludeBegin": true,
"excludeEnd": true
},
{
"$ref": "#contains.10.contains.0"
}
],
"keywords": {
"keyword": "abstract from to"
}
},
{
"className": "class",
"begin": "\\b(class|interface) +",
"end": "[\\{$]",
"excludeEnd": true,
"keywords": "class interface",
"contains": [
{
"className": "keyword",
"begin": "\\b(extends|implements) +",
"keywords": "extends implements",
"contains": [
{
"className": "type",
"begin": "[a-zA-Z]\\w*",
"relevance": 0
}
]
},
{
"$ref": "#contains.10.contains.0"
}
]
},
{
"className": "function",
"beginKeywords": "function",
"end": "\\(",
"excludeEnd": true,
"illegal": "\\S",
"contains": [
{
"$ref": "#contains.10.contains.0"
}
]
}
],
"illegal": "<\\\/"
}
@@ -0,0 +1,131 @@
{
"case_insensitive": true,
"lexemes": "[\\w\\._]+",
"keywords": "goto gosub return break repeat loop continue wait await dim sdim foreach dimtype dup dupptr end stop newmod delmod mref run exgoto on mcall assert logmes newlab resume yield onexit onerror onkey onclick oncmd exist delete mkdir chdir dirlist bload bsave bcopy memfile if else poke wpoke lpoke getstr chdpm memexpand memcpy memset notesel noteadd notedel noteload notesave randomize noteunsel noteget split strrep setease button chgdisp exec dialog mmload mmplay mmstop mci pset pget syscolor mes print title pos circle cls font sysfont objsize picload color palcolor palette redraw width gsel gcopy gzoom gmode bmpsave hsvcolor getkey listbox chkbox combox input mesbox buffer screen bgscr mouse objsel groll line clrobj boxf objprm objmode stick grect grotate gsquare gradf objimage objskip objenable celload celdiv celput newcom querycom delcom cnvstow comres axobj winobj sendmsg comevent comevarg sarrayconv callfunc cnvwtos comevdisp libptr system hspstat hspver stat cnt err strsize looplev sublev iparam wparam lparam refstr refdval int rnd strlen length length2 length3 length4 vartype gettime peek wpeek lpeek varptr varuse noteinfo instr abs limit getease str strmid strf getpath strtrim sin cos tan atan sqrt double absf expf logf limitf powf geteasef mousex mousey mousew hwnd hinstance hdc ginfo objinfo dirinfo sysinfo thismod __hspver__ __hsp30__ __date__ __time__ __line__ __file__ _debug __hspdef__ and or xor not screen_normal screen_palette screen_hide screen_fixedsize screen_tool screen_frame gmode_gdi gmode_mem gmode_rgb0 gmode_alpha gmode_rgb0alpha gmode_add gmode_sub gmode_pixela ginfo_mx ginfo_my ginfo_act ginfo_sel ginfo_wx1 ginfo_wy1 ginfo_wx2 ginfo_wy2 ginfo_vx ginfo_vy ginfo_sizex ginfo_sizey ginfo_winx ginfo_winy ginfo_mesx ginfo_mesy ginfo_r ginfo_g ginfo_b ginfo_paluse ginfo_dispx ginfo_dispy ginfo_cx ginfo_cy ginfo_intid ginfo_newid ginfo_sx ginfo_sy objinfo_mode objinfo_bmscr objinfo_hwnd notemax notesize dir_cur dir_exe dir_win dir_sys dir_cmdline dir_desktop dir_mydoc dir_tv font_normal font_bold font_italic font_underline font_strikeout font_antialias objmode_normal objmode_guifont objmode_usefont gsquare_grad msgothic msmincho do until while wend for next _break _continue switch case default swbreak swend ddim ldim alloc m_pi rad2deg deg2rad ease_linear ease_quad_in ease_quad_out ease_quad_inout ease_cubic_in ease_cubic_out ease_cubic_inout ease_quartic_in ease_quartic_out ease_quartic_inout ease_bounce_in ease_bounce_out ease_bounce_inout ease_shake_in ease_shake_out ease_shake_inout ease_loop",
"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
}
]
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#contains.0.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "'",
"end": "'",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.2.contains.0"
}
]
},
{
"className": "string",
"begin": "{\"",
"end": "\"}",
"contains": [
{
"$ref": "#contains.2.contains.0"
}
]
},
{
"className": "comment",
"begin": ";",
"end": "$",
"contains": [
{
"$ref": "#contains.0.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
],
"relevance": 0
},
{
"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"
},
"contains": [
{
"className": "meta-string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": {
"$ref": "#contains.2.contains"
}
},
{
"className": "number",
"begin": "\\b\\d+(\\.\\d+)?",
"relevance": 0
},
{
"className": "number",
"begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",
"relevance": 0
},
{
"$ref": "#contains.0"
},
{
"$ref": "#contains.1"
}
]
},
{
"className": "symbol",
"begin": "^\\*(\\w+|@)"
},
{
"$ref": "#contains.6.contains.1"
},
{
"$ref": "#contains.6.contains.2"
}
]
}
@@ -0,0 +1,88 @@
{
"case_insensitive": true,
"subLanguage": "xml",
"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
}
]
},
{
"className": "template-tag",
"begin": "\\{\\{[#\\\/]",
"end": "\\}\\}",
"contains": [
{
"className": "name",
"begin": "[a-zA-Z\\.\\-]+",
"keywords": {
"builtin-name": "action collection component concat debugger each each-in else get hash if input link-to loc log mut outlet partial query-params render textarea unbound unless with yield view"
},
"starts": {
"endsWithParent": true,
"relevance": 0,
"keywords": {
"keyword": "as",
"built_in": "action collection component concat debugger each each-in else get hash if input link-to loc log mut outlet partial query-params render textarea unbound unless with yield view"
},
"contains": [
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"illegal": "\\}\\}",
"begin": "[a-zA-Z0-9_]+=",
"returnBegin": true,
"relevance": 0,
"contains": [
{
"className": "attr",
"begin": "[a-zA-Z0-9_]+"
}
]
},
{
"className": "number",
"begin": "\\b\\d+(\\.\\d+)?",
"relevance": 0
}
]
}
}
]
},
{
"className": "template-variable",
"begin": "\\{\\{[a-zA-Z][a-zA-Z\\-]+",
"end": "\\}\\}",
"keywords": {
"keyword": "as",
"built_in": "action collection component concat debugger each each-in else get hash if input link-to loc log mut outlet partial query-params render textarea unbound unless with yield view"
},
"contains": [
{
"$ref": "#contains.1.contains.0.starts.contains.0"
}
]
}
]
}
@@ -0,0 +1,57 @@
{
"aliases": [
"https"
],
"illegal": "\\S",
"contains": [
{
"begin": "^HTTP\/[0-9\\.]+",
"end": "$",
"contains": [
{
"className": "number",
"begin": "\\b\\d{3}\\b"
}
]
},
{
"begin": "^[A-Z]+ (.*?) HTTP\/[0-9\\.]+$",
"returnBegin": true,
"end": "$",
"contains": [
{
"className": "string",
"begin": " ",
"end": " ",
"excludeBegin": true,
"excludeEnd": true
},
{
"begin": "HTTP\/[0-9\\.]+"
},
{
"className": "keyword",
"begin": "[A-Z]+"
}
]
},
{
"className": "attribute",
"begin": "^\\w",
"end": ": ",
"excludeEnd": true,
"illegal": "\\n|\\s|=",
"starts": {
"end": "$",
"relevance": 0
}
},
{
"begin": "\\n\\n",
"starts": {
"subLanguage": [],
"endsWithParent": true
}
}
]
}
@@ -0,0 +1,149 @@
{
"aliases": [
"hylang"
],
"illegal": "\\S",
"contains": [
{
"className": "meta",
"begin": "^#!",
"end": "$"
},
{
"begin": "\\(",
"end": "\\)",
"contains": [
{
"className": "comment",
"begin": "comment",
"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
}
]
},
{
"keywords": {
"builtin-name": "!= % %= & &= * ** **= *= *map + += , --build-class-- --import-- -= . \/ \/\/ \/\/= \/= < << <<= <= = > >= >> >>= @ @= ^ ^= abs accumulate all and any ap-compose ap-dotimes ap-each ap-each-while ap-filter ap-first ap-if ap-last ap-map ap-map-when ap-pipe ap-reduce ap-reject apply as-> ascii assert assoc bin break butlast callable calling-module-name car case cdr chain chr coll? combinations compile compress cond cons cons? continue count curry cut cycle dec def default-method defclass defmacro defmacro-alias defmacro\/g! defmain defmethod defmulti defn defn-alias defnc defnr defreader defseq del delattr delete-route dict-comp dir disassemble dispatch-reader-macro distinct divmod do doto drop drop-last drop-while empty? end-sequence eval eval-and-compile eval-when-compile even? every? except exec filter first flatten float? fn fnc fnr for for* format fraction genexpr gensym get getattr global globals group-by hasattr hash hex id identity if if* if-not if-python2 import in inc input instance? integer integer-char? integer? interleave interpose is is-coll is-cons is-empty is-even is-every is-float is-instance is-integer is-integer-char is-iterable is-iterator is-keyword is-neg is-none is-not is-numeric is-odd is-pos is-string is-symbol is-zero isinstance islice issubclass iter iterable? iterate iterator? keyword keyword? lambda last len let lif lif-not list* list-comp locals loop macro-error macroexpand macroexpand-1 macroexpand-all map max merge-with method-decorator min multi-decorator multicombinations name neg? next none? nonlocal not not-in not? nth numeric? oct odd? open or ord partition permutations pos? post-route postwalk pow prewalk print product profile\/calls profile\/cpu put-route quasiquote quote raise range read read-str recursive-replace reduce remove repeat repeatedly repr require rest round route route-with-methods rwm second seq set-comp setattr setv some sorted string string? sum switch symbol? take take-nth take-while tee try unless unquote unquote-splicing vars walk when while with with* with-decorator with-gensyms xi xor yield yield-from zero? zip zip-longest | |= ~"
},
"lexemes": "[a-zA-Z_\\-!.?+*=<>&#'][a-zA-Z_\\-!.?+*=<>&#'0-9\/;:]*",
"className": "name",
"begin": "[a-zA-Z_\\-!.?+*=<>&#'][a-zA-Z_\\-!.?+*=<>&#'0-9\/;:]*",
"starts": {
"endsWithParent": true,
"relevance": 0,
"contains": [
{
"$ref": "#contains.1"
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": null,
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "comment",
"begin": "\\^[a-zA-Z_\\-!.?+*=<>&#'][a-zA-Z_\\-!.?+*=<>&#'0-9\/;:]*"
},
{
"className": "comment",
"begin": "\\^\\{",
"end": "\\}",
"contains": [
{
"$ref": "#contains.1.contains.0.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "comment",
"begin": ";",
"end": "$",
"contains": [
{
"$ref": "#contains.1.contains.0.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
],
"relevance": 0
},
{
"className": "symbol",
"begin": "[:]{1,2}[a-zA-Z_\\-!.?+*=<>&#'][a-zA-Z_\\-!.?+*=<>&#'0-9\/;:]*"
},
{
"begin": "[\\[\\{]",
"end": "[\\]\\}]",
"contains": {
"$ref": "#contains.1.contains.1.starts.contains"
}
},
{
"className": "number",
"begin": "[-+]?\\d+(\\.\\d+)?",
"relevance": 0
},
{
"className": "literal",
"begin": "\\b([Tt]rue|[Ff]alse|nil|None)\\b"
},
{
"begin": "[a-zA-Z_\\-!.?+*=<>&#'][a-zA-Z_\\-!.?+*=<>&#'0-9\/;:]*",
"relevance": 0
}
]
}
},
{
"$ref": "#contains.1.contains.1.starts"
}
]
},
{
"$ref": "#contains.1.contains.1.starts.contains.1"
},
{
"$ref": "#contains.1.contains.1.starts.contains.2"
},
{
"$ref": "#contains.1.contains.1.starts.contains.3"
},
{
"$ref": "#contains.1.contains.1.starts.contains.4"
},
{
"$ref": "#contains.1.contains.1.starts.contains.5"
},
{
"$ref": "#contains.1.contains.1.starts.contains.6"
},
{
"$ref": "#contains.1.contains.1.starts.contains.7"
},
{
"$ref": "#contains.1.contains.1.starts.contains.8"
}
]
}
@@ -0,0 +1,47 @@
{
"aliases": [
"i7"
],
"case_insensitive": true,
"keywords": {
"keyword": "thing room person man woman animal container supporter backdrop door scenery open closed locked inside gender is are say understand kind of rule"
},
"contains": [
{
"className": "string",
"begin": "\"",
"end": "\"",
"relevance": 0,
"contains": [
{
"className": "subst",
"begin": "\\[",
"end": "\\]"
}
]
},
{
"className": "section",
"begin": "^(Volume|Book|Part|Chapter|Section|Table)\\b",
"end": "$"
},
{
"begin": "^(Check|Carry out|Report|Instead of|To|Rule|When|Before|After)\\b",
"end": ":",
"contains": [
{
"begin": "\\(This",
"end": "\\)"
}
]
},
{
"className": "comment",
"begin": "\\[",
"end": "\\]",
"contains": [
"self"
]
}
]
}
@@ -0,0 +1,128 @@
{
"aliases": [
"toml"
],
"case_insensitive": true,
"illegal": "\\S",
"contains": [
{
"className": "comment",
"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
}
],
"variants": [
{
"begin": ";",
"end": "$"
},
{
"begin": "#",
"end": "$"
}
]
},
{
"className": "section",
"begin": "\\[+",
"end": "\\]+"
},
{
"begin": "^[a-z0-9\\[\\]_\\.-]+(?=\\s*=\\s*)",
"className": "attr",
"starts": {
"end": "$",
"contains": [
{
"$ref": "#contains.0"
},
{
"begin": "\\[",
"end": "\\]",
"contains": [
{
"$ref": "#contains.0"
},
{
"className": "literal",
"begin": "\\bon|off|true|false|yes|no\\b"
},
{
"className": "variable",
"variants": [
{
"begin": "\\$[\\w\\d\"][\\w\\d_]*"
},
{
"begin": "\\$\\{(.*?)}"
}
]
},
{
"className": "string",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
],
"variants": [
{
"begin": "'''",
"end": "'''",
"relevance": 10
},
{
"begin": "\"\"\"",
"end": "\"\"\"",
"relevance": 10
},
{
"begin": "\"",
"end": "\""
},
{
"begin": "'",
"end": "'"
}
]
},
{
"className": "number",
"relevance": 0,
"variants": [
{
"begin": "([\\+\\-]+)?[\\d]+_[\\d_]+"
},
{
"begin": "\\b\\d+(\\.\\d+)?"
}
]
},
"self"
],
"relevance": 0
},
{
"$ref": "#contains.2.starts.contains.1.contains.1"
},
{
"$ref": "#contains.2.starts.contains.1.contains.2"
},
{
"$ref": "#contains.2.starts.contains.1.contains.3"
},
{
"$ref": "#contains.2.starts.contains.1.contains.4"
}
]
}
}
]
}
@@ -0,0 +1,90 @@
{
"case_insensitive": true,
"keywords": {
"literal": ".False. .True.",
"keyword": "kind do while private call intrinsic where elsewhere type endtype endmodule endselect endinterface end enddo endif if forall endforall only contains default return stop then public subroutine|10 function program .and. .or. .not. .le. .eq. .ge. .gt. .lt. goto save else use module select case access blank direct exist file fmt form formatted iostat name named nextrec number opened rec recl sequential status unformatted unit continue format pause cycle exit c_null_char c_alert c_backspace c_form_feed flush wait decimal round iomsg synchronous nopass non_overridable pass protected volatile abstract extends import non_intrinsic value deferred generic final enumerator class associate bind enum c_int c_short c_long c_long_long c_signed_char c_size_t c_int8_t c_int16_t c_int32_t c_int64_t c_int_least8_t c_int_least16_t c_int_least32_t c_int_least64_t c_int_fast8_t c_int_fast16_t c_int_fast32_t c_int_fast64_t c_intmax_t C_intptr_t c_float c_double c_long_double c_float_complex c_double_complex c_long_double_complex c_bool c_char c_null_ptr c_null_funptr c_new_line c_carriage_return c_horizontal_tab c_vertical_tab iso_c_binding c_loc c_funloc c_associated c_f_pointer c_ptr c_funptr iso_fortran_env character_storage_size error_unit file_storage_size input_unit iostat_end iostat_eor numeric_storage_size output_unit c_f_procpointer ieee_arithmetic ieee_support_underflow_control ieee_get_underflow_mode ieee_set_underflow_mode newunit contiguous recursive pad position action delim readwrite eor advance nml interface procedure namelist include sequence elemental pure integer real character complex logical dimension allocatable|10 parameter external implicit|10 none double precision assign intent optional pointer target in out common equivalence data begin_provider &begin_provider end_provider begin_shell end_shell begin_template end_template subst assert touch soft_touch provide no_dep free irp_if irp_else irp_endif irp_write irp_read",
"built_in": "alog alog10 amax0 amax1 amin0 amin1 amod cabs ccos cexp clog csin csqrt dabs dacos dasin datan datan2 dcos dcosh ddim dexp dint dlog dlog10 dmax1 dmin1 dmod dnint dsign dsin dsinh dsqrt dtan dtanh float iabs idim idint idnint ifix isign max0 max1 min0 min1 sngl algama cdabs cdcos cdexp cdlog cdsin cdsqrt cqabs cqcos cqexp cqlog cqsin cqsqrt dcmplx dconjg derf derfc dfloat dgamma dimag dlgama iqint qabs qacos qasin qatan qatan2 qcmplx qconjg qcos qcosh qdim qerf qerfc qexp qgamma qimag qlgama qlog qlog10 qmax1 qmin1 qmod qnint qsign qsin qsinh qsqrt qtan qtanh abs acos aimag aint anint asin atan atan2 char cmplx conjg cos cosh exp ichar index int log log10 max min nint sign sin sinh sqrt tan tanh print write dim lge lgt lle llt mod nullify allocate deallocate adjustl adjustr all allocated any associated bit_size btest ceiling count cshift date_and_time digits dot_product eoshift epsilon exponent floor fraction huge iand ibclr ibits ibset ieor ior ishft ishftc lbound len_trim matmul maxexponent maxloc maxval merge minexponent minloc minval modulo mvbits nearest pack present product radix random_number random_seed range repeat reshape rrspacing scale scan selected_int_kind selected_real_kind set_exponent shape size spacing spread sum system_clock tiny transpose trim ubound unpack verify achar iachar transfer dble entry dprod cpu_time command_argument_count get_command get_command_argument get_environment_variable is_iostat_end 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_ofacosh asinh atanh bessel_j0 bessel_j1 bessel_jn bessel_y0 bessel_y1 bessel_yn erf erfc erfc_scaled gamma log_gamma hypot norm2 atomic_define atomic_ref execute_command_line leadz trailz storage_size merge_bits bge bgt ble blt dshiftl dshiftr findloc iall iany iparity image_index lcobound ucobound maskl maskr num_images parity popcnt poppar shifta shiftl shiftr this_image IRP_ALIGN irp_here"
},
"illegal": "\\\/\\*",
"contains": [
{
"className": "string",
"begin": "'",
"end": "'",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
],
"relevance": 0
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.0.contains.0"
}
],
"relevance": 0
},
{
"className": "function",
"beginKeywords": "subroutine function program",
"illegal": "[${=\\n]",
"contains": [
{
"className": "title",
"begin": "[a-zA-Z_]\\w*",
"relevance": 0
},
{
"className": "params",
"begin": "\\(",
"end": "\\)"
}
]
},
{
"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": "comment",
"begin": "begin_doc",
"end": "end_doc",
"contains": [
{
"$ref": "#contains.3.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
],
"relevance": 10
},
{
"className": "number",
"begin": "(?=\\b|\\+|\\-|\\.)(?=\\.\\d|\\d)(?:\\d+)?(?:\\.?\\d*)(?:[de][+-]?\\d+)?\\b\\.?",
"relevance": 0
}
]
}
@@ -0,0 +1,137 @@
{
"aliases": [
"isbl"
],
"case_insensitive": true,
"lexemes": "[A-Za-zА\\-Яа-яёЁ_!][A-Za-zА\\-Яа-яёЁ_0-9]*",
"keywords": {
"keyword": "and и else иначе endexcept endfinally endforeach конецвсе endif конецесли endwhile конецпока except exitfor finally foreach все if если in в not не or или try while пока ",
"built_in": "SYSRES_CONST_ACCES_RIGHT_TYPE_EDIT SYSRES_CONST_ACCES_RIGHT_TYPE_FULL SYSRES_CONST_ACCES_RIGHT_TYPE_VIEW SYSRES_CONST_ACCESS_MODE_REQUISITE_CODE SYSRES_CONST_ACCESS_NO_ACCESS_VIEW SYSRES_CONST_ACCESS_NO_ACCESS_VIEW_CODE SYSRES_CONST_ACCESS_RIGHTS_ADD_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_ADD_REQUISITE_YES_CODE SYSRES_CONST_ACCESS_RIGHTS_CHANGE_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_CHANGE_REQUISITE_YES_CODE SYSRES_CONST_ACCESS_RIGHTS_DELETE_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_DELETE_REQUISITE_YES_CODE SYSRES_CONST_ACCESS_RIGHTS_EXECUTE_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_EXECUTE_REQUISITE_YES_CODE SYSRES_CONST_ACCESS_RIGHTS_NO_ACCESS_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_NO_ACCESS_REQUISITE_YES_CODE SYSRES_CONST_ACCESS_RIGHTS_RATIFY_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_RATIFY_REQUISITE_YES_CODE SYSRES_CONST_ACCESS_RIGHTS_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_VIEW SYSRES_CONST_ACCESS_RIGHTS_VIEW_CODE SYSRES_CONST_ACCESS_RIGHTS_VIEW_REQUISITE_CODE SYSRES_CONST_ACCESS_RIGHTS_VIEW_REQUISITE_YES_CODE SYSRES_CONST_ACCESS_TYPE_CHANGE SYSRES_CONST_ACCESS_TYPE_CHANGE_CODE SYSRES_CONST_ACCESS_TYPE_EXISTS SYSRES_CONST_ACCESS_TYPE_EXISTS_CODE SYSRES_CONST_ACCESS_TYPE_FULL SYSRES_CONST_ACCESS_TYPE_FULL_CODE SYSRES_CONST_ACCESS_TYPE_VIEW SYSRES_CONST_ACCESS_TYPE_VIEW_CODE SYSRES_CONST_ACTION_TYPE_ABORT SYSRES_CONST_ACTION_TYPE_ACCEPT SYSRES_CONST_ACTION_TYPE_ACCESS_RIGHTS SYSRES_CONST_ACTION_TYPE_ADD_ATTACHMENT SYSRES_CONST_ACTION_TYPE_CHANGE_CARD SYSRES_CONST_ACTION_TYPE_CHANGE_KIND SYSRES_CONST_ACTION_TYPE_CHANGE_STORAGE SYSRES_CONST_ACTION_TYPE_CONTINUE SYSRES_CONST_ACTION_TYPE_COPY SYSRES_CONST_ACTION_TYPE_CREATE SYSRES_CONST_ACTION_TYPE_CREATE_VERSION SYSRES_CONST_ACTION_TYPE_DELETE SYSRES_CONST_ACTION_TYPE_DELETE_ATTACHMENT SYSRES_CONST_ACTION_TYPE_DELETE_VERSION SYSRES_CONST_ACTION_TYPE_DISABLE_DELEGATE_ACCESS_RIGHTS SYSRES_CONST_ACTION_TYPE_ENABLE_DELEGATE_ACCESS_RIGHTS SYSRES_CONST_ACTION_TYPE_ENCRYPTION_BY_CERTIFICATE SYSRES_CONST_ACTION_TYPE_ENCRYPTION_BY_CERTIFICATE_AND_PASSWORD SYSRES_CONST_ACTION_TYPE_ENCRYPTION_BY_PASSWORD SYSRES_CONST_ACTION_TYPE_EXPORT_WITH_LOCK SYSRES_CONST_ACTION_TYPE_EXPORT_WITHOUT_LOCK SYSRES_CONST_ACTION_TYPE_IMPORT_WITH_UNLOCK SYSRES_CONST_ACTION_TYPE_IMPORT_WITHOUT_UNLOCK SYSRES_CONST_ACTION_TYPE_LIFE_CYCLE_STAGE SYSRES_CONST_ACTION_TYPE_LOCK SYSRES_CONST_ACTION_TYPE_LOCK_FOR_SERVER SYSRES_CONST_ACTION_TYPE_LOCK_MODIFY SYSRES_CONST_ACTION_TYPE_MARK_AS_READED SYSRES_CONST_ACTION_TYPE_MARK_AS_UNREADED SYSRES_CONST_ACTION_TYPE_MODIFY SYSRES_CONST_ACTION_TYPE_MODIFY_CARD SYSRES_CONST_ACTION_TYPE_MOVE_TO_ARCHIVE SYSRES_CONST_ACTION_TYPE_OFF_ENCRYPTION SYSRES_CONST_ACTION_TYPE_PASSWORD_CHANGE SYSRES_CONST_ACTION_TYPE_PERFORM SYSRES_CONST_ACTION_TYPE_RECOVER_FROM_LOCAL_COPY SYSRES_CONST_ACTION_TYPE_RESTART SYSRES_CONST_ACTION_TYPE_RESTORE_FROM_ARCHIVE SYSRES_CONST_ACTION_TYPE_REVISION SYSRES_CONST_ACTION_TYPE_SEND_BY_MAIL SYSRES_CONST_ACTION_TYPE_SIGN SYSRES_CONST_ACTION_TYPE_START SYSRES_CONST_ACTION_TYPE_UNLOCK SYSRES_CONST_ACTION_TYPE_UNLOCK_FROM_SERVER SYSRES_CONST_ACTION_TYPE_VERSION_STATE SYSRES_CONST_ACTION_TYPE_VERSION_VISIBILITY SYSRES_CONST_ACTION_TYPE_VIEW SYSRES_CONST_ACTION_TYPE_VIEW_SHADOW_COPY SYSRES_CONST_ACTION_TYPE_WORKFLOW_DESCRIPTION_MODIFY SYSRES_CONST_ACTION_TYPE_WRITE_HISTORY SYSRES_CONST_ACTIVE_VERSION_STATE_PICK_VALUE SYSRES_CONST_ADD_REFERENCE_MODE_NAME SYSRES_CONST_ADDITION_REQUISITE_CODE SYSRES_CONST_ADDITIONAL_PARAMS_REQUISITE_CODE SYSRES_CONST_ADITIONAL_JOB_END_DATE_REQUISITE_NAME SYSRES_CONST_ADITIONAL_JOB_READ_REQUISITE_NAME SYSRES_CONST_ADITIONAL_JOB_START_DATE_REQUISITE_NAME SYSRES_CONST_ADITIONAL_JOB_STATE_REQUISITE_NAME SYSRES_CONST_ADMINISTRATION_HISTORY_ADDING_USER_TO_GROUP_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_ADDING_USER_TO_GROUP_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_CREATION_COMP_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_CREATION_COMP_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_CREATION_GROUP_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_CREATION_GROUP_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_CREATION_USER_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_CREATION_USER_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_DATABASE_USER_CREATION SYSRES_CONST_ADMINISTRATION_HISTORY_DATABASE_USER_CREATION_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_DATABASE_USER_DELETION SYSRES_CONST_ADMINISTRATION_HISTORY_DATABASE_USER_DELETION_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_COMP_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_COMP_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_GROUP_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_GROUP_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_USER_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_USER_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_USER_FROM_GROUP_ACTION SYSRES_CONST_ADMINISTRATION_HISTORY_DELETION_USER_FROM_GROUP_ACTION_CODE SYSRES_CONST_ADMINISTRATION_HISTORY_GRANTING_FILTERER_ACTION SLine truncated
"class": "AltState Application CallType ComponentTokens CreatedJobs CreatedNotices ControlState DialogResult Dialogs EDocuments EDocumentVersionSource Folders GlobalIDs Job Jobs InputValue LookUpReference LookUpRequisiteNames LookUpSearch Object ParentComponent Processes References Requisite ReportName Reports Result Scripts Searches SelectedAttachments SelectedItems SelectMode Sender ServerEvents ServiceFactory ShiftState SubTask SystemDialogs Tasks Wizard Wizards Work ВызовСпособ ИмяОтчета РеквЗнач ",
"literal": "null true false nil "
},
"illegal": "\\$|\\?|%|,|;$|~|#|@|<\/",
"contains": [
{
"className": "function",
"begin": "[A-Za-zА\\-Яа-яёЁ_][A-Za-zА\\-Яа-яёЁ_0-9]*\\(",
"end": "\\)$",
"returnBegin": true,
"lexemes": "[A-Za-zА\\-Яа-яёЁ_!][A-Za-zА\\-Яа-яёЁ_0-9]*",
"keywords": {
"$ref": "#keywords"
},
"illegal": "[\\[\\]\\|\\$\\?%,~#@]",
"contains": [
{
"className": "title",
"lexemes": "[A-Za-zА\\-Яа-яёЁ_!][A-Za-zА\\-Яа-яёЁ_0-9]*",
"keywords": {
"built_in": "AddSubString AdjustLineBreaks AmountInWords Analysis ArrayDimCount ArrayHighBound ArrayLowBound ArrayOf ArrayReDim Assert Assigned BeginOfMonth BeginOfPeriod BuildProfilingOperationAnalysis CallProcedure CanReadFile CArrayElement CDataSetRequisite ChangeDate ChangeReferenceDataset Char CharPos CheckParam CheckParamValue CompareStrings ConstantExists ControlState ConvertDateStr Copy CopyFile CreateArray CreateCachedReference CreateConnection CreateDialog CreateDualListDialog CreateEditor CreateException CreateFile CreateFolderDialog CreateInputDialog CreateLinkFile CreateList CreateLock CreateMemoryDataSet CreateObject CreateOpenDialog CreateProgress CreateQuery CreateReference CreateReport CreateSaveDialog CreateScript CreateSQLPivotFunction CreateStringList CreateTreeListSelectDialog CSelectSQL CSQL CSubString CurrentUserID CurrentUserName CurrentVersion DataSetLocateEx DateDiff DateTimeDiff DateToStr DayOfWeek DeleteFile DirectoryExists DisableCheckAccessRights DisableCheckFullShowingRestriction DisableMassTaskSendingRestrictions DropTable DupeString EditText EnableCheckAccessRights EnableCheckFullShowingRestriction EnableMassTaskSendingRestrictions EndOfMonth EndOfPeriod ExceptionExists ExceptionsOff ExceptionsOn Execute ExecuteProcess Exit ExpandEnvironmentVariables ExtractFileDrive ExtractFileExt ExtractFileName ExtractFilePath ExtractParams FileExists FileSize FindFile FindSubString FirmContext ForceDirectories Format FormatDate FormatNumeric FormatSQLDate FormatString FreeException GetComponent GetComponentLaunchParam GetConstant GetLastException GetReferenceRecord GetRefTypeByRefID GetTableID GetTempFolder IfThen In IndexOf InputDialog InputDialogEx InteractiveMode IsFileLocked IsGraphicFile IsNumeric Length LoadString LoadStringFmt LocalTimeToUTC LowerCase Max MessageBox MessageBoxEx MimeDecodeBinary MimeDecodeString MimeEncodeBinary MimeEncodeString Min MoneyInWords MoveFile NewID Now OpenFile Ord Precision Raise ReadCertificateFromFile ReadFile ReferenceCodeByID ReferenceNumber ReferenceRequisiteMode ReferenceRequisiteValue RegionDateSettings RegionNumberSettings RegionTimeSettings RegRead RegWrite RenameFile Replace Round SelectServerCode SelectSQL ServerDateTime SetConstant SetManagedFolderFieldsState ShowConstantsInputDialog ShowMessage Sleep Split SQL SQL2XLSTAB SQLProfilingSendReport StrToDate SubString SubStringCount SystemSetting Time TimeDiff Today Transliterate Trim UpperCase UserStatus UTCToLocalTime ValidateXML VarIsClear VarIsEmpty VarIsNull WorkTimeDiff WriteFile WriteFileEx WriteObjectHistory Анализ БазаДанных БлокЕсть БлокЕстьРасш БлокИнфо БлокСнять БлокСнятьРасш БлокУстановить Ввод ВводМеню ВедС ВедСпр ВерхняяГраницаМассива ВнешПрогр Восст ВременнаяПапка Время ВыборSQL ВыбратьЗапись ВыделитьСтр Вызвать Выполнить ВыпПрогр ГрафическийФайл ГруппаДополнительно ДатаВремяСерв ДеньНедели ДиалогДаНет ДлинаСтр ДобПодстр ЕПусто ЕслиТо ЕЧисло ЗамПодстр ЗаписьСправочника ЗначПоляСпр ИДТипСпр ИзвлечьДиск ИзвлечьИмяФайла ИзвлечьПуть ИзвлечьРасширение ИзмДат ИзменитьРазмерМассива ИзмеренийМассива ИмяОрг ИмяПоляСпр Индекс ИндикаторЗакрыть ИндикаторОткрыть ИндикаторШаг ИнтерактивныйРежим ИтогТблСпр КодВидВедСпр КодВидСпрПоИД КодПоAnalit КодСимвола КодСпр КолПодстр КолПроп КонМес Конст КонстЕсть КонстЗнач КонТран КопироватьФайл КопияСтр КПериод КСтрТблСпр Макс МаксСтрТблСпр Массив Меню МенюРасш Мин НаборДанныхНайтиРасш НаимВидСпр НаимПоAnalit НаимСпр НастроитьПереводыСтрок НачМес НачТран НижняяГраницаМассива НомерСпр НПериод Окно Окр Окружение ОтлИнфДобавить ОтлИнфУдалить Отчет ОтчетАнал ОтчетИнт ПапкаСуществует Пауза ПВыборSQL ПереименоватьФайл Переменные ПереместитьФайл Подстр ПоискПодстр ПоискСтр ПолучитьИДТаблицы ПользовательДополнительно ПользовательИД ПользовательИмя ПользовательСтатус Прервать ПроверитьПараметр ПроверитьПараметрЗнач ПровериLine truncated
},
"begin": "[A-Za-zА\\-Яа-яёЁ_][A-Za-zА\\-Яа-яёЁ_0-9]*\\(",
"end": "\\(",
"returnBegin": true,
"excludeEnd": true
},
{
"begin": "\\.\\s*[a-zA-Z_]\\w*",
"keywords": {
"$ref": "#keywords"
},
"relevance": 0
},
{
"className": "variable",
"lexemes": "[A-Za-zА\\-Яа-яёЁ_!][A-Za-zА\\-Яа-яёЁ_0-9]*",
"keywords": {
"$ref": "#keywords"
},
"begin": "[A-Za-zА\\-Яа-яёЁ_!][A-Za-zА\\-Яа-яёЁ_0-9]*",
"relevance": 0,
"contains": [
{
"className": "type",
"begin": ":[ \\t]*(IApplication|IAccessRights|IAccountRepository|IAccountSelectionRestrictions|IAction|IActionList|IAdministrationHistoryDescription|IAnchors|IApplication|IArchiveInfo|IAttachment|IAttachmentList|ICheckListBox|ICheckPointedList|IColumn|IComponent|IComponentDescription|IComponentToken|IComponentTokenFactory|IComponentTokenInfo|ICompRecordInfo|IConnection|IContents|IControl|IControlJob|IControlJobInfo|IControlList|ICrypto|ICrypto2|ICustomJob|ICustomJobInfo|ICustomListBox|ICustomObjectWizardStep|ICustomWork|ICustomWorkInfo|IDataSet|IDataSetAccessInfo|IDataSigner|IDateCriterion|IDateRequisite|IDateRequisiteDescription|IDateValue|IDeaAccessRights|IDeaObjectInfo|IDevelopmentComponentLock|IDialog|IDialogFactory|IDialogPickRequisiteItems|IDialogsFactory|IDICSFactory|IDocRequisite|IDocumentInfo|IDualListDialog|IECertificate|IECertificateInfo|IECertificates|IEditControl|IEditorForm|IEdmsExplorer|IEdmsObject|IEdmsObjectDescription|IEdmsObjectFactory|IEdmsObjectInfo|IEDocument|IEDocumentAccessRights|IEDocumentDescription|IEDocumentEditor|IEDocumentFactory|IEDocumentInfo|IEDocumentStorage|IEDocumentVersion|IEDocumentVersionListDialog|IEDocumentVersionSource|IEDocumentWizardStep|IEDocVerSignature|IEDocVersionState|IEnabledMode|IEncodeProvider|IEncrypter|IEvent|IEventList|IException|IExternalEvents|IExternalHandler|IFactory|IField|IFileDialog|IFolder|IFolderDescription|IFolderDialog|IFolderFactory|IFolderInfo|IForEach|IForm|IFormTitle|IFormWizardStep|IGlobalIDFactory|IGlobalIDInfo|IGrid|IHasher|IHistoryDescription|IHyperLinkControl|IImageButton|IImageControl|IInnerPanel|IInplaceHint|IIntegerCriterion|IIntegerList|IIntegerRequisite|IIntegerValue|IISBLEditorForm|IJob|IJobDescription|IJobFactory|IJobForm|IJobInfo|ILabelControl|ILargeIntegerCriterion|ILargeIntegerRequisite|ILargeIntegerValue|ILicenseInfo|ILifeCycleStage|IList|IListBox|ILocalIDInfo|ILocalization|ILock|IMemoryDataSet|IMessagingFactory|IMetadataRepository|INotice|INoticeInfo|INumericCriterion|INumericRequisite|INumericValue|IObject|IObjectDescription|IObjectImporter|IObjectInfo|IObserver|IPanelGroup|IPickCriterion|IPickProperty|IPickRequisite|IPickRequisiteDescription|IPickRequisiteItem|IPickRequisiteItems|IPickValue|IPrivilege|IPrivilegeList|IProcess|IProcessFactory|IProcessMessage|IProgress|IProperty|IPropertyChangeEvent|IQuery|IReference|IReferenceCriterion|IReferenceEnabledMode|IReferenceFactory|IReferenceHistoryDescription|IReferenceInfo|IReferenceRecordCardWizardStep|IReferenceRequisiteDescription|IReferencesFactory|IReferenceValue|IRefRequisite|IReport|IReportFactory|IRequisite|IRequisiteDescription|IRequisiteDescriptionList|IRequisiteFactory|IRichEdit|IRouteStep|IRule|IRuleList|ISchemeBlock|IScript|IScriptFactory|ISearchCriteria|ISearchCriterion|ISearchDescription|ISearchFactory|ISearchFolderInfo|ISearchForObjectDescription|ISearchResultRestrictions|ISecuredContext|ISelectDialog|IServerEvent|IServerEventFactory|IServiceDialog|IServiceFactory|ISignature|ISignProvider|ISignProvider2|ISignProvider3|ISimpleCriterion|IStringCriterion|IStringList|IStringRequisite|IStringRequisiteDescription|IStringValue|ISystemDialogsFactory|ISystemInfo|ITabSheet|ITask|ITaskAbortReasonInfo|ITaskCardWizardStep|ITaskDescription|ITaskFactory|ITaskInfo|ITaskRoute|ITextCriterion|ITextRequisite|ITextValue|ITreeListSelectDialog|IUser|IUserList|IValue|IView|IWebBrowserControl|IWizard|IWizardAction|IWizardFactory|IWizardFormElement|IWizardParam|IWizardPickParam|IWizardReferenceParam|IWizardStep|IWorkAccessRights|IWorkDescription|IWorkflowAskableParam|IWorkflowAskableParams|IWorkflowBlock|IWorkflowBlockResult|IWorkflowEnabledMode|IWorkflowParam|IWorkflowPickParam|IWorkflowReferenceParam|IWorkState|IWorkTreeCustomNode|IWorkTreeJobNode|IWorkTreeTaskNode|IXMLEditorForm|SBCrypto)",
"end": "[ \\t]*=",
"excludeEnd": true
},
{
"$ref": "#contains.0.contains.1"
}
]
},
{
"className": "string",
"variants": [
{
"begin": "\"",
"end": "\""
},
{
"begin": "'",
"end": "'"
}
]
},
{
"className": "number",
"begin": "\\b\\d+(\\.\\d+)?",
"relevance": 0
},
{
"variants": [
{
"className": "comment",
"begin": "\/\/",
"end": "$",
"relevance": 0,
"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": "\\b(?:TODO|DONE|BEGIN|END|STUB|CHG|FIXME|NOTE|BUG|XXX)\\b",
"relevance": 0
}
]
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"relevance": 0,
"contains": [
{
"$ref": "#contains.0.contains.5.variants.0.contains.0"
},
{
"$ref": "#contains.0.contains.5.variants.0.contains.1"
}
]
}
]
}
]
},
{
"$ref": "#contains.0.contains.2.contains.0"
},
{
"$ref": "#contains.0.contains.1"
},
{
"$ref": "#contains.0.contains.2"
},
{
"$ref": "#contains.0.contains.3"
},
{
"$ref": "#contains.0.contains.4"
},
{
"$ref": "#contains.0.contains.5"
}
]
}
@@ -0,0 +1,166 @@
{
"aliases": [
"jsp"
],
"keywords": "false synchronized int abstract float private char boolean var static null if const for true while long strictfp finally protected import native final void enum else break transient catch instanceof byte super volatile case assert short package default double public try this switch continue throws protected public private module requires exports do",
"illegal": "<\\\/|#",
"contains": [
{
"className": "comment",
"begin": "\/\\*\\*",
"end": "\\*\/",
"contains": [
{
"begin": "\\w+@",
"relevance": 0
},
{
"className": "doctag",
"begin": "@[A-Za-z]+"
},
{
"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": "comment",
"begin": "\/\/",
"end": "$",
"contains": [
{
"$ref": "#contains.0.contains.2"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#contains.0.contains.2"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "'",
"end": "'",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.3.contains.0"
}
]
},
{
"className": "class",
"beginKeywords": "class interface",
"end": "[{;=]",
"excludeEnd": true,
"keywords": "class interface",
"illegal": "[:\"\\[\\]]",
"contains": [
{
"beginKeywords": "extends implements"
},
{
"className": "title",
"begin": "[a-zA-Z_]\\w*",
"relevance": 0
}
]
},
{
"beginKeywords": "new throw return else",
"relevance": 0
},
{
"className": "function",
"begin": "([À\\-ʸa-zA-Z_$][À\\-ʸa-zA-Z_$0-9]*(<[À\\-ʸa-zA-Z_$][À\\-ʸa-zA-Z_$0-9]*(\\s*,\\s*[À\\-ʸa-zA-Z_$][À\\-ʸa-zA-Z_$0-9]*)*>)?\\s+)+[a-zA-Z_]\\w*\\s*\\(",
"returnBegin": true,
"end": "[{;=]",
"excludeEnd": true,
"keywords": "false synchronized int abstract float private char boolean var static null if const for true while long strictfp finally protected import native final void enum else break transient catch instanceof byte super volatile case assert short package default double public try this switch continue throws protected public private module requires exports do",
"contains": [
{
"begin": "[a-zA-Z_]\\w*\\s*\\(",
"returnBegin": true,
"relevance": 0,
"contains": [
{
"$ref": "#contains.5.contains.1"
}
]
},
{
"className": "params",
"begin": "\\(",
"end": "\\)",
"keywords": "false synchronized int abstract float private char boolean var static null if const for true while long strictfp finally protected import native final void enum else break transient catch instanceof byte super volatile case assert short package default double public try this switch continue throws protected public private module requires exports do",
"relevance": 0,
"contains": [
{
"$ref": "#contains.3"
},
{
"$ref": "#contains.4"
},
{
"className": "number",
"begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",
"relevance": 0
},
{
"$ref": "#contains.2"
}
]
},
{
"$ref": "#contains.1"
},
{
"$ref": "#contains.2"
}
]
},
{
"className": "number",
"begin": "\\b(0[bB]([01]+[01_]+[01]+|[01]+)|0[xX]([a-fA-F0-9]+[a-fA-F0-9_]+[a-fA-F0-9]+|[a-fA-F0-9]+)|(([\\d]+[\\d_]+[\\d]+|[\\d]+)(\\.([\\d]+[\\d_]+[\\d]+|[\\d]+))?|\\.([\\d]+[\\d_]+[\\d]+|[\\d]+))([eE][-+]?\\d+)?)[lLfF]?",
"relevance": 0
},
{
"className": "meta",
"begin": "@[A-Za-z]+"
}
]
}
@@ -0,0 +1,398 @@
{
"aliases": [
"js",
"jsx",
"mjs",
"cjs"
],
"keywords": {
"keyword": "in of 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 static import from as",
"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 Promise"
},
"contains": [
{
"className": "meta",
"relevance": 10,
"begin": "^\\s*['\"]use (strict|asm)['\"]"
},
{
"className": "meta",
"begin": "^#!",
"end": "$"
},
{
"className": "string",
"begin": "'",
"end": "'",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.2.contains.0"
}
]
},
{
"begin": "html`",
"end": "",
"starts": {
"end": "`",
"returnEnd": false,
"contains": [
{
"$ref": "#contains.2.contains.0"
},
{
"className": "subst",
"begin": "\\$\\{",
"end": "\\}",
"keywords": {
"$ref": "#keywords"
},
"contains": [
{
"$ref": "#contains.2"
},
{
"$ref": "#contains.3"
},
{
"$ref": "#contains.4"
},
{
"begin": "css`",
"end": "",
"starts": {
"end": "`",
"returnEnd": false,
"contains": [
{
"$ref": "#contains.2.contains.0"
},
{
"$ref": "#contains.4.starts.contains.1"
}
],
"subLanguage": "css"
}
},
{
"className": "string",
"begin": "`",
"end": "`",
"contains": [
{
"$ref": "#contains.2.contains.0"
},
{
"$ref": "#contains.4.starts.contains.1"
}
]
},
{
"className": "number",
"variants": [
{
"begin": "\\b(0[bB][01]+)n?"
},
{
"begin": "\\b(0[oO][0-7]+)n?"
},
{
"begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)n?"
}
],
"relevance": 0
},
{
"className": "regexp",
"begin": "\\\/",
"end": "\\\/[gimuy]*",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.2.contains.0"
},
{
"begin": "\\[",
"end": "\\]",
"relevance": 0,
"contains": [
{
"$ref": "#contains.2.contains.0"
}
]
}
]
}
]
}
],
"subLanguage": "xml"
}
},
{
"$ref": "#contains.4.starts.contains.1.contains.3"
},
{
"$ref": "#contains.4.starts.contains.1.contains.4"
},
{
"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
}
]
},
{
"className": "comment",
"begin": "\/\\*\\*",
"end": "\\*\/",
"contains": [
{
"className": "doctag",
"begin": "@[A-Za-z]+",
"contains": [
{
"className": "type",
"begin": "\\{",
"end": "\\}",
"relevance": 0
},
{
"className": "variable",
"begin": "[A-Za-z$_][0-9A-Za-z$_]*(?=\\s*(-)|$)",
"endsParent": true,
"relevance": 0
},
{
"begin": "(?=[^\\n])\\s",
"relevance": 0
}
]
},
{
"$ref": "#contains.7.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
],
"relevance": 0
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#contains.7.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"$ref": "#contains.4.starts.contains.1.contains.5"
},
{
"begin": "[{,\\n]\\s*",
"relevance": 0,
"contains": [
{
"begin": "[A-Za-z$_][0-9A-Za-z$_]*\\s*:",
"returnBegin": true,
"relevance": 0,
"contains": [
{
"className": "attr",
"begin": "[A-Za-z$_][0-9A-Za-z$_]*",
"relevance": 0
}
]
}
]
},
{
"begin": "(!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|\/=|\/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~|\\b(case|return|throw)\\b)\\s*",
"keywords": "return throw case",
"contains": [
{
"$ref": "#contains.7"
},
{
"$ref": "#contains.9"
},
{
"$ref": "#contains.4.starts.contains.1.contains.6"
},
{
"className": "function",
"begin": "(\\(.*?\\)|[A-Za-z$_][0-9A-Za-z$_]*)\\s*=>",
"returnBegin": true,
"end": "\\s*=>",
"contains": [
{
"className": "params",
"variants": [
{
"begin": "[A-Za-z$_][0-9A-Za-z$_]*"
},
{
"begin": "\\(\\s*\\)"
},
{
"begin": "\\(",
"end": "\\)",
"excludeBegin": true,
"excludeEnd": true,
"keywords": {
"$ref": "#keywords"
},
"contains": [
{
"$ref": "#contains.2"
},
{
"$ref": "#contains.3"
},
{
"$ref": "#contains.4"
},
{
"$ref": "#contains.4.starts.contains.1.contains.3"
},
{
"$ref": "#contains.4.starts.contains.1.contains.4"
},
{
"$ref": "#contains.4.starts.contains.1.contains.5"
},
{
"$ref": "#contains.4.starts.contains.1.contains.6"
},
{
"$ref": "#contains.9"
},
{
"$ref": "#contains.7"
}
]
}
]
}
]
},
{
"className": "",
"begin": "\\s",
"end": "\\s*",
"skip": true
},
{
"variants": [
{
"begin": "<>",
"end": "<\/>"
},
{
"begin": "<[A-Za-z0-9\\\\._:-]+",
"end": "\\\/[A-Za-z0-9\\\\._:-]+>|\\\/>"
}
],
"subLanguage": "xml",
"contains": [
{
"begin": "<[A-Za-z0-9\\\\._:-]+",
"end": "\\\/[A-Za-z0-9\\\\._:-]+>|\\\/>",
"skip": true,
"contains": [
"self"
]
}
]
}
],
"relevance": 0
},
{
"className": "function",
"beginKeywords": "function",
"end": "\\{",
"excludeEnd": true,
"contains": [
{
"className": "title",
"begin": "[A-Za-z$_][0-9A-Za-z$_]*",
"relevance": 0
},
{
"className": "params",
"begin": "\\(",
"end": "\\)",
"excludeBegin": true,
"excludeEnd": true,
"contains": {
"$ref": "#contains.12.contains.3.contains.0.variants.2.contains"
}
}
],
"illegal": "\\[|%"
},
{
"begin": "\\$[(.]"
},
{
"begin": "\\.\\s*[a-zA-Z_]\\w*",
"relevance": 0
},
{
"className": "class",
"beginKeywords": "class",
"end": "[{;=]",
"excludeEnd": true,
"illegal": "[:\"\\[\\]]",
"contains": [
{
"beginKeywords": "extends"
},
{
"className": "title",
"begin": "[a-zA-Z_]\\w*",
"relevance": 0
}
]
},
{
"beginKeywords": "constructor get set",
"end": "\\{",
"excludeEnd": true
}
],
"illegal": "#(?!!)"
}
@@ -0,0 +1,71 @@
{
"aliases": [
"wildfly-cli"
],
"lexemes": "[a-z\\-]+",
"keywords": {
"keyword": "alias batch cd clear command connect connection-factory connection-info data-source deploy deployment-info deployment-overlay echo echo-dmr help history if jdbc-driver-info jms-queue|20 jms-topic|20 ls patch pwd quit read-attribute read-operation reload rollout-plan run-batch set shutdown try unalias undeploy unset version xa-data-source",
"literal": "true false"
},
"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
}
]
},
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "params",
"begin": "--[\\w\\-=\\\/]+"
},
{
"className": "function",
"begin": ":[\\w\\-.]+",
"relevance": 0
},
{
"className": "string",
"begin": "\\B(([\\\/.])[\\w\\-.\\\/=]+)+"
},
{
"className": "params",
"begin": "\\(",
"end": "\\)",
"contains": [
{
"begin": "[\\w\\-]+ *=",
"returnBegin": true,
"relevance": 0,
"contains": [
{
"className": "attr",
"begin": "[\\w\\-]+"
}
]
}
],
"relevance": 0
}
]
}
@@ -0,0 +1,109 @@
{
"contains": [
{
"className": "string",
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"className": "number",
"begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",
"relevance": 0
},
{
"begin": "{",
"end": "}",
"contains": [
{
"className": "attr",
"begin": "\"",
"end": "\"",
"contains": [
{
"$ref": "#contains.0.contains.0"
}
],
"illegal": "\\n"
},
{
"end": ",",
"endsWithParent": true,
"excludeEnd": true,
"contains": {
"$ref": "#contains"
},
"keywords": {
"literal": "true false null"
},
"begin": ":"
},
{
"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
}
]
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#contains.2.contains.2.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
}
],
"illegal": "\\S"
},
{
"begin": "\\[",
"end": "\\]",
"contains": [
{
"end": ",",
"endsWithParent": true,
"excludeEnd": true,
"contains": {
"$ref": "#contains"
},
"keywords": {
"$ref": "#contains.2.contains.1.keywords"
}
}
],
"illegal": "\\S"
},
{
"$ref": "#contains.2.contains.2"
},
{
"$ref": "#contains.2.contains.3"
}
],
"keywords": {
"$ref": "#contains.2.contains.1.keywords"
},
"illegal": "\\S"
}
@@ -0,0 +1,16 @@
{
"contains": [
{
"className": "meta",
"begin": "^julia>",
"relevance": 10,
"starts": {
"end": "^(?![ ]{6})",
"subLanguage": "julia"
},
"aliases": [
"jldoctest"
]
}
]
}
@@ -0,0 +1,111 @@
{
"lexemes": "[A-Za-z_\\x{00A1}-\\x{FFFF}][A-Za-z_0-9\\x{00A1}-\\x{FFFF}]*",
"keywords": {
"keyword": "in isa where baremodule begin break catch ccall const continue do else elseif end export false finally for function global if import importall let local macro module quote return true try using while type immutable abstract bitstype typealias ",
"literal": "true false ARGS C_NULL DevNull ENDIAN_BOM ENV I Inf Inf16 Inf32 Inf64 InsertionSort JULIA_HOME LOAD_PATH MergeSort NaN NaN16 NaN32 NaN64 PROGRAM_FILE QuickSort RoundDown RoundFromZero RoundNearest RoundNearestTiesAway RoundNearestTiesUp RoundToZero RoundUp STDERR STDIN STDOUT VERSION catalan e|0 eu|0 eulergamma golden im nothing pi γ π φ ",
"built_in": "ANY AbstractArray AbstractChannel AbstractFloat AbstractMatrix AbstractRNG AbstractSerializer AbstractSet AbstractSparseArray AbstractSparseMatrix AbstractSparseVector AbstractString AbstractUnitRange AbstractVecOrMat AbstractVector Any ArgumentError Array AssertionError Associative Base64DecodePipe Base64EncodePipe Bidiagonal BigFloat BigInt BitArray BitMatrix BitVector Bool BoundsError BufferStream CachingPool CapturedException CartesianIndex CartesianRange Cchar Cdouble Cfloat Channel Char Cint Cintmax_t Clong Clonglong ClusterManager Cmd CodeInfo Colon Complex Complex128 Complex32 Complex64 CompositeException Condition ConjArray ConjMatrix ConjVector Cptrdiff_t Cshort Csize_t Cssize_t Cstring Cuchar Cuint Cuintmax_t Culong Culonglong Cushort Cwchar_t Cwstring DataType Date DateFormat DateTime DenseArray DenseMatrix DenseVecOrMat DenseVector Diagonal Dict DimensionMismatch Dims DirectIndexString Display DivideError DomainError EOFError EachLine Enum Enumerate ErrorException Exception ExponentialBackOff Expr Factorization FileMonitor Float16 Float32 Float64 Function Future GlobalRef GotoNode HTML Hermitian IO IOBuffer IOContext IOStream IPAddr IPv4 IPv6 IndexCartesian IndexLinear IndexStyle InexactError InitError Int Int128 Int16 Int32 Int64 Int8 IntSet Integer InterruptException InvalidStateException Irrational KeyError LabelNode LinSpace LineNumberNode LoadError LowerTriangular MIME Matrix MersenneTwister Method MethodError MethodTable Module NTuple NewvarNode NullException Nullable Number ObjectIdDict OrdinalRange OutOfMemoryError OverflowError Pair ParseError PartialQuickSort PermutedDimsArray Pipe PollingFileWatcher ProcessExitedException Ptr QuoteNode RandomDevice Range RangeIndex Rational RawFD ReadOnlyMemoryError Real ReentrantLock Ref Regex RegexMatch RemoteChannel RemoteException RevString RoundingMode RowVector SSAValue SegmentationFault SerializationState Set SharedArray SharedMatrix SharedVector Signed SimpleVector Slot SlotNumber SparseMatrixCSC SparseVector StackFrame StackOverflowError StackTrace StepRange StepRangeLen StridedArray StridedMatrix StridedVecOrMat StridedVector String SubArray SubString SymTridiagonal Symbol Symmetric SystemError TCPSocket Task Text TextDisplay Timer Tridiagonal Tuple Type TypeError TypeMapEntry TypeMapLevel TypeName TypeVar TypedSlot UDPSocket UInt UInt128 UInt16 UInt32 UInt64 UInt8 UndefRefError UndefVarError UnicodeError UniformScaling Union UnionAll UnitRange Unsigned UpperTriangular Val Vararg VecElement VecOrMat Vector VersionNumber Void WeakKeyDict WeakRef WorkerConfig WorkerPool "
},
"illegal": "<\\\/",
"contains": [
{
"className": "number",
"begin": "(\\b0x[\\d_]*(\\.[\\d_]*)?|0x\\.\\d[\\d_]*)p[-+]?\\d+|\\b0[box][a-fA-F0-9][a-fA-F0-9_]*|(\\b\\d[\\d_]*(\\.[\\d_]*)?|\\.\\d[\\d_]*)([eEfF][-+]?\\d+)?",
"relevance": 0
},
{
"className": "string",
"begin": "'(.|\\\\[xXuU][a-zA-Z0-9]+)'"
},
{
"className": "string",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
},
{
"className": "subst",
"begin": "\\$\\(",
"end": "\\)",
"keywords": {
"$ref": "#keywords"
},
"contains": {
"$ref": "#contains"
}
},
{
"className": "variable",
"begin": "\\$[A-Za-z_\\x{00A1}-\\x{FFFF}][A-Za-z_0-9\\x{00A1}-\\x{FFFF}]*"
}
],
"variants": [
{
"begin": "\\w*\"\"\"",
"end": "\"\"\"\\w*",
"relevance": 10
},
{
"begin": "\\w*\"",
"end": "\"\\w*"
}
]
},
{
"className": "string",
"contains": [
{
"$ref": "#contains.2.contains.0"
},
{
"$ref": "#contains.2.contains.1"
},
{
"$ref": "#contains.2.contains.2"
}
],
"begin": "`",
"end": "`"
},
{
"className": "meta",
"begin": "@[A-Za-z_\\x{00A1}-\\x{FFFF}][A-Za-z_0-9\\x{00A1}-\\x{FFFF}]*"
},
{
"className": "comment",
"variants": [
{
"begin": "#=",
"end": "=#",
"relevance": 10
},
{
"begin": "#",
"end": "$"
}
]
},
{
"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
}
]
},
{
"className": "keyword",
"begin": "\\b(((abstract|primitive)\\s+)type|(mutable\\s+)?struct)\\b"
},
{
"begin": "<:"
}
]
}
@@ -0,0 +1,316 @@
{
"aliases": [
"kt"
],
"keywords": {
"keyword": "abstract as val var vararg get set class object open private protected public noinline crossinline dynamic final enum if else do while for when throw try catch finally import package is in fun override companion reified inline lateinit init interface annotation data sealed internal infix operator out by constructor super tailrec where const inner suspend typealias external expect actual trait volatile transient native default",
"built_in": "Byte Short Char Int Long Boolean Float Double Void Unit Nothing",
"literal": "true false null"
},
"contains": [
{
"className": "comment",
"begin": "\/\\*\\*",
"end": "\\*\/",
"contains": [
{
"className": "doctag",
"begin": "@[A-Za-z]+"
},
{
"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": "comment",
"begin": "\/\/",
"end": "$",
"contains": [
{
"$ref": "#contains.0.contains.1"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"className": "comment",
"begin": "\/\\*",
"end": "\\*\/",
"contains": [
{
"$ref": "#contains.0.contains.1"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"$ref": "#contains.0.contains.1"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"className": "keyword",
"begin": "\\b(break|continue|return|this)\\b",
"starts": {
"contains": [
{
"className": "symbol",
"begin": "@\\w+"
}
]
}
},
{
"className": "symbol",
"begin": "[a-zA-Z_]\\w*@"
},
{
"className": "meta",
"begin": "@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*[a-zA-Z_]\\w*)?"
},
{
"className": "meta",
"begin": "@[a-zA-Z_]\\w*",
"contains": [
{
"begin": "\\(",
"end": "\\)",
"contains": [
{
"className": "meta-string",
"variants": [
{
"begin": "\"\"\"",
"end": "\"\"\"(?=[^\"])",
"contains": [
{
"className": "variable",
"begin": "\\$[a-zA-Z_]\\w*"
},
{
"className": "subst",
"begin": "\\${",
"end": "}",
"contains": [
{
"className": "number",
"begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",
"relevance": 0
},
{
"className": "string",
"variants": {
"$ref": "#contains.6.contains.0.contains.0.variants"
}
}
]
}
]
},
{
"begin": "'",
"end": "'",
"illegal": "\\n",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"begin": "\"",
"end": "\"",
"illegal": "\\n",
"contains": [
{
"$ref": "#contains.6.contains.0.contains.0.variants.1.contains.0"
},
{
"$ref": "#contains.6.contains.0.contains.0.variants.0.contains.0"
},
{
"$ref": "#contains.6.contains.0.contains.0.variants.0.contains.1"
}
]
}
]
}
]
}
]
},
{
"className": "function",
"beginKeywords": "fun",
"end": "[(]|$",
"returnBegin": true,
"excludeEnd": true,
"keywords": {
"$ref": "#keywords"
},
"illegal": "fun\\s+(<.*>)?[^\\s\\(]+(\\s+[^\\s\\(]+)\\s*=",
"relevance": 5,
"contains": [
{
"begin": "[a-zA-Z_]\\w*\\s*\\(",
"returnBegin": true,
"relevance": 0,
"contains": [
{
"className": "title",
"begin": "[a-zA-Z_]\\w*",
"relevance": 0
}
]
},
{
"className": "type",
"begin": "<",
"end": ">",
"keywords": "reified",
"relevance": 0
},
{
"className": "params",
"begin": "\\(",
"end": "\\)",
"endsParent": true,
"keywords": {
"$ref": "#keywords"
},
"relevance": 0,
"contains": [
{
"begin": ":",
"end": "[=,\\\/]",
"endsWithParent": true,
"contains": [
{
"variants": [
{
"className": "type",
"begin": "[a-zA-Z_]\\w*"
},
{
"begin": "\\(",
"end": "\\)",
"contains": [
{
"$ref": "#contains.7.contains.2.contains.0.contains.0"
}
]
}
]
},
{
"$ref": "#contains.1"
},
{
"$ref": "#contains.2"
}
],
"relevance": 0
},
{
"$ref": "#contains.1"
},
{
"$ref": "#contains.2"
},
{
"$ref": "#contains.5"
},
{
"$ref": "#contains.6"
},
{
"$ref": "#contains.6.contains.0.contains.0.variants.0.contains.1.contains.1"
},
{
"$ref": "#contains.6.contains.0.contains.0.variants.0.contains.1.contains.0"
}
]
},
{
"$ref": "#contains.2"
}
]
},
{
"className": "class",
"beginKeywords": "class interface trait",
"end": "[:\\{(]|$",
"excludeEnd": true,
"illegal": "extends implements",
"contains": [
{
"beginKeywords": "public protected internal private constructor"
},
{
"$ref": "#contains.7.contains.0.contains.0"
},
{
"className": "type",
"begin": "<",
"end": ">",
"excludeBegin": true,
"excludeEnd": true,
"relevance": 0
},
{
"className": "type",
"begin": "[,:]\\s*",
"end": "[<\\(,]|$",
"excludeBegin": true,
"returnEnd": true
},
{
"$ref": "#contains.5"
},
{
"$ref": "#contains.6"
}
]
},
{
"$ref": "#contains.6.contains.0.contains.0.variants.0.contains.1.contains.1"
},
{
"className": "meta",
"begin": "^#!\/usr\/bin\/env",
"end": "$",
"illegal": "\n"
},
{
"className": "number",
"begin": "\\b(0[bB]([01]+[01_]+[01]+|[01]+)|0[xX]([a-fA-F0-9]+[a-fA-F0-9_]+[a-fA-F0-9]+|[a-fA-F0-9]+)|(([\\d]+[\\d_]+[\\d]+|[\\d]+)(\\.([\\d]+[\\d_]+[\\d]+|[\\d]+))?|\\.([\\d]+[\\d_]+[\\d]+|[\\d]+))([eE][-+]?\\d+)?)[lLfF]?",
"relevance": 0
}
]
}
Loaded 100 of 35591 files, more files were not shown because too many files have changed in this diff. Show more