Parinktys
Visi įėjimo taškai (codeToHtml, codeToTokens, codeToTokensResult, codeToHast) kaip antrąjį argumentą priima tą patį parinkčių masyvą. Privalomi tik lang ir tema.
lang
Privaloma. Kalbos identifikatorius arba alternatyvus pavadinimas, pagal kurį žetonizuojama — php, ts, js, rust, python, html ir taip toliau. Specialioji reikšmė 'ansi' paryškina terminalo valdymo sekas, užuot naudojusi gramatiką (žr. ANSI).
['lang' => 'php']
theme
Vienas temos identifikatorius. Privalomas, nebent nurodyta themes.
['lang' => 'php', 'theme' => 'github-dark']
themes
Temų identifikatorių atvaizdis dvejopos (arba kelių) temų išvesčiai per CSS kintamuosius. Privalomas, nebent nurodyta theme.
['lang' => 'ts', 'themes' => ['light' => 'github-light', 'dark' => 'github-dark']]
defaultColor
Kuris themes raktas tampa numatytąja spalva eilutėje (kitų spalvų reikšmės tampa --shiki-<key> CSS kintamaisiais). Numatytoji reikšmė — 'light'. Nustatykite false, kad būtų pateikti tik kintamieji be numatytosios spalvos eilutėje — naudinga, kai visas spalvas valdote per CSS.
['themes' => ['light' => '…', 'dark' => '…'], 'defaultColor' => 'dark']
transformers
Shikiphp\Transformer\Transformer objektų, taikomų per procesą, sąrašas. Žr. Transformatoriai.
use Shikiphp\Transformer\Notation\NotationHighlight;
['transformers' => [new NotationHighlight()]]
decorations
Pridėkite klases arba atributus prie bet kokių šaltinio sričių pagal eilutės ir simbolio poziciją. Kiekviena dekoracija yra {start, end, properties}, o pozicijos yra {line, character} (nuo nulio).
['decorations' => [
[
'start' => ['line' => 0, 'character' => 0],
'end' => ['line' => 0, 'character' => 5],
'properties' => ['class' => 'highlight'],
],
]]
colorReplacements
Peržymėkite išvesties spalvas. Eilutės reikšmės pakeičia spalvą visur, o įdėtos reikšmės, susietos su temos pavadinimu, taikomos tik tai temai.
['colorReplacements' => [
'#ffffff' => '#f8f8f2', // global
'github-dark' => ['#24292e' => '#000'], // only in github-dark
]]
structure
'classic' (numatytoji) pateikia visą pre > code > span.line > span struktūrą. 'inline' pateikia tik žetonų atkarpas su eilučių skirtukais, be apgaubiančių pre/code — naudinga trumpiems fragmentams eilutėje.
['structure' => 'inline']
tabindex
<pre> elemento atributas tabindex. Numatytoji reikšmė — 0. Nurodykite false, kad jo nebūtų.
['tabindex' => false]
cssVariablePrefix
Dvejopų temų CSS kintamųjų priešdėlis. Numatytoji reikšmė — '--shiki-'.
['cssVariablePrefix' => '--my-']
mergeWhitespaces
Valdo tarpų žetonų apdorojimą. true (numatytoji) sujungia tik iš tarpų sudarytus žetonus su tolesniu žetonu; 'never' atskiria kiekvieno žetono pradžios ir pabaigos tarpus į savarankiškus žetonus; false žetonų nekeičia.
['mergeWhitespaces' => 'never']
tokenizeMaxLineLength
Praleiskite žetonizavimą (ir pateikite vieną paprastą žetoną) kiekvienai šio ilgio ar ilgesnei eilutei; ilgis nurodomas UTF-16 kodo vienetais. Pagal numatymą apribojimo nėra. Apsauga nuo neįprastai ilgų vienos eilutės įvesčių.
['tokenizeMaxLineLength' => 1000]
meta
Bet kokie metaduomenys, perduodami transformatoriams per transformatoriaus kontekstą — pavyzdžiui, kodo aptvėrimo metaduomenų eilutė, kurią naudoja MetaHighlight ir MetaWordHighlight.
['meta' => ['__raw' => '{1,3-5}']]
grammarState
Shikiphp\GrammarState (iš getLastGrammarState), nuo kurio tęsiamas žetonizavimas. Perduotos lang ir theme(s) reikšmės turi sutapti. Žr. getLastGrammarState.