.highlight()
更新日: 2018-09-13
highlight(name, value, ignore_illegals, continuation)
コアのハイライト機能です。 言語名またはエイリアスと、ハイライトするコードの文字列を受け取ります。 ignore_illegals
をtrue
にした場合、 不正な構文があれば、例外を発生させるのではなく、強制的にハイライトを終了させます。 continuation
は、パースが完了していないオプションのスタックです。 このパラメータが存在する場合、最初から解析し直すのではなく、この状態から解析を再開します。
以下のパラメータを返します。
language
: 言語名。関数に渡された値と同じですが、highlightAuto
との一貫性を保つために返します。relevance
: 数値。value
: ハイライトされたHTML文字列。top
: 現在のスタックの先頭。
デモ1
JavaScriptコードをハイライトします。
JavaScript
var name = 'js',
value = 'var name = "js";\n' +
'if (name == "js") {\n' +
' console.log("JavaScript");\n' +
'}\n';
var res = hljs.highlight(name, value);
document.getElementById('demo1').innerHTML = res.value;
HTML
<pre><code id="demo1"></code></pre>
デモ2
ignore_illegals
にtrue
を指定した場合の比較です。
不正な構文(各言語の定義内でillegal
になるパターン)を記述した際に、 ignore_illegals
がfalse
または、未指定の場合はコードはハイライトされません。 ignore_illegals
の場合は、illegal
を無視してコードをハイライトします。
falseの場合
trueの場合
JavaScript
var name = 'js',
value = 'class[];\n' +
'var name = "js";\n' +
'if (name == "js") {\n' +
' console.log("JavaScript");\n' +
'}\n';
var ignore_illegals = false;
var res = hljs.highlight(name, value, ignore_illegals);
document.getElementById('demo2').innerHTML = res.value;
var ignore_illegals = true;
var res = hljs.highlight(name, value, ignore_illegals);
document.getElementById('demo3').innerHTML = res.value;
HTML
<pre><code id="demo2"></code></pre>
<pre><code id="demo3"></code></pre>
© 2006 Highlight.js is released under the BSD License. See LICENSE file for details.
このコンテンツはhighlightjsドキュメントを翻訳/改変したものです。