Languages
Bundled Languages
Language grammars listed below are re-distributed via tm-grammars into the shiki package.
| Name | ID | Alias | Preview |
|---|---|---|---|
| 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 | |
| Assembly | asm | ||
| Astro | astro | ||
| AWK | awk | ||
| Ballerina | ballerina | ||
| Batch File | bat | batch | |
| Beancount | beancount | ||
| Berry | berry | be | |
| BibTeX | bibtex | ||
| Bicep | bicep | ||
| Blade | blade | ||
| C | c | ||
| Cadence | cadence | cdc | |
| Clarity | clarity | ||
| Clojure | clojure | clj | |
| CMake | cmake | ||
| COBOL | cobol | ||
| CODEOWNERS | codeowners | ||
| CodeQL | codeql | ql | |
| CoffeeScript | coffee | coffeescript | |
| Common Lisp | common-lisp | lisp | |
| Coq | coq | ||
| C++ | cpp | c++ | |
| Crystal | crystal | ||
| C# | csharp | c#cs | |
| 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 | |
| Fennel | fennel | ||
| Fish | fish | ||
| Fluent | fluent | ftl | |
| Fortran (Fixed Form) | fortran-fixed-form | fforf77 | |
| Fortran (Free Form) | fortran-free-form | f90f95f03f08f18 | |
| F# | fsharp | f#fs | |
| GDResource | gdresource | ||
| GDScript | gdscript | ||
| GDShader | gdshader | ||
| Genie | genie | ||
| 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 | ||
| Gnuplot | gnuplot | ||
| Go | go | ||
| GraphQL | graphql | gql | |
| Groovy | groovy | ||
| Hack | hack | ||
| Ruby Haml | haml | ||
| Handlebars | handlebars | hbs | |
| Haskell | haskell | hs | |
| Haxe | haxe | ||
| HashiCorp HCL | hcl | ||
| Hjson | hjson | ||
| HLSL | hlsl | ||
| HTML | html | ||
| HTML (Derivative) | html-derivative | ||
| HTTP | http | ||
| HXML | hxml | ||
| Hy | hy | ||
| Imba | imba | ||
| INI | ini | properties | |
| Java | java | ||
| JavaScript | javascript | js | |
| Jinja | jinja | ||
| Jison | jison | ||
| JSON | json | ||
| JSON5 | json5 | ||
| JSON with Comments | jsonc | ||
| JSON Lines | jsonl | ||
| Jsonnet | jsonnet | ||
| JSSM | jssm | fsl | |
| JSX | jsx | ||
| Julia | julia | jl | |
| Kotlin | kotlin | ktkts | |
| Kusto | kusto | kql | |
| LaTeX | latex | ||
| Lean 4 | lean | lean4 | |
| Less | less | ||
| Liquid | liquid | ||
| 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 | ||
| Mojo | mojo | ||
| Move | move | ||
| Narrat Language | narrat | nar | |
| Nextflow | nextflow | nf | |
| Nginx | nginx | ||
| Nim | nim | ||
| Nix | nix | ||
| nushell | nushell | nu | |
| Objective-C | objective-c | objc | |
| Objective-C++ | objective-cpp | ||
| OCaml | ocaml | ||
| Pascal | pascal | ||
| Perl | perl | ||
| PHP | php | ||
| PL/SQL | plsql | ||
| Gettext PO | po | potpotx | |
| PostCSS | postcss | ||
| PowerQuery | powerquery | ||
| PowerShell | powershell | psps1 | |
| 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 | |
| ASP.NET Razor | razor | ||
| Windows Registry Script | reg | ||
| RegExp | regexp | regex | |
| Rel | rel | ||
| RISC-V | riscv | ||
| reStructuredText | rst | ||
| Ruby | ruby | rb | |
| Rust | rust | rs | |
| SAS | sas | ||
| Sass | sass | ||
| Scala | scala | ||
| Scheme | scheme | ||
| SCSS | scss | ||
| ShaderLab | shaderlab | shader | |
| Shell | shellscript | bashshshellzsh | |
| Shell Session | shellsession | console | |
| Smalltalk | smalltalk | ||
| Solidity | solidity | ||
| Closure Templates | soy | closure-templates | |
| SPARQL | sparql | ||
| Splunk Query Language | splunk | spl | |
| SQL | sql | ||
| SSH Config | ssh-config | ||
| Stata | stata | ||
| Stylus | stylus | styl | |
| Svelte | svelte | ||
| Swift | swift | ||
| SystemVerilog | system-verilog | ||
| Systemd Units | systemd | ||
| Tasl | tasl | ||
| Tcl | tcl | ||
| Templ | templ | ||
| Terraform | terraform | tftfvars | |
| TeX | tex | ||
| TOML | toml | ||
| TypeScript with Tags | ts-tags | lit | |
| TSV | tsv | ||
| TSX | tsx | ||
| Turtle | turtle | ||
| Twig | twig | ||
| TypeScript | typescript | ts | |
| TypeSpec | typespec | tsp | |
| Typst | typst | typ | |
| V | v | ||
| Vala | vala | ||
| Visual Basic | vb | cmd | |
| Verilog | verilog | ||
| VHDL | vhdl | ||
| Vim Script | viml | vimvimscript | |
| Vue | vue | ||
| Vue HTML | vue-html | ||
| Vyper | vyper | vy | |
| WebAssembly | wasm | ||
| Wenyan | wenyan | 文言 | |
| WGSL | wgsl | ||
| Wikitext | wikitext | mediawikiwiki | |
| Wolfram | wolfram | wl | |
| XML | xml | ||
| XSL | xsl | ||
| YAML | yaml | yml | |
| ZenScript | zenscript | ||
| Zig | zig |
Grammars are covered by their repositories’ respective licenses, which are permissive (apache-2.0, mit, etc), and made available in this NOTICE.
For loading your custom languages, please reference to this guide.
Special Languages
Plain Text
You can set lang to text to bypass highlighting. This is useful as the fallback when you receive user specified language that are not available. For example:
txt
import { codeToHtml } from 'shiki'
const html = codeToHtml('console.log("Hello World")', {
lang: 'text',
theme: 'vitesse-light',
})txt, plain are provided as aliases to text as well.
ANSI
A special processed language ansi is provided to highlight terminal outputs. For example:
┌ Welcome to VitePress!
│
◇ Where should VitePress initialize the config?
│ ./docs
│
◇ Site title:
│ My Awesome Project
│
◇ Site description:
│ A VitePress Site
│
◆ Theme:
│ ● Default Theme (Out of the box, good-looking docs)
│ ○ Default Theme + Customization
│ ○ Custom Theme
└Check the raw markdown of code snippet above.