Talen
shikiphp bevat de volledige taalset van Shiki: elke grammatica uit
tm-grammars 1.31.15,
de set die Shiki 3.23.0 meelevert. Dat zijn 235 talen plus 18 ingesloten
hulpgrammatica's, samen 253 grammatica's. Dit zijn dezelfde grammatica's van TextMate die VS Code en
Shiki gebruiken, dus de taalondersteuning, aliassen en scopenamen komen overeen.
U verwijst naar een taal met de id of een van de aliassen — bijvoorbeeld ts of
typescript, js of javascript, php, rust, python, html, yaml,
json enzovoort. Id's worden exact vergeleken, dus gebruik de kleine letters zoals hieronder vermeld; een id dat de bundel niet kent, veroorzaakt een
Shikiphp\Exceptions\Highlight met het bericht Unknown language "…".
De speciale id 'ansi' is geen grammatica; deze markeert terminaluitvoer. Zie
ANSI.
De platte-tekst-id's van Shiki, text, txt, plain en plaintext worden nog niet ondersteund en veroorzaken Unknown language
(#2).
De meegeleverde talen weergeven
Vraag de markeerder vanuit PHP om de lijst:
use Shikiphp\Shikiphp;
$highlighter = Shikiphp::highlighter();
$highlighter->bundledLanguages(); // list<string> — ids shipped in the box
$highlighter->loadedLanguages(); // list<string> — bundled plus any you registered
Beide lijsten bevatten elke id die kan worden omgezet: de 253 grammatica-id's gevolgd door de 97 aliassen; 350 vermeldingen voor de bundel.
Of vanaf de opdrachtregel, met één id per regel:
vendor/bin/shikiphp langs
Catalogus
De 235 meegeleverde talen, gesorteerd op naam. Elke id of alias in een rij selecteert dezelfde grammatica.
| Taal | Id | Aliassen |
|---|---|---|
| 1C (Enterprise) | bsl |
1c |
| 1C (Query) | sdbl |
1c-query |
| ABAP | abap |
|
| ActionScript | actionscript-3 |
|
| Ada | ada |
|
| Angular HTML | angular-html |
|
| Angular TypeScript | angular-ts |
|
| Apache Conf | apache |
|
| Apex | apex |
|
| APL | apl |
|
| AppleScript | applescript |
|
| Ara | ara |
|
| AsciiDoc | asciidoc |
adoc |
| ASP.NET Razor | razor |
|
| Assembly | asm |
|
| Astro | astro |
|
| AWK | awk |
|
| Ballerina | ballerina |
|
| Batch File | bat |
batch |
| Beancount | beancount |
|
| Berry | berry |
be |
| BibTeX | bibtex |
|
| Bicep | bicep |
|
| BIRD2 Configuration | bird2 |
bird |
| Blade | blade |
|
| C | c |
|
| C# | csharp |
c#, cs |
| C++ | cpp |
c++ |
| C3 | c3 |
|
| Cadence | cadence |
cdc |
| Cairo | cairo |
|
| Clarity | clarity |
|
| Clojure | clojure |
clj |
| Closure Templates | soy |
closure-templates |
| CMake | cmake |
|
| COBOL | cobol |
|
| CODEOWNERS | codeowners |
|
| CodeQL | codeql |
ql |
| CoffeeScript | coffee |
coffeescript |
| Common Lisp | common-lisp |
lisp |
| Coq | coq |
|
| Crystal | crystal |
|
| CSS | css |
|
| CSV | csv |
|
| CUE | cue |
|
| Cypher | cypher |
cql |
| D | d |
|
| Dart | dart |
|
| DAX | dax |
|
| Desktop | desktop |
|
| Diff | diff |
|
| Dockerfile | docker |
dockerfile |
| dotEnv | dotenv |
|
| Dream Maker | dream-maker |
|
| Edge | edge |
|
| Elixir | elixir |
|
| Elm | elm |
|
| Emacs Lisp | emacs-lisp |
elisp |
| ERB | erb |
|
| Erlang | erlang |
erl |
| F# | fsharp |
f#, fs |
| Fennel | fennel |
|
| Fish | fish |
|
| Fluent | fluent |
ftl |
| Fortran (Fixed Form) | fortran-fixed-form |
f, for, f77 |
| Fortran (Free Form) | fortran-free-form |
f90, f95, f03, f08, f18 |
| GDResource | gdresource |
tscn, tres |
| GDScript | gdscript |
gd |
| GDShader | gdshader |
|
| Genie | genie |
|
| Gettext PO | po |
pot, potx |
| Gherkin | gherkin |
|
| Git Commit Message | git-commit |
|
| Git Rebase Message | git-rebase |
|
| Gleam | gleam |
|
| Glimmer JS | glimmer-js |
gjs |
| Glimmer TS | glimmer-ts |
gts |
| GLSL | glsl |
|
| GN | gn |
|
| Gnuplot | gnuplot |
|
| Go | go |
|
| GraphQL | graphql |
gql |
| Groovy | groovy |
|
| Hack | hack |
|
| Handlebars | handlebars |
hbs |
| HashiCorp HCL | hcl |
|
| Haskell | haskell |
hs |
| Haxe | haxe |
|
| Hjson | hjson |
|
| HLSL | hlsl |
|
| HTML | html |
|
| HTML (Derivative) | html-derivative |
|
| HTTP | http |
|
| Hurl | hurl |
|
| HXML | hxml |
|
| Hy | hy |
|
| Imba | imba |
|
| INI | ini |
properties |
| Java | java |
|
| JavaScript | javascript |
js, cjs, mjs |
| Jinja | jinja |
|
| Jison | jison |
|
| JSON | json |
|
| JSON Lines | jsonl |
|
| JSON with Comments | jsonc |
|
| JSON5 | json5 |
|
| Jsonnet | jsonnet |
|
| JSSM | jssm |
fsl |
| JSX | jsx |
|
| Julia | julia |
jl |
| Just | just |
|
| KDL | kdl |
|
| Kotlin | kotlin |
kt, kts |
| Kusto | kusto |
kql |
| LaTeX | latex |
|
| Lean 4 | lean |
lean4 |
| Less | less |
|
| Liquid | liquid |
|
| LLVM IR | llvm |
|
| Log file | log |
|
| Logo | logo |
|
| Lua | lua |
|
| Luau | luau |
|
| Makefile | make |
makefile |
| Markdown | markdown |
md |
| Marko | marko |
|
| MATLAB | matlab |
|
| MDC | mdc |
|
| MDX | mdx |
|
| Mermaid | mermaid |
mmd |
| MIPS Assembly | mipsasm |
mips |
| Mojo | mojo |
|
| MoonBit | moonbit |
mbt, mbti |
| Move | move |
|
| Narrat Language | narrat |
nar |
| Nextflow | nextflow |
nf |
| Nextflow Groovy | nextflow-groovy |
|
| Nginx | nginx |
|
| Nim | nim |
|
| Nix | nix |
|
| nushell | nushell |
nu |
| Objective-C | objective-c |
objc |
| Objective-C++ | objective-cpp |
|
| OCaml | ocaml |
|
| Odin | odin |
|
| OpenSCAD | openscad |
scad |
| Pascal | pascal |
|
| Perl | perl |
|
| PHP | php |
|
| Pkl | pkl |
|
| PL/SQL | plsql |
|
| Polar | polar |
|
| PostCSS | postcss |
|
| PowerQuery | powerquery |
|
| PowerShell | powershell |
ps, ps1 |
| Prisma | prisma |
|
| Prolog | prolog |
|
| Protocol Buffer 3 | proto |
protobuf |
| Pug | pug |
jade |
| Puppet | puppet |
|
| PureScript | purescript |
|
| Python | python |
py |
| QML | qml |
|
| QML Directory | qmldir |
|
| Qt Style Sheets | qss |
|
| R | r |
|
| Racket | racket |
|
| Raku | raku |
perl6 |
| RegExp | regexp |
regex |
| Rel | rel |
|
| reStructuredText | rst |
|
| RISC-V | riscv |
|
| RON | ron |
|
| ROS Interface | rosmsg |
|
| Ruby | ruby |
rb |
| Ruby Haml | haml |
|
| Rust | rust |
rs |
| SAS | sas |
|
| Sass | sass |
|
| Scala | scala |
|
| Scheme | scheme |
|
| SCSS | scss |
|
| ShaderLab | shaderlab |
shader |
| Shell | shellscript |
bash, sh, shell, zsh |
| Shell Session | shellsession |
console |
| Smalltalk | smalltalk |
|
| Solidity | solidity |
|
| SPARQL | sparql |
|
| Splunk Query Language | splunk |
spl |
| SQL | sql |
|
| SSH Config | ssh-config |
|
| Stata | stata |
|
| Stylus | stylus |
styl |
| SurrealQL | surrealql |
surql |
| Svelte | svelte |
|
| Swift | swift |
|
| Systemd Units | systemd |
|
| SystemVerilog | system-verilog |
|
| TalonScript | talonscript |
talon |
| Tasl | tasl |
|
| Tcl | tcl |
|
| Templ | templ |
|
| Terraform | terraform |
tf, tfvars |
| TeX | tex |
|
| TOML | toml |
|
| TSV | tsv |
|
| TSX | tsx |
|
| Turtle | turtle |
|
| Twig | twig |
|
| TypeScript | typescript |
ts, cts, mts |
| TypeScript with Tags | ts-tags |
lit |
| TypeSpec | typespec |
tsp |
| Typst | typst |
typ |
| V | v |
|
| Vala | vala |
|
| Verilog | verilog |
|
| VHDL | vhdl |
|
| Vim Script | viml |
vim, vimscript |
| Visual Basic | vb |
cmd |
| Vue | vue |
|
| Vue HTML | vue-html |
|
| Vue Vine | vue-vine |
|
| Vyper | vyper |
vy |
| WebAssembly | wasm |
|
| WebAssembly Interface Types | wit |
|
| Wenyan | wenyan |
文言 |
| WGSL | wgsl |
|
| Wikitext | wikitext |
mediawiki, wiki |
| Windows Registry Script | reg |
|
| Wolfram | wolfram |
wl |
| XML | xml |
|
| XSL | xsl |
|
| YAML | yaml |
yml |
| ZenScript | zenscript |
|
| Zig | zig |
Hulpgrammatica's
Deze 18 grammatica's bestaan zodat andere grammatica's ze kunnen insluiten of injecteren (Angular,
Vue, C++-macro's, Jinja, Nix en getagde templatestrings in ts-tags). Ze
worden automatisch geladen met de taal die ze nodig heeft, en hun id's staan ook
in bundledLanguages() en shikiphp langs:
angular-expression, angular-let-declaration, angular-template, angular-template-blocks, angular-inline-style, angular-inline-template, cpp-macro, jinja-html, markdown-nix, es-tag-css, es-tag-glsl, es-tag-html, es-tag-sql, es-tag-xml, markdown-vue, vue-directives, vue-interpolations, vue-sfc-style-variable-injection.
Zelf talen toevoegen
Een taal nodig die niet is meegeleverd, of een privégrammatica? Registreer die met
loadGrammar. Zie Aangepaste talen en thema's.