Google Code Prettifyを使用すると、簡単にコードを構文やキーワードによって色付け(シンタックスハイライト)して表示してくれます。

Google Code Prettifyの使い方

下記を読み込んで、使用できるようにしていきます。

<script src="https://cdn.jsdelivr.net/gh/google/code-prettify@master/loader/run_prettify.js?lang=css&lang=html&lang=javascript&skin=sunburst"></script>

URLクエリパラメータを使ってオプションを指定

URLクエリパラメータを使用することで、オプションを指定することができます。

クエリパラメータ デフォルト 説明
autorun=(true, false) true trueかfalseを指定します。trueの場合、ページの読み込み時に、自動的に実行されます。
lang= none 読み込みたい言語ハンドラを指定します。通常、その言語のファイル拡張子で、複数指定することもできます。(例:?lang=css&lang=ml)。言語リストはこちらを参照。
skin= none シンタックスハイライトのスキン(テーマ)を指定できます。詳しくはこちら
callback= none code-prettifyの処理終了時に実行したいコールバック関数を指定できます。処理終了時に window.exports["xxxx"] が呼ばれます。

下記は、言語ハンドラにCSSを指定して、スキンにsunburstを指定した例です。

<script src="https://cdn.jsdelivr.net/gh/google/code-prettify@master/loader/run_prettify.js?lang=css&skin=sunburst"></script>

行番号を追加する

行番号を表示するには、prettyprintにlinenumsというクラスを追加します。

<pre class="prettyprint linenums">
// ここにソースコードを記述
</pre>

デフォルトでは、1行ごとに行番号が表示されないので、1行ごとに番号を表示されたい場合はCSSで下記のように指定します。

.prettyprint ol.linenums > li {
  list-style-type: decimal; 
  /* または */
  list-style-type: decimal-leading-zero;
}

コードの言語を指定

Google Code Prettifyは自動的に色分けをしてくれますが、言語を明示的に指定してより適切に表示することができます。

言語を明示的に指定する場合は、言語によっては言語ハンドラ(その言語を表示するためのファイル 例:lang-css.js)を読み込んでおく必要があります。

<pre class="prettyprint lang-html">
The lang-* class specifies the language file extensions.
File extensions supported by default include:
"bsh", "c", "cc", "cpp", "cs", "csh", "cyc", "cv", "htm", "html", "java", "js", "m", "mxml", "perl", "pl", "pm", "py", "rb", "sh", "xhtml", "xml", "xsl".
</pre>