yanzi-monaco-editorbb
Version:
这是一个基于微软的monaco和vue封装的一个代码编辑器,浏览器可运行。主要功能有:html、javascript、css代码编辑,高亮显示,语法错误提示等,可以帮您的项目很快的拥有一个web端的代码编辑器
101 lines (96 loc) • 4.47 kB
JavaScript
((typeof self !== 'undefined' ? self : this)["webpackJsonpyanziMonacoEditor"] = (typeof self !== 'undefined' ? self : this)["webpackJsonpyanziMonacoEditor"] || []).push([[54],{
/***/ "bd67":
/***/ (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/qsharp/qsharp.ts
var conf = {
comments: {
lineComment: "//"
},
brackets: [["{", "}"], ["[", "]"], ["(", ")"]],
autoClosingPairs: [{
open: "{",
close: "}"
}, {
open: "[",
close: "]"
}, {
open: "(",
close: ")"
}, {
open: '"',
close: '"',
notIn: ["string", "comment"]
}],
surroundingPairs: [{
open: "{",
close: "}"
}, {
open: "[",
close: "]"
}, {
open: "(",
close: ")"
}, {
open: '"',
close: '"'
}]
};
var language = {
keywords: ["namespace", "open", "as", "operation", "function", "body", "adjoint", "newtype", "controlled", "if", "elif", "else", "repeat", "until", "fixup", "for", "in", "while", "return", "fail", "within", "apply", "Adjoint", "Controlled", "Adj", "Ctl", "is", "self", "auto", "distribute", "invert", "intrinsic", "let", "set", "w/", "new", "not", "and", "or", "use", "borrow", "using", "borrowing", "mutable"],
typeKeywords: ["Unit", "Int", "BigInt", "Double", "Bool", "String", "Qubit", "Result", "Pauli", "Range"],
invalidKeywords: ["abstract", "base", "bool", "break", "byte", "case", "catch", "char", "checked", "class", "const", "continue", "decimal", "default", "delegate", "do", "double", "enum", "event", "explicit", "extern", "finally", "fixed", "float", "foreach", "goto", "implicit", "int", "interface", "lock", "long", "null", "object", "operator", "out", "override", "params", "private", "protected", "public", "readonly", "ref", "sbyte", "sealed", "short", "sizeof", "stackalloc", "static", "string", "struct", "switch", "this", "throw", "try", "typeof", "unit", "ulong", "unchecked", "unsafe", "ushort", "virtual", "void", "volatile"],
constants: ["true", "false", "PauliI", "PauliX", "PauliY", "PauliZ", "One", "Zero"],
builtin: ["X", "Y", "Z", "H", "HY", "S", "T", "SWAP", "CNOT", "CCNOT", "MultiX", "R", "RFrac", "Rx", "Ry", "Rz", "R1", "R1Frac", "Exp", "ExpFrac", "Measure", "M", "MultiM", "Message", "Length", "Assert", "AssertProb", "AssertEqual"],
operators: ["and=", "<-", "->", "*", "*=", "@", "!", "^", "^=", ":", "::", "..", "==", "...", "=", "=>", ">", ">=", "<", "<=", "-", "-=", "!=", "or=", "%", "%=", "|", "+", "+=", "?", "/", "/=", "&&&", "&&&=", "^^^", "^^^=", ">>>", ">>>=", "<<<", "<<<=", "|||", "|||=", "~~~", "_", "w/", "w/="],
namespaceFollows: ["namespace", "open"],
symbols: /[=><!~?:&|+\-*\/\^%@._]+/,
escapes: /\\[\s\S]/,
tokenizer: {
root: [[/[a-zA-Z_$][\w$]*/, {
cases: {
"@namespaceFollows": {
token: "keyword.$0",
next: "@namespace"
},
"@typeKeywords": "type",
"@keywords": "keyword",
"@constants": "constant",
"@builtin": "keyword",
"@invalidKeywords": "invalid",
"@default": "identifier"
}
}], {
include: "@whitespace"
}, [/[{}()\[\]]/, "@brackets"], [/@symbols/, {
cases: {
"@operators": "operator",
"@default": ""
}
}], [/\d*\.\d+([eE][\-+]?\d+)?/, "number.float"], [/\d+/, "number"], [/[;,.]/, "delimiter"], [/"/, {
token: "string.quote",
bracket: "@open",
next: "@string"
}]],
string: [[/[^\\"]+/, "string"], [/@escapes/, "string.escape"], [/"/, {
token: "string.quote",
bracket: "@close",
next: "@pop"
}]],
namespace: [{
include: "@whitespace"
}, [/[A-Za-z]\w*/, "namespace"], [/[\.=]/, "delimiter"], ["", "", "@pop"]],
whitespace: [[/[ \t\r\n]+/, "white"], [/(\/\/).*/, "comment"]]
}
};
/***/ })
}]);