highlight
シンタックス ハイライターを使用してコードをレンダリングします。
On this page
highlight
関数は Chroma
シンタックス ハイライターを使用し、200 を超える言語と 40 を超える利用可能なスタイルをサポートします。
パラメータ
- INPUT
- ハイライト表示するコードです。
- LANG
- ハイライト表示するコードの言語です。 サポートされている言語 のいずれかから選択します。 大文字小文字を区別しません。
- OPTIONS
- 0 個以上の オプション をカンマで区切ったオプションリストです。 サイト設定 にデフォルト値を設定します。
オプション
- lineNos
- Boolean. デフォルトは、
false
です。
各行の先頭に数字を表示します。 - lineNumbersInTable
- Boolean. デフォルトは、
true
です。
ハイライト表示されたコードを 2 つのセルを持つ HTML テーブルにレンダリングします。 左側のテーブルのセルには行番号が含まれています。 右側のテーブルのセルにはコードが表示され、ユーザは行番号のないコードを選択してコピーすることができます。lineNos
がfalse
の場合は関係ありません。 - anchorLineNos
- Boolean. デフォルトは、
false
です。
各行番号を HTML アンカー要素としてレンダリングし、周囲の<span>
のid
属性を行番号に設定します。lineNos
がfalse
の場合は、関係ありません。 - lineAnchors
- String. デフォルトは、
""
です。
行番号を HTML アンカー要素としてレンダリングする場合、この値を周囲の<span>
のid
属性の前に付けます。これにより、ページが 2 つ以上のコードブロックを含んでいる場合に、一意のid
属性を提供できます。lineNos
またはanchorLineNos
がfalse
の場合は、関係ありません。 - lineNoStart
- Integer. デフォルトは、
1
です。
最初の行の先頭に表示する番号です。lineNos
がfalse
の場合は関係ありません。 - hl_Lines
- String. デフォルトは、
""
です。
ハイライト表示されたコードの中で、強調したい行を空白文字で区切ったリストです。 2、3、4、7 行目を強調したい場合は、この値を2-4 7
に設定します。 このオプションは、lineNoStart
オプションとは無関係です。 - hl_inline
- Boolean. デフォルトは、
false
です。
ハイライト表示されたコードを、ラッピングコンテナなしでレンダリングします。 - style
- String. デフォルトは、
monokai
です。
ハイライト表示されたコードに適用される CSS スタイルです。 例については、[スタイルギャラリー] を参照してください。 大文字小文字は区別されます。 - noClasses
- Boolean. デフォルトは、
true
です。
外部 CSS ファイルの代わりに、インライン CSS スタイルを使用します。 外部 CSS ファイルを使用するには、この値をfalse
に設定し、Hugo クライアントでファイルを生成 します。 - tabWidth
- Integer. デフォルトは、
4
です。
ハイライト表示したコードで、各タブ文字をこの個数の空白文字に置き換えます。noClasses
がfalse
の場合は、無関係です。 - guessSyntax
- Boolean. デフォルトは、
false
です。
LANG
パラメータが空白または認識できない言語の場合、可能であれば言語を自動検出し、そうでなければフォールバック言語を使用します。
lineNos
と lineNumbersInTable
の両方を指定する代わりに、以下の省略記法を使用することができます。
lineNos=inline
lineNos=true
およびlineNumbersInTable=false
と同等です。lineNos=table
lineNos=true
およびlineNumbersInTable=true
と同等です。
例
{{ $input := `fmt.Println("Hello World!")` }}
{{ transform.Highlight $input "go" }}
{{ $input := `console.log('Hello World!');` }}
{{ $lang := "js" }}
{{ transform.Highlight $input $lang "lineNos=table, style=api" }}
{{ $input := `echo "Hello World!"` }}
{{ $lang := "bash" }}
{{ $options := dict "lineNos" "table" "style" "dracula" }}
{{ transform.Highlight $input $lang $options }}