Javascript Adobe括号中的代码镜像简单模式

Javascript Adobe括号中的代码镜像简单模式,javascript,syntax-highlighting,codemirror,adobe-brackets,Javascript,Syntax Highlighting,Codemirror,Adobe Brackets,我正在尝试创建一个自定义代码镜像模式,以便与Adobe代码编辑器配合使用 目前我可以突出显示{code}},但我想使用代码镜像简单模式,让我更容易理解 我的括号扩展代码是main.js: define(function (require, exports, module) { 'use strict'; var LanguageManager = brackets.getModule("language/LanguageManager"); CodeMirror.d

我正在尝试创建一个自定义代码镜像模式,以便与Adobe代码编辑器配合使用

目前我可以突出显示{code}},但我想使用代码镜像简单模式,让我更容易理解

我的括号扩展代码是main.js:

define(function (require, exports, module) {
    'use strict';

    var LanguageManager = brackets.getModule("language/LanguageManager");


    CodeMirror.defineMode("laravelblade", function (config, parserConfig) {
        var mustacheOverlay = {
            token: function (stream, state) {

                var ch;

                //Highlight Comments {{-- --}}
                if (stream.match("{{--")) {
                    while ((ch = stream.next()) != null)
                        if (ch == "}" && stream.next() == "}") break;
                    stream.eat("}");
                    return "comment";
                }
                //--

                //Highlight {{ $var }})
                if (stream.match("{{")) {
                    while ((ch = stream.next()) != null)
                        if (ch == "}" && stream.next() == "}") break;
                    stream.eat("}");
                    return "def";
                }

                //Highlight {% $var %} (Laravel 5)
                else if (stream.match('{%')) {
                    while ((ch = stream.next()) != null)
                        if (ch == "%" && stream.next() == "}") break;
                    stream.eat("}");
                    return "def";
                }

                //Highlight {% $var %} (Laravel 5)
                else if (stream.match('{%')) {
                    while ((ch = stream.next()) != null)
                        if (ch == "%" && stream.next() == "}") break;
                    stream.eat("}");
                    return "def";
                }

                //Return Null if no condition was met.
                else if (stream.next() != null) {
                    return null;
                }
            }
        };
        return CodeMirror.overlayMode(CodeMirror.getMode(config, parserConfig.backdrop || "php"), mustacheOverlay);
    });


    LanguageManager.defineLanguage("laravelblade", {
        "name": "Laravel Blade",
        "mode": "laravelblade",
        "fileExtensions": ["blade.php"],
        "blockComment": ["{{--", "--}}"]
    });
});
你能给我一个简单的例子,代码镜像简单模式吗? 我读过codemirror文档,我试着按照示例进行操作,但我就是无法让它们使用括号语法突出显示

多谢各位

编辑:实际代码可以工作,但我希望使用代码镜像简单模式实现相同的功能


我还复制了这段代码,并根据自己的需要进行了修改。但我无法让另一个代码镜像模式从零开始使用括号。。。所以我可能错过了什么…

我也有类似的问题

对于一个工作示例,请查看OSX中的dockerfile模式,它位于Applications/方括号/Contents/www/thirdparty/CodeMirror2/mode/dockerfile中