cherry-studio/packages/shared/config/languages.ts
one 2f5cd78f7f
chore(deps): bump mermaid, shiki, tanstack, etc. (#9658)
* chore(deps): bump mermaid, shiki, tanstack, etc.

* refactor: update code languages, fix lint warnings
2025-08-29 16:17:55 +08:00

3679 lines
69 KiB
TypeScript

/**
* Code language list.
* Data source: linguist-languages
*
* ⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️
* THIS FILE IS AUTOMATICALLY GENERATED BY A SCRIPT. DO NOT EDIT IT MANUALLY!
* Run `yarn update:languages` to update this file.
* ⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️
*
*/
type LanguageData = {
type: string
aliases?: string[]
extensions?: string[]
}
export const languages: Record<string, LanguageData> = {
'1C Enterprise': {
type: 'programming',
extensions: ['.bsl', '.os']
},
'2-Dimensional Array': {
type: 'data',
extensions: ['.2da']
},
'4D': {
type: 'programming',
extensions: ['.4dm']
},
ABAP: {
type: 'programming',
extensions: ['.abap']
},
'ABAP CDS': {
type: 'programming',
extensions: ['.asddls']
},
ABNF: {
type: 'data',
extensions: ['.abnf']
},
ActionScript: {
type: 'programming',
extensions: ['.as'],
aliases: ['actionscript 3', 'actionscript3', 'as3']
},
Ada: {
type: 'programming',
extensions: ['.adb', '.ada', '.ads'],
aliases: ['ada95', 'ada2005']
},
'Adblock Filter List': {
type: 'data',
extensions: ['.txt'],
aliases: ['ad block filters', 'ad block', 'adb', 'adblock']
},
'Adobe Font Metrics': {
type: 'data',
extensions: ['.afm'],
aliases: ['acfm', 'adobe composite font metrics', 'adobe multiple font metrics', 'amfm']
},
Agda: {
type: 'programming',
extensions: ['.agda']
},
'AGS Script': {
type: 'programming',
extensions: ['.asc', '.ash'],
aliases: ['ags']
},
AIDL: {
type: 'programming',
extensions: ['.aidl']
},
Aiken: {
type: 'programming',
extensions: ['.ak']
},
AL: {
type: 'programming',
extensions: ['.al']
},
Alloy: {
type: 'programming',
extensions: ['.als']
},
'Alpine Abuild': {
type: 'programming',
aliases: ['abuild', 'apkbuild']
},
'Altium Designer': {
type: 'data',
extensions: ['.OutJob', '.PcbDoc', '.PrjPCB', '.SchDoc'],
aliases: ['altium']
},
AMPL: {
type: 'programming',
extensions: ['.ampl', '.mod']
},
AngelScript: {
type: 'programming',
extensions: ['.as', '.angelscript']
},
'Answer Set Programming': {
type: 'programming',
extensions: ['.lp']
},
Antlers: {
type: 'markup',
extensions: ['.antlers.html', '.antlers.php', '.antlers.xml']
},
ANTLR: {
type: 'programming',
extensions: ['.g4']
},
ApacheConf: {
type: 'data',
extensions: ['.apacheconf', '.vhost'],
aliases: ['aconf', 'apache']
},
Apex: {
type: 'programming',
extensions: ['.cls', '.apex', '.trigger']
},
'API Blueprint': {
type: 'markup',
extensions: ['.apib']
},
APL: {
type: 'programming',
extensions: ['.apl', '.dyalog']
},
'Apollo Guidance Computer': {
type: 'programming',
extensions: ['.agc']
},
AppleScript: {
type: 'programming',
extensions: ['.applescript', '.scpt'],
aliases: ['osascript']
},
Arc: {
type: 'programming',
extensions: ['.arc']
},
AsciiDoc: {
type: 'prose',
extensions: ['.asciidoc', '.adoc', '.asc']
},
ASL: {
type: 'programming',
extensions: ['.asl', '.dsl']
},
'ASN.1': {
type: 'data',
extensions: ['.asn', '.asn1']
},
'ASP.NET': {
type: 'programming',
extensions: ['.asax', '.ascx', '.ashx', '.asmx', '.aspx', '.axd'],
aliases: ['aspx', 'aspx-vb']
},
AspectJ: {
type: 'programming',
extensions: ['.aj']
},
Assembly: {
type: 'programming',
extensions: ['.asm', '.a51', '.i', '.inc', '.nas', '.nasm', '.s'],
aliases: ['asm', 'nasm']
},
Astro: {
type: 'markup',
extensions: ['.astro']
},
Asymptote: {
type: 'programming',
extensions: ['.asy']
},
ATS: {
type: 'programming',
extensions: ['.dats', '.hats', '.sats'],
aliases: ['ats2']
},
Augeas: {
type: 'programming',
extensions: ['.aug']
},
AutoHotkey: {
type: 'programming',
extensions: ['.ahk', '.ahkl'],
aliases: ['ahk']
},
AutoIt: {
type: 'programming',
extensions: ['.au3'],
aliases: ['au3', 'AutoIt3', 'AutoItScript']
},
'Avro IDL': {
type: 'data',
extensions: ['.avdl']
},
Awk: {
type: 'programming',
extensions: ['.awk', '.auk', '.gawk', '.mawk', '.nawk']
},
B4X: {
type: 'programming',
extensions: ['.bas'],
aliases: ['basic for android']
},
Ballerina: {
type: 'programming',
extensions: ['.bal']
},
BASIC: {
type: 'programming',
extensions: ['.bas']
},
Batchfile: {
type: 'programming',
extensions: ['.bat', '.cmd'],
aliases: ['bat', 'batch', 'dosbatch', 'winbatch']
},
Beef: {
type: 'programming',
extensions: ['.bf']
},
Befunge: {
type: 'programming',
extensions: ['.befunge', '.bf']
},
Berry: {
type: 'programming',
extensions: ['.be'],
aliases: ['be']
},
BibTeX: {
type: 'markup',
extensions: ['.bib', '.bibtex']
},
'BibTeX Style': {
type: 'programming',
extensions: ['.bst']
},
Bicep: {
type: 'programming',
extensions: ['.bicep', '.bicepparam']
},
Bikeshed: {
type: 'markup',
extensions: ['.bs']
},
Bison: {
type: 'programming',
extensions: ['.bison']
},
BitBake: {
type: 'programming',
extensions: ['.bb', '.bbappend', '.bbclass', '.inc']
},
Blade: {
type: 'markup',
extensions: ['.blade', '.blade.php']
},
BlitzBasic: {
type: 'programming',
extensions: ['.bb', '.decls'],
aliases: ['b3d', 'blitz3d', 'blitzplus', 'bplus']
},
BlitzMax: {
type: 'programming',
extensions: ['.bmx'],
aliases: ['bmax']
},
Bluespec: {
type: 'programming',
extensions: ['.bsv'],
aliases: ['bluespec bsv', 'bsv']
},
'Bluespec BH': {
type: 'programming',
extensions: ['.bs'],
aliases: ['bh', 'bluespec classic']
},
Boo: {
type: 'programming',
extensions: ['.boo']
},
Boogie: {
type: 'programming',
extensions: ['.bpl']
},
BQN: {
type: 'programming',
extensions: ['.bqn']
},
Brainfuck: {
type: 'programming',
extensions: ['.b', '.bf']
},
BrighterScript: {
type: 'programming',
extensions: ['.bs']
},
Brightscript: {
type: 'programming',
extensions: ['.brs']
},
BuildStream: {
type: 'data',
extensions: ['.bst']
},
C: {
type: 'programming',
extensions: ['.c', '.cats', '.h', '.h.in', '.idc']
},
'C-ObjDump': {
type: 'data',
extensions: ['.c-objdump']
},
'C#': {
type: 'programming',
extensions: ['.cs', '.cake', '.cs.pp', '.csx', '.linq'],
aliases: ['csharp', 'cake', 'cakescript']
},
'C++': {
type: 'programming',
extensions: [
'.cpp',
'.c++',
'.cc',
'.cp',
'.cppm',
'.cxx',
'.h',
'.h++',
'.hh',
'.hpp',
'.hxx',
'.inc',
'.inl',
'.ino',
'.ipp',
'.ixx',
'.re',
'.tcc',
'.tpp',
'.txx'
],
aliases: ['cpp']
},
'C2hs Haskell': {
type: 'programming',
extensions: ['.chs'],
aliases: ['c2hs']
},
'Cabal Config': {
type: 'data',
extensions: ['.cabal'],
aliases: ['Cabal']
},
Caddyfile: {
type: 'data',
extensions: ['.caddyfile'],
aliases: ['Caddy']
},
Cadence: {
type: 'programming',
extensions: ['.cdc']
},
Cairo: {
type: 'programming',
extensions: ['.cairo']
},
'Cairo Zero': {
type: 'programming',
extensions: ['.cairo']
},
CameLIGO: {
type: 'programming',
extensions: ['.mligo']
},
'CAP CDS': {
type: 'programming',
extensions: ['.cds'],
aliases: ['cds']
},
"Cap'n Proto": {
type: 'programming',
extensions: ['.capnp']
},
Carbon: {
type: 'programming',
extensions: ['.carbon']
},
CartoCSS: {
type: 'programming',
extensions: ['.mss'],
aliases: ['Carto']
},
Ceylon: {
type: 'programming',
extensions: ['.ceylon']
},
Chapel: {
type: 'programming',
extensions: ['.chpl'],
aliases: ['chpl']
},
Charity: {
type: 'programming',
extensions: ['.ch']
},
Checksums: {
type: 'data',
extensions: [
'.crc32',
'.md2',
'.md4',
'.md5',
'.sha1',
'.sha2',
'.sha224',
'.sha256',
'.sha256sum',
'.sha3',
'.sha384',
'.sha512'
],
aliases: ['checksum', 'hash', 'hashes', 'sum', 'sums']
},
ChucK: {
type: 'programming',
extensions: ['.ck']
},
CIL: {
type: 'data',
extensions: ['.cil']
},
Circom: {
type: 'programming',
extensions: ['.circom']
},
Cirru: {
type: 'programming',
extensions: ['.cirru']
},
Clarion: {
type: 'programming',
extensions: ['.clw']
},
Clarity: {
type: 'programming',
extensions: ['.clar']
},
'Classic ASP': {
type: 'programming',
extensions: ['.asp'],
aliases: ['asp']
},
Clean: {
type: 'programming',
extensions: ['.icl', '.dcl']
},
Click: {
type: 'programming',
extensions: ['.click']
},
CLIPS: {
type: 'programming',
extensions: ['.clp']
},
Clojure: {
type: 'programming',
extensions: ['.clj', '.bb', '.boot', '.cl2', '.cljc', '.cljs', '.cljs.hl', '.cljscm', '.cljx', '.hic']
},
'Closure Templates': {
type: 'markup',
extensions: ['.soy'],
aliases: ['soy']
},
Clue: {
type: 'programming',
extensions: ['.clue']
},
CMake: {
type: 'programming',
extensions: ['.cmake', '.cmake.in']
},
COBOL: {
type: 'programming',
extensions: ['.cob', '.cbl', '.ccp', '.cobol', '.cpy']
},
CodeQL: {
type: 'programming',
extensions: ['.ql', '.qll'],
aliases: ['ql']
},
CoffeeScript: {
type: 'programming',
extensions: ['.coffee', '._coffee', '.cake', '.cjsx', '.iced'],
aliases: ['coffee', 'coffee-script']
},
ColdFusion: {
type: 'programming',
extensions: ['.cfm', '.cfml'],
aliases: ['cfm', 'cfml', 'coldfusion html']
},
'ColdFusion CFC': {
type: 'programming',
extensions: ['.cfc'],
aliases: ['cfc']
},
COLLADA: {
type: 'data',
extensions: ['.dae']
},
'Common Lisp': {
type: 'programming',
extensions: ['.lisp', '.asd', '.cl', '.l', '.lsp', '.ny', '.podsl', '.sexp'],
aliases: ['lisp']
},
'Common Workflow Language': {
type: 'programming',
extensions: ['.cwl'],
aliases: ['cwl']
},
'Component Pascal': {
type: 'programming',
extensions: ['.cp', '.cps']
},
'CoNLL-U': {
type: 'data',
extensions: ['.conllu', '.conll'],
aliases: ['CoNLL', 'CoNLL-X']
},
Cool: {
type: 'programming',
extensions: ['.cl']
},
'Cpp-ObjDump': {
type: 'data',
extensions: ['.cppobjdump', '.c++-objdump', '.c++objdump', '.cpp-objdump', '.cxx-objdump'],
aliases: ['c++-objdump']
},
Creole: {
type: 'prose',
extensions: ['.creole']
},
crontab: {
type: 'data',
aliases: ['cron', 'cron table']
},
Crystal: {
type: 'programming',
extensions: ['.cr']
},
CSON: {
type: 'data',
extensions: ['.cson']
},
Csound: {
type: 'programming',
extensions: ['.orc', '.udo'],
aliases: ['csound-orc']
},
'Csound Document': {
type: 'programming',
extensions: ['.csd'],
aliases: ['csound-csd']
},
'Csound Score': {
type: 'programming',
extensions: ['.sco'],
aliases: ['csound-sco']
},
CSS: {
type: 'markup',
extensions: ['.css']
},
CSV: {
type: 'data',
extensions: ['.csv']
},
Cuda: {
type: 'programming',
extensions: ['.cu', '.cuh']
},
CUE: {
type: 'programming',
extensions: ['.cue']
},
'Cue Sheet': {
type: 'data',
extensions: ['.cue']
},
'cURL Config': {
type: 'data',
aliases: ['curlrc']
},
Curry: {
type: 'programming',
extensions: ['.curry']
},
CWeb: {
type: 'programming',
extensions: ['.w']
},
Cycript: {
type: 'programming',
extensions: ['.cy']
},
Cylc: {
type: 'data',
extensions: ['.cylc']
},
Cypher: {
type: 'programming',
extensions: ['.cyp', '.cypher']
},
Cython: {
type: 'programming',
extensions: ['.pyx', '.pxd', '.pxi'],
aliases: ['pyrex']
},
D: {
type: 'programming',
extensions: ['.d', '.di'],
aliases: ['Dlang']
},
'D-ObjDump': {
type: 'data',
extensions: ['.d-objdump']
},
D2: {
type: 'markup',
extensions: ['.d2'],
aliases: ['d2lang']
},
Dafny: {
type: 'programming',
extensions: ['.dfy']
},
'Darcs Patch': {
type: 'data',
extensions: ['.darcspatch', '.dpatch'],
aliases: ['dpatch']
},
Dart: {
type: 'programming',
extensions: ['.dart']
},
Daslang: {
type: 'programming',
extensions: ['.das']
},
DataWeave: {
type: 'programming',
extensions: ['.dwl']
},
'Debian Package Control File': {
type: 'data',
extensions: ['.dsc']
},
DenizenScript: {
type: 'programming',
extensions: ['.dsc']
},
desktop: {
type: 'data',
extensions: ['.desktop', '.desktop.in', '.service']
},
Dhall: {
type: 'programming',
extensions: ['.dhall']
},
Diff: {
type: 'data',
extensions: ['.diff', '.patch'],
aliases: ['udiff']
},
'DIGITAL Command Language': {
type: 'programming',
extensions: ['.com'],
aliases: ['dcl']
},
dircolors: {
type: 'data',
extensions: ['.dircolors']
},
'DirectX 3D File': {
type: 'data',
extensions: ['.x']
},
DM: {
type: 'programming',
extensions: ['.dm'],
aliases: ['byond']
},
'DNS Zone': {
type: 'data',
extensions: ['.zone', '.arpa']
},
Dockerfile: {
type: 'programming',
extensions: ['.dockerfile', '.containerfile'],
aliases: ['Containerfile']
},
Dogescript: {
type: 'programming',
extensions: ['.djs']
},
Dotenv: {
type: 'data',
extensions: ['.env']
},
DTrace: {
type: 'programming',
extensions: ['.d'],
aliases: ['dtrace-script']
},
Dylan: {
type: 'programming',
extensions: ['.dylan', '.dyl', '.intr', '.lid']
},
E: {
type: 'programming',
extensions: ['.e']
},
'E-mail': {
type: 'data',
extensions: ['.eml', '.mbox'],
aliases: ['email', 'eml', 'mail', 'mbox']
},
Eagle: {
type: 'data',
extensions: ['.sch', '.brd']
},
Earthly: {
type: 'programming',
aliases: ['Earthfile']
},
Easybuild: {
type: 'data',
extensions: ['.eb']
},
EBNF: {
type: 'data',
extensions: ['.ebnf']
},
eC: {
type: 'programming',
extensions: ['.ec', '.eh']
},
'Ecere Projects': {
type: 'data',
extensions: ['.epj']
},
ECL: {
type: 'programming',
extensions: ['.ecl', '.eclxml']
},
ECLiPSe: {
type: 'programming',
extensions: ['.ecl']
},
Ecmarkup: {
type: 'markup',
extensions: ['.html'],
aliases: ['ecmarkdown']
},
Edge: {
type: 'markup',
extensions: ['.edge']
},
EdgeQL: {
type: 'programming',
extensions: ['.edgeql', '.esdl'],
aliases: ['esdl']
},
EditorConfig: {
type: 'data',
extensions: ['.editorconfig'],
aliases: ['editor-config']
},
'Edje Data Collection': {
type: 'data',
extensions: ['.edc']
},
edn: {
type: 'data',
extensions: ['.edn']
},
Eiffel: {
type: 'programming',
extensions: ['.e']
},
EJS: {
type: 'markup',
extensions: ['.ejs', '.ect', '.ejs.t', '.jst']
},
Elixir: {
type: 'programming',
extensions: ['.ex', '.exs']
},
Elm: {
type: 'programming',
extensions: ['.elm']
},
Elvish: {
type: 'programming',
extensions: ['.elv']
},
'Emacs Lisp': {
type: 'programming',
extensions: ['.el', '.emacs', '.emacs.desktop'],
aliases: ['elisp', 'emacs']
},
EmberScript: {
type: 'programming',
extensions: ['.em', '.emberscript']
},
EQ: {
type: 'programming',
extensions: ['.eq']
},
Erlang: {
type: 'programming',
extensions: ['.erl', '.app', '.app.src', '.es', '.escript', '.hrl', '.xrl', '.yrl']
},
Euphoria: {
type: 'programming',
extensions: ['.e', '.ex']
},
'F*': {
type: 'programming',
extensions: ['.fst', '.fsti'],
aliases: ['fstar']
},
'F#': {
type: 'programming',
extensions: ['.fs', '.fsi', '.fsx'],
aliases: ['fsharp']
},
Factor: {
type: 'programming',
extensions: ['.factor']
},
Fancy: {
type: 'programming',
extensions: ['.fy', '.fancypack']
},
Fantom: {
type: 'programming',
extensions: ['.fan']
},
Faust: {
type: 'programming',
extensions: ['.dsp']
},
Fennel: {
type: 'programming',
extensions: ['.fnl']
},
'FIGlet Font': {
type: 'data',
extensions: ['.flf'],
aliases: ['FIGfont']
},
'Filebench WML': {
type: 'programming',
extensions: ['.f']
},
Filterscript: {
type: 'programming',
extensions: ['.fs']
},
FIRRTL: {
type: 'programming',
extensions: ['.fir']
},
fish: {
type: 'programming',
extensions: ['.fish']
},
Fluent: {
type: 'programming',
extensions: ['.ftl']
},
FLUX: {
type: 'programming',
extensions: ['.fx', '.flux']
},
Formatted: {
type: 'data',
extensions: ['.for', '.eam.fs']
},
Forth: {
type: 'programming',
extensions: ['.fth', '.4th', '.f', '.for', '.forth', '.fr', '.frt', '.fs']
},
Fortran: {
type: 'programming',
extensions: ['.f', '.f77', '.for', '.fpp']
},
'Fortran Free Form': {
type: 'programming',
extensions: ['.f90', '.f03', '.f08', '.f95']
},
FreeBASIC: {
type: 'programming',
extensions: ['.bi', '.bas'],
aliases: ['fb']
},
FreeMarker: {
type: 'programming',
extensions: ['.ftl'],
aliases: ['ftl']
},
Frege: {
type: 'programming',
extensions: ['.fr']
},
Futhark: {
type: 'programming',
extensions: ['.fut']
},
'G-code': {
type: 'programming',
extensions: ['.g', '.cnc', '.gco', '.gcode']
},
'Game Maker Language': {
type: 'programming',
extensions: ['.gml']
},
GAML: {
type: 'programming',
extensions: ['.gaml']
},
GAMS: {
type: 'programming',
extensions: ['.gms']
},
GAP: {
type: 'programming',
extensions: ['.g', '.gap', '.gd', '.gi', '.tst']
},
'GCC Machine Description': {
type: 'programming',
extensions: ['.md']
},
GDB: {
type: 'programming',
extensions: ['.gdb', '.gdbinit']
},
GDScript: {
type: 'programming',
extensions: ['.gd']
},
GDShader: {
type: 'programming',
extensions: ['.gdshader', '.gdshaderinc']
},
GEDCOM: {
type: 'data',
extensions: ['.ged']
},
Gemini: {
type: 'prose',
extensions: ['.gmi'],
aliases: ['gemtext']
},
'Genero 4gl': {
type: 'programming',
extensions: ['.4gl']
},
'Genero per': {
type: 'markup',
extensions: ['.per']
},
Genie: {
type: 'programming',
extensions: ['.gs']
},
Genshi: {
type: 'programming',
extensions: ['.kid'],
aliases: ['xml+genshi', 'xml+kid']
},
'Gentoo Ebuild': {
type: 'programming',
extensions: ['.ebuild']
},
'Gentoo Eclass': {
type: 'programming',
extensions: ['.eclass']
},
'Gerber Image': {
type: 'data',
extensions: [
'.gbr',
'.cmp',
'.gbl',
'.gbo',
'.gbp',
'.gbs',
'.gko',
'.gml',
'.gpb',
'.gpt',
'.gtl',
'.gto',
'.gtp',
'.gts',
'.ncl',
'.sol'
],
aliases: ['rs-274x']
},
'Gettext Catalog': {
type: 'prose',
extensions: ['.po', '.pot'],
aliases: ['pot']
},
Gherkin: {
type: 'programming',
extensions: ['.feature', '.story'],
aliases: ['cucumber']
},
'Git Attributes': {
type: 'data',
aliases: ['gitattributes']
},
'Git Config': {
type: 'data',
extensions: ['.gitconfig'],
aliases: ['gitconfig', 'gitmodules']
},
'Git Revision List': {
type: 'data',
aliases: ['Git Blame Ignore Revs']
},
Gleam: {
type: 'programming',
extensions: ['.gleam']
},
'Glimmer JS': {
type: 'programming',
extensions: ['.gjs']
},
'Glimmer TS': {
type: 'programming',
extensions: ['.gts']
},
GLSL: {
type: 'programming',
extensions: [
'.glsl',
'.fp',
'.frag',
'.frg',
'.fs',
'.fsh',
'.fshader',
'.geo',
'.geom',
'.glslf',
'.glslv',
'.gs',
'.gshader',
'.rchit',
'.rmiss',
'.shader',
'.tesc',
'.tese',
'.vert',
'.vrx',
'.vs',
'.vsh',
'.vshader'
]
},
Glyph: {
type: 'programming',
extensions: ['.glf']
},
'Glyph Bitmap Distribution Format': {
type: 'data',
extensions: ['.bdf']
},
GN: {
type: 'data',
extensions: ['.gn', '.gni']
},
Gnuplot: {
type: 'programming',
extensions: ['.gp', '.gnu', '.gnuplot', '.p', '.plot', '.plt']
},
Go: {
type: 'programming',
extensions: ['.go'],
aliases: ['golang']
},
'Go Checksums': {
type: 'data',
aliases: ['go.sum', 'go sum', 'go.work.sum', 'go work sum']
},
'Go Module': {
type: 'data',
aliases: ['go.mod', 'go mod']
},
'Go Workspace': {
type: 'data',
aliases: ['go.work', 'go work']
},
'Godot Resource': {
type: 'data',
extensions: ['.gdnlib', '.gdns', '.tres', '.tscn']
},
Golo: {
type: 'programming',
extensions: ['.golo']
},
Gosu: {
type: 'programming',
extensions: ['.gs', '.gst', '.gsx', '.vark']
},
Grace: {
type: 'programming',
extensions: ['.grace']
},
Gradle: {
type: 'data',
extensions: ['.gradle']
},
'Gradle Kotlin DSL': {
type: 'data',
extensions: ['.gradle.kts']
},
'Grammatical Framework': {
type: 'programming',
extensions: ['.gf'],
aliases: ['gf']
},
'Graph Modeling Language': {
type: 'data',
extensions: ['.gml']
},
GraphQL: {
type: 'data',
extensions: ['.graphql', '.gql', '.graphqls']
},
'Graphviz (DOT)': {
type: 'data',
extensions: ['.dot', '.gv']
},
Groovy: {
type: 'programming',
extensions: ['.groovy', '.grt', '.gtpl', '.gvy']
},
'Groovy Server Pages': {
type: 'programming',
extensions: ['.gsp'],
aliases: ['gsp', 'java server page']
},
GSC: {
type: 'programming',
extensions: ['.gsc', '.csc', '.gsh']
},
Hack: {
type: 'programming',
extensions: ['.hack', '.hh', '.hhi', '.php']
},
Haml: {
type: 'markup',
extensions: ['.haml', '.haml.deface']
},
Handlebars: {
type: 'markup',
extensions: ['.handlebars', '.hbs'],
aliases: ['hbs', 'htmlbars']
},
HAProxy: {
type: 'data',
extensions: ['.cfg']
},
Harbour: {
type: 'programming',
extensions: ['.hb']
},
Hare: {
type: 'programming',
extensions: ['.ha']
},
Haskell: {
type: 'programming',
extensions: ['.hs', '.hs-boot', '.hsc']
},
Haxe: {
type: 'programming',
extensions: ['.hx', '.hxsl']
},
HCL: {
type: 'programming',
extensions: ['.hcl', '.nomad', '.tf', '.tfvars', '.workflow'],
aliases: ['HashiCorp Configuration Language', 'terraform']
},
HIP: {
type: 'programming',
extensions: ['.hip']
},
HiveQL: {
type: 'programming',
extensions: ['.q', '.hql']
},
HLSL: {
type: 'programming',
extensions: ['.hlsl', '.cginc', '.fx', '.fxh', '.hlsli']
},
HOCON: {
type: 'data',
extensions: ['.hocon']
},
HolyC: {
type: 'programming',
extensions: ['.hc']
},
hoon: {
type: 'programming',
extensions: ['.hoon']
},
'Hosts File': {
type: 'data',
aliases: ['hosts']
},
HTML: {
type: 'markup',
extensions: ['.html', '.hta', '.htm', '.html.hl', '.inc', '.xht', '.xhtml'],
aliases: ['xhtml']
},
'HTML+ECR': {
type: 'markup',
extensions: ['.ecr'],
aliases: ['ecr']
},
'HTML+EEX': {
type: 'markup',
extensions: ['.html.eex', '.heex', '.leex'],
aliases: ['eex', 'heex', 'leex']
},
'HTML+ERB': {
type: 'markup',
extensions: ['.erb', '.erb.deface', '.rhtml'],
aliases: ['erb', 'rhtml', 'html+ruby']
},
'HTML+PHP': {
type: 'markup',
extensions: ['.phtml']
},
'HTML+Razor': {
type: 'markup',
extensions: ['.cshtml', '.razor'],
aliases: ['razor']
},
HTTP: {
type: 'data',
extensions: ['.http']
},
HXML: {
type: 'data',
extensions: ['.hxml']
},
Hy: {
type: 'programming',
extensions: ['.hy'],
aliases: ['hylang']
},
HyPhy: {
type: 'programming',
extensions: ['.bf']
},
iCalendar: {
type: 'data',
extensions: ['.ics', '.ical'],
aliases: ['iCal']
},
IDL: {
type: 'programming',
extensions: ['.pro', '.dlm']
},
Idris: {
type: 'programming',
extensions: ['.idr', '.lidr']
},
'Ignore List': {
type: 'data',
extensions: ['.gitignore'],
aliases: ['ignore', 'gitignore', 'git-ignore']
},
'IGOR Pro': {
type: 'programming',
extensions: ['.ipf'],
aliases: ['igor', 'igorpro']
},
'ImageJ Macro': {
type: 'programming',
extensions: ['.ijm'],
aliases: ['ijm']
},
Imba: {
type: 'programming',
extensions: ['.imba']
},
'Inform 7': {
type: 'programming',
extensions: ['.ni', '.i7x'],
aliases: ['i7', 'inform7']
},
INI: {
type: 'data',
extensions: ['.ini', '.cfg', '.cnf', '.dof', '.frm', '.lektorproject', '.prefs', '.pro', '.properties', '.url'],
aliases: ['dosini']
},
Ink: {
type: 'programming',
extensions: ['.ink']
},
'Inno Setup': {
type: 'programming',
extensions: ['.iss', '.isl']
},
Io: {
type: 'programming',
extensions: ['.io']
},
Ioke: {
type: 'programming',
extensions: ['.ik']
},
'IRC log': {
type: 'data',
extensions: ['.irclog', '.weechatlog'],
aliases: ['irc', 'irc logs']
},
Isabelle: {
type: 'programming',
extensions: ['.thy']
},
ISPC: {
type: 'programming',
extensions: ['.ispc']
},
J: {
type: 'programming',
extensions: ['.ijs']
},
Jai: {
type: 'programming',
extensions: ['.jai']
},
Janet: {
type: 'programming',
extensions: ['.janet']
},
Jasmin: {
type: 'programming',
extensions: ['.j']
},
Java: {
type: 'programming',
extensions: ['.java', '.jav', '.jsh']
},
'Java Properties': {
type: 'data',
extensions: ['.properties']
},
'Java Server Pages': {
type: 'programming',
extensions: ['.jsp', '.tag'],
aliases: ['jsp']
},
'Java Template Engine': {
type: 'programming',
extensions: ['.jte'],
aliases: ['jte']
},
JavaScript: {
type: 'programming',
extensions: [
'.js',
'._js',
'.bones',
'.cjs',
'.es',
'.es6',
'.frag',
'.gs',
'.jake',
'.javascript',
'.jsb',
'.jscad',
'.jsfl',
'.jslib',
'.jsm',
'.jspre',
'.jss',
'.jsx',
'.mjs',
'.njs',
'.pac',
'.sjs',
'.ssjs',
'.xsjs',
'.xsjslib'
],
aliases: ['js', 'node']
},
'JavaScript+ERB': {
type: 'programming',
extensions: ['.js.erb']
},
JCL: {
type: 'programming',
extensions: ['.jcl']
},
'Jest Snapshot': {
type: 'data',
extensions: ['.snap']
},
'JetBrains MPS': {
type: 'programming',
extensions: ['.mps', '.mpl', '.msd'],
aliases: ['mps']
},
JFlex: {
type: 'programming',
extensions: ['.flex', '.jflex']
},
Jinja: {
type: 'markup',
extensions: ['.jinja', '.j2', '.jinja2'],
aliases: ['django', 'html+django', 'html+jinja', 'htmldjango']
},
Jison: {
type: 'programming',
extensions: ['.jison']
},
'Jison Lex': {
type: 'programming',
extensions: ['.jisonlex']
},
Jolie: {
type: 'programming',
extensions: ['.ol', '.iol']
},
jq: {
type: 'programming',
extensions: ['.jq']
},
JSON: {
type: 'data',
extensions: [
'.json',
'.4DForm',
'.4DProject',
'.avsc',
'.geojson',
'.gltf',
'.har',
'.ice',
'.JSON-tmLanguage',
'.json.example',
'.jsonl',
'.mcmeta',
'.sarif',
'.tact',
'.tfstate',
'.tfstate.backup',
'.topojson',
'.webapp',
'.webmanifest',
'.yy',
'.yyp'
],
aliases: ['geojson', 'jsonl', 'sarif', 'topojson']
},
'JSON with Comments': {
type: 'data',
extensions: [
'.jsonc',
'.code-snippets',
'.code-workspace',
'.sublime-build',
'.sublime-color-scheme',
'.sublime-commands',
'.sublime-completions',
'.sublime-keymap',
'.sublime-macro',
'.sublime-menu',
'.sublime-mousemap',
'.sublime-project',
'.sublime-settings',
'.sublime-theme',
'.sublime-workspace',
'.sublime_metrics',
'.sublime_session'
],
aliases: ['jsonc']
},
JSON5: {
type: 'data',
extensions: ['.json5']
},
JSONiq: {
type: 'programming',
extensions: ['.jq']
},
JSONLD: {
type: 'data',
extensions: ['.jsonld']
},
Jsonnet: {
type: 'programming',
extensions: ['.jsonnet', '.libsonnet']
},
Julia: {
type: 'programming',
extensions: ['.jl']
},
'Jupyter Notebook': {
type: 'markup',
extensions: ['.ipynb'],
aliases: ['IPython Notebook']
},
Just: {
type: 'programming',
extensions: ['.just'],
aliases: ['Justfile']
},
'Kaitai Struct': {
type: 'programming',
extensions: ['.ksy'],
aliases: ['ksy']
},
KakouneScript: {
type: 'programming',
extensions: ['.kak'],
aliases: ['kak', 'kakscript']
},
KDL: {
type: 'data',
extensions: ['.kdl']
},
KerboScript: {
type: 'programming',
extensions: ['.ks']
},
'KiCad Layout': {
type: 'data',
extensions: ['.kicad_pcb', '.kicad_mod', '.kicad_wks'],
aliases: ['pcbnew']
},
'KiCad Legacy Layout': {
type: 'data',
extensions: ['.brd']
},
'KiCad Schematic': {
type: 'data',
extensions: ['.kicad_sch', '.kicad_sym', '.sch'],
aliases: ['eeschema schematic']
},
Kickstart: {
type: 'data',
extensions: ['.ks']
},
Kit: {
type: 'markup',
extensions: ['.kit']
},
Koka: {
type: 'programming',
extensions: ['.kk']
},
Kotlin: {
type: 'programming',
extensions: ['.kt', '.ktm', '.kts']
},
KRL: {
type: 'programming',
extensions: ['.krl']
},
Kusto: {
type: 'data',
extensions: ['.csl', '.kql']
},
kvlang: {
type: 'markup',
extensions: ['.kv']
},
LabVIEW: {
type: 'programming',
extensions: ['.lvproj', '.lvclass', '.lvlib']
},
Lark: {
type: 'data',
extensions: ['.lark']
},
Lasso: {
type: 'programming',
extensions: ['.lasso', '.las', '.lasso8', '.lasso9'],
aliases: ['lassoscript']
},
Latte: {
type: 'markup',
extensions: ['.latte']
},
Lean: {
type: 'programming',
extensions: ['.lean', '.hlean']
},
'Lean 4': {
type: 'programming',
extensions: ['.lean']
},
Leo: {
type: 'programming',
extensions: ['.leo']
},
Less: {
type: 'markup',
extensions: ['.less'],
aliases: ['less-css']
},
Lex: {
type: 'programming',
extensions: ['.l', '.lex'],
aliases: ['flex']
},
LFE: {
type: 'programming',
extensions: ['.lfe']
},
LigoLANG: {
type: 'programming',
extensions: ['.ligo']
},
LilyPond: {
type: 'programming',
extensions: ['.ly', '.ily']
},
Limbo: {
type: 'programming',
extensions: ['.b', '.m']
},
'Linear Programming': {
type: 'programming',
extensions: ['.lp']
},
'Linker Script': {
type: 'programming',
extensions: ['.ld', '.lds', '.x']
},
'Linux Kernel Module': {
type: 'data',
extensions: ['.mod']
},
Liquid: {
type: 'markup',
extensions: ['.liquid']
},
'Literate Agda': {
type: 'programming',
extensions: ['.lagda']
},
'Literate CoffeeScript': {
type: 'programming',
extensions: ['.litcoffee', '.coffee.md'],
aliases: ['litcoffee']
},
'Literate Haskell': {
type: 'programming',
extensions: ['.lhs'],
aliases: ['lhaskell', 'lhs']
},
'LiveCode Script': {
type: 'programming',
extensions: ['.livecodescript']
},
LiveScript: {
type: 'programming',
extensions: ['.ls', '._ls'],
aliases: ['live-script', 'ls']
},
LLVM: {
type: 'programming',
extensions: ['.ll']
},
Logos: {
type: 'programming',
extensions: ['.xm', '.x', '.xi']
},
Logtalk: {
type: 'programming',
extensions: ['.lgt', '.logtalk']
},
LOLCODE: {
type: 'programming',
extensions: ['.lol']
},
LookML: {
type: 'programming',
extensions: ['.lkml', '.lookml']
},
LoomScript: {
type: 'programming',
extensions: ['.ls']
},
LSL: {
type: 'programming',
extensions: ['.lsl', '.lslp']
},
'LTspice Symbol': {
type: 'data',
extensions: ['.asy']
},
Lua: {
type: 'programming',
extensions: ['.lua', '.fcgi', '.nse', '.p8', '.pd_lua', '.rbxs', '.rockspec', '.wlua']
},
Luau: {
type: 'programming',
extensions: ['.luau']
},
M: {
type: 'programming',
extensions: ['.mumps', '.m'],
aliases: ['mumps']
},
M3U: {
type: 'data',
extensions: ['.m3u', '.m3u8'],
aliases: ['hls playlist', 'm3u playlist']
},
M4: {
type: 'programming',
extensions: ['.m4', '.mc']
},
M4Sugar: {
type: 'programming',
extensions: ['.m4'],
aliases: ['autoconf']
},
Macaulay2: {
type: 'programming',
extensions: ['.m2'],
aliases: ['m2']
},
Makefile: {
type: 'programming',
extensions: ['.mak', '.d', '.make', '.makefile', '.mk', '.mkfile'],
aliases: ['bsdmake', 'make', 'mf']
},
Mako: {
type: 'programming',
extensions: ['.mako', '.mao']
},
Markdown: {
type: 'prose',
extensions: [
'.md',
'.livemd',
'.markdown',
'.mdown',
'.mdwn',
'.mkd',
'.mkdn',
'.mkdown',
'.ronn',
'.scd',
'.workbook'
],
aliases: ['md', 'pandoc']
},
Marko: {
type: 'markup',
extensions: ['.marko'],
aliases: ['markojs']
},
Mask: {
type: 'markup',
extensions: ['.mask']
},
Mathematica: {
type: 'programming',
extensions: ['.mathematica', '.cdf', '.m', '.ma', '.mt', '.nb', '.nbp', '.wl', '.wlt'],
aliases: ['mma', 'wolfram', 'wolfram language', 'wolfram lang', 'wl']
},
MATLAB: {
type: 'programming',
extensions: ['.matlab', '.m'],
aliases: ['octave']
},
Max: {
type: 'programming',
extensions: ['.maxpat', '.maxhelp', '.maxproj', '.mxt', '.pat'],
aliases: ['max/msp', 'maxmsp']
},
MAXScript: {
type: 'programming',
extensions: ['.ms', '.mcr']
},
mcfunction: {
type: 'programming',
extensions: ['.mcfunction']
},
mdsvex: {
type: 'markup',
extensions: ['.svx']
},
MDX: {
type: 'markup',
extensions: ['.mdx']
},
Mercury: {
type: 'programming',
extensions: ['.m', '.moo']
},
Mermaid: {
type: 'markup',
extensions: ['.mmd', '.mermaid'],
aliases: ['mermaid example']
},
Metal: {
type: 'programming',
extensions: ['.metal']
},
'Microsoft Developer Studio Project': {
type: 'data',
extensions: ['.dsp']
},
'Microsoft Visual Studio Solution': {
type: 'data',
extensions: ['.sln']
},
MiniD: {
type: 'programming',
extensions: ['.minid']
},
MiniYAML: {
type: 'data',
extensions: ['.yaml', '.yml']
},
MiniZinc: {
type: 'programming',
extensions: ['.mzn']
},
'MiniZinc Data': {
type: 'data',
extensions: ['.dzn']
},
Mint: {
type: 'programming',
extensions: ['.mint']
},
Mirah: {
type: 'programming',
extensions: ['.druby', '.duby', '.mirah']
},
'mIRC Script': {
type: 'programming',
extensions: ['.mrc']
},
MLIR: {
type: 'programming',
extensions: ['.mlir']
},
Modelica: {
type: 'programming',
extensions: ['.mo']
},
'Modula-2': {
type: 'programming',
extensions: ['.mod']
},
'Modula-3': {
type: 'programming',
extensions: ['.i3', '.ig', '.m3', '.mg']
},
'Module Management System': {
type: 'programming',
extensions: ['.mms', '.mmk']
},
Mojo: {
type: 'programming',
extensions: ['.mojo']
},
Monkey: {
type: 'programming',
extensions: ['.monkey', '.monkey2']
},
'Monkey C': {
type: 'programming',
extensions: ['.mc']
},
Moocode: {
type: 'programming',
extensions: ['.moo']
},
MoonBit: {
type: 'programming',
extensions: ['.mbt']
},
MoonScript: {
type: 'programming',
extensions: ['.moon']
},
Motoko: {
type: 'programming',
extensions: ['.mo']
},
'Motorola 68K Assembly': {
type: 'programming',
extensions: ['.asm', '.i', '.inc', '.s', '.x68'],
aliases: ['m68k']
},
Move: {
type: 'programming',
extensions: ['.move']
},
MQL4: {
type: 'programming',
extensions: ['.mq4', '.mqh']
},
MQL5: {
type: 'programming',
extensions: ['.mq5', '.mqh']
},
MTML: {
type: 'markup',
extensions: ['.mtml']
},
MUF: {
type: 'programming',
extensions: ['.muf', '.m']
},
mupad: {
type: 'programming',
extensions: ['.mu']
},
Muse: {
type: 'prose',
extensions: ['.muse'],
aliases: ['amusewiki', 'emacs muse']
},
Mustache: {
type: 'markup',
extensions: ['.mustache']
},
Myghty: {
type: 'programming',
extensions: ['.myt']
},
nanorc: {
type: 'data',
extensions: ['.nanorc']
},
Nasal: {
type: 'programming',
extensions: ['.nas']
},
NASL: {
type: 'programming',
extensions: ['.nasl', '.inc']
},
NCL: {
type: 'programming',
extensions: ['.ncl']
},
Nearley: {
type: 'programming',
extensions: ['.ne', '.nearley']
},
Nemerle: {
type: 'programming',
extensions: ['.n']
},
NEON: {
type: 'data',
extensions: ['.neon'],
aliases: ['nette object notation', 'ne-on']
},
nesC: {
type: 'programming',
extensions: ['.nc']
},
NetLinx: {
type: 'programming',
extensions: ['.axs', '.axi']
},
'NetLinx+ERB': {
type: 'programming',
extensions: ['.axs.erb', '.axi.erb']
},
NetLogo: {
type: 'programming',
extensions: ['.nlogo']
},
NewLisp: {
type: 'programming',
extensions: ['.nl', '.lisp', '.lsp']
},
Nextflow: {
type: 'programming',
extensions: ['.nf']
},
Nginx: {
type: 'data',
extensions: ['.nginx', '.nginxconf', '.vhost'],
aliases: ['nginx configuration file']
},
Nickel: {
type: 'programming',
extensions: ['.ncl']
},
Nim: {
type: 'programming',
extensions: ['.nim', '.nim.cfg', '.nimble', '.nimrod', '.nims']
},
Ninja: {
type: 'data',
extensions: ['.ninja']
},
Nit: {
type: 'programming',
extensions: ['.nit']
},
Nix: {
type: 'programming',
extensions: ['.nix'],
aliases: ['nixos']
},
NL: {
type: 'data',
extensions: ['.nl']
},
NMODL: {
type: 'programming',
extensions: ['.mod']
},
Noir: {
type: 'programming',
extensions: ['.nr'],
aliases: ['nargo']
},
'NPM Config': {
type: 'data',
aliases: ['npmrc']
},
NSIS: {
type: 'programming',
extensions: ['.nsi', '.nsh']
},
Nu: {
type: 'programming',
extensions: ['.nu'],
aliases: ['nush']
},
NumPy: {
type: 'programming',
extensions: ['.numpy', '.numpyw', '.numsc']
},
Nunjucks: {
type: 'markup',
extensions: ['.njk'],
aliases: ['njk']
},
Nushell: {
type: 'programming',
extensions: ['.nu'],
aliases: ['nu-script', 'nushell-script']
},
NWScript: {
type: 'programming',
extensions: ['.nss']
},
'OASv2-json': {
type: 'data',
extensions: ['.json']
},
'OASv2-yaml': {
type: 'data',
extensions: ['.yaml', '.yml']
},
'OASv3-json': {
type: 'data',
extensions: ['.json']
},
'OASv3-yaml': {
type: 'data',
extensions: ['.yaml', '.yml']
},
Oberon: {
type: 'programming',
extensions: ['.ob2']
},
ObjDump: {
type: 'data',
extensions: ['.objdump']
},
'Object Data Instance Notation': {
type: 'data',
extensions: ['.odin']
},
'Objective-C': {
type: 'programming',
extensions: ['.m', '.h'],
aliases: ['obj-c', 'objc', 'objectivec']
},
'Objective-C++': {
type: 'programming',
extensions: ['.mm'],
aliases: ['obj-c++', 'objc++', 'objectivec++']
},
'Objective-J': {
type: 'programming',
extensions: ['.j', '.sj'],
aliases: ['obj-j', 'objectivej', 'objj']
},
ObjectScript: {
type: 'programming',
extensions: ['.cls']
},
OCaml: {
type: 'programming',
extensions: ['.ml', '.eliom', '.eliomi', '.ml4', '.mli', '.mll', '.mly']
},
Odin: {
type: 'programming',
extensions: ['.odin'],
aliases: ['odinlang', 'odin-lang']
},
Omgrofl: {
type: 'programming',
extensions: ['.omgrofl']
},
'OMNeT++ MSG': {
type: 'programming',
extensions: ['.msg'],
aliases: ['omnetpp-msg']
},
'OMNeT++ NED': {
type: 'programming',
extensions: ['.ned'],
aliases: ['omnetpp-ned']
},
ooc: {
type: 'programming',
extensions: ['.ooc']
},
Opa: {
type: 'programming',
extensions: ['.opa']
},
Opal: {
type: 'programming',
extensions: ['.opal']
},
'Open Policy Agent': {
type: 'programming',
extensions: ['.rego']
},
'OpenAPI Specification v2': {
type: 'data',
aliases: ['oasv2']
},
'OpenAPI Specification v3': {
type: 'data',
aliases: ['oasv3']
},
OpenCL: {
type: 'programming',
extensions: ['.cl', '.opencl']
},
'OpenEdge ABL': {
type: 'programming',
extensions: ['.p', '.cls', '.w'],
aliases: ['progress', 'openedge', 'abl']
},
OpenQASM: {
type: 'programming',
extensions: ['.qasm']
},
'OpenRC runscript': {
type: 'programming',
aliases: ['openrc']
},
OpenSCAD: {
type: 'programming',
extensions: ['.scad']
},
'OpenStep Property List': {
type: 'data',
extensions: ['.plist', '.glyphs']
},
'OpenType Feature File': {
type: 'data',
extensions: ['.fea'],
aliases: ['AFDKO']
},
'Option List': {
type: 'data',
aliases: ['opts', 'ackrc']
},
Org: {
type: 'prose',
extensions: ['.org']
},
OverpassQL: {
type: 'programming',
extensions: ['.overpassql']
},
Ox: {
type: 'programming',
extensions: ['.ox', '.oxh', '.oxo']
},
Oxygene: {
type: 'programming',
extensions: ['.oxygene']
},
Oz: {
type: 'programming',
extensions: ['.oz']
},
P4: {
type: 'programming',
extensions: ['.p4']
},
Pact: {
type: 'programming',
extensions: ['.pact']
},
Pan: {
type: 'programming',
extensions: ['.pan']
},
Papyrus: {
type: 'programming',
extensions: ['.psc']
},
Parrot: {
type: 'programming',
extensions: ['.parrot']
},
'Parrot Assembly': {
type: 'programming',
extensions: ['.pasm'],
aliases: ['pasm']
},
'Parrot Internal Representation': {
type: 'programming',
extensions: ['.pir'],
aliases: ['pir']
},
Pascal: {
type: 'programming',
extensions: ['.pas', '.dfm', '.dpr', '.inc', '.lpr', '.pascal', '.pp'],
aliases: ['delphi', 'objectpascal']
},
Pawn: {
type: 'programming',
extensions: ['.pwn', '.inc', '.sma']
},
PDDL: {
type: 'programming',
extensions: ['.pddl']
},
'PEG.js': {
type: 'programming',
extensions: ['.pegjs', '.peggy']
},
Pep8: {
type: 'programming',
extensions: ['.pep']
},
Perl: {
type: 'programming',
extensions: ['.pl', '.al', '.cgi', '.fcgi', '.perl', '.ph', '.plx', '.pm', '.psgi', '.t'],
aliases: ['cperl']
},
PHP: {
type: 'programming',
extensions: ['.php', '.aw', '.ctp', '.fcgi', '.inc', '.php3', '.php4', '.php5', '.phps', '.phpt'],
aliases: ['inc']
},
Pic: {
type: 'markup',
extensions: ['.pic', '.chem'],
aliases: ['pikchr']
},
Pickle: {
type: 'data',
extensions: ['.pkl']
},
PicoLisp: {
type: 'programming',
extensions: ['.l']
},
PigLatin: {
type: 'programming',
extensions: ['.pig']
},
Pike: {
type: 'programming',
extensions: ['.pike', '.pmod']
},
Pkl: {
type: 'programming',
extensions: ['.pkl']
},
PlantUML: {
type: 'data',
extensions: ['.puml', '.iuml', '.plantuml']
},
PLpgSQL: {
type: 'programming',
extensions: ['.pgsql', '.sql']
},
PLSQL: {
type: 'programming',
extensions: [
'.pls',
'.bdy',
'.ddl',
'.fnc',
'.pck',
'.pkb',
'.pks',
'.plb',
'.plsql',
'.prc',
'.spc',
'.sql',
'.tpb',
'.tps',
'.trg',
'.vw'
]
},
Pod: {
type: 'prose',
extensions: ['.pod']
},
'Pod 6': {
type: 'prose',
extensions: ['.pod', '.pod6']
},
PogoScript: {
type: 'programming',
extensions: ['.pogo']
},
Polar: {
type: 'programming',
extensions: ['.polar']
},
Pony: {
type: 'programming',
extensions: ['.pony']
},
Portugol: {
type: 'programming',
extensions: ['.por']
},
PostCSS: {
type: 'markup',
extensions: ['.pcss', '.postcss']
},
PostScript: {
type: 'markup',
extensions: ['.ps', '.eps', '.epsi', '.pfa'],
aliases: ['postscr']
},
'POV-Ray SDL': {
type: 'programming',
extensions: ['.pov', '.inc'],
aliases: ['pov-ray', 'povray']
},
PowerBuilder: {
type: 'programming',
extensions: ['.pbt', '.sra', '.sru', '.srw']
},
PowerShell: {
type: 'programming',
extensions: ['.ps1', '.psd1', '.psm1'],
aliases: ['posh', 'pwsh']
},
Praat: {
type: 'programming',
extensions: ['.praat']
},
Prisma: {
type: 'data',
extensions: ['.prisma']
},
Processing: {
type: 'programming',
extensions: ['.pde']
},
Proguard: {
type: 'data',
extensions: ['.pro']
},
Prolog: {
type: 'programming',
extensions: ['.pl', '.plt', '.pro', '.prolog', '.yap']
},
Promela: {
type: 'programming',
extensions: ['.pml']
},
'Propeller Spin': {
type: 'programming',
extensions: ['.spin']
},
'Protocol Buffer': {
type: 'data',
extensions: ['.proto'],
aliases: ['proto', 'protobuf', 'Protocol Buffers']
},
'Protocol Buffer Text Format': {
type: 'data',
extensions: ['.textproto', '.pbt', '.pbtxt'],
aliases: ['text proto', 'protobuf text format']
},
'Public Key': {
type: 'data',
extensions: ['.asc', '.pub']
},
Pug: {
type: 'markup',
extensions: ['.jade', '.pug']
},
Puppet: {
type: 'programming',
extensions: ['.pp']
},
'Pure Data': {
type: 'data',
extensions: ['.pd']
},
PureBasic: {
type: 'programming',
extensions: ['.pb', '.pbi']
},
PureScript: {
type: 'programming',
extensions: ['.purs']
},
Pyret: {
type: 'programming',
extensions: ['.arr']
},
Python: {
type: 'programming',
extensions: [
'.py',
'.cgi',
'.fcgi',
'.gyp',
'.gypi',
'.lmi',
'.py3',
'.pyde',
'.pyi',
'.pyp',
'.pyt',
'.pyw',
'.rpy',
'.spec',
'.tac',
'.wsgi',
'.xpy'
],
aliases: ['python3', 'rusthon']
},
'Python console': {
type: 'programming',
aliases: ['pycon']
},
'Python traceback': {
type: 'data',
extensions: ['.pytb']
},
q: {
type: 'programming',
extensions: ['.q']
},
'Q#': {
type: 'programming',
extensions: ['.qs'],
aliases: ['qsharp']
},
QMake: {
type: 'programming',
extensions: ['.pro', '.pri']
},
QML: {
type: 'programming',
extensions: ['.qml', '.qbs']
},
'Qt Script': {
type: 'programming',
extensions: ['.qs']
},
QuickBASIC: {
type: 'programming',
extensions: ['.bas'],
aliases: ['qb', 'qbasic', 'qb64', 'classic qbasic', 'classic quickbasic']
},
R: {
type: 'programming',
extensions: ['.r', '.rd', '.rsx'],
aliases: ['Rscript', 'splus']
},
Racket: {
type: 'programming',
extensions: ['.rkt', '.rktd', '.rktl', '.scrbl']
},
Ragel: {
type: 'programming',
extensions: ['.rl'],
aliases: ['ragel-rb', 'ragel-ruby']
},
Raku: {
type: 'programming',
extensions: [
'.6pl',
'.6pm',
'.nqp',
'.p6',
'.p6l',
'.p6m',
'.pl',
'.pl6',
'.pm',
'.pm6',
'.raku',
'.rakumod',
'.t'
],
aliases: ['perl6', 'perl-6']
},
RAML: {
type: 'markup',
extensions: ['.raml']
},
Rascal: {
type: 'programming',
extensions: ['.rsc']
},
'Raw token data': {
type: 'data',
extensions: ['.raw'],
aliases: ['raw']
},
RBS: {
type: 'data',
extensions: ['.rbs']
},
RDoc: {
type: 'prose',
extensions: ['.rdoc']
},
'Readline Config': {
type: 'data',
aliases: ['inputrc', 'readline']
},
REALbasic: {
type: 'programming',
extensions: ['.rbbas', '.rbfrm', '.rbmnu', '.rbres', '.rbtbar', '.rbuistate']
},
Reason: {
type: 'programming',
extensions: ['.re', '.rei']
},
ReasonLIGO: {
type: 'programming',
extensions: ['.religo']
},
Rebol: {
type: 'programming',
extensions: ['.reb', '.r', '.r2', '.r3', '.rebol']
},
Red: {
type: 'programming',
extensions: ['.red', '.reds'],
aliases: ['red/system']
},
Redcode: {
type: 'programming',
extensions: ['.cw']
},
'Redirect Rules': {
type: 'data',
aliases: ['redirects']
},
'Regular Expression': {
type: 'data',
extensions: ['.regexp', '.regex'],
aliases: ['regexp', 'regex']
},
"Ren'Py": {
type: 'programming',
extensions: ['.rpy'],
aliases: ['renpy']
},
RenderScript: {
type: 'programming',
extensions: ['.rs', '.rsh']
},
ReScript: {
type: 'programming',
extensions: ['.res', '.resi']
},
reStructuredText: {
type: 'prose',
extensions: ['.rst', '.rest', '.rest.txt', '.rst.txt'],
aliases: ['rst']
},
REXX: {
type: 'programming',
extensions: ['.rexx', '.pprx', '.rex'],
aliases: ['arexx']
},
Rez: {
type: 'programming',
extensions: ['.r']
},
'Rich Text Format': {
type: 'markup',
extensions: ['.rtf']
},
Ring: {
type: 'programming',
extensions: ['.ring']
},
Riot: {
type: 'markup',
extensions: ['.riot']
},
RMarkdown: {
type: 'prose',
extensions: ['.qmd', '.rmd']
},
RobotFramework: {
type: 'programming',
extensions: ['.robot', '.resource']
},
'robots.txt': {
type: 'data',
aliases: ['robots', 'robots txt']
},
Roc: {
type: 'programming',
extensions: ['.roc']
},
'Rocq Prover': {
type: 'programming',
extensions: ['.v', '.coq'],
aliases: ['coq', 'rocq']
},
Roff: {
type: 'markup',
extensions: [
'.roff',
'.1',
'.1in',
'.1m',
'.1x',
'.2',
'.3',
'.3in',
'.3m',
'.3p',
'.3pm',
'.3qt',
'.3x',
'.4',
'.5',
'.6',
'.7',
'.8',
'.9',
'.l',
'.man',
'.mdoc',
'.me',
'.ms',
'.n',
'.nr',
'.rno',
'.tmac'
],
aliases: ['groff', 'man', 'manpage', 'man page', 'man-page', 'mdoc', 'nroff', 'troff']
},
'Roff Manpage': {
type: 'markup',
extensions: [
'.1',
'.1in',
'.1m',
'.1x',
'.2',
'.3',
'.3in',
'.3m',
'.3p',
'.3pm',
'.3qt',
'.3x',
'.4',
'.5',
'.6',
'.7',
'.8',
'.9',
'.man',
'.mdoc'
]
},
RON: {
type: 'data',
extensions: ['.ron']
},
Rouge: {
type: 'programming',
extensions: ['.rg']
},
'RouterOS Script': {
type: 'programming',
extensions: ['.rsc']
},
RPC: {
type: 'programming',
extensions: ['.x'],
aliases: ['rpcgen', 'oncrpc', 'xdr']
},
RPGLE: {
type: 'programming',
extensions: ['.rpgle', '.sqlrpgle'],
aliases: ['ile rpg', 'sqlrpgle']
},
'RPM Spec': {
type: 'data',
extensions: ['.spec'],
aliases: ['specfile']
},
Ruby: {
type: 'programming',
extensions: [
'.rb',
'.builder',
'.eye',
'.fcgi',
'.gemspec',
'.god',
'.jbuilder',
'.mspec',
'.pluginspec',
'.podspec',
'.prawn',
'.rabl',
'.rake',
'.rbi',
'.rbuild',
'.rbw',
'.rbx',
'.ru',
'.ruby',
'.spec',
'.thor',
'.watchr'
],
aliases: ['jruby', 'macruby', 'rake', 'rb', 'rbx']
},
RUNOFF: {
type: 'markup',
extensions: ['.rnh', '.rno']
},
Rust: {
type: 'programming',
extensions: ['.rs', '.rs.in'],
aliases: ['rs']
},
Sage: {
type: 'programming',
extensions: ['.sage', '.sagews']
},
Sail: {
type: 'programming',
extensions: ['.sail']
},
SaltStack: {
type: 'programming',
extensions: ['.sls'],
aliases: ['saltstate', 'salt']
},
SAS: {
type: 'programming',
extensions: ['.sas']
},
Sass: {
type: 'markup',
extensions: ['.sass']
},
Scala: {
type: 'programming',
extensions: ['.scala', '.kojo', '.sbt', '.sc']
},
Scaml: {
type: 'markup',
extensions: ['.scaml']
},
Scenic: {
type: 'programming',
extensions: ['.scenic']
},
Scheme: {
type: 'programming',
extensions: ['.scm', '.sch', '.sld', '.sls', '.sps', '.ss']
},
Scilab: {
type: 'programming',
extensions: ['.sci', '.sce', '.tst']
},
SCSS: {
type: 'markup',
extensions: ['.scss']
},
sed: {
type: 'programming',
extensions: ['.sed']
},
Self: {
type: 'programming',
extensions: ['.self']
},
'SELinux Policy': {
type: 'data',
extensions: ['.te'],
aliases: ['SELinux Kernel Policy Language', 'sepolicy']
},
ShaderLab: {
type: 'programming',
extensions: ['.shader']
},
Shell: {
type: 'programming',
extensions: [
'.sh',
'.bash',
'.bats',
'.cgi',
'.command',
'.fcgi',
'.ksh',
'.sh.in',
'.tmux',
'.tool',
'.trigger',
'.zsh',
'.zsh-theme'
],
aliases: ['sh', 'shell-script', 'bash', 'zsh', 'envrc']
},
'ShellCheck Config': {
type: 'data',
aliases: ['shellcheckrc']
},
ShellSession: {
type: 'programming',
extensions: ['.sh-session'],
aliases: ['bash session', 'console']
},
Shen: {
type: 'programming',
extensions: ['.shen']
},
Sieve: {
type: 'programming',
extensions: ['.sieve']
},
'Simple File Verification': {
type: 'data',
extensions: ['.sfv'],
aliases: ['sfv']
},
Slang: {
type: 'programming',
extensions: ['.slang']
},
Slash: {
type: 'programming',
extensions: ['.sl']
},
Slice: {
type: 'programming',
extensions: ['.ice']
},
Slim: {
type: 'markup',
extensions: ['.slim']
},
Slint: {
type: 'markup',
extensions: ['.slint']
},
Smali: {
type: 'programming',
extensions: ['.smali']
},
Smalltalk: {
type: 'programming',
extensions: ['.st', '.cs'],
aliases: ['squeak']
},
Smarty: {
type: 'programming',
extensions: ['.tpl']
},
Smithy: {
type: 'programming',
extensions: ['.smithy']
},
SmPL: {
type: 'programming',
extensions: ['.cocci'],
aliases: ['coccinelle']
},
SMT: {
type: 'programming',
extensions: ['.smt2', '.smt', '.z3']
},
Snakemake: {
type: 'programming',
extensions: ['.smk', '.snakefile'],
aliases: ['snakefile']
},
Solidity: {
type: 'programming',
extensions: ['.sol']
},
SourcePawn: {
type: 'programming',
extensions: ['.sp', '.inc'],
aliases: ['sourcemod']
},
SPARQL: {
type: 'data',
extensions: ['.sparql', '.rq']
},
'Spline Font Database': {
type: 'data',
extensions: ['.sfd']
},
SQF: {
type: 'programming',
extensions: ['.sqf', '.hqf']
},
SQL: {
type: 'data',
extensions: ['.sql', '.cql', '.ddl', '.inc', '.mysql', '.prc', '.tab', '.udf', '.viw']
},
SQLPL: {
type: 'programming',
extensions: ['.sql', '.db2']
},
Squirrel: {
type: 'programming',
extensions: ['.nut']
},
'SRecode Template': {
type: 'markup',
extensions: ['.srt']
},
'SSH Config': {
type: 'data',
aliases: ['sshconfig', 'sshdconfig', 'ssh_config', 'sshd_config']
},
Stan: {
type: 'programming',
extensions: ['.stan']
},
'Standard ML': {
type: 'programming',
extensions: ['.ml', '.fun', '.sig', '.sml'],
aliases: ['sml']
},
STAR: {
type: 'data',
extensions: ['.star']
},
Starlark: {
type: 'programming',
extensions: ['.bzl', '.star'],
aliases: ['bazel', 'bzl']
},
Stata: {
type: 'programming',
extensions: ['.do', '.ado', '.doh', '.ihlp', '.mata', '.matah', '.sthlp']
},
STL: {
type: 'data',
extensions: ['.stl'],
aliases: ['ascii stl', 'stla']
},
STON: {
type: 'data',
extensions: ['.ston']
},
StringTemplate: {
type: 'markup',
extensions: ['.st']
},
Stylus: {
type: 'markup',
extensions: ['.styl']
},
'SubRip Text': {
type: 'data',
extensions: ['.srt']
},
SugarSS: {
type: 'markup',
extensions: ['.sss']
},
SuperCollider: {
type: 'programming',
extensions: ['.sc', '.scd']
},
'Survex data': {
type: 'data',
extensions: ['.svx']
},
Svelte: {
type: 'markup',
extensions: ['.svelte']
},
SVG: {
type: 'data',
extensions: ['.svg']
},
Sway: {
type: 'programming',
extensions: ['.sw']
},
Sweave: {
type: 'prose',
extensions: ['.rnw']
},
Swift: {
type: 'programming',
extensions: ['.swift']
},
SWIG: {
type: 'programming',
extensions: ['.i', '.swg', '.swig']
},
SystemVerilog: {
type: 'programming',
extensions: ['.sv', '.svh', '.vh']
},
Tact: {
type: 'programming',
extensions: ['.tact']
},
Talon: {
type: 'programming',
extensions: ['.talon']
},
Tcl: {
type: 'programming',
extensions: ['.tcl', '.adp', '.sdc', '.tcl.in', '.tm', '.xdc'],
aliases: ['sdc', 'xdc']
},
Tcsh: {
type: 'programming',
extensions: ['.tcsh', '.csh']
},
Tea: {
type: 'markup',
extensions: ['.tea']
},
templ: {
type: 'markup',
extensions: ['.templ']
},
Terra: {
type: 'programming',
extensions: ['.t']
},
'Terraform Template': {
type: 'markup',
extensions: ['.tftpl']
},
TeX: {
type: 'markup',
extensions: [
'.tex',
'.aux',
'.bbx',
'.cbx',
'.cls',
'.dtx',
'.ins',
'.lbx',
'.ltx',
'.mkii',
'.mkiv',
'.mkvi',
'.sty',
'.toc'
],
aliases: ['latex']
},
Texinfo: {
type: 'prose',
extensions: ['.texinfo', '.texi', '.txi']
},
Text: {
type: 'prose',
extensions: ['.txt', '.fr', '.nb', '.ncl', '.no'],
aliases: ['fundamental', 'plain text']
},
TextGrid: {
type: 'data',
extensions: ['.TextGrid']
},
Textile: {
type: 'prose',
extensions: ['.textile']
},
'TextMate Properties': {
type: 'data',
aliases: ['tm-properties']
},
Thrift: {
type: 'programming',
extensions: ['.thrift']
},
'TI Program': {
type: 'programming',
extensions: ['.8xp', '.8xp.txt']
},
'TL-Verilog': {
type: 'programming',
extensions: ['.tlv']
},
TLA: {
type: 'programming',
extensions: ['.tla']
},
Toit: {
type: 'programming',
extensions: ['.toit']
},
TOML: {
type: 'data',
extensions: ['.toml']
},
'Tor Config': {
type: 'data',
aliases: ['torrc']
},
'Tree-sitter Query': {
type: 'programming',
extensions: ['.scm'],
aliases: ['tsq']
},
'TSPLIB data': {
type: 'data',
extensions: ['.tsp'],
aliases: ['travelling salesman problem', 'traveling salesman problem']
},
TSQL: {
type: 'programming',
extensions: ['.sql']
},
TSV: {
type: 'data',
extensions: ['.tsv', '.vcf'],
aliases: ['tab-seperated values']
},
TSX: {
type: 'programming',
extensions: ['.tsx']
},
Turing: {
type: 'programming',
extensions: ['.t', '.tu']
},
Turtle: {
type: 'data',
extensions: ['.ttl']
},
Twig: {
type: 'markup',
extensions: ['.twig']
},
TXL: {
type: 'programming',
extensions: ['.txl']
},
'Type Language': {
type: 'data',
extensions: ['.tl'],
aliases: ['tl']
},
TypeScript: {
type: 'programming',
extensions: ['.ts', '.cts', '.mts'],
aliases: ['ts']
},
TypeSpec: {
type: 'programming',
extensions: ['.tsp'],
aliases: ['tsp']
},
Typst: {
type: 'programming',
extensions: ['.typ'],
aliases: ['typ']
},
'Unified Parallel C': {
type: 'programming',
extensions: ['.upc']
},
'Unity3D Asset': {
type: 'data',
extensions: ['.anim', '.asset', '.mask', '.mat', '.meta', '.prefab', '.unity']
},
'Unix Assembly': {
type: 'programming',
extensions: ['.s', '.ms'],
aliases: ['gas', 'gnu asm', 'unix asm']
},
Uno: {
type: 'programming',
extensions: ['.uno']
},
UnrealScript: {
type: 'programming',
extensions: ['.uc']
},
'Untyped Plutus Core': {
type: 'programming',
extensions: ['.uplc']
},
UrWeb: {
type: 'programming',
extensions: ['.ur', '.urs'],
aliases: ['Ur/Web', 'Ur']
},
V: {
type: 'programming',
extensions: ['.v'],
aliases: ['vlang']
},
Vala: {
type: 'programming',
extensions: ['.vala', '.vapi']
},
'Valve Data Format': {
type: 'data',
extensions: ['.vdf'],
aliases: ['keyvalues', 'vdf']
},
VBA: {
type: 'programming',
extensions: ['.bas', '.cls', '.frm', '.vba'],
aliases: ['visual basic for applications']
},
VBScript: {
type: 'programming',
extensions: ['.vbs']
},
vCard: {
type: 'data',
extensions: ['.vcf'],
aliases: ['virtual contact file', 'electronic business card']
},
VCL: {
type: 'programming',
extensions: ['.vcl']
},
'Velocity Template Language': {
type: 'markup',
extensions: ['.vtl'],
aliases: ['vtl', 'velocity']
},
Vento: {
type: 'markup',
extensions: ['.vto']
},
Verilog: {
type: 'programming',
extensions: ['.v', '.veo']
},
VHDL: {
type: 'programming',
extensions: ['.vhdl', '.vhd', '.vhf', '.vhi', '.vho', '.vhs', '.vht', '.vhw']
},
'Vim Help File': {
type: 'prose',
extensions: ['.txt'],
aliases: ['help', 'vimhelp']
},
'Vim Script': {
type: 'programming',
extensions: ['.vim', '.vba', '.vimrc', '.vmb'],
aliases: ['vim', 'viml', 'nvim', 'vimscript']
},
'Vim Snippet': {
type: 'markup',
extensions: ['.snip', '.snippet', '.snippets'],
aliases: ['SnipMate', 'UltiSnip', 'UltiSnips', 'NeoSnippet']
},
'Visual Basic .NET': {
type: 'programming',
extensions: ['.vb', '.vbhtml'],
aliases: ['visual basic', 'vbnet', 'vb .net', 'vb.net']
},
'Visual Basic 6.0': {
type: 'programming',
extensions: ['.bas', '.cls', '.ctl', '.Dsr', '.frm'],
aliases: ['vb6', 'vb 6', 'visual basic 6', 'visual basic classic', 'classic visual basic']
},
Volt: {
type: 'programming',
extensions: ['.volt']
},
Vue: {
type: 'markup',
extensions: ['.vue']
},
Vyper: {
type: 'programming',
extensions: ['.vy']
},
'Wavefront Material': {
type: 'data',
extensions: ['.mtl']
},
'Wavefront Object': {
type: 'data',
extensions: ['.obj']
},
WDL: {
type: 'programming',
extensions: ['.wdl'],
aliases: ['Workflow Description Language']
},
'Web Ontology Language': {
type: 'data',
extensions: ['.owl']
},
WebAssembly: {
type: 'programming',
extensions: ['.wast', '.wat'],
aliases: ['wast', 'wasm']
},
'WebAssembly Interface Type': {
type: 'data',
extensions: ['.wit'],
aliases: ['wit']
},
WebIDL: {
type: 'programming',
extensions: ['.webidl']
},
WebVTT: {
type: 'data',
extensions: ['.vtt'],
aliases: ['vtt']
},
'Wget Config': {
type: 'data',
aliases: ['wgetrc']
},
WGSL: {
type: 'programming',
extensions: ['.wgsl']
},
Whiley: {
type: 'programming',
extensions: ['.whiley']
},
Wikitext: {
type: 'prose',
extensions: ['.mediawiki', '.wiki', '.wikitext'],
aliases: ['mediawiki', 'wiki']
},
'Win32 Message File': {
type: 'data',
extensions: ['.mc']
},
'Windows Registry Entries': {
type: 'data',
extensions: ['.reg']
},
wisp: {
type: 'programming',
extensions: ['.wisp']
},
'Witcher Script': {
type: 'programming',
extensions: ['.ws']
},
Wollok: {
type: 'programming',
extensions: ['.wlk']
},
'World of Warcraft Addon Data': {
type: 'data',
extensions: ['.toc']
},
Wren: {
type: 'programming',
extensions: ['.wren'],
aliases: ['wrenlang']
},
'X BitMap': {
type: 'data',
extensions: ['.xbm'],
aliases: ['xbm']
},
'X PixMap': {
type: 'data',
extensions: ['.xpm', '.pm'],
aliases: ['xpm']
},
X10: {
type: 'programming',
extensions: ['.x10'],
aliases: ['xten']
},
xBase: {
type: 'programming',
extensions: ['.prg', '.ch', '.prw'],
aliases: ['advpl', 'clipper', 'foxpro']
},
XC: {
type: 'programming',
extensions: ['.xc']
},
XML: {
type: 'data',
extensions: [
'.xml',
'.adml',
'.admx',
'.ant',
'.axaml',
'.axml',
'.builds',
'.ccproj',
'.ccxml',
'.clixml',
'.cproject',
'.cscfg',
'.csdef',
'.csl',
'.csproj',
'.ct',
'.depproj',
'.dita',
'.ditamap',
'.ditaval',
'.dll.config',
'.dotsettings',
'.filters',
'.fsproj',
'.fxml',
'.glade',
'.gml',
'.gmx',
'.gpx',
'.grxml',
'.gst',
'.hzp',
'.iml',
'.ivy',
'.jelly',
'.jsproj',
'.kml',
'.launch',
'.mdpolicy',
'.mjml',
'.mm',
'.mod',
'.mojo',
'.mxml',
'.natvis',
'.ncl',
'.ndproj',
'.nproj',
'.nuspec',
'.odd',
'.osm',
'.pkgproj',
'.pluginspec',
'.proj',
'.props',
'.ps1xml',
'.psc1',
'.pt',
'.qhelp',
'.rdf',
'.res',
'.resx',
'.rs',
'.rss',
'.sch',
'.scxml',
'.sfproj',
'.shproj',
'.slnx',
'.srdf',
'.storyboard',
'.sublime-snippet',
'.sw',
'.targets',
'.tml',
'.ts',
'.tsx',
'.typ',
'.ui',
'.urdf',
'.ux',
'.vbproj',
'.vcxproj',
'.vsixmanifest',
'.vssettings',
'.vstemplate',
'.vxml',
'.wixproj',
'.workflow',
'.wsdl',
'.wsf',
'.wxi',
'.wxl',
'.wxs',
'.x3d',
'.xacro',
'.xaml',
'.xib',
'.xlf',
'.xliff',
'.xmi',
'.xml.dist',
'.xmp',
'.xproj',
'.xsd',
'.xspec',
'.xul',
'.zcml'
],
aliases: ['rss', 'xsd', 'wsdl']
},
'XML Property List': {
type: 'data',
extensions: ['.plist', '.stTheme', '.tmCommand', '.tmLanguage', '.tmPreferences', '.tmSnippet', '.tmTheme']
},
Xojo: {
type: 'programming',
extensions: ['.xojo_code', '.xojo_menu', '.xojo_report', '.xojo_script', '.xojo_toolbar', '.xojo_window']
},
Xonsh: {
type: 'programming',
extensions: ['.xsh']
},
XPages: {
type: 'data',
extensions: ['.xsp-config', '.xsp.metadata']
},
XProc: {
type: 'programming',
extensions: ['.xpl', '.xproc']
},
XQuery: {
type: 'programming',
extensions: ['.xquery', '.xq', '.xql', '.xqm', '.xqy']
},
XS: {
type: 'programming',
extensions: ['.xs']
},
XSLT: {
type: 'programming',
extensions: ['.xslt', '.xsl'],
aliases: ['xsl']
},
Xtend: {
type: 'programming',
extensions: ['.xtend']
},
Yacc: {
type: 'programming',
extensions: ['.y', '.yacc', '.yy']
},
YAML: {
type: 'data',
extensions: [
'.yml',
'.mir',
'.reek',
'.rviz',
'.sublime-syntax',
'.syntax',
'.yaml',
'.yaml-tmlanguage',
'.yaml.sed',
'.yml.mysql'
],
aliases: ['yml']
},
YANG: {
type: 'data',
extensions: ['.yang']
},
YARA: {
type: 'programming',
extensions: ['.yar', '.yara']
},
YASnippet: {
type: 'markup',
extensions: ['.yasnippet'],
aliases: ['snippet', 'yas']
},
Yul: {
type: 'programming',
extensions: ['.yul']
},
ZAP: {
type: 'programming',
extensions: ['.zap', '.xzap']
},
Zeek: {
type: 'programming',
extensions: ['.zeek', '.bro'],
aliases: ['bro']
},
ZenScript: {
type: 'programming',
extensions: ['.zs']
},
Zephir: {
type: 'programming',
extensions: ['.zep']
},
Zig: {
type: 'programming',
extensions: ['.zig', '.zig.zon']
},
ZIL: {
type: 'programming',
extensions: ['.zil', '.mud']
},
Zimpl: {
type: 'programming',
extensions: ['.zimpl', '.zmpl', '.zpl']
},
Zmodel: {
type: 'data',
extensions: ['.zmodel']
}
}