mirror of
https://shylinux.com/x/volcanos
synced 2025-04-25 00:38:05 +08:00
354 lines
20 KiB
JavaScript
354 lines
20 KiB
JavaScript
Volcanos(chat.ONSYNTAX, {
|
|
makefile: {prefix: {"#": code.COMMENT}, suffix: {":": code.COMMENT}, keyword: {
|
|
"ifeq": code.KEYWORD, "ifneq": code.KEYWORD, "else": code.KEYWORD, "endif": code.KEYWORD,
|
|
},
|
|
},
|
|
man: {
|
|
prefix: {
|
|
"NAME": code.KEYWORD,
|
|
"SYNOPSIS": code.KEYWORD,
|
|
"DESCRIPTION": code.KEYWORD,
|
|
|
|
"AUTHOR": code.KEYWORD,
|
|
"COPYRIGHT": code.KEYWORD,
|
|
"LIBRARY": code.KEYWORD,
|
|
"STANDARDS": code.KEYWORD,
|
|
"SEE ALSO": code.KEYWORD,
|
|
"HISTORY": code.KEYWORD,
|
|
"BUGS": code.KEYWORD,
|
|
},
|
|
},
|
|
vim: {prefix: {"\"": "comment"}, keyword: {
|
|
"source": code.KEYWORD,
|
|
"finish": code.KEYWORD,
|
|
"set": code.KEYWORD,
|
|
"let": code.KEYWORD,
|
|
"end": code.KEYWORD,
|
|
"if": code.KEYWORD,
|
|
"else": code.KEYWORD,
|
|
"elseif": code.KEYWORD,
|
|
"endif": code.KEYWORD,
|
|
"for": code.KEYWORD,
|
|
"in": code.KEYWORD,
|
|
"continue": code.KEYWORD,
|
|
"break": code.KEYWORD,
|
|
"endfor": code.KEYWORD,
|
|
"try": code.KEYWORD,
|
|
"catch": code.KEYWORD,
|
|
"finally": code.KEYWORD,
|
|
"endtry": code.KEYWORD,
|
|
"call": code.KEYWORD,
|
|
"function": code.KEYWORD,
|
|
"return": code.KEYWORD,
|
|
"endfunction": code.KEYWORD,
|
|
|
|
"autocmd": code.KEYWORD,
|
|
"command": code.KEYWORD,
|
|
"execute": code.KEYWORD,
|
|
"nnoremap": code.KEYWORD,
|
|
"cnoremap": code.KEYWORD,
|
|
"inoremap": code.KEYWORD,
|
|
"colorscheme": code.KEYWORD,
|
|
"highlight": code.KEYWORD,
|
|
"syntax": code.KEYWORD,
|
|
|
|
"has": code.FUNCTION,
|
|
"type": code.FUNCTION,
|
|
"empty": code.FUNCTION,
|
|
"exists": code.FUNCTION,
|
|
"executable": code.FUNCTION,
|
|
},
|
|
}, vimrc: {link: "vim"},
|
|
c: {
|
|
prefix: {
|
|
"//": code.COMMENT,
|
|
"/*": code.COMMENT,
|
|
"*": code.COMMENT,
|
|
"*/": code.COMMENT,
|
|
"#": code.KEYWORD,
|
|
},
|
|
regexp: {
|
|
"^u_\\w $": code.DATATYPE,
|
|
"^\\w+_t$": code.DATATYPE,
|
|
"^\\w+_pt$": code.DATATYPE,
|
|
"^[-]*\\d+$": code.CONSTANT,
|
|
"^[A-Z0-9_]+$": code.CONSTANT,
|
|
},
|
|
keyword: {
|
|
"#include": code.KEYWORD, "#error": code.KEYWORD, "#line": code.KEYWORD,
|
|
"#define": code.KEYWORD, "#undef": code.KEYWORD, "#ifndef": code.KEYWORD, "#ifdef": code.KEYWORD,
|
|
"#if": code.KEYWORD, "#elif": code.KEYWORD, "#else": code.KEYWORD, "#endif": code.KEYWORD,
|
|
|
|
"if": code.KEYWORD, "else": code.KEYWORD,
|
|
"for": code.KEYWORD, "while": code.KEYWORD, "do": code.KEYWORD, "break": code.KEYWORD, "continue": code.KEYWORD,
|
|
"switch": code.KEYWORD, "case": code.KEYWORD, "default": code.KEYWORD,
|
|
"return": code.KEYWORD, "goto": code.KEYWORD,
|
|
|
|
"void": code.DATATYPE, "char": code.DATATYPE, "int": code.DATATYPE, "float": code.DATATYPE, "double": code.DATATYPE,
|
|
"unsigned": code.DATATYPE, "signed": code.DATATYPE, "short": code.DATATYPE, "long": code.DATATYPE,
|
|
"struct": code.DATATYPE, "union": code.DATATYPE, "enum": code.DATATYPE,
|
|
|
|
"auto": code.DATATYPE, "register": code.DATATYPE, "volatile": code.DATATYPE, "const": code.DATATYPE,
|
|
"static": code.DATATYPE, "extern": code.DATATYPE, "typedef": code.DATATYPE,
|
|
"sizeof": code.FUNCTION, "defined": code.FUNCTION,
|
|
},
|
|
}, h: {link: "c"},
|
|
sh: {prefix: {"#": code.COMMENT}, suffix: {" {": code.COMMENT}, split: {operator: "{[($.,:;&<|>=)]}"}, regexp: {"[A-Z0-9_]+": code.CONSTANT, "ish_[A-Za-z0-9_]+": code.FUNCTION},
|
|
func: function(can, push, text) { if (can.base.endWith(text, "() {")) { var ls = can.core.Split(text, "\t (){"); push(ls[0]) } },
|
|
keyword: {
|
|
"source": code.KEYWORD, "return": code.KEYWORD, "exit": code.KEYWORD,
|
|
"require": code.KEYWORD, "request": code.KEYWORD,
|
|
"local": code.KEYWORD, "export": code.KEYWORD,
|
|
"if": code.KEYWORD, "then": code.KEYWORD, "elif": code.KEYWORD, "else": code.KEYWORD, "fi": code.KEYWORD,
|
|
"for": code.KEYWORD, "while": code.KEYWORD, "do": code.KEYWORD, "done": code.KEYWORD, "continue": code.KEYWORD, "break": code.KEYWORD,
|
|
"case": code.KEYWORD, "in": code.KEYWORD, "esac": code.KEYWORD,
|
|
"true": code.CONSTANT, "false": code.CONSTANT,
|
|
|
|
"history": code.FUNCTION, "alias": code.FUNCTION, "complete": code.FUNCTION, "compgen": code.FUNCTION, "bind": code.FUNCTION,
|
|
"printf": code.FUNCTION, "echo": code.FUNCTION, "eval": code.FUNCTION, "test": code.FUNCTION, "trap": code.FUNCTION, "shift": code.FUNCTION,
|
|
"cd": code.FUNCTION, "ls": code.FUNCTION, "rm": code.FUNCTION, "chmod": code.FUNCTION, "mkdir": code.FUNCTION, "mktemp": code.FUNCTION,
|
|
"curl": code.FUNCTION, "wget": code.FUNCTION, "apk": code.FUNCTION, "yum": code.FUNCTION,
|
|
"cat": code.FUNCTION, "head": code.FUNCTION, "tail": code.FUNCTION,
|
|
"grep": code.FUNCTION, "cut": code.FUNCTION, "sed": code.FUNCTION, "tr": code.FUNCTION,
|
|
"xargs": code.FUNCTION, "sudo": code.FUNCTION, "du": code.FUNCTION, "df": code.FUNCTION,
|
|
"/dev/null": code.CONSTANT, "/dev/stdout": code.CONSTANT, "/dev/stderr": code.CONSTANT,
|
|
},
|
|
}, configure: {link: "sh"},
|
|
shy: {prefix: {"#": code.COMMENT}, regexp: {"[A-Z_0-9]+": code.CONSTANT}, keyword: {"source": code.KEYWORD,
|
|
"title": code.KEYWORD, "navmenu": code.KEYWORD, "premenu": code.KEYWORD, "chapter": code.KEYWORD, "section": code.KEYWORD, "endmenu": code.KEYWORD,
|
|
"refer": code.KEYWORD, "brief": code.KEYWORD, "spark": code.KEYWORD, "shell": code.KEYWORD, "parse": code.KEYWORD,
|
|
"order": code.KEYWORD, "table": code.KEYWORD, "chart": code.KEYWORD, "label": code.KEYWORD, "chain": code.KEYWORD, "sequence": code.KEYWORD,
|
|
"field": code.KEYWORD, "image": code.KEYWORD, "video": code.KEYWORD, "audio": code.KEYWORD,
|
|
"style": code.KEYWORD,
|
|
|
|
"package": code.KEYWORD, "import": code.KEYWORD, "const": code.KEYWORD, "type": code.KEYWORD, "var": code.KEYWORD,
|
|
"if": code.KEYWORD, "else": code.KEYWORD,
|
|
"for": code.KEYWORD, "range": code.KEYWORD, "break": code.KEYWORD, "continue": code.KEYWORD,
|
|
"switch": code.KEYWORD, "case": code.KEYWORD, "default": code.KEYWORD,
|
|
"func": code.KEYWORD, "defer": code.KEYWORD, "return": code.KEYWORD,
|
|
"init": code.FUNCTION, "main": code.FUNCTION, "list": code.FUNCTION, "info": code.FUNCTION,
|
|
"map": code.DATATYPE, "struct": code.DATATYPE, "interface": code.DATATYPE, "string": code.DATATYPE, "int": code.DATATYPE,
|
|
"true": code.CONSTANT, "false": code.CONSTANT,
|
|
|
|
"kit": code.PACKAGE, "ice": code.PACKAGE, "m": code.OBJECT, "arg": code.OBJECT,
|
|
"event": code.OBJECT, "can": code.OBJECT, "msg": code.OBJECT, "target": code.OBJECT,
|
|
},
|
|
func: function(can, push, text, indent, opts) { var ls = can.core.Split(text, "\t ")
|
|
opts.chapter = opts.chapter||0
|
|
if (ls[0] == "chapter") { opts.chapter++, opts.section = 0, push(opts.chapter+lex.SP+ls[1]) }
|
|
if (ls[0] == "section") { opts.section++, push(opts.chapter+nfs.PT+opts.section+lex.SP+ls[1]) }
|
|
},
|
|
},
|
|
py: {prefix: {"#!": code.COMMENT, "# ": code.COMMENT}, keyword: {"import": code.KEYWORD, "from": code.KEYWORD, "return": code.KEYWORD, "print": code.FUNCTION}},
|
|
proto: {prefix: {"// ": code.COMMENT}, regexp: {"[A-Z_0-9]+": code.CONSTANT}, keyword: {
|
|
"syntax": code.KEYWORD, "package": code.KEYWORD, "option": code.FUNCTION,
|
|
"service": code.KEYWORD, "rpc": code.KEYWORD, "returns": code.KEYWORD,
|
|
"message": code.KEYWORD, "repeated": code.FUNCTION, "string": code.DATATYPE, "int64": code.DATATYPE,
|
|
}},
|
|
go: {prefix: {"// ": code.COMMENT}, regexp: {"[A-Z_0-9]+": code.CONSTANT}, keyword: {
|
|
"package": code.KEYWORD, "import": code.KEYWORD, "const": code.KEYWORD, "type": code.KEYWORD, "struct": code.KEYWORD, "interface": code.KEYWORD, "func": code.KEYWORD, "var": code.KEYWORD,
|
|
"if": code.KEYWORD, "else": code.KEYWORD,
|
|
"for": code.KEYWORD, "range": code.KEYWORD, "break": code.KEYWORD, "continue": code.KEYWORD,
|
|
"switch": code.KEYWORD, "case": code.KEYWORD, "default": code.KEYWORD, "fallthrough": code.KEYWORD,
|
|
"go": code.KEYWORD, "select": code.KEYWORD, "defer": code.KEYWORD, "return": code.KEYWORD,
|
|
|
|
"iota": code.CONSTANT, "true": code.CONSTANT, "false": code.CONSTANT, "nil": code.CONSTANT,
|
|
"int": code.DATATYPE, "int8": code.DATATYPE, "int16": code.DATATYPE, "int32": code.DATATYPE, "int64": code.DATATYPE,
|
|
"uint": code.DATATYPE, "uint8": code.DATATYPE, "uint16": code.DATATYPE, "uint32": code.DATATYPE, "uint64": code.DATATYPE,
|
|
"float32": code.DATATYPE, "float64": code.DATATYPE, "complex64": code.DATATYPE, "complex128": code.DATATYPE,
|
|
"rune": code.DATATYPE, "string": code.DATATYPE, "byte": code.DATATYPE, "uintptr": code.DATATYPE,
|
|
"bool": code.DATATYPE, "error": code.DATATYPE, "chan": code.DATATYPE, "map": code.DATATYPE,
|
|
|
|
"init": code.FUNCTION, "main": code.FUNCTION, "print": code.FUNCTION, "println": code.FUNCTION, "panic": code.FUNCTION, "recover": code.FUNCTION,
|
|
"new": code.FUNCTION, "make": code.FUNCTION, "len": code.FUNCTION, "cap": code.FUNCTION, "copy": code.FUNCTION, "append": code.FUNCTION, "delete": code.FUNCTION, "close": code.FUNCTION,
|
|
"complex": code.FUNCTION, "real": code.FUNCTION, "imag": code.FUNCTION,
|
|
|
|
"If": code.KEYWORD, "For": code.KEYWORD, "Switch": code.KEYWORD,
|
|
"kit": code.PACKAGE, "ice": code.PACKAGE, "m": code.OBJECT, "msg": code.OBJECT,
|
|
"Any": code.DATATYPE, "List": code.DATATYPE, "Map": code.DATATYPE, "Maps": code.DATATYPE, "Message": code.DATATYPE,
|
|
},
|
|
func: function(can, push, text, indent, opts) { var ls = can.core.Split(text, "\t *", "({:})")
|
|
function isKey() { return opts.block == "cmds" && ls[1] == ":" && ls[2] == "{" } function isEnd() { return ls[0] == "}" }
|
|
function prefix(key, pre) { return key.toLowerCase() == key? "- ": ("+ "+(pre? pre+nfs.PT: "")) }
|
|
if (indent == 0) { switch (ls[0]) {
|
|
case "package": opts.package = ls[1]; break
|
|
case "func": if (ls[1] == "(") { push(prefix(ls[5])+ls[2]+nfs.PT+ls[5]); break }
|
|
case "const":
|
|
case "var": if (ls[1] == "(") { break }
|
|
case "type": push(prefix(ls[1], opts.package)+ls[1]); break
|
|
} opts.stack = [ls[0]] } else if (indent == 4 && opts.stack[0] == "func") {
|
|
if (text.indexOf("MergeCommands(") > -1) { opts.block = "cmds" } else if (text.indexOf("}") == 0) { opts.block = "" }
|
|
} else if (indent == 8) {
|
|
if (isKey()) { push(prefix(ls[0], opts.package)+ls[0]), opts.cmds = opts.package+nfs.PT+ls[0] }
|
|
} else if (indent == 12) {
|
|
if (isKey()) { push("+ "+opts.cmds+lex.SP+ls[0]) }
|
|
}
|
|
},
|
|
}, mod: {prefix: {"//": code.COMMENT}, keyword: {"go": code.KEYWORD, "module": code.KEYWORD, "require": code.KEYWORD, "replace": code.KEYWORD}}, sum: {},
|
|
js: {prefix: {"// ": code.COMMENT}, regexp: {"[A-Z_0-9]+": code.CONSTANT}, keyword: {
|
|
"import": code.KEYWORD, "from": code.KEYWORD,
|
|
"var": code.KEYWORD, "function": code.KEYWORD, "typeof": code.KEYWORD, "const": code.KEYWORD, "new": code.KEYWORD, "delete": code.KEYWORD,
|
|
"if": code.KEYWORD, "else": code.KEYWORD,
|
|
"for": code.KEYWORD, "in": code.KEYWORD, "while": code.KEYWORD, "break": code.KEYWORD, "continue": code.KEYWORD,
|
|
"switch": code.KEYWORD, "case": code.KEYWORD, "default": code.KEYWORD,
|
|
"return": code.KEYWORD, "try": code.KEYWORD, "catch": code.KEYWORD, "debugger": code.KEYWORD,
|
|
|
|
"import": code.KEYWORD, "from": code.KEYWORD, "export": code.KEYWORD, "default": code.KEYWORD,
|
|
"async": code.KEYWORD, "await": code.KEYWORD,
|
|
"class": code.KEYWORD, "static": code.KEYWORD,
|
|
"let": code.KEYWORD,
|
|
|
|
"true": code.CONSTANT, "false": code.CONSTANT, "null": code.CONSTANT, "undefined": code.CONSTANT,
|
|
"Array": code.DATATYPE, "JSON": code.DATATYPE, "Date": code.DATATYPE, "Math": code.DATATYPE, "XMLHttpRequest": code.DATATYPE, "WebSocket": code.DATATYPE,
|
|
"window": code.OBJECT, "console": code.OBJECT, "navigator": code.OBJECT,
|
|
"location": code.OBJECT, "history": code.OBJECT, "document": code.OBJECT,
|
|
"arguments": code.OBJECT, "callee": code.OBJECT, "this": code.OBJECT,
|
|
|
|
"setTimeout": code.FUNCTION, "alert": code.FUNCTION, "confirm": code.FUNCTION,
|
|
"parseInt": code.FUNCTION, "parseFloat": code.FUNCTION, "encodeURIComponent": code.FUNCTION, "decodeURIComponent": code.FUNCTION,
|
|
"hasOwnProperty": code.FUNCTION, "isArray": code.FUNCTION, "forEach": code.FUNCTION, "apply": code.FUNCTION, "call": code.FUNCTION,
|
|
"length": code.FUNCTION, "split": code.FUNCTION, "trim": code.FUNCTION, "toLowerCase": code.FUNCTION, "indexOf": code.FUNCTION, "lastIndexOf": code.FUNCTION,
|
|
"concat": code.FUNCTION, "reverse": code.FUNCTION, "slice": code.FUNCTION, "join": code.FUNCTION, "sort": code.FUNCTION, "push": code.FUNCTION, "pop": code.FUNCTION,
|
|
"stringify": code.FUNCTION, "parse": code.FUNCTION,
|
|
|
|
"kit": code.PACKAGE, "ice": code.PACKAGE,
|
|
"can": code.OBJECT, "msg": code.OBJECT, "cb": code.FUNCTION, "target": code.OBJECT, "event": code.OBJECT,
|
|
"Volcanos": code.FUNCTION, "shy": code.FUNCTION, "cbs": code.FUNCTION,
|
|
"res": code.OBJECT, "sub": code.OBJECT, "sup": code.OBJECT,
|
|
},
|
|
complete: function(event, can, msg, target, pre, key) {
|
|
var ls = can.core.Split(can.core.Split(pre, "\t {(:,)}").pop(), nfs.PT), list = {can: can, msg: msg, target: target, event: event, window: window}
|
|
can.core.ItemKeys(key == ""? list: can.core.Value(list, ls)||can.core.Value(window, ls)||window, function(k, v) {
|
|
msg.Push(mdb.NAME, k).Push(mdb.TEXT, (v+"").split(lex.NL)[0])
|
|
})
|
|
},
|
|
func: function(can, push, text, indent, opts) { var ls = can.core.Split(text, "\t (,", nfs.DF)
|
|
if (indent == 0 && can.base.beginWith(text, "Volcanos")) {
|
|
var _block = can.base.trimPrefix(ls[1], "chat.").toLowerCase()
|
|
if (_block != opts.block) { push("") } opts.block = _block
|
|
if (text.indexOf(chat._INIT) > -1) { push(opts.block+nfs.PT+chat._INIT) }
|
|
} else if (indent == 0 && can.base.beginWith(text, "var ")) {
|
|
opts.block = ls[1]
|
|
} else if (indent == 4 && ls[1] == nfs.DF) {
|
|
ls[0] && push(opts.block+nfs.PT+ls[0])
|
|
}
|
|
},
|
|
}, json: {split: {operator: "{[:,]}"}, keyword: {
|
|
"true": code.CONSTANT, "false": code.CONSTANT,
|
|
}},
|
|
css: {prefix: {"// ": code.COMMENT, "/* ": code.COMMENT}, split: {operator: "{[(.,:;&>=)]}"},
|
|
func: function(can, push, text) { text.indexOf("/* ") == 0 && push(can.base.trimPrefix(can.base.trimSuffix(text, " */"), "/* ")) },
|
|
regexp: {
|
|
"[-0-9]+deg": code.CONSTANT,
|
|
"[-0-9]+rem": code.CONSTANT,
|
|
"[-0-9]+px": code.CONSTANT,
|
|
"[-0-9]+%": code.CONSTANT,
|
|
"[-0-9]+": code.CONSTANT,
|
|
"#[^ ;]+": code.CONSTANT,
|
|
},
|
|
keyword: {
|
|
"body": code.KEYWORD, "fieldset": code.KEYWORD, "legend": code.KEYWORD, "form": code.KEYWORD, "input": code.KEYWORD, "select": code.KEYWORD, "textarea": code.KEYWORD,
|
|
"table": code.KEYWORD, "thead": code.KEYWORD, "tbody": code.KEYWORD, "tr": code.KEYWORD, "th": code.KEYWORD, "td": code.KEYWORD,
|
|
"h1": code.KEYWORD, "h2": code.KEYWORD, "h3": code.KEYWORD,
|
|
"a": code.KEYWORD,
|
|
"p": code.KEYWORD,
|
|
"ul": code.KEYWORD, "li": code.KEYWORD,
|
|
"label": code.KEYWORD, "span": code.KEYWORD, "img": code.KEYWORD, "svg": code.KEYWORD, "div": code.KEYWORD,
|
|
"video": code.KEYWORD,
|
|
"hover": code.DATATYPE, "focus": code.DATATYPE, "not": code.DATATYPE, "type": code.FUNCTION, "name": code.FUNCTION,
|
|
|
|
"padding": code.FUNCTION, "padding-left": code.FUNCTION, "padding-top": code.FUNCTION,
|
|
"border": code.FUNCTION, "border-left": code.FUNCTION, "border-top": code.FUNCTION, "border-right": code.FUNCTION, "border-bottom": code.FUNCTION,
|
|
"margin": code.FUNCTION, "margin-left": code.FUNCTION, "margin-top": code.FUNCTION, "margin-right": code.FUNCTION, "margin-bottom": code.FUNCTION,
|
|
"display": code.FUNCTION, "visibility": code.FUNCTION, "overflow": code.FUNCTION, "position": code.FUNCTION, "z-index": code.FUNCTION, "box-sizing": code.FUNCTION, "border-box": code.CONSTANT,
|
|
"height": code.FUNCTION, "width": code.FUNCTION, "min-width": code.FUNCTION, "max-width": code.FUNCTION, "max-height": code.FUNCTION,
|
|
"left": code.FUNCTION, "top": code.FUNCTION, "right": code.FUNCTION, "bottom": code.FUNCTION,
|
|
"border-radius": code.FUNCTION, "outline": code.FUNCTION, "box-shadow": code.FUNCTION,
|
|
"justify-content": code.FUNCTION,
|
|
|
|
"solid": code.CONSTANT, "unset": code.CONSTANT,
|
|
"block": code.CONSTANT, "none": code.CONSTANT, "hidden": code.CONSTANT, "visible": code.CONSTANT, "auto": code.CONSTANT, "relative": code.CONSTANT, "absolute": code.CONSTANT, "sticky": code.CONSTANT, "fixed": code.CONSTANT,
|
|
"float": code.FUNCTION, "clear": code.FUNCTION, "both": code.CONSTANT,
|
|
"transition": code.FUNCTION, "transform": code.FUNCTION, "translate": code.FUNCTION, "rotate": code.FUNCTION,
|
|
|
|
"padding-bottom": code.FUNCTION,
|
|
"background": code.FUNCTION,
|
|
"background-size": code.FUNCTION,
|
|
"background-position": code.FUNCTION,
|
|
"background-color": code.FUNCTION, "color": code.FUNCTION, "caret-color": code.FUNCTION,
|
|
"font-family": code.FUNCTION, "font-style": code.FUNCTION, "font-weight": code.FUNCTION, "font-size": code.FUNCTION,
|
|
"line-height": code.FUNCTION, "text-align": code.FUNCTION, "tab-size": code.FUNCTION, "white-space": code.FUNCTION,
|
|
"monospace": code.CONSTANT, "italic": code.CONSTANT, "bold": code.CONSTANT, "center": code.CONSTANT,
|
|
"cursor": code.FUNCTION, "pointer": code.CONSTANT,
|
|
"stroke-width": code.FUNCTION, "stroke": code.FUNCTION, "fill": code.FUNCTION,
|
|
|
|
"dark": code.CONSTANT, "light": code.CONSTANT, "transparent": code.CONSTANT,
|
|
"black": code.CONSTANT, "white": code.CONSTANT, "blue": code.CONSTANT, "red": code.CONSTANT, "yellow": code.CONSTANT,
|
|
|
|
"green": code.CONSTANT,
|
|
"purple": code.CONSTANT,
|
|
"silver": code.CONSTANT,
|
|
"gray": code.CONSTANT,
|
|
"navy": code.CONSTANT,
|
|
"teal": code.CONSTANT,
|
|
|
|
"gold": code.CONSTANT,
|
|
"orange": code.CONSTANT,
|
|
"lavender": code.CONSTANT,
|
|
"chocolate": code.CONSTANT,
|
|
"dimgray": code.CONSTANT,
|
|
"brown": code.CONSTANT,
|
|
"snow": code.CONSTANT,
|
|
|
|
"skyblue": code.CONSTANT,
|
|
"aliceblue": code.CONSTANT,
|
|
"cadetblue": code.CONSTANT,
|
|
"cornflowerblue": code.CONSTANT,
|
|
"royalblue": code.CONSTANT,
|
|
"steelblue": code.CONSTANT,
|
|
"darkblue": code.CONSTANT,
|
|
"darkcyan": code.CONSTANT,
|
|
"darkgray": code.CONSTANT,
|
|
"darkgreen": code.CONSTANT,
|
|
"lightblue": code.CONSTANT,
|
|
"lightgray": code.CONSTANT,
|
|
"lightgreen": code.CONSTANT,
|
|
|
|
"cyan": code.CONSTANT,
|
|
"magenta": code.CONSTANT,
|
|
|
|
"word-break": code.FUNCTION,
|
|
"vertical-align": code.FUNCTION,
|
|
"calc": code.FUNCTION,
|
|
"url": code.FUNCTION,
|
|
"contexts": code.CONSTANT,
|
|
},
|
|
},
|
|
html: {split: {operator: "<=/>"},
|
|
keyword: {
|
|
"DOCTYPE": code.KEYWORD, "html": code.KEYWORD, "head": code.KEYWORD, "body": code.KEYWORD,
|
|
"meta": code.KEYWORD, "title": code.KEYWORD, "link": code.KEYWORD, "script": code.KEYWORD,
|
|
"src": code.FUNCTION, "href": code.FUNCTION, "rel": code.FUNCTION, "style": code.FUNCTION, "width": code.FUNCTION, "height": code.FUNCTION,
|
|
|
|
"button": code.KEYWORD,
|
|
"fieldset": code.KEYWORD, "legend": code.KEYWORD, "form": code.KEYWORD,
|
|
"h1": code.KEYWORD, "h2": code.KEYWORD, "h3": code.KEYWORD,
|
|
"p": code.KEYWORD, "a": code.KEYWORD, "br": code.KEYWORD, "hr": code.KEYWORD,
|
|
"label": code.KEYWORD, "span": code.KEYWORD, "img": code.KEYWORD, "svg": code.KEYWORD, "div": code.KEYWORD,
|
|
"table": code.KEYWORD, "thead": code.KEYWORD, "tbody": code.KEYWORD, "tfoot": code.KEYWORD,
|
|
"tr": code.KEYWORD, "th": code.KEYWORD, "td": code.KEYWORD, "ul": code.KEYWORD, "ol": code.KEYWORD, "li": code.KEYWORD,
|
|
"colgroup": code.KEYWORD, "col": code.KEYWORD, "colspan": code.FUNCTION, "rowspan": code.FUNCTION,
|
|
"video": code.KEYWORD, "audio": code.KEYWORD, "iframe": code.KEYWORD,
|
|
|
|
"pre": code.KEYWORD, "code": code.KEYWORD, "sub": code.KEYWORD, "sup": code.KEYWORD, "em": code.KEYWORD, "strong": code.KEYWORD, "i": code.KEYWORD, "b": code.KEYWORD, "u": code.KEYWORD,
|
|
"dl": code.KEYWORD, "dt": code.KEYWORD, "dd": code.KEYWORD,
|
|
"var": code.KEYWORD, "kbd": code.KEYWORD, "samp": code.KEYWORD, "time": code.KEYWORD,
|
|
"blockquote": code.KEYWORD, "q": code.KEYWORD, "cite": code.KEYWORD, "abbr": code.KEYWORD, "address": code.KEYWORD,
|
|
"header": code.KEYWORD, "nav": code.KEYWORD, "main": code.KEYWORD, "aside": code.KEYWORD, "footer": code.KEYWORD, "article": code.KEYWORD, "section": code.KEYWORD,
|
|
"source": code.KEYWORD, "muted": code.FUNCTION, "autoplay": code.FUNCTION, "loop": code.FUNCTION, "controls": code.FUNCTION,
|
|
"rect": code.KEYWORD, "circle": code.KEYWORD, "fill": code.FUNCTION, "x": code.FUNCTION, "y": code.FUNCTION, "r": code.FUNCTION,
|
|
},
|
|
},
|
|
})
|
|
|