Browse Source

update syntax highlight after editing (#210), move markdown and highlight scripts from lib to plugin

Hakim El Hattab 11 years ago
parent
commit
e693717f2a
4 changed files with 17 additions and 3 deletions
  1. 4 3
      index.html
  2. 9 0
      plugin/highlight/highlight.js
  3. 4 0
      plugin/markdown/markdown.js
  4. 0 0
      plugin/markdown/showdown.js

+ 4 - 3
index.html

@@ -356,14 +356,15 @@ function linkify( selector ) {
 
 				// Optional libraries used to extend on reveal.js
 				dependencies: [
-					{ src: 'lib/js/highlight.js', async: true, callback: function() { window.hljs.initHighlightingOnLoad(); } },
 					{ src: 'lib/js/classList.js', condition: function() { return !document.body.classList; } },
-					{ src: 'lib/js/showdown.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
-					{ src: 'lib/js/data-markdown.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
+					{ src: 'plugin/markdown/showdown.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
+					{ src: 'plugin/markdown/markdown.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
+					{ src: 'plugin/highlight/highlight.js', async: true, callback: function() { hljs.initHighlightingOnLoad(); } },
 					{ src: 'plugin/zoom-js/zoom.js', async: true, condition: function() { return !!document.body.classList; } },
 					{ src: 'plugin/notes/notes.js', async: true, condition: function() { return !!document.body.classList; } }
 				]
 			});
+
 		</script>
 
 	</body>

+ 9 - 0
lib/js/highlight.js → plugin/highlight/highlight.js

@@ -1,3 +1,12 @@
+// START CUSTOM REVEAL.JS INTEGRATION
+[].slice.call( document.querySelectorAll( 'pre code' ) ).forEach( function( element ) {
+	element.addEventListener( 'focusout', function( event ) {
+		hljs.highlightBlock( event.currentTarget );
+	}, false );
+} );
+// END CUSTOM REVEAL.JS INTEGRATION
+
+
 /*
 Syntax highlighting with language autodetection.
 http://softwaremaniacs.org/soft/highlight/

+ 4 - 0
lib/js/data-markdown.js → plugin/markdown/markdown.js

@@ -2,6 +2,10 @@
 // Modified by Hakim to handle Markdown indented with tabs
 (function(){
 
+    if( typeof Showdown === 'undefined' ) {
+        throw 'The reveal.js Markdown plugin requires Showdown to be loaded';
+    }
+
     var sections = document.querySelectorAll( '[data-markdown]' );
 
     for( var i = 0, len = sections.length; i < len; i++ ) {

+ 0 - 0
lib/js/showdown.js → plugin/markdown/showdown.js