UNPKG

yanzi-monaco-editor

Version:

这是一个基于微软的monaco和vue封装的一个代码编辑器,浏览器可运行。主要功能有:html、javascript、css代码编辑,高亮显示,语法错误提示等,可以帮您的项目很快的拥有一个web端的代码编辑器

201 lines (196 loc) 7.33 kB
((typeof self !== 'undefined' ? self : this)["webpackJsonpyanziMonacoEditor"] = (typeof self !== 'undefined' ? self : this)["webpackJsonpyanziMonacoEditor"] || []).push([[71],{ /***/ "59b0": /***/ (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; }); var conf = { comments: { lineComment: '#' }, brackets: [ ['{', '}'], ['[', ']'], ['(', ')'] ], autoClosingPairs: [ { open: '{', close: '}' }, { open: '[', close: ']' }, { open: '(', close: ')' }, { open: '"', close: '"' }, { open: "'", close: "'" } ], surroundingPairs: [ { open: '{', close: '}' }, { open: '[', close: ']' }, { open: '(', close: ')' }, { open: '"', close: '"' }, { open: "'", close: "'" } ], folding: { offSide: true } }; var language = { tokenPostfix: '.yaml', brackets: [ { token: 'delimiter.bracket', open: '{', close: '}' }, { token: 'delimiter.square', open: '[', close: ']' } ], keywords: ['true', 'True', 'TRUE', 'false', 'False', 'FALSE', 'null', 'Null', 'Null', '~'], numberInteger: /(?:0|[+-]?[0-9]+)/, numberFloat: /(?:0|[+-]?[0-9]+)(?:\.[0-9]+)?(?:e[-+][1-9][0-9]*)?/, numberOctal: /0o[0-7]+/, numberHex: /0x[0-9a-fA-F]+/, numberInfinity: /[+-]?\.(?:inf|Inf|INF)/, numberNaN: /\.(?:nan|Nan|NAN)/, numberDate: /\d{4}-\d\d-\d\d([Tt ]\d\d:\d\d:\d\d(\.\d+)?(( ?[+-]\d\d?(:\d\d)?)|Z)?)?/, escapes: /\\(?:[btnfr\\"']|[0-7][0-7]?|[0-3][0-7]{2})/, tokenizer: { root: [ { include: '@whitespace' }, { include: '@comment' }, // Directive [/%[^ ]+.*$/, 'meta.directive'], // Document Markers [/---/, 'operators.directivesEnd'], [/\.{3}/, 'operators.documentEnd'], // Block Structure Indicators [/[-?:](?= )/, 'operators'], { include: '@anchor' }, { include: '@tagHandle' }, { include: '@flowCollections' }, { include: '@blockStyle' }, // Numbers [/@numberInteger(?![ \t]*\S+)/, 'number'], [/@numberFloat(?![ \t]*\S+)/, 'number.float'], [/@numberOctal(?![ \t]*\S+)/, 'number.octal'], [/@numberHex(?![ \t]*\S+)/, 'number.hex'], [/@numberInfinity(?![ \t]*\S+)/, 'number.infinity'], [/@numberNaN(?![ \t]*\S+)/, 'number.nan'], [/@numberDate(?![ \t]*\S+)/, 'number.date'], // Key:Value pair [/(".*?"|'.*?'|.*?)([ \t]*)(:)( |$)/, ['type', 'white', 'operators', 'white']], { include: '@flowScalars' }, // String nodes [ /.+$/, { cases: { '@keywords': 'keyword', '@default': 'string' } } ] ], // Flow Collection: Flow Mapping object: [ { include: '@whitespace' }, { include: '@comment' }, // Flow Mapping termination [/\}/, '@brackets', '@pop'], // Flow Mapping delimiter [/,/, 'delimiter.comma'], // Flow Mapping Key:Value delimiter [/:(?= )/, 'operators'], // Flow Mapping Key:Value key [/(?:".*?"|'.*?'|[^,\{\[]+?)(?=: )/, 'type'], // Start Flow Style { include: '@flowCollections' }, { include: '@flowScalars' }, // Scalar Data types { include: '@tagHandle' }, { include: '@anchor' }, { include: '@flowNumber' }, // Other value (keyword or string) [ /[^\},]+/, { cases: { '@keywords': 'keyword', '@default': 'string' } } ] ], // Flow Collection: Flow Sequence array: [ { include: '@whitespace' }, { include: '@comment' }, // Flow Sequence termination [/\]/, '@brackets', '@pop'], // Flow Sequence delimiter [/,/, 'delimiter.comma'], // Start Flow Style { include: '@flowCollections' }, { include: '@flowScalars' }, // Scalar Data types { include: '@tagHandle' }, { include: '@anchor' }, { include: '@flowNumber' }, // Other value (keyword or string) [ /[^\],]+/, { cases: { '@keywords': 'keyword', '@default': 'string' } } ] ], // First line of a Block Style multiString: [[/^( +).+$/, 'string', '@multiStringContinued.$1']], // Further lines of a Block Style // Workaround for indentation detection multiStringContinued: [ [ /^( *).+$/, { cases: { '$1==$S2': 'string', '@default': { token: '@rematch', next: '@popall' } } } ] ], whitespace: [[/[ \t\r\n]+/, 'white']], // Only line comments comment: [[/#.*$/, 'comment']], // Start Flow Collections flowCollections: [ [/\[/, '@brackets', '@array'], [/\{/, '@brackets', '@object'] ], // Start Flow Scalars (quoted strings) flowScalars: [ [/"([^"\\]|\\.)*$/, 'string.invalid'], [/'([^'\\]|\\.)*$/, 'string.invalid'], [/'[^']*'/, 'string'], [/"/, 'string', '@doubleQuotedString'] ], doubleQuotedString: [ [/[^\\"]+/, 'string'], [/@escapes/, 'string.escape'], [/\\./, 'string.escape.invalid'], [/"/, 'string', '@pop'] ], // Start Block Scalar blockStyle: [[/[>|][0-9]*[+-]?$/, 'operators', '@multiString']], // Numbers in Flow Collections (terminate with ,]}) flowNumber: [ [/@numberInteger(?=[ \t]*[,\]\}])/, 'number'], [/@numberFloat(?=[ \t]*[,\]\}])/, 'number.float'], [/@numberOctal(?=[ \t]*[,\]\}])/, 'number.octal'], [/@numberHex(?=[ \t]*[,\]\}])/, 'number.hex'], [/@numberInfinity(?=[ \t]*[,\]\}])/, 'number.infinity'], [/@numberNaN(?=[ \t]*[,\]\}])/, 'number.nan'], [/@numberDate(?=[ \t]*[,\]\}])/, 'number.date'] ], tagHandle: [[/\![^ ]*/, 'tag']], anchor: [[/[&*][^ ]+/, 'namespace']] } }; /***/ }) }]);