NOTICE: By continued use of this site you understand and agree to the binding Terms of Service and Privacy Policy.
// ==UserScript== // @name CodeMirror HTML Textareas // @namespace saschpe // @description Instanciate a CodeMirror HTML editor for every textarea... // @author Sascha Peilicke <saschpe@mailbox.org> // @include example.com // @require http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js // @require http://cdnjs.cloudflare.com/ajax/libs/codemirror/4.7.0/codemirror.min.js // @require http://cdnjs.cloudflare.com/ajax/libs/codemirror/4.7.0/mode/css/css.min.js // @require http://cdnjs.cloudflare.com/ajax/libs/codemirror/4.7.0/mode/javascript/javascript.min.js // @require http://cdnjs.cloudflare.com/ajax/libs/codemirror/4.7.0/mode/xml/xml.min.js // @require http://cdnjs.cloudflare.com/ajax/libs/codemirror/4.7.0/mode/htmlmixed/htmlmixed.min.js // @require http://cdnjs.cloudflare.com/ajax/libs/codemirror/4.7.0/mode/htmlembedded/htmlembedded.min.js // @resource cm_css http://cdnjs.cloudflare.com/ajax/libs/codemirror/4.7.0/codemirror.min.css // @version 1.1 // @grant GM_addStyle // @grant GM_getResourceText // ==/UserScript== this.$ = this.jQuery = jQuery.noConflict(true); GM_addStyle(GM_getResourceText("cm_css")); GM_addStyle(".CodeMirror { border: 1px solid #eee; }"); $(function () { $("textarea").each(function() { CodeMirror.fromTextArea($(this)[0], { mode: "htmlembedded", indentWithTabs: false, indentUnit: 4, lineWrapping: true, lineNumbers: true, }); }); });