ウェブ上で使われるHTML、CSS、JavaScriptなどのほか、C++、Visual Basic、Perlなどのプログラミング言語など様々なソースをウェブページ上表示する方法はいくつかあります。
ここでは容易に利用できて、運用もしやすいSyntaxHighlighterとgoogle-code-prettifyの利用法を解説します。

ソースコードの表示 - SyntaxHighlighter


特徴、利点

SyntaxHighlighterは行番号ソースに付加して表示でき、開始行番号を指定すれば任意の番号から、何も指定しなければ1から順に行番号が振られます。もちろん行番号を除く事も可能です。
一番の利点は読者がソースを範囲選択する場合、ソースに付加した行番号は選択されず、ソースを一括コピー&ペーストすることが容易です。また、特定の行だけをハイライト表示させることもできます。
この他、標準の配色(テーマ)のほか、複数の配色が用意されており、表示をカスタマイズでき、CSSを編集すれば自分で配色セットを作ることもできます。

必要なファイルの取得とウェブサイトへの設置

配布サイト(http://alexgorbatchev.com/SyntaxHighlighter/)からZIP形式に圧縮されたSyntaxHighlighterをダウンロードします。 ZIPファイルには、サンプルやオリジナルソースなども含まれていますが、最低限必要なのはscriptsとsytlesの2フォルダのみです。それぞれ、JavaScriptファイル群とCSSファイル群が含まれています。
scriptsフォルダ内には、対応言語ごとのJavaScriptファイルが格納されています。フォルダごと全ファイルをアップロードするか、必要な言語のファイルだけをアップロードします。 CSSは言語に関係なく共通です。stylesフォルダをそのままアップロードします。もし、デフォルト以外の配色を使う予定がないなら、shCoreDefault.cssファイル1つだけのアップロードで構いません。

使用するJavascriptの定義

SyntaxHighlighterを構成するファイルを読み込むよう、HTMLのhead部に以下を記述する。
	<script type="text/javascript" src="shCore.js"></script><!-- コアスクリプトを読み込む -->
<script type="text/javascript" src="shXXX.js"></script><!-- 表示する言語に応じたスクリプト(複数可) -->
<link type="text/css" rel="stylesheet" href="shXXX.css"><!-- デザインテーマ(表示に使いたい配色) -->
<script type="text/javascript">SyntaxHighlighter.all();</script><!-- スクリプトの開始(必須) -->
なお、HTML、XHTMLに対応するスクリプトは、XML用スクリプトshBrushXml.jsに含まれています。また、JavaScriptに対応するスクリプト名はshBrushJScript.jsです。

表示の指定

pre要素を使ってソースを記述。その際、pre要素のclass属性の値に、"brush: (言語名);"という形で言語名(ブラシ名)を記述します。
<pre class="brush: (言語名);">
〜ソースを掲載〜
</pre>
HTMLの場合
<pre class="brush: html;">
表示したいHTMLソース
</p>
注意 1)"<"記号や">"記号は、それぞれ文字実体参照を使って"<"、">"に置換しておきます。
   2)XML、TML、XHTMLのCSSは全て"brush: html;"と記述 JavaScriptの場合 class属性値に"brush: java
script"と記述します。

カスタマイズ

開始行番号を指定 ソースを掲載するためのpre要素のclass属性値に、「first-line:」という文字列を追記し、望みの開始行番号を指定します。
<pre class="brush: javascript; first-line: 128;">
特定の行をハイライト表示 「highlight:」という文字列を追記し、括弧内にハイライトしたい行番号をカンマ区切りで記述します。連続していない複数の行をハイライトすることもできます。
<pre class="brush: css; highlight:[9,10];">
配色(テーマ)を変える Ver 3.0.83では、デフォルトテーマを含めて8種類の配色があり、読み込ませるCSSファイルを切り替えることで、簡単に配色を変更できます。
(A):ページによって複数の配色を使い分けたい場合−−共通するスタイルだけを分離したshCore.cssファイルと、テーマ本体のスタイルが記述されたshThemeXXX.cssファイル(XXXの部分はテーマ名)の2つを読み込みます。
<link type="text/css" rel="stylesheet" href="./syntaxhighlighter/styles/shCore.css"><!-- 共通コアのCSSファイル -->
<link type="text/css" rel="stylesheet" href="./syntaxhighlighter/styles/shThemeEmacs.css"><!-- EmacsテーマのCSSファイル --">
(B):使いたい配色が1種類だけの場合−−必要な装飾が1つのCSSに収められたshCoreXXX.cssファイル(XXXの部分はテーマ名)を選択すると、読み込みます。
<link type="text/css" rel="stylesheet" href="./syntaxhighlighter/styles/shCoreEmacs.css"><!-- コアとEmacsテーマを結合した単一CSSファイル -->
デザインを自作 自分の望みの配色に近い既存のテーマファイルshThemeXXX.cssをリネームして、必要な修正を行い、共通CSSであるshCore.cssファイルと共に読み込みます。
1 2 3

このサイトは個人生活を健やかに、愉しく、 企業活動を闊達にして、 持続可能な社会作りを目指します
Copyright © しなやか暮し研究所 2012 All Rights Reserved.