User:Vadim/common.js

From CruisersWiki

(Difference between revisions)
Jump to: navigation, search
Line 54: Line 54:
                 // }
                 // }
             };
             };
 +
           
 +
            // https://cdnjs.com/libraries/codemirror
          
          
             // loadCss('//cdnjs.cloudflare.com/ajax/libs/codemirror/5.12.0/codemirror.css');
             // loadCss('//cdnjs.cloudflare.com/ajax/libs/codemirror/5.12.0/codemirror.css');

Revision as of 08:51, 18 March 2016

addOnloadHook(function () { 

    if (wgAction == 'edit' || wgAction == 'submit') {

        if ((true)) {
        // if ((/\.js$/.test(wgPageName) || /\.css$/.test(wgPageName))) {

            // load Ace -- code editor -- https://ace.c9.io
            
            var initCodeEditor = function () { // https://ace.c9.io/#nav=embedding
                // https://github.com/ajaxorg/ace/wiki/Default-Keyboard-Shortcuts<
                var $wpTextbox1 = $( '#wpTextbox1' );
                var $aceEditor = $( "<div></div>" ).insertAfter( "#wpTextbox1" );
                $aceEditor.height($wpTextbox1.height());
                $aceEditor.text($wpTextbox1.text());
                $wpTextbox1.hide();
                $('#toolbar').hide();
            
                var editor = ace.edit($aceEditor[0]);
                var session = editor.getSession();
            
                session.on(
                    'change', 
                    function(e) {
                        // e.type, etc
                        $wpTextbox1.text(editor.getValue());
                });
            
                //    editor.setTheme("ace/theme/monokai");
                session.setUseSoftTabs(true);
                session.setUseWrapMode(true);
            
                if (/\.js$/.test(wgPageName)) {
                    session.setMode("ace/mode/javascript");
                } else if (/\.css$/.test(wgPageName)) {
                    session.setMode("ace/mode/css");
                }
            };
        
            loadScript('https://cdn.jsdelivr.net/ace/1.2.3/min/ace.js', initCodeEditor); //function () {});
        } else {

            var initCodeMirror = function () { // http://codemirror.net/doc/manual.html
                
                var $wpTextbox1 = $( '#wpTextbox1' );
                var editor = CodeMirror.fromTextArea($wpTextbox1[0]);
                // $('#toolbar').hide();
            

                // if (/\.js$/.test(wgPageName)) {
                //     session.setMode("ace/mode/javascript");
                // } else if (/\.css$/.test(wgPageName)) {
                //     session.setMode("ace/mode/css");
                // }
            };
            
            // https://cdnjs.com/libraries/codemirror
        
            // loadCss('//cdnjs.cloudflare.com/ajax/libs/codemirror/5.12.0/codemirror.css');
            // loadScript('//cdnjs.cloudflare.com/ajax/libs/codemirror/5.12.0/codemirror.js', initCodeMirror);
            // loadScript('//cdnjs.cloudflare.com/ajax/libs/codemirror/5.12.0/mode/javascript/javascript.min.js', initCodeMirror);
            
            
            // install [[Wikipedia:WikEd]] in-browser text editor
        
            // importScriptURI('//en.wikipedia.org/w/index.php?title=User:Cacycle/wikEd.js&action=raw&ctype=text/javascript');
        }
    }
    
});
Personal tools
advertisement
Friends of Cruisers Wiki