function registerCodeMirror() {
wp_enqueue_script( 'codemirror', get_template_directory_uri() . '/codemirror/lib/codemirror.js' );
wp_enqueue_script( 'codemirrorHtml', get_template_directory_uri() . '/codemirror/mode/xml/xml.js' );
wp_enqueue_script( 'codemirrorXml', get_template_directory_uri() . '/codemirror/addon/fold/xml-fold.js' );
wp_enqueue_script( 'codemirrorTags', get_template_directory_uri() . '/codemirror/addon/edit/matchtags.js' );
wp_enqueue_style( 'codemirrorHtml', get_template_directory_uri() . '/codemirror/lib/codemirror.css' );
wp_enqueue_style( 'codemirrorHtml', get_template_directory_uri() . '/codemirror/theme/monokai.css' );
}
add_action( 'admin_enqueue_scripts', 'registerCodeMirror' );
<script id="codeMirrorScript">
window.onload = function() {
editor = myCodeMirror = CodeMirror.fromTextArea(document.getElementById('content'), {
lineNumbers: true,
matchTags: {bothTags: true},
mode: "text/html",
indentUnit: 2
});
}
jQuery('#ed_toolbar').hide();
jQuery('#content-tmce').click( function() {
jQuery('#ed_toolbar').hide();
jQuery('#wp-content-wrap').removeClass('tmce-active html-active');
jQuery('#wp-content-wrap').addClass('html-active');
jQuery('.wp-editor-tabs a').removeClass('switch-tmce switch-html');
jQuery(this).addClass('switch-html');
jQuery('.CodeMirror').hide();
jQuery('.mce-tinymce.mce-container.mce-panel').show();
})
jQuery('#content-html').click( function() {
jQuery('#ed_toolbar').hide();
jQuery('#wp-content-wrap').removeClass('tmce-active html-active');
jQuery('#wp-content-wrap').addClass('tmce-active');
jQuery('.wp-editor-tabs a').removeClass('switch-tmce switch-html');
jQuery(this).addClass('switch-tmce');
jQuery('.CodeMirror').show();
jQuery('.mce-tinymce.mce-container.mce-panel').hide();
})
</script>
<style>
.CodeMirror-matchingtag { background: rgba(255, 150, 0, .3); }
</style>