Ga naar de inhoud

Thema's

shikiphp bundelt de volledige Shiki-themaset: alle 65 VS Code-thema's van tm-themes 1.12.2, de set die Shiki 3.23.0 levert. 44 zijn donker en 21 licht. Populaire id's zijn onder meer github-dark, github-light, nord, dracula, vitesse-dark, vitesse-light, one-dark-pro, monokai, solarized-dark en de families catppuccin-* en material-theme-*.

Gebruik één thema met de optie theme, of twee (of meer) met themes voor uitvoer met variabele CSS voor licht en donker. Zie Aan de slag.

PHP
use Shikiphp\Shikiphp;

echo Shikiphp::codeToHtml('const answer = 42', [
    'lang'   => 'js',
    'themes' => ['light' => 'github-light', 'dark' => 'github-dark'],
]);

Een thema-id die de bundel niet kent, veroorzaakt Shikiphp\Exceptions\Highlight met het bericht Unknown theme "…".

Wat een thema bepaalt

Een thema bepaalt de voor- en achtergrondkleur van het blok (vastgelegd op de <pre>) en de kleur en tekenstijl (cursief, vet, onderstreept, doorgehaald) van elk code-element, op basis van de specificiteit van de scope-selectors. Voor lang: 'ansi' worden de terminal.ansi*-kleuren het ANSI-palet (zie ANSI). Gebruik colorReplacements om afzonderlijke kleuren aan te passen zonder een thema te bewerken.

De meegeleverde thema's weergeven

Vanuit PHP:

PHP
use Shikiphp\Shikiphp;

$highlighter = Shikiphp::highlighter();

$highlighter->bundledThemes(); // list<string> — ids shipped in the box
$highlighter->loadedThemes();  // list<string> — bundled plus any you registered

Of via de opdrachtregel, één id per regel in alfabetische volgorde:

Shell
vendor/bin/shikiphp themes

Catalogus

Het type is het type light of dark dat de bundel voor elk thema vastlegt; handig bij het kiezen van een paar voor de optie themes.

Thema Id Type
Andromeeda andromeeda dark
Aurora X aurora-x dark
Ayu Dark ayu-dark dark
Ayu Light ayu-light light
Ayu Mirage ayu-mirage dark
Catppuccin Frappé catppuccin-frappe dark
Catppuccin Latte catppuccin-latte light
Catppuccin Macchiato catppuccin-macchiato dark
Catppuccin Mocha catppuccin-mocha dark
Dark Plus dark-plus dark
Dracula Theme dracula dark
Dracula Theme Soft dracula-soft dark
Everforest Dark everforest-dark dark
Everforest Light everforest-light light
GitHub Dark github-dark dark
GitHub Dark Default github-dark-default dark
GitHub Dark Dimmed github-dark-dimmed dark
GitHub Dark High Contrast github-dark-high-contrast dark
GitHub Light github-light light
GitHub Light Default github-light-default light
GitHub Light High Contrast github-light-high-contrast light
Gruvbox Dark Hard gruvbox-dark-hard dark
Gruvbox Dark Medium gruvbox-dark-medium dark
Gruvbox Dark Soft gruvbox-dark-soft dark
Gruvbox Light Hard gruvbox-light-hard light
Gruvbox Light Medium gruvbox-light-medium light
Gruvbox Light Soft gruvbox-light-soft light
Horizon horizon dark
Horizon Bright horizon-bright light
Houston houston dark
Kanagawa Dragon kanagawa-dragon dark
Kanagawa Lotus kanagawa-lotus light
Kanagawa Wave kanagawa-wave dark
LaserWave laserwave dark
Light Plus light-plus light
Material Theme material-theme dark
Material Theme Darker material-theme-darker dark
Material Theme Lighter material-theme-lighter light
Material Theme Ocean material-theme-ocean dark
Material Theme Palenight material-theme-palenight dark
Min Dark min-dark dark
Min Light min-light light
Monokai monokai dark
Night Owl night-owl dark
Night Owl Light night-owl-light light
Nord nord dark
One Dark Pro one-dark-pro dark
One Light one-light light
Plastic plastic dark
Poimandres poimandres dark
Red red dark
Rosé Pine rose-pine dark
Rosé Pine Dawn rose-pine-dawn light
Rosé Pine Moon rose-pine-moon dark
Slack Dark slack-dark dark
Slack Ochin slack-ochin light
Snazzy Light snazzy-light light
Solarized Dark solarized-dark dark
Solarized Light solarized-light light
Synthwave '84 synthwave-84 dark
Tokyo Night tokyo-night dark
Vesper vesper dark
Vitesse Black vitesse-black dark
Vitesse Dark vitesse-dark dark
Vitesse Light vitesse-light light

Zelf talen toevoegen

Registreer met loadTheme een aangepast thema VS CodeJSON. Zie Aangepaste talen en thema's.