Mercurial
comparison .cms/lib/codemirror/mode/htmlembedded/htmlembedded.js @ 0:78edf6b517a0 draft
24.10
author | Coffee CMS <info@coffee-cms.ru> |
---|---|
date | Fri, 11 Oct 2024 22:40:23 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:78edf6b517a0 |
---|---|
1 // CodeMirror, copyright (c) by Marijn Haverbeke and others | |
2 // Distributed under an MIT license: https://codemirror.net/5/LICENSE | |
3 | |
4 (function(mod) { | |
5 if (typeof exports == "object" && typeof module == "object") // CommonJS | |
6 mod(require("../../lib/codemirror"), require("../htmlmixed/htmlmixed"), | |
7 require("../../addon/mode/multiplex")); | |
8 else if (typeof define == "function" && define.amd) // AMD | |
9 define(["../../lib/codemirror", "../htmlmixed/htmlmixed", | |
10 "../../addon/mode/multiplex"], mod); | |
11 else // Plain browser env | |
12 mod(CodeMirror); | |
13 })(function(CodeMirror) { | |
14 "use strict"; | |
15 | |
16 CodeMirror.defineMode("htmlembedded", function(config, parserConfig) { | |
17 var closeComment = parserConfig.closeComment || "--%>" | |
18 return CodeMirror.multiplexingMode(CodeMirror.getMode(config, "htmlmixed"), { | |
19 open: parserConfig.openComment || "<%--", | |
20 close: closeComment, | |
21 delimStyle: "comment", | |
22 mode: {token: function(stream) { | |
23 stream.skipTo(closeComment) || stream.skipToEnd() | |
24 return "comment" | |
25 }} | |
26 }, { | |
27 open: parserConfig.open || parserConfig.scriptStartRegex || "<%", | |
28 close: parserConfig.close || parserConfig.scriptEndRegex || "%>", | |
29 mode: CodeMirror.getMode(config, parserConfig.scriptingModeSpec) | |
30 }); | |
31 }, "htmlmixed"); | |
32 | |
33 CodeMirror.defineMIME("application/x-ejs", {name: "htmlembedded", scriptingModeSpec:"javascript"}); | |
34 CodeMirror.defineMIME("application/x-aspx", {name: "htmlembedded", scriptingModeSpec:"text/x-csharp"}); | |
35 CodeMirror.defineMIME("application/x-jsp", {name: "htmlembedded", scriptingModeSpec:"text/x-java"}); | |
36 CodeMirror.defineMIME("application/x-erb", {name: "htmlembedded", scriptingModeSpec:"ruby"}); | |
37 }); |