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

    var oop = require("../lib/oop");
    var TextMode = require("./text").Mode;
    var LatexHighlightRules = require("./latex_highlight_rules").LatexHighlightRules;
    var LatexFoldMode = require("./folding/latex").FoldMode;

    var Mode = function () {
        this.HighlightRules = LatexHighlightRules;
        this.foldingRules = new LatexFoldMode();
        this.$behaviour = this.$defaultBehaviour;
    };
    oop.inherits(Mode, TextMode);

    (function () {
        this.type = "text";

        this.lineCommentStart = "%";

        this.$id = "ace/mode/latex";
    }).call(Mode.prototype);

    exports.Mode = Mode;

});
