Μετάβαση στο περιεχόμενο

Γλώσσες

Το shikiphp περιλαμβάνει ολόκληρο το σύνολο γλωσσών του Shiki: κάθε γραμματική από το tm-grammars 1.31.15, το σύνολο που διαθέτει το Shiki 3.23.0. Πρόκειται για 235 γλώσσες και 18 βοηθητικές γραμματικές που ενσωματώνουν, 253 γραμματικές συνολικά. Είναι οι ίδιες γραμματικές TextMate με τις οποίες κάνουν ανάλυση σε tokens τα VS Code και Shiki, επομένως η κάλυψη γλωσσών, τα ψευδώνυμα και τα ονόματα scope συμπίπτουν.

Αναφέρετε μια γλώσσα με το αναγνωριστικό της ή ένα από τα ψευδώνυμά της — για παράδειγμα ts ή typescript, js ή javascript, php, rust, python, html, yaml, json κ.ο.κ. Τα αναγνωριστικά αντιστοιχίζονται ακριβώς, οπότε χρησιμοποιήστε τα με πεζά, όπως παρατίθενται παρακάτω· αν το πακέτο δεν αναγνωρίζει ένα αναγνωριστικό, προκύπτει Shikiphp\Exceptions\Highlight με μήνυμα Unknown language "…".

Το ειδικό αναγνωριστικό 'ansi' δεν είναι γραμματική· επισημαίνει την έξοδο του τερματικού. Δείτε το ANSI.

Τα αναγνωριστικά απλού κειμένου text, txt, plain και plaintext του Shiki δεν υποστηρίζονται ακόμη και προκαλούν Unknown language (#2).

Εμφάνιση των ενσωματωμένων γλωσσών

Από το PHP, ζητήστε τη λίστα από το εργαλείο επισήμανσης:

PHP
use Shikiphp\Shikiphp;

$highlighter = Shikiphp::highlighter();

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

Και οι δύο λίστες περιέχουν κάθε αναγνωριστικό που επιλύεται: πρώτα τα αναγνωριστικά γραμματικών 253 και έπειτα τα 97 ψευδώνυμα, δηλαδή 350 εγγραφές για το πακέτο.

Ή από τη γραμμή εντολών, ένα αναγνωριστικό ανά γραμμή:

Κέλυφος
vendor/bin/shikiphp langs

Κατάλογος

Οι 235 ενσωματωμένες γλώσσες, ταξινομημένες κατά όνομα. Κάθε αναγνωριστικό ή ψευδώνυμο μιας γραμμής επιλέγει την ίδια γραμματική.

Γλώσσα Id Ψευδώνυμα
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

Βοηθητικές γραμματικές

Αυτές οι 18 γραμματικές υπάρχουν ώστε να μπορούν να ενσωματωθούν ή να εισαχθούν από άλλες γραμματικές (Angular, Vue, μακροεντολές C++, Jinja και tagged template literals στο ts-tags). Φορτώνονται αυτόματα μαζί με τη γλώσσα που τις χρειάζεται και τα αναγνωριστικά τους εμφανίζονται επίσης στα bundledLanguages() και 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.

Προσθήκη δικών σας

Χρειάζεστε γλώσσα που δεν περιλαμβάνεται ή ιδιωτική γραμματική; Καταχωρίστε την με το loadGrammar. Δείτε τις Προσαρμοσμένες γλώσσες και θέματα.