1185 lines
56 KiB
Crystal

module Tartrazine
LEXERS_BY_NAME = {
"1s" => "onesenterprise",
"1s:enterprise" => "onesenterprise",
"abap" => "abap",
"abl" => "openedge_abl",
"abnf" => "abnf",
"aconf" => "apacheconf",
"actionscript" => "actionscript",
"actionscript 3" => "actionscript_3",
"actionscript3" => "actionscript_3",
"ada" => "ada",
"ada2005" => "ada",
"ada95" => "ada",
"agda" => "agda",
"ahk" => "autohotkey",
"al" => "al",
"alloy" => "alloy",
"angular2" => "angular2",
"antlr" => "antlr",
"apache" => "apacheconf",
"apacheconf" => "apacheconf",
"apl" => "apl",
"applescript" => "applescript",
"aql" => "arangodb_aql",
"arangodb aql" => "arangodb_aql",
"arduino" => "arduino",
"arexx" => "rexx",
"armasm" => "armasm",
"as" => "actionscript",
"as3" => "actionscript_3",
"asm" => "gas",
"autohotkey" => "autohotkey",
"autoit" => "autoit",
"awk" => "awk",
"b3d" => "blitzbasic",
"ballerina" => "ballerina",
"bash" => "bash",
"bash session" => "bash_session",
"bash-session" => "bash_session",
"basic" => "qbasic",
"bat" => "batchfile",
"batch" => "batchfile",
"batchfile" => "batchfile",
"bbcode" => "bbcode",
"bf" => "brainfuck",
"bib" => "bibtex",
"bibtex" => "bibtex",
"bicep" => "bicep",
"bind" => "dns",
"blitzbasic" => "blitzbasic",
"bnf" => "bnf",
"bplus" => "blitzbasic",
"bqn" => "bqn",
"brainfuck" => "brainfuck",
"bsdmake" => "makefile",
"c" => "c",
"c#" => "c#",
"c++" => "c++",
"cap'n proto" => "cap_n_proto",
"capnp" => "cap_n_proto",
"cassandra" => "cassandra_cql",
"cassandra cql" => "cassandra_cql",
"cassette" => "vhs",
"ceylon" => "ceylon",
"cf3" => "cfengine3",
"cfengine3" => "cfengine3",
"cfg" => "ini",
"cfs" => "cfstatement",
"cfstatement" => "cfstatement",
"chai" => "chaiscript",
"chaiscript" => "chaiscript",
"chapel" => "chapel",
"cheetah" => "cheetah",
"chpl" => "chapel",
"cl" => "common_lisp",
"clj" => "clojure",
"clojure" => "clojure",
"cmake" => "cmake",
"cobol" => "cobol",
"coffee" => "coffeescript",
"coffee-script" => "coffeescript",
"coffeescript" => "coffeescript",
"common lisp" => "common_lisp",
"common-lisp" => "common_lisp",
"console" => "bash_session",
"coq" => "coq",
"cpp" => "c++",
"cql" => "cassandra_cql",
"cr" => "crystal",
"crystal" => "crystal",
"csh" => "tcsh",
"csharp" => "c#",
"css" => "css",
"cucumber" => "gherkin",
"cue" => "cue",
"cython" => "cython",
"d" => "d",
"dart" => "dart",
"dax" => "dax",
"desktop" => "desktop_entry",
"desktop file" => "desktop_entry",
"desktop_entry" => "desktop_entry",
"diff" => "diff",
"django" => "django_jinja",
"django/jinja" => "django_jinja",
"dns" => "dns",
"docker" => "docker",
"dockerfile" => "docker",
"dosbatch" => "batchfile",
"dosini" => "ini",
"dtd" => "dtd",
"duby" => "ruby",
"dylan" => "dylan",
"ebnf" => "ebnf",
"edn" => "clojure",
"elisp" => "emacslisp",
"elixir" => "elixir",
"elm" => "elm",
"emacs" => "emacslisp",
"emacs-lisp" => "emacslisp",
"emacslisp" => "emacslisp",
"erlang" => "erlang",
"ex" => "elixir",
"exs" => "elixir",
"f90" => "fortran",
"factor" => "factor",
"fennel" => "fennel",
"fish" => "fish",
"fishshell" => "fish",
"fnl" => "fennel",
"forth" => "forth",
"fortran" => "fortran",
"fortranfixed" => "fortranfixed",
"fsharp" => "fsharp",
"gas" => "gas",
"gawk" => "awk",
"gd" => "gdscript",
"gd3" => "gdscript3",
"gdscript" => "gdscript",
"gdscript3" => "gdscript3",
"gherkin" => "gherkin",
"gleam" => "gleam",
"glsl" => "glsl",
"gnuplot" => "gnuplot",
"go template" => "go_template",
"go-template" => "go_template",
"gql" => "graphql",
"graphql" => "graphql",
"graphqls" => "graphql",
"groff" => "groff",
"groovy" => "groovy",
"gsed" => "sed",
"handlebars" => "handlebars",
"hare" => "hare",
"haskell" => "haskell",
"hbs" => "handlebars",
"hcl" => "hcl",
"hexdump" => "hexdump",
"hlb" => "hlb",
"hlsl" => "hlsl",
"holyc" => "holyc",
"hs" => "haskell",
"html" => "html",
"hy" => "hy",
"hylang" => "hy",
"idr" => "idris",
"idris" => "idris",
"igor" => "igor",
"igorpro" => "igor",
"ini" => "ini",
"io" => "io",
"iscdhcpd" => "iscdhcpd",
"j" => "j",
"java" => "java",
"java-properties" => "properties",
"javascript" => "javascript",
"jinja" => "django_jinja",
"jl" => "julia",
"js" => "javascript",
"json" => "json",
"jsonata" => "jsonata",
"jsx" => "react",
"julia" => "julia",
"jungle" => "jungle",
"kotlin" => "kotlin",
"ksh" => "bash",
"latex" => "tex",
"lighttpd" => "lighttpd_configuration_file",
"lighttpd configuration file" => "lighttpd_configuration_file",
"lighty" => "lighttpd_configuration_file",
"liquid" => "LiquidLexer",
"lisp" => "common_lisp",
"llvm" => "llvm",
"lua" => "lua",
"m2" => "modula-2",
"make" => "makefile",
"makefile" => "makefile",
"mako" => "mako",
"man" => "groff",
"mariadb" => "mysql",
"markdown" => "markdown",
"mason" => "mason",
"materialize" => "materialize_sql_dialect",
"materialize sql dialect" => "materialize_sql_dialect",
"mathematica" => "mathematica",
"matlab" => "matlab",
"mawk" => "awk",
"mcfunction" => "mcfunction",
"md" => "markdown",
"meson" => "meson",
"meson.build" => "meson",
"metal" => "metal",
"mf" => "makefile",
"minizinc" => "minizinc",
"mlir" => "mlir",
"mma" => "mathematica",
"modula-2" => "modula-2",
"modula2" => "modula-2",
"moin" => "moinwiki",
"moinmoin/trac wiki markup" => "moinwiki",
"monkeyc" => "monkeyc",
"morrowind" => "morrowindscript",
"morrowindscript" => "morrowindscript",
"mwscript" => "morrowindscript",
"myghty" => "myghty",
"mysql" => "mysql",
"mzn" => "minizinc",
"mzsql" => "materialize_sql_dialect",
"nasm" => "nasm",
"natural" => "natural",
"nawk" => "awk",
"nb" => "mathematica",
"ndisasm" => "ndisasm",
"newspeak" => "newspeak",
"ng2" => "angular2",
"nginx" => "nginx_configuration_file",
"nginx configuration file" => "nginx_configuration_file",
"nim" => "nim",
"nimrod" => "nim",
"nix" => "nix",
"nixos" => "nix",
"no-highlight" => "plaintext",
"nroff" => "groff",
"obj-c" => "objective-c",
"objc" => "objective-c",
"objective-c" => "objective-c",
"objectivec" => "objective-c",
"objectpascal" => "objectpascal",
"ocaml" => "ocaml",
"octave" => "octave",
"odin" => "odin",
"ones" => "onesenterprise",
"onesenterprise" => "onesenterprise",
"openedge" => "openedge_abl",
"openedge abl" => "openedge_abl",
"openedgeabl" => "openedge_abl",
"openscad" => "openscad",
"org" => "org_mode",
"org mode" => "org_mode",
"orgmode" => "org_mode",
"pacmanconf" => "pacmanconf",
"perl" => "perl",
"php" => "php",
"php3" => "php",
"php4" => "php",
"php5" => "php",
"pig" => "pig",
"pkgconfig" => "pkgconfig",
"pl" => "perl",
"pl/pgsql" => "pl_pgsql",
"plain" => "plaintext",
"plaintext" => "plaintext",
"plc" => "plutus_core",
"plpgsql" => "pl_pgsql",
"plutus core" => "plutus_core",
"plutus-core" => "plutus_core",
"pony" => "pony",
"posh" => "powershell",
"postgres" => "postgresql_sql_dialect",
"postgresql" => "postgresql_sql_dialect",
"postgresql sql dialect" => "postgresql_sql_dialect",
"postscr" => "postscript",
"postscript" => "postscript",
"pov" => "povray",
"povray" => "povray",
"powerquery" => "powerquery",
"powershell" => "powershell",
"pq" => "powerquery",
"progress" => "openedge_abl",
"prolog" => "prolog",
"promela" => "promela",
"promql" => "promql",
"properties" => "properties",
"proto" => "protocol_buffer",
"protobuf" => "protocol_buffer",
"protocol buffer" => "protocol_buffer",
"prql" => "prql",
"ps1" => "powershell",
"psd1" => "powershell",
"psl" => "psl",
"psm1" => "powershell",
"puppet" => "puppet",
"pwsh" => "powershell",
"py" => "python",
"py2" => "python_2",
"py3" => "python",
"pyrex" => "cython",
"python" => "python",
"python 2" => "python_2",
"python2" => "python_2",
"python3" => "python",
"pyx" => "cython",
"qbasic" => "qbasic",
"qbs" => "qml",
"qml" => "qml",
"r" => "r",
"racket" => "racket",
"ragel" => "ragel",
"rb" => "ruby",
"react" => "react",
"reason" => "reasonml",
"reasonml" => "reasonml",
"reg" => "reg",
"registry" => "reg",
"rego" => "rego",
"rest" => "rst",
"restructuredtext" => "rst",
"rexx" => "rexx",
"rkt" => "racket",
"roff" => "groff",
"rpmspec" => "rpm_spec",
"rs" => "rust",
"rst" => "rst",
"ruby" => "ruby",
"rust" => "rust",
"s" => "r",
"sage" => "python",
"sas" => "sas",
"sass" => "sass",
"scala" => "scala",
"scheme" => "scheme",
"scilab" => "scilab",
"scm" => "scheme",
"scss" => "scss",
"sed" => "sed",
"sh" => "bash",
"shell" => "bash",
"shell-session" => "bash_session",
"sieve" => "sieve",
"smali" => "smali",
"smalltalk" => "smalltalk",
"smarty" => "smarty",
"sml" => "standard_ml",
"snobol" => "snobol",
"sol" => "solidity",
"solidity" => "solidity",
"sourcepawn" => "sourcepawn",
"sp" => "sourcepawn",
"sparql" => "sparql",
"spec" => "rpm_spec",
"spitfire" => "cheetah",
"splus" => "r",
"sql" => "sql",
"squeak" => "smalltalk",
"squid" => "squidconf",
"squid.conf" => "squidconf",
"squidconf" => "squidconf",
"ssed" => "sed",
"st" => "smalltalk",
"standard ml" => "standard_ml",
"stas" => "stas",
"stylus" => "stylus",
"sv" => "systemverilog",
"swift" => "swift",
"systemd" => "systemd",
"systemverilog" => "systemverilog",
"t-sql" => "transact-sql",
"tablegen" => "tablegen",
"tal" => "tal",
"tape" => "vhs",
"tasm" => "tasm",
"tcl" => "tcl",
"tcsh" => "tcsh",
"termcap" => "termcap",
"terminfo" => "terminfo",
"terraform" => "terraform",
"tex" => "tex",
"text" => "plaintext",
"tf" => "terraform",
"thrift" => "thrift",
"toml" => "toml",
"trac-wiki" => "moinwiki",
"tradingview" => "tradingview",
"transact-sql" => "transact-sql",
"ts" => "typescript",
"tsql" => "transact-sql",
"tsx" => "typescript",
"turing" => "turing",
"turtle" => "turtle",
"tv" => "tradingview",
"twig" => "twig",
"typescript" => "typescript",
"typoscript" => "typoscript",
"typoscriptcssdata" => "typoscriptcssdata",
"typoscripthtmldata" => "typoscripthtmldata",
"ucode" => "ucode",
"udiff" => "diff",
"uxntal" => "tal",
"v" => "verilog",
"v shell" => "v_shell",
"vala" => "vala",
"vapi" => "vala",
"vb.net" => "vb_net",
"vbnet" => "vb_net",
"velocity" => "VelocityLexer",
"verilog" => "verilog",
"vhdl" => "vhdl",
"vhs" => "vhs",
"vim" => "viml",
"viml" => "viml",
"vlang" => "v",
"vsh" => "v_shell",
"vshell" => "v_shell",
"vue" => "vue",
"vuejs" => "vue",
"wdte" => "wdte",
"webgpu shading language" => "webgpu_shading_language",
"wgsl" => "webgpu_shading_language",
"whiley" => "whiley",
"winbatch" => "batchfile",
"xml" => "xml",
"xorg" => "xorg",
"xorg.conf" => "xorg",
"yaml" => "yaml",
"yang" => "yang",
"z80" => "z80_assembly",
"z80 assembly" => "z80_assembly",
"zed" => "zed",
"zig" => "zig",
"zone" => "dns",
"zsh" => "bash",
}
LEXERS_BY_MIMETYPE = {
"application/atom+xml" => "xml",
"application/edn" => "clojure",
"application/javascript" => "javascript",
"application/json" => "json",
"application/mathematica" => "mathematica",
"application/octet-stream" => "onesenterprise",
"application/postscript" => "postscript",
"application/prql" => "prql",
"application/rss+xml" => "xml",
"application/sparql-query" => "sparql",
"application/vnd.wolfram.cdf" => "mathematica",
"application/vnd.wolfram.mathematica" => "mathematica",
"application/vnd.wolfram.mathematica.package" => "mathematica",
"application/x-actionscript" => "actionscript",
"application/x-actionscript3" => "actionscript_3",
"application/x-awk" => "awk",
"application/x-brainfuck" => "brainfuck",
"application/x-chaiscript" => "chaiscript",
"application/x-cheetah" => "cheetah",
"application/x-clojure" => "clojure",
"application/x-csh" => "tcsh",
"application/x-cython" => "cython",
"application/x-desktop" => "desktop_entry",
"application/x-django-templating" => "django_jinja",
"application/x-dos-batch" => "batchfile",
"application/x-elisp" => "emacslisp",
"application/x-fennel" => "fennel",
"application/x-fish" => "fish",
"application/x-forth" => "forth",
"application/x-gdscript" => "gdscript",
"application/x-hcl" => "hcl",
"application/x-hy" => "hy",
"application/x-javascript" => "javascript",
"application/x-jinja" => "django_jinja",
"application/x-julia" => "julia",
"application/x-lua" => "lua",
"application/x-mako" => "mako",
"application/x-mason" => "mason",
"application/x-myghty" => "myghty",
"application/x-openedge" => "openedge_abl",
"application/x-perl" => "perl",
"application/x-plutus-core" => "plutus_core",
"application/x-python" => "python",
"application/x-python2" => "python_2",
"application/x-python3" => "python",
"application/x-qml" => "qml",
"application/x-qt.qbs+qml" => "qml",
"application/x-racket" => "racket",
"application/x-ruby" => "ruby",
"application/x-sas" => "sas",
"application/x-scheme" => "scheme",
"application/x-sh" => "bash",
"application/x-shellscript" => "bash",
"application/x-smarty" => "smarty",
"application/x-spitfire" => "cheetah",
"application/x-standardml" => "standard_ml",
"application/x-tcl" => "tcl",
"application/x-terraform" => "terraform",
"application/x-tf" => "terraform",
"application/x-thrift" => "thrift",
"application/x-troff" => "groff",
"application/x-turtle" => "turtle",
"application/x-twig" => "twig",
"application/x-vue" => "vue",
"application/x.ucode" => "ucode",
"application/xhtml+xml" => "html",
"application/xml" => "xml",
"application/xml-dtd" => "dtd",
"application/yang" => "yang",
"image/svg+xml" => "xml",
"image/x-xbitmap" => "holyc",
"image/x-xpixmap" => "holyc",
"text/actionscript" => "actionscript",
"text/actionscript3" => "actionscript_3",
"text/basic" => "qbasic",
"text/coffeescript" => "coffeescript",
"text/css" => "css",
"text/dns" => "dns",
"text/html" => "html",
"text/inf" => "ini",
"text/ipf" => "igor",
"text/javascript" => "javascript",
"text/jsx" => "react",
"text/matlab" => "matlab",
"text/minizinc" => "minizinc",
"text/octave" => "octave",
"text/odin" => "odin",
"text/org" => "org_mode",
"text/plain" => "plaintext",
"text/prs.fallenstein.rst" => "rst",
"text/rust" => "rust",
"text/s" => "r",
"text/s-plus" => "r",
"text/sas" => "sas",
"text/scilab" => "scilab",
"text/smali" => "smali",
"text/troff" => "groff",
"text/turtle" => "turtle",
"text/typescript-jsx" => "react",
"text/wgsl" => "webgpu_shading_language",
"text/x-abap" => "abap",
"text/x-abnf" => "abnf",
"text/x-actionscript" => "actionscript",
"text/x-actionscript3" => "actionscript_3",
"text/x-ada" => "ada",
"text/x-agda" => "agda",
"text/x-al" => "al",
"text/x-alloy" => "alloy",
"text/x-apacheconf" => "apacheconf",
"text/x-aql" => "arangodb_aql",
"text/x-arduino" => "arduino",
"text/x-armasm" => "armasm",
"text/x-asm" => "armasm",
"text/x-autohotkey" => "autohotkey",
"text/x-autoit" => "autoit",
"text/x-ballerina" => "ballerina",
"text/x-bb" => "blitzbasic",
"text/x-bbcode" => "bbcode",
"text/x-bibtex" => "bibtex",
"text/x-bnf" => "bnf",
"text/x-c++hdr" => "c++",
"text/x-c++src" => "c++",
"text/x-ceylon" => "ceylon",
"text/x-chaiscript" => "chaiscript",
"text/x-chdr" => "holyc",
"text/x-clojure" => "clojure",
"text/x-cmake" => "cmake",
"text/x-cobol" => "cobol",
"text/x-common-lisp" => "common_lisp",
"text/x-coq" => "coq",
"text/x-cql" => "cassandra_cql",
"text/x-crystal" => "crystal",
"text/x-csharp" => "c#",
"text/x-csrc" => "holyc",
"text/x-cue" => "cue",
"text/x-cython" => "cython",
"text/x-d" => "d",
"text/x-dart" => "dart",
"text/x-diff" => "diff",
"text/x-disasm" => "ndisasm",
"text/x-dockerfile-config" => "docker",
"text/x-dylan" => "dylan",
"text/x-ebnf" => "ebnf",
"text/x-elisp" => "emacslisp",
"text/x-elixir" => "elixir",
"text/x-elm" => "elm",
"text/x-erlang" => "erlang",
"text/x-factor" => "factor",
"text/x-fennel" => "fennel",
"text/x-fortran" => "fortran",
"text/x-fsharp" => "fsharp",
"text/x-gas" => "gas",
"text/x-gdscript" => "gdscript",
"text/x-gherkin" => "gherkin",
"text/x-gleam" => "gleam",
"text/x-glslsrc" => "glsl",
"text/x-gnuplot" => "gnuplot",
"text/x-groovy" => "groovy",
"text/x-hare" => "hare",
"text/x-haskell" => "haskell",
"text/x-hlsl" => "hlsl",
"text/x-hy" => "hy",
"text/x-idris" => "idris",
"text/x-ini" => "ini",
"text/x-iosrc" => "io",
"text/x-j" => "j",
"text/x-java" => "java",
"text/x-java-properties" => "properties",
"text/x-javascript" => "javascript",
"text/x-julia" => "julia",
"text/x-jungle" => "jungle",
"text/x-kotlin" => "kotlin",
"text/x-latex" => "tex",
"text/x-lighttpd-conf" => "lighttpd_configuration_file",
"text/x-llvm" => "llvm",
"text/x-lua" => "lua",
"text/x-makefile" => "makefile",
"text/x-mariadb" => "mysql",
"text/x-markdown" => "markdown",
"text/x-materializesql" => "materialize_sql_dialect",
"text/x-meson" => "meson",
"text/x-metal" => "metal",
"text/x-mlir" => "mlir",
"text/x-modula2" => "modula-2",
"text/x-monkeyc" => "monkeyc",
"text/x-mysql" => "mysql",
"text/x-nasm" => "nasm",
"text/x-natural" => "natural",
"text/x-newspeak" => "newspeak",
"text/x-nginx-conf" => "nginx_configuration_file",
"text/x-nim" => "nim",
"text/x-nix" => "nix",
"text/x-objective-c" => "objective-c",
"text/x-ocaml" => "ocaml",
"text/x-openedge" => "openedge_abl",
"text/x-pascal" => "objectpascal",
"text/x-patch" => "diff",
"text/x-perl" => "perl",
"text/x-php" => "php",
"text/x-pig" => "pig",
"text/x-plpgsql" => "pl_pgsql",
"text/x-plutus-core" => "plutus_core",
"text/x-postgresql" => "postgresql_sql_dialect",
"text/x-povray" => "povray",
"text/x-powerquery" => "powerquery",
"text/x-powershell" => "powershell",
"text/x-prolog" => "prolog",
"text/x-promela" => "promela",
"text/x-psl" => "psl",
"text/x-python" => "python",
"text/x-python2" => "python_2",
"text/x-python3" => "python",
"text/x-r" => "r",
"text/x-r-history" => "r",
"text/x-r-profile" => "r",
"text/x-r-source" => "r",
"text/x-racket" => "racket",
"text/x-reasonml" => "reasonml",
"text/x-rexx" => "rexx",
"text/x-rpm-spec" => "rpm_spec",
"text/x-rst" => "rst",
"text/x-ruby" => "ruby",
"text/x-rust" => "rust",
"text/x-sas" => "sas",
"text/x-sass" => "sass",
"text/x-scad" => "openscad",
"text/x-scala" => "scala",
"text/x-scheme" => "scheme",
"text/x-script.tcl" => "tcl",
"text/x-scss" => "scss",
"text/x-sed" => "sed",
"text/x-sh" => "bash_session",
"text/x-smalltalk" => "smalltalk",
"text/x-snobol" => "snobol",
"text/x-sourcepawn" => "sourcepawn",
"text/x-sql" => "sql",
"text/x-squidconf" => "squidconf",
"text/x-standardml" => "standard_ml",
"text/x-styl" => "stylus",
"text/x-swift" => "swift",
"text/x-systemverilog" => "systemverilog",
"text/x-tablegen" => "tablegen",
"text/x-tasm" => "tasm",
"text/x-tcl" => "tcl",
"text/x-tex" => "tex",
"text/x-toml" => "toml",
"text/x-trac-wiki" => "moinwiki",
"text/x-tradingview" => "tradingview",
"text/x-tsql" => "transact-sql",
"text/x-turing" => "turing",
"text/x-typescript" => "typescript",
"text/x-typoscript" => "typoscript",
"text/x-uxntal" => "tal",
"text/x-v" => "v",
"text/x-vala" => "vala",
"text/x-vba" => "vb_net",
"text/x-vbnet" => "vb_net",
"text/x-verilog" => "verilog",
"text/x-vhdl" => "vhdl",
"text/x-vim" => "viml",
"text/x-vsh" => "v_shell",
"text/x-vue" => "vue",
"text/x-whiley" => "whiley",
"text/x-windows-registry" => "reg",
"text/x-yaml" => "yaml",
"text/x.ucode" => "ucode",
"text/xml" => "xml",
"text/zed" => "zed",
"text/zig" => "zig",
}
LEXERS_BY_FILENAME = {
"*.1p" => ["groff"],
"*.3pm" => ["groff"],
"*.[1-9]" => ["groff"],
"*.[gs]sed" => ["sed"],
"*.abap" => ["abap"],
"*.abnf" => ["abnf"],
"*.ada" => ["ada"],
"*.adb" => ["ada"],
"*.ads" => ["ada"],
"*.agda" => ["agda"],
"*.ahk" => ["autohotkey"],
"*.ahkl" => ["autohotkey"],
"*.al" => ["al"],
"*.als" => ["alloy"],
"*.apl" => ["apl"],
"*.applescript" => ["applescript"],
"*.aql" => ["arangodb_aql"],
"*.arexx" => ["rexx"],
"*.as" => ["actionscript_3", "actionscript"],
"*.asm" => ["nasm", "z80_assembly", "tasm"],
"*.au3" => ["autoit"],
"*.automount" => ["systemd"],
"*.aux" => ["tex"],
"*.avsc" => ["json"],
"*.awk" => ["awk"],
"*.b" => ["brainfuck"],
"*.bal" => ["ballerina"],
"*.bas" => ["vb_net", "qbasic"],
"*.bash" => ["bash"],
"*.bat" => ["batchfile"],
"*.batch" => ["psl"],
"*.bb" => ["blitzbasic"],
"*.bf" => ["brainfuck"],
"*.bib" => ["bibtex"],
"*.bicep" => ["bicep"],
"*.bnf" => ["bnf"],
"*.bqn" => ["bqn"],
"*.bzl" => ["python"],
"*.c" => ["c", "c++"],
"*.c++" => ["c++"],
"*.capnp" => ["cap_n_proto"],
"*.cc" => ["c++"],
"*.cdf" => ["mathematica"],
"*.ceylon" => ["ceylon"],
"*.cf" => ["cfengine3"],
"*.cfg" => ["ini"],
"*.cginc" => ["hlsl"],
"*.chai" => ["chaiscript"],
"*.chpl" => ["chapel"],
"*.cjs" => ["javascript"],
"*.cl" => ["common_lisp"],
"*.clj" => ["clojure"],
"*.cls" => ["openedge_abl"],
"*.cmake" => ["cmake"],
"*.cmd" => ["batchfile"],
"*.cob" => ["cobol"],
"*.coffee" => ["coffeescript"],
"*.cp" => ["c++"],
"*.cpp" => ["c++"],
"*.cpy" => ["cobol"],
"*.cql" => ["cassandra_cql"],
"*.cr" => ["crystal"],
"*.cs" => ["c#"],
"*.csh" => ["tcsh"],
"*.csproj" => ["xml"],
"*.css" => ["css"],
"*.cts" => ["typescript"],
"*.cue" => ["cue"],
"*.cxx" => ["c++"],
"*.d" => ["d"],
"*.dal" => ["al"],
"*.dart" => ["dart"],
"*.dax" => ["dax"],
"*.decls" => ["blitzbasic"],
"*.def" => ["modula-2"],
"*.desktop" => ["desktop_entry"],
"*.device" => ["systemd"],
"*.di" => ["d"],
"*.diff" => ["diff"],
"*.dnssd" => ["systemd"],
"*.docker" => ["docker"],
"*.dockerfile" => ["docker"],
"*.dpk" => ["objectpascal"],
"*.dpr" => ["objectpascal"],
"*.dtd" => ["dtd"],
"*.duby" => ["ruby"],
"*.dyl" => ["dylan"],
"*.dylan" => ["dylan"],
"*.dzn" => ["minizinc"],
"*.ebnf" => ["ebnf"],
"*.ebuild" => ["bash"],
"*.ecl" => ["prolog"],
"*.eclass" => ["bash"],
"*.edn" => ["clojure"],
"*.eex" => ["elixir"],
"*.el" => ["emacslisp"],
"*.elm" => ["elm"],
"*.env" => ["bash"],
"*.epf" => ["onesenterprise"],
"*.eps" => ["postscript"],
"*.erf" => ["onesenterprise"],
"*.erl" => ["erlang"],
"*.es" => ["erlang"],
"*.escript" => ["erlang"],
"*.ex" => ["elixir"],
"*.exheres-0" => ["bash"],
"*.exlib" => ["bash"],
"*.exs" => ["elixir"],
"*.f" => ["fortranfixed"],
"*.f03" => ["fortran"],
"*.f90" => ["fortran"],
"*.f95" => ["fortran"],
"*.factor" => ["factor"],
"*.feature" => ["gherkin"],
"*.fennel" => ["fennel"],
"*.fhtml" => ["VelocityLexer"],
"*.fish" => ["fish"],
"*.frag" => ["glsl"],
"*.frt" => ["forth"],
"*.fs" => ["forth", "fsharp"],
"*.fsi" => ["fsharp"],
"*.fsproj" => ["xml"],
"*.fth" => ["forth"],
"*.fun" => ["standard_ml"],
"*.fx" => ["hlsl"],
"*.fxh" => ["hlsl"],
"*.fzn" => ["minizinc"],
"*.gd" => ["gdscript", "gdscript3"],
"*.gemspec" => ["ruby"],
"*.geo" => ["glsl"],
"*.gleam" => ["gleam"],
"*.go.tmpl" => ["go_template"],
"*.gotmpl" => ["go_template"],
"*.gradle" => ["groovy"],
"*.graphql" => ["graphql"],
"*.graphqls" => ["graphql"],
"*.groovy" => ["groovy"],
"*.h" => ["objective-c", "c", "c++"],
"*.h++" => ["c++"],
"*.ha" => ["hare"],
"*.handlebars" => ["handlebars"],
"*.hbs" => ["handlebars"],
"*.hc" => ["holyc"],
"*.hc.z" => ["holyc"],
"*.hcl" => ["hcl"],
"*.hh" => ["c++", "holyc"],
"*.hlb" => ["hlb"],
"*.hlsl" => ["hlsl"],
"*.hlsli" => ["hlsl"],
"*.hpp" => ["c++"],
"*.hrl" => ["erlang"],
"*.hs" => ["haskell"],
"*.htm" => ["html"],
"*.html" => ["html"],
"*.hxx" => ["c++"],
"*.hy" => ["hy"],
"*.i" => ["openedge_abl"],
"*.idc" => ["c"],
"*.idr" => ["idris"],
"*.ijs" => ["j"],
"*.inc" => ["php", "objectpascal", "povray", "sourcepawn"],
"*.inf" => ["ini"],
"*.ini" => ["ini"],
"*.ino" => ["arduino"],
"*.intr" => ["dylan"],
"*.io" => ["io"],
"*.ipf" => ["igor"],
"*.java" => ["java"],
"*.jl" => ["julia"],
"*.js" => ["javascript"],
"*.jsm" => ["javascript"],
"*.json" => ["json"],
"*.jsonata" => ["jsonata"],
"*.jsx" => ["react"],
"*.jungle" => ["jungle"],
"*.jy" => ["python"],
"*.ksh" => ["bash"],
"*.kt" => ["kotlin"],
"*.link" => ["systemd"],
"*.liquid" => ["LiquidLexer"],
"*.lisp" => ["common_lisp"],
"*.ll" => ["llvm"],
"*.load" => ["fish"],
"*.lpk" => ["objectpascal"],
"*.lpr" => ["objectpascal"],
"*.lua" => ["lua"],
"*.m" => ["mathematica", "mason", "octave", "objective-c", "matlab"],
"*.ma" => ["mathematica"],
"*.mak" => ["makefile"],
"*.man" => ["groff"],
"*.mao" => ["mako"],
"*.markdown" => ["markdown"],
"*.mc" => ["mason", "monkeyc"],
"*.mcfunction" => ["mcfunction"],
"*.md" => ["markdown"],
"*.metal" => ["metal"],
"*.mhtml" => ["mason"],
"*.mi" => ["mason"],
"*.mjs" => ["javascript"],
"*.mk" => ["makefile"],
"*.ml" => ["ocaml"],
"*.mli" => ["ocaml"],
"*.mlir" => ["mlir"],
"*.mll" => ["ocaml"],
"*.mly" => ["ocaml"],
"*.mod" => ["modula-2"],
"*.mount" => ["systemd"],
"*.mt" => ["mathematica"],
"*.mts" => ["typescript"],
"*.mx" => ["mathematica"],
"*.myt" => ["myghty"],
"*.mzn" => ["minizinc"],
"*.nasm" => ["nasm"],
"*.nb" => ["mathematica"],
"*.nbp" => ["mathematica"],
"*.netdev" => ["systemd"],
"*.network" => ["systemd"],
"*.nim" => ["nim"],
"*.nimrod" => ["nim"],
"*.nix" => ["nix"],
"*.ns2" => ["newspeak"],
"*.ns7" => ["natural"],
"*.nsa" => ["natural"],
"*.nsc" => ["natural"],
"*.nsg" => ["natural"],
"*.nsh" => ["natural"],
"*.nsl" => ["natural"],
"*.nsm" => ["natural"],
"*.nsn" => ["natural"],
"*.nsp" => ["natural"],
"*.nss" => ["natural"],
"*.odin" => ["odin"],
"*.org" => ["org_mode"],
"*.p" => ["openedge_abl"],
"*.pas" => ["objectpascal"],
"*.patch" => ["diff"],
"*.path" => ["systemd"],
"*.pc" => ["pkgconfig"],
"*.php" => ["php"],
"*.php[345]" => ["php"],
"*.pig" => ["pig"],
"*.pl" => ["prolog", "perl"],
"*.plc" => ["plutus_core"],
"*.plot" => ["gnuplot"],
"*.plt" => ["gnuplot"],
"*.pm" => ["perl", "promela"],
"*.pml" => ["promela"],
"*.pony" => ["pony"],
"*.pov" => ["povray"],
"*.pp" => ["puppet", "objectpascal"],
"*.pq" => ["powerquery"],
"*.pr" => ["promela"],
"*.prm" => ["promela"],
"*.pro" => ["prolog"],
"*.proc" => ["psl"],
"*.prolog" => ["prolog"],
"*.prom" => ["promela"],
"*.promela" => ["promela"],
"*.promql" => ["promql"],
"*.properties" => ["properties"],
"*.proto" => ["protocol_buffer"],
"*.prql" => ["prql"],
"*.ps" => ["postscript"],
"*.ps1" => ["powershell"],
"*.psd1" => ["powershell"],
"*.psl" => ["psl"],
"*.psm1" => ["powershell"],
"*.pxd" => ["cython"],
"*.pxi" => ["cython"],
"*.py" => ["python"],
"*.pyi" => ["python"],
"*.pyw" => ["python"],
"*.pyx" => ["cython"],
"*.qbs" => ["qml"],
"*.qml" => ["qml"],
"*.r" => ["r"],
"*.rake" => ["ruby"],
"*.rb" => ["ruby"],
"*.rbw" => ["ruby"],
"*.rbx" => ["ruby"],
"*.re" => ["reasonml"],
"*.react" => ["react"],
"*.reg" => ["reg"],
"*.rego" => ["rego"],
"*.rei" => ["reasonml"],
"*.rest" => ["rst"],
"*.rex" => ["rexx"],
"*.rexx" => ["rexx"],
"*.rkt" => ["racket"],
"*.rktd" => ["racket"],
"*.rktl" => ["racket"],
"*.rq" => ["sparql"],
"*.rs" => ["rust"],
"*.rs.in" => ["rust"],
"*.rss" => ["xml"],
"*.rst" => ["rst"],
"*.rvt" => ["tcl"],
"*.rx" => ["rexx"],
"*.s" => ["armasm", "r", "gas"],
"*.sage" => ["python"],
"*.sas" => ["sas"],
"*.sass" => ["sass"],
"*.sc" => ["python"],
"*.scad" => ["openscad"],
"*.scala" => ["scala"],
"*.sce" => ["scilab"],
"*.sci" => ["scilab"],
"*.scm" => ["scheme"],
"*.scope" => ["systemd"],
"*.scss" => ["scss"],
"*.sed" => ["sed"],
"*.service" => ["systemd", "ini"],
"*.sh" => ["bash"],
"*.sh-session" => ["bash_session"],
"*.sieve" => ["sieve"],
"*.sig" => ["standard_ml"],
"*.siv" => ["sieve"],
"*.slice" => ["systemd"],
"*.smali" => ["smali"],
"*.sml" => ["standard_ml"],
"*.snobol" => ["snobol"],
"*.socket" => ["systemd", "ini"],
"*.sol" => ["solidity"],
"*.sp" => ["sourcepawn"],
"*.sparql" => ["sparql"],
"*.spec" => ["rpm_spec"],
"*.spt" => ["cheetah"],
"*.sql" => ["sql", "mysql"],
"*.ss" => ["scheme"],
"*.st" => ["smalltalk"],
"*.stas" => ["stas"],
"*.styl" => ["stylus"],
"*.sv" => ["systemverilog"],
"*.svg" => ["xml"],
"*.svh" => ["systemverilog"],
"*.swap" => ["systemd"],
"*.swift" => ["swift"],
"*.t" => ["perl"],
"*.tac" => ["python"],
"*.tal" => ["tal"],
"*.tape" => ["vhs"],
"*.target" => ["systemd"],
"*.tasm" => ["tasm"],
"*.tcl" => ["tcl"],
"*.tcsh" => ["tcsh"],
"*.td" => ["tablegen"],
"*.tex" => ["tex"],
"*.tf" => ["terraform"],
"*.thrift" => ["thrift"],
"*.timer" => ["systemd"],
"*.tmpl" => ["cheetah"],
"*.toc" => ["tex"],
"*.toml" => ["toml"],
"*.tpl" => ["smarty"],
"*.tpp" => ["c++"],
"*.trig" => ["psl"],
"*.ts" => ["typoscript", "typescript"],
"*.tst" => ["scilab"],
"*.tsx" => ["typescript"],
"*.ttl" => ["turtle"],
"*.tu" => ["turing"],
"*.turing" => ["turing"],
"*.tv" => ["tradingview"],
"*.twig" => ["twig"],
"*.txt" => ["plaintext"],
"*.uc" => ["ucode"],
"*.v" => ["verilog", "v", "coq"],
"*.vala" => ["vala"],
"*.vapi" => ["vala"],
"*.vb" => ["vb_net"],
"*.vcxproj" => ["xml"],
"*.vert" => ["glsl"],
"*.vhd" => ["vhdl"],
"*.vhdl" => ["vhdl"],
"*.vim" => ["viml"],
"*.vm" => ["VelocityLexer"],
"*.vsh" => ["v_shell"],
"*.vue" => ["vue"],
"*.vv" => ["v"],
"*.w" => ["openedge_abl"],
"*.wdte" => ["wdte"],
"*.wgsl" => ["webgpu_shading_language"],
"*.whiley" => ["whiley"],
"*.wl" => ["mathematica"],
"*.wlua" => ["lua"],
"*.wsdl" => ["xml"],
"*.wsf" => ["xml"],
"*.x[bp]m" => ["c"],
"*.xhtml" => ["html"],
"*.xml" => ["xml"],
"*.xsd" => ["xml"],
"*.xsl" => ["xml"],
"*.xslt" => ["html", "xml"],
"*.yaml" => ["yaml"],
"*.yang" => ["yang"],
"*.yml" => ["yaml"],
"*.z80" => ["z80_assembly"],
"*.zed" => ["zed"],
"*.zig" => ["zig"],
"*.zone" => ["dns"],
"*.zsh" => ["bash"],
"*.zshrc" => ["bash"],
".bash_*" => ["bash"],
".bashrc" => ["bash"],
".editorconfig" => ["ini"],
".env" => ["bash"],
".exrc" => ["viml"],
".gitconfig" => ["ini"],
".gvimrc" => ["viml"],
".htaccess" => ["apacheconf"],
".justfile" => ["makefile"],
".pylintrc" => ["ini"],
".renviron" => ["r"],
".rhistory" => ["r"],
".rprofile" => ["r"],
".vimrc" => ["viml"],
".zshrc" => ["bash"],
"_exrc" => ["viml"],
"_gvimrc" => ["viml"],
"_vimrc" => ["viml"],
"apache.conf" => ["apacheconf"],
"apache2.conf" => ["apacheconf"],
"autodelegate" => ["myghty"],
"autohandler" => ["mason"],
"bash_*" => ["bash"],
"bashrc" => ["bash"],
"bsdmakefile" => ["makefile"],
"buck" => ["python"],
"build" => ["python"],
"build.bazel" => ["python"],
"cmakelists.txt" => ["cmake"],
"dhandler" => ["mason"],
"dhcpd.conf" => ["iscdhcpd"],
"dockerfile" => ["docker"],
"dockerfile.*" => ["docker"],
"gemfile" => ["ruby"],
"gnumakefile" => ["makefile"],
"gvimrc" => ["viml"],
"justfile" => ["makefile"],
"makefile" => ["makefile"],
"makefile.*" => ["makefile"],
"meson.build" => ["meson"],
"meson_options.txt" => ["meson"],
"module.bazel" => ["python"],
"nginx.conf" => ["nginx_configuration_file"],
"pacman.conf" => ["pacmanconf"],
"pipfile" => ["toml"],
"pkgbuild" => ["bash"],
"poetry.lock" => ["toml"],
"pylintrc" => ["ini"],
"rakefile" => ["ruby"],
"repo.bazel" => ["python"],
"sconscript" => ["python"],
"sconstruct" => ["python"],
"squid.conf" => ["squidconf"],
"termcap" => ["termcap"],
"termcap.src" => ["termcap"],
"terminfo" => ["terminfo"],
"terminfo.src" => ["terminfo"],
"v.mod" => ["v"],
"vagrantfile" => ["ruby"],
"vimrc" => ["viml"],
"workspace" => ["python"],
"workspace.bazel" => ["python"],
"workspace.bzlmod" => ["python"],
"xorg.conf" => ["xorg"],
"zshrc" => ["bash"],
}
end