Sha256: 7b196d1ee2e5552c0cffed47cf70d1d10f1112edc781c5ae51fcc13a28707e3f

Contents?: true

Size: 1.56 KB

Versions: 24

Compression:

Stored size: 1.56 KB

Contents

var mumuki = mumuki || {};

(function (mumuki) {

  function CodeMirrorBuilder(textarea) {
    this.textarea = textarea;
    this.$textarea = $(textarea);
  }

  function submit() {
    $('body').removeClass('fullscreen');
    $('.editor-resize .fa-stack-1x').removeClass('fa-compress').addClass('fa-expand');
    $('.btn-submit').click();
  }

  CodeMirrorBuilder.prototype = {
    setupEditor: function () {
      this.editor = CodeMirror.fromTextArea(this.textarea, {
        autofocus: false,
        tabSize: 2,
        lineNumbers: true,
        lineWrapping: true,
        cursorHeight: 1,
        matchBrackets: true,
        lineWiseCopyCut: true,
        autoCloseBrackets: true,
        showCursorWhenSelecting: true,
        extraKeys: {
          'Ctrl-Space': 'autocomplete',
          'Cmd-Enter': submit,
          'Ctrl-Enter': submit,
          'F11': function () {
            mumuki.editor.toggleFullscreen();
          },
          'Tab': function (cm) {
            mumuki.editor.indentWithSpaces(cm)
          }
        }
      });
    },
    setupLanguage: function () {
      var language = this.$textarea.data('editor-language');
      if (language === 'dynamic') {
        mumuki.page.dynamicEditors.push(this.editor);
      } else {
        mumuki.editor.setOption('mode', language);
      }
    },
    setupOptions: function (minLines) {
      this.editor.setOption('minLines', minLines);
    },
    build: function () {
      return this.editor;
    }
  };

  mumuki.editor = mumuki.editor || {};
  mumuki.editor.CodeMirrorBuilder = CodeMirrorBuilder;
}(mumuki));

Version data entries

24 entries across 24 versions & 1 rubygems

Version Path
mumuki-laboratory-5.6.3 app/assets/javascripts/application/codemirror-builder.js
mumuki-laboratory-5.6.2 app/assets/javascripts/application/codemirror-builder.js
mumuki-laboratory-5.6.1 app/assets/javascripts/application/codemirror-builder.js
mumuki-laboratory-5.6.0 app/assets/javascripts/application/codemirror-builder.js
mumuki-laboratory-5.5.0 app/assets/javascripts/application/codemirror-builder.js
mumuki-laboratory-5.4.0 app/assets/javascripts/application/codemirror-builder.js
mumuki-laboratory-5.3.0 app/assets/javascripts/application/codemirror-builder.js
mumuki-laboratory-5.2.1 app/assets/javascripts/application/codemirror-builder.js
mumuki-laboratory-5.2.0 app/assets/javascripts/application/codemirror-builder.js
mumuki-laboratory-5.1.1 app/assets/javascripts/application/codemirror-builder.js
mumuki-laboratory-5.1.0 app/assets/javascripts/application/codemirror-builder.js
mumuki-laboratory-5.0.12 app/assets/javascripts/application/codemirror-builder.js
mumuki-laboratory-5.0.11 app/assets/javascripts/application/codemirror-builder.js
mumuki-laboratory-5.0.10 app/assets/javascripts/application/codemirror-builder.js
mumuki-laboratory-5.0.9 app/assets/javascripts/application/codemirror-builder.js
mumuki-laboratory-5.0.8 app/assets/javascripts/application/codemirror-builder.js
mumuki-laboratory-5.0.7 app/assets/javascripts/application/codemirror-builder.js
mumuki-laboratory-5.0.6 app/assets/javascripts/application/codemirror-builder.js
mumuki-laboratory-5.0.5 app/assets/javascripts/application/codemirror-builder.js
mumuki-laboratory-5.0.4 app/assets/javascripts/application/codemirror-builder.js