SyntaxHighlighterは自動的にスクリプト言語を認識してロードします。<br>オリジナル
4738 ワード
SyntaxHighlighterはJavaScriptを使って作成された多種類のプログラミング言語文法のハイライトをサポートするJSプラグインであり、多くの大手サイトやブログで使用されています。
SyntaxHighlighterプラグインはデフォルトでは各プログラム言語に対応するJS言語ライブラリをロードしていますが、どのようにSyntxHighlighterを実現しますか?
SyntaxHighlighter公式は、解決策
HTMLファイルでSyntxHighlighterコアライブラリを参照する
shAutoloader.js自動ローディングライブラリを実行するには、このファイルを導入する必要があります。
shCore.cssコアCSSスタイル
shCoreDefault.cssテーマCSSスタイル
以上の4つのファイルはドキュメントに参照してください。
ハイライト表示が必要なコードは
コードは以下の通りです
以下はSyntxHighlighterの自動ローディングを実現する主要コードです。
本論文の例のダウンロード:SyntaxHighlighterは自動的に識別してロードします。
SyntaxHighlighterプラグインはデフォルトでは各プログラム言語に対応するJS言語ライブラリをロードしていますが、どのようにSyntxHighlighterを実現しますか?
SyntaxHighlighter公式は、解決策
shAutoloader.js
の自動ローディングライブラリを提供しています。HTMLファイルでSyntxHighlighterコアライブラリを参照する
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Hello SyntaxHighlighter</title>
<script type="text/javascript" src="scripts/shCore.js"></script>
<script type="text/javascript" src="scripts/shAutoloader.js"></script>
<link type="text/css" rel="stylesheet" href="styles/shCore.css" rel="external nofollow" rel="external nofollow" />
<link type="text/css" rel="stylesheet" href="styles/shCoreDefault.css" rel="external nofollow" rel="external nofollow" />
</head>
shCore.js SyntxHighlighterプラグインのコアライブラリshAutoloader.js自動ローディングライブラリを実行するには、このファイルを導入する必要があります。
shCore.cssコアCSSスタイル
shCoreDefault.cssテーマCSSスタイル
以上の4つのファイルはドキュメントに参照してください。
ハイライト表示が必要なコードは
<pre class="brush:js;"></pre>
に入れてください。コードは以下の通りです
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Hello SyntaxHighlighter</title>
<script type="text/javascript" src="scripts/shCore.js"></script>
<script type="text/javascript" src="scripts/shAutoloader.js"></script>
<link type="text/css" rel="stylesheet" href="styles/shCore.css" rel="external nofollow" rel="external nofollow" />
<link type="text/css" rel="stylesheet" href="styles/shCoreDefault.css" rel="external nofollow" rel="external nofollow" />
</head>
<body>
<h1>Hello SyntaxHighlighter</h1>
<pre class="brush: js;">
function helloSyntaxHighlighter()
{
return "hi!";
}
</pre>
<pre class="brush: js;">
のclass="brush: js;"
は、表示コード言語に基づいている。以下はSyntxHighlighterの自動ローディングを実現する主要コードです。
<script language="javascript">
function path(){
var args = arguments,
result = [];
for(var i = 0; i < args.length; i++)
result.push(args[i].replace('@', '/pub/sh/current/scripts/'));// SyntaxHighlighter
return result
};
SyntaxHighlighter.autoloader.apply(null, path(
'applescript @shBrushAppleScript.js',
'actionscript3 as3 @shBrushAS3.js',
'bash shell @shBrushBash.js',
'coldfusion cf @shBrushColdFusion.js',
'cpp c @shBrushCpp.js',
'c# c-sharp csharp @shBrushCSharp.js',
'css @shBrushCss.js',
'delphi pascal @shBrushDelphi.js',
'diff patch pas @shBrushDiff.js',
'erl erlang @shBrushErlang.js',
'groovy @shBrushGroovy.js',
'java @shBrushJava.js',
'jfx javafx @shBrushJavaFX.js',
'js jscript javascript @shBrushJScript.js',
'perl pl @shBrushPerl.js',
'php @shBrushPhp.js',
'text plain @shBrushPlain.js',
'py python @shBrushPython.js',
'ruby rails ror rb @shBrushRuby.js',
'sass scss @shBrushSass.js',
'scala @shBrushScala.js',
'sql @shBrushSql.js',
'vb vbnet @shBrushVb.js',
'xml xhtml xslt html @shBrushXml.js'
));
SyntaxHighlighter.all();
</script>
以上はSyntxHighlighterが言語を自動的に認識し、言語ライブラリのコードを自動的に搭載し、必要な学生はテストしてもいいです。本論文の例のダウンロード:SyntaxHighlighterは自動的に識別してロードします。