Lazyfoo Highlight code

Add code highlight to lazyfoo's code snippets in the tutorials section

  1. // ==UserScript==
  2. // @name Lazyfoo Highlight code
  3. // @namespace lazyfoo
  4. // @include http://lazyfoo.net/tutorials/*
  5. // @version 1
  6. // @require http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js
  7. // @require http://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.7.0/highlight.min.js
  8. // @resource highlightCss http://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.7.0/styles/default.min.css
  9. // @grant GM_addStyle
  10. // @grant GM_getResourceText
  11. // @description Add code highlight to lazyfoo's code snippets in the tutorials section
  12. // ==/UserScript==
  13.  
  14. $.noConflict();
  15.  
  16. (function($) {
  17. var blocks = $('div.tutCode');
  18. if (blocks.length) {
  19. //@resource does not seem to be working
  20. $("head").append("<link id='highlightCss' href='http://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.7.0/styles/default.min.css' type='text/css' rel='stylesheet' />");
  21.  
  22. blocks.each(function(i, block) {
  23. var $block = $(block);
  24. var code = $block.html();
  25.  
  26. $block.html('<pre><code class="cpp">' + code + '</code></pre>');
  27. });
  28.  
  29. $('code.cpp').each(function(i, code) {
  30. hljs.highlightBlock(code);
  31. });
  32. }
  33. })(jQuery);