Lazyfoo Highlight code

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

当前为 2016-10-15 提交的版本,查看 最新版本

您需要先安装一个扩展,例如 篡改猴Greasemonkey暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴Userscripts ,之后才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。

您需要先安装用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

// ==UserScript==
// @name        Lazyfoo Highlight code
// @namespace   lazyfoo
// @include     http://lazyfoo.net/tutorials/*
// @version     1
// @require     http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js
// @require     http://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.7.0/highlight.min.js
// @resource    highlightCss http://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.7.0/styles/default.min.css
// @grant       GM_addStyle
// @grant       GM_getResourceText
// @description Add code highlight to lazyfoo's code snippets in the tutorials section
// ==/UserScript==

$.noConflict();

(function($) {
  var blocks = $('div.tutCode');
  
  if (blocks.length) {
    //@resource does not seem to be working
    $("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' />");    

    blocks.each(function(i, block) {
      var $block = $(block);
      var code = $block.html();

      $block.html('<pre><code class="cpp">' + code + '</code></pre>');
    });

    $('code.cpp').each(function(i, code) {
      hljs.highlightBlock(code);
    });
  }
  
})(jQuery);