yanzi-monaco-editorbb
Version:
这是一个基于微软的monaco和vue封装的一个代码编辑器,浏览器可运行。主要功能有:html、javascript、css代码编辑,高亮显示,语法错误提示等,可以帮您的项目很快的拥有一个web端的代码编辑器
93 lines (88 loc) • 4.16 kB
JavaScript
((typeof self !== 'undefined' ? self : this)["webpackJsonpyanziMonacoEditor"] = (typeof self !== 'undefined' ? self : this)["webpackJsonpyanziMonacoEditor"] || []).push([[68],{
/***/ "70e3":
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "conf", function() { return conf; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "language", function() { return language; });
/*!-----------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Version: 0.32.1(29a273516805a852aa8edc5e05059f119b13eff0)
* Released under the MIT license
* https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
*-----------------------------------------------------------------------------*/
// src/basic-languages/sophia/sophia.ts
var conf = {
comments: {
lineComment: "//",
blockComment: ["/*", "*/"]
},
brackets: [["{", "}"], ["[", "]"], ["(", ")"], ["<", ">"]],
autoClosingPairs: [{
open: '"',
close: '"',
notIn: ["string", "comment"]
}, {
open: "{",
close: "}",
notIn: ["string", "comment"]
}, {
open: "[",
close: "]",
notIn: ["string", "comment"]
}, {
open: "(",
close: ")",
notIn: ["string", "comment"]
}]
};
var language = {
defaultToken: "",
tokenPostfix: ".aes",
brackets: [{
token: "delimiter.curly",
open: "{",
close: "}"
}, {
token: "delimiter.parenthesis",
open: "(",
close: ")"
}, {
token: "delimiter.square",
open: "[",
close: "]"
}, {
token: "delimiter.angle",
open: "<",
close: ">"
}],
keywords: ["contract", "library", "entrypoint", "function", "stateful", "state", "hash", "signature", "tuple", "list", "address", "string", "bool", "int", "record", "datatype", "type", "option", "oracle", "oracle_query", "Call", "Bits", "Bytes", "Oracle", "String", "Crypto", "Address", "Auth", "Chain", "None", "Some", "bits", "bytes", "event", "let", "map", "private", "public", "true", "false", "var", "if", "else", "throw"],
operators: ["=", ">", "<", "!", "~", "?", "::", ":", "==", "<=", ">=", "!=", "&&", "||", "++", "--", "+", "-", "*", "/", "&", "|", "^", "%", "<<", ">>", ">>>", "+=", "-=", "*=", "/=", "&=", "|=", "^=", "%=", "<<=", ">>=", ">>>="],
symbols: /[=><!~?:&|+\-*\/\^%]+/,
escapes: /\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,
integersuffix: /(ll|LL|u|U|l|L)?(ll|LL|u|U|l|L)?/,
floatsuffix: /[fFlL]?/,
tokenizer: {
root: [[/[a-zA-Z_]\w*/, {
cases: {
"@keywords": {
token: "keyword.$0"
},
"@default": "identifier"
}
}], {
include: "@whitespace"
}, [/\[\[.*\]\]/, "annotation"], [/^\s*#\w+/, "keyword"], [/int\d*/, "keyword"], [/[{}()\[\]]/, "@brackets"], [/[<>](?!@symbols)/, "@brackets"], [/@symbols/, {
cases: {
"@operators": "delimiter",
"@default": ""
}
}], [/\d*\d+[eE]([\-+]?\d+)?(@floatsuffix)/, "number.float"], [/\d*\.\d+([eE][\-+]?\d+)?(@floatsuffix)/, "number.float"], [/0[xX][0-9a-fA-F']*[0-9a-fA-F](@integersuffix)/, "number.hex"], [/0[0-7']*[0-7](@integersuffix)/, "number.octal"], [/0[bB][0-1']*[0-1](@integersuffix)/, "number.binary"], [/\d[\d']*\d(@integersuffix)/, "number"], [/\d(@integersuffix)/, "number"], [/[;,.]/, "delimiter"], [/"([^"\\]|\\.)*$/, "string.invalid"], [/"/, "string", "@string"], [/'[^\\']'/, "string"], [/(')(@escapes)(')/, ["string", "string.escape", "string"]], [/'/, "string.invalid"]],
whitespace: [[/[ \t\r\n]+/, ""], [/\/\*\*(?!\/)/, "comment.doc", "@doccomment"], [/\/\*/, "comment", "@comment"], [/\/\/.*$/, "comment"]],
comment: [[/[^\/*]+/, "comment"], [/\*\//, "comment", "@pop"], [/[\/*]/, "comment"]],
doccomment: [[/[^\/*]+/, "comment.doc"], [/\*\//, "comment.doc", "@pop"], [/[\/*]/, "comment.doc"]],
string: [[/[^\\"]+/, "string"], [/@escapes/, "string.escape"], [/\\./, "string.escape.invalid"], [/"/, "string", "@pop"]]
}
};
/***/ })
}]);