| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- // EDITOR CONSTRUCTOR
- import { CodeMirror } from "./CodeMirror.js"
- export { CodeMirror } from "./CodeMirror.js"
- import { eventMixin } from "../util/event.js"
- import { indexOf } from "../util/misc.js"
- import { defineOptions } from "./options.js"
- defineOptions(CodeMirror)
- import addEditorMethods from "./methods.js"
- addEditorMethods(CodeMirror)
- import Doc from "../model/Doc.js"
- // Set up methods on CodeMirror's prototype to redirect to the editor's document.
- let dontDelegate = "iter insert remove copy getEditor constructor".split(" ")
- for (let prop in Doc.prototype) if (Doc.prototype.hasOwnProperty(prop) && indexOf(dontDelegate, prop) < 0)
- CodeMirror.prototype[prop] = (function(method) {
- return function() {return method.apply(this.doc, arguments)}
- })(Doc.prototype[prop])
- eventMixin(Doc)
- // INPUT HANDLING
- import ContentEditableInput from "../input/ContentEditableInput.js"
- import TextareaInput from "../input/TextareaInput.js"
- CodeMirror.inputStyles = {"textarea": TextareaInput, "contenteditable": ContentEditableInput}
- // MODE DEFINITION AND QUERYING
- import { defineMIME, defineMode } from "../modes.js"
- // Extra arguments are stored as the mode's dependencies, which is
- // used by (legacy) mechanisms like loadmode.js to automatically
- // load a mode. (Preferred mechanism is the require/define calls.)
- CodeMirror.defineMode = function(name/*, mode, …*/) {
- if (!CodeMirror.defaults.mode && name != "null") CodeMirror.defaults.mode = name
- defineMode.apply(this, arguments)
- }
- CodeMirror.defineMIME = defineMIME
- // Minimal default mode.
- CodeMirror.defineMode("null", () => ({token: stream => stream.skipToEnd()}))
- CodeMirror.defineMIME("text/plain", "null")
- // EXTENSIONS
- CodeMirror.defineExtension = (name, func) => {
- CodeMirror.prototype[name] = func
- }
- CodeMirror.defineDocExtension = (name, func) => {
- Doc.prototype[name] = func
- }
- import { fromTextArea } from "./fromTextArea.js"
- CodeMirror.fromTextArea = fromTextArea
- import { addLegacyProps } from "./legacy.js"
- addLegacyProps(CodeMirror)
- CodeMirror.version = "5.65.20"
|