module Gen_Languages where

import Data.ByteString (ByteString)
import Data.Text (Text)
import qualified Data.Map.Strict as Map

-- | Type synonym for linguist's language name key.
type LanguageKey = Text

-- | Identifies a programming language.
data Language
  = Language
  { languageID         :: Integer
  , languageName       :: Text
  , languageExtensions :: [Text]
  , languageFileNames  :: [Text]
  } deriving (Eq, Show)

-- | Complete map of programming languages known to linguist.
languages :: Map.Map LanguageKey Language
languages = Map.fromList  [
    ("1C Enterprise", Language {languageID = 0, languageName = "1C Enterprise", languageExtensions = [".bsl",".os"], languageFileNames = []}),
    ("ABAP", Language {languageID = 1, languageName = "ABAP", languageExtensions = [".abap"], languageFileNames = []}),
    ("ABNF", Language {languageID = 429, languageName = "ABNF", languageExtensions = [".abnf"], languageFileNames = []}),
    ("AGS Script", Language {languageID = 2, languageName = "AGS Script", languageExtensions = [".asc",".ash"], languageFileNames = []}),
    ("AMPL", Language {languageID = 3, languageName = "AMPL", languageExtensions = [".ampl",".mod"], languageFileNames = []}),
    ("ANTLR", Language {languageID = 4, languageName = "ANTLR", languageExtensions = [".g4"], languageFileNames = []}),
    ("API Blueprint", Language {languageID = 5, languageName = "API Blueprint", languageExtensions = [".apib"], languageFileNames = []}),
    ("APL", Language {languageID = 6, languageName = "APL", languageExtensions = [".apl",".dyalog"], languageFileNames = []}),
    ("ASN.1", Language {languageID = 7, languageName = "ASN.1", languageExtensions = [".asn",".asn1"], languageFileNames = []}),
    ("ASP", Language {languageID = 8, languageName = "ASP", languageExtensions = [".asp",".asax",".ascx",".ashx",".asmx",".aspx",".axd"], languageFileNames = []}),
    ("ATS", Language {languageID = 9, languageName = "ATS", languageExtensions = [".dats",".hats",".sats"], languageFileNames = []}),
    ("ActionScript", Language {languageID = 10, languageName = "ActionScript", languageExtensions = [".as"], languageFileNames = []}),
    ("Ada", Language {languageID = 11, languageName = "Ada", languageExtensions = [".adb",".ada",".ads"], languageFileNames = []}),
    ("Adobe Font Metrics", Language {languageID = 147198098, languageName = "Adobe Font Metrics", languageExtensions = [".afm"], languageFileNames = []}),
    ("Agda", Language {languageID = 12, languageName = "Agda", languageExtensions = [".agda"], languageFileNames = []}),
    ("Alloy", Language {languageID = 13, languageName = "Alloy", languageExtensions = [".als"], languageFileNames = []}),
    ("Alpine Abuild", Language {languageID = 14, languageName = "Alpine Abuild", languageExtensions = [], languageFileNames = ["APKBUILD"]}),
    ("Altium Designer", Language {languageID = 187772328, languageName = "Altium Designer", languageExtensions = [".OutJob",".PcbDoc",".PrjPCB",".SchDoc"], languageFileNames = []}),
    ("AngelScript", Language {languageID = 389477596, languageName = "AngelScript", languageExtensions = [".as",".angelscript"], languageFileNames = []}),
    ("Ant Build System", Language {languageID = 15, languageName = "Ant Build System", languageExtensions = [], languageFileNames = ["ant.xml","build.xml"]}),
    ("ApacheConf", Language {languageID = 16, languageName = "ApacheConf", languageExtensions = [".apacheconf",".vhost"], languageFileNames = [".htaccess","apache2.conf","httpd.conf"]}),
    ("Apex", Language {languageID = 17, languageName = "Apex", languageExtensions = [".cls"], languageFileNames = []}),
    ("Apollo Guidance Computer", Language {languageID = 18, languageName = "Apollo Guidance Computer", languageExtensions = [".agc"], languageFileNames = []}),
    ("AppleScript", Language {languageID = 19, languageName = "AppleScript", languageExtensions = [".applescript",".scpt"], languageFileNames = []}),
    ("Arc", Language {languageID = 20, languageName = "Arc", languageExtensions = [".arc"], languageFileNames = []}),
    ("AsciiDoc", Language {languageID = 22, languageName = "AsciiDoc", languageExtensions = [".asciidoc",".adoc",".asc"], languageFileNames = []}),
    ("AspectJ", Language {languageID = 23, languageName = "AspectJ", languageExtensions = [".aj"], languageFileNames = []}),
    ("Assembly", Language {languageID = 24, languageName = "Assembly", languageExtensions = [".asm",".a51",".inc",".nasm"], languageFileNames = []}),
    ("Asymptote", Language {languageID = 591605007, languageName = "Asymptote", languageExtensions = [".asy"], languageFileNames = []}),
    ("Augeas", Language {languageID = 25, languageName = "Augeas", languageExtensions = [".aug"], languageFileNames = []}),
    ("AutoHotkey", Language {languageID = 26, languageName = "AutoHotkey", languageExtensions = [".ahk",".ahkl"], languageFileNames = []}),
    ("AutoIt", Language {languageID = 27, languageName = "AutoIt", languageExtensions = [".au3"], languageFileNames = []}),
    ("Awk", Language {languageID = 28, languageName = "Awk", languageExtensions = [".awk",".auk",".gawk",".mawk",".nawk"], languageFileNames = []}),
    ("Ballerina", Language {languageID = 720859680, languageName = "Ballerina", languageExtensions = [".bal"], languageFileNames = []}),
    ("Batchfile", Language {languageID = 29, languageName = "Batchfile", languageExtensions = [".bat",".cmd"], languageFileNames = []}),
    ("Befunge", Language {languageID = 30, languageName = "Befunge", languageExtensions = [".befunge"], languageFileNames = []}),
    ("Bison", Language {languageID = 31, languageName = "Bison", languageExtensions = [".bison"], languageFileNames = []}),
    ("BitBake", Language {languageID = 32, languageName = "BitBake", languageExtensions = [".bb"], languageFileNames = []}),
    ("Blade", Language {languageID = 33, languageName = "Blade", languageExtensions = [".blade",".blade.php"], languageFileNames = []}),
    ("BlitzBasic", Language {languageID = 34, languageName = "BlitzBasic", languageExtensions = [".bb",".decls"], languageFileNames = []}),
    ("BlitzMax", Language {languageID = 35, languageName = "BlitzMax", languageExtensions = [".bmx"], languageFileNames = []}),
    ("Bluespec", Language {languageID = 36, languageName = "Bluespec", languageExtensions = [".bsv"], languageFileNames = []}),
    ("Boo", Language {languageID = 37, languageName = "Boo", languageExtensions = [".boo"], languageFileNames = []}),
    ("Brainfuck", Language {languageID = 38, languageName = "Brainfuck", languageExtensions = [".b",".bf"], languageFileNames = []}),
    ("Brightscript", Language {languageID = 39, languageName = "Brightscript", languageExtensions = [".brs"], languageFileNames = []}),
    ("C", Language {languageID = 41, languageName = "C", languageExtensions = [".c",".cats",".h",".idc"], languageFileNames = []}),
    ("C#", Language {languageID = 42, languageName = "C#", languageExtensions = [".cs",".cake",".csx"], languageFileNames = []}),
    ("C++", Language {languageID = 43, languageName = "C++", languageExtensions = [".cpp",".c++",".cc",".cp",".cxx",".h",".h++",".hh",".hpp",".hxx",".inc",".inl",".ino",".ipp",".re",".tcc",".tpp"], languageFileNames = []}),
    ("C-ObjDump", Language {languageID = 44, languageName = "C-ObjDump", languageExtensions = [".c-objdump"], languageFileNames = []}),
    ("C2hs Haskell", Language {languageID = 45, languageName = "C2hs Haskell", languageExtensions = [".chs"], languageFileNames = []}),
    ("CLIPS", Language {languageID = 46, languageName = "CLIPS", languageExtensions = [".clp"], languageFileNames = []}),
    ("CMake", Language {languageID = 47, languageName = "CMake", languageExtensions = [".cmake",".cmake.in"], languageFileNames = ["CMakeLists.txt"]}),
    ("COBOL", Language {languageID = 48, languageName = "COBOL", languageExtensions = [".cob",".cbl",".ccp",".cobol",".cpy"], languageFileNames = []}),
    ("COLLADA", Language {languageID = 49, languageName = "COLLADA", languageExtensions = [".dae"], languageFileNames = []}),
    ("CSON", Language {languageID = 424, languageName = "CSON", languageExtensions = [".cson"], languageFileNames = []}),
    ("CSS", Language {languageID = 50, languageName = "CSS", languageExtensions = [".css"], languageFileNames = []}),
    ("CSV", Language {languageID = 51, languageName = "CSV", languageExtensions = [".csv"], languageFileNames = []}),
    ("CWeb", Language {languageID = 657332628, languageName = "CWeb", languageExtensions = [".w"], languageFileNames = []}),
    ("Cabal Config", Language {languageID = 677095381, languageName = "Cabal Config", languageExtensions = [".cabal"], languageFileNames = ["cabal.config","cabal.project"]}),
    ("Cap'n Proto", Language {languageID = 52, languageName = "Cap'n Proto", languageExtensions = [".capnp"], languageFileNames = []}),
    ("CartoCSS", Language {languageID = 53, languageName = "CartoCSS", languageExtensions = [".mss"], languageFileNames = []}),
    ("Ceylon", Language {languageID = 54, languageName = "Ceylon", languageExtensions = [".ceylon"], languageFileNames = []}),
    ("Chapel", Language {languageID = 55, languageName = "Chapel", languageExtensions = [".chpl"], languageFileNames = []}),
    ("Charity", Language {languageID = 56, languageName = "Charity", languageExtensions = [".ch"], languageFileNames = []}),
    ("ChucK", Language {languageID = 57, languageName = "ChucK", languageExtensions = [".ck"], languageFileNames = []}),
    ("Cirru", Language {languageID = 58, languageName = "Cirru", languageExtensions = [".cirru"], languageFileNames = []}),
    ("Clarion", Language {languageID = 59, languageName = "Clarion", languageExtensions = [".clw"], languageFileNames = []}),
    ("Clean", Language {languageID = 60, languageName = "Clean", languageExtensions = [".icl",".dcl"], languageFileNames = []}),
    ("Click", Language {languageID = 61, languageName = "Click", languageExtensions = [".click"], languageFileNames = []}),
    ("Clojure", Language {languageID = 62, languageName = "Clojure", languageExtensions = [".clj",".boot",".cl2",".cljc",".cljs",".cljs.hl",".cljscm",".cljx",".hic"], languageFileNames = ["riemann.config"]}),
    ("Closure Templates", Language {languageID = 357046146, languageName = "Closure Templates", languageExtensions = [".soy"], languageFileNames = []}),
    ("Cloud Firestore Security Rules", Language {languageID = 407996372, languageName = "Cloud Firestore Security Rules", languageExtensions = [], languageFileNames = ["firestore.rules"]}),
    ("CoNLL-U", Language {languageID = 421026389, languageName = "CoNLL-U", languageExtensions = [".conllu",".conll"], languageFileNames = []}),
    ("CoffeeScript", Language {languageID = 63, languageName = "CoffeeScript", languageExtensions = [".coffee","._coffee",".cake",".cjsx",".iced"], languageFileNames = ["Cakefile"]}),
    ("ColdFusion", Language {languageID = 64, languageName = "ColdFusion", languageExtensions = [".cfm",".cfml"], languageFileNames = []}),
    ("ColdFusion CFC", Language {languageID = 65, languageName = "ColdFusion CFC", languageExtensions = [".cfc"], languageFileNames = []}),
    ("Common Lisp", Language {languageID = 66, languageName = "Common Lisp", languageExtensions = [".lisp",".asd",".cl",".l",".lsp",".ny",".podsl",".sexp"], languageFileNames = []}),
    ("Common Workflow Language", Language {languageID = 988547172, languageName = "Common Workflow Language", languageExtensions = [".cwl"], languageFileNames = []}),
    ("Component Pascal", Language {languageID = 67, languageName = "Component Pascal", languageExtensions = [".cp",".cps"], languageFileNames = []}),
    ("Cool", Language {languageID = 68, languageName = "Cool", languageExtensions = [".cl"], languageFileNames = []}),
    ("Coq", Language {languageID = 69, languageName = "Coq", languageExtensions = [".coq",".v"], languageFileNames = []}),
    ("Cpp-ObjDump", Language {languageID = 70, languageName = "Cpp-ObjDump", languageExtensions = [".cppobjdump",".c++-objdump",".c++objdump",".cpp-objdump",".cxx-objdump"], languageFileNames = []}),
    ("Creole", Language {languageID = 71, languageName = "Creole", languageExtensions = [".creole"], languageFileNames = []}),
    ("Crystal", Language {languageID = 72, languageName = "Crystal", languageExtensions = [".cr"], languageFileNames = []}),
    ("Csound", Language {languageID = 73, languageName = "Csound", languageExtensions = [".orc",".udo"], languageFileNames = []}),
    ("Csound Document", Language {languageID = 74, languageName = "Csound Document", languageExtensions = [".csd"], languageFileNames = []}),
    ("Csound Score", Language {languageID = 75, languageName = "Csound Score", languageExtensions = [".sco"], languageFileNames = []}),
    ("Cuda", Language {languageID = 77, languageName = "Cuda", languageExtensions = [".cu",".cuh"], languageFileNames = []}),
    ("Cycript", Language {languageID = 78, languageName = "Cycript", languageExtensions = [".cy"], languageFileNames = []}),
    ("Cython", Language {languageID = 79, languageName = "Cython", languageExtensions = [".pyx",".pxd",".pxi"], languageFileNames = []}),
    ("D", Language {languageID = 80, languageName = "D", languageExtensions = [".d",".di"], languageFileNames = []}),
    ("D-ObjDump", Language {languageID = 81, languageName = "D-ObjDump", languageExtensions = [".d-objdump"], languageFileNames = []}),
    ("DIGITAL Command Language", Language {languageID = 82, languageName = "DIGITAL Command Language", languageExtensions = [".com"], languageFileNames = []}),
    ("DM", Language {languageID = 83, languageName = "DM", languageExtensions = [".dm"], languageFileNames = []}),
    ("DNS Zone", Language {languageID = 84, languageName = "DNS Zone", languageExtensions = [".zone",".arpa"], languageFileNames = []}),
    ("DTrace", Language {languageID = 85, languageName = "DTrace", languageExtensions = [".d"], languageFileNames = []}),
    ("Darcs Patch", Language {languageID = 86, languageName = "Darcs Patch", languageExtensions = [".darcspatch",".dpatch"], languageFileNames = []}),
    ("Dart", Language {languageID = 87, languageName = "Dart", languageExtensions = [".dart"], languageFileNames = []}),
    ("DataWeave", Language {languageID = 974514097, languageName = "DataWeave", languageExtensions = [".dwl"], languageFileNames = []}),
    ("Dhall", Language {languageID = 793969321, languageName = "Dhall", languageExtensions = [".dhall"], languageFileNames = []}),
    ("Diff", Language {languageID = 88, languageName = "Diff", languageExtensions = [".diff",".patch"], languageFileNames = []}),
    ("Dockerfile", Language {languageID = 89, languageName = "Dockerfile", languageExtensions = [".dockerfile"], languageFileNames = ["Dockerfile"]}),
    ("Dogescript", Language {languageID = 90, languageName = "Dogescript", languageExtensions = [".djs"], languageFileNames = []}),
    ("Dylan", Language {languageID = 91, languageName = "Dylan", languageExtensions = [".dylan",".dyl",".intr",".lid"], languageFileNames = []}),
    ("E", Language {languageID = 92, languageName = "E", languageExtensions = [".E"], languageFileNames = []}),
    ("EBNF", Language {languageID = 430, languageName = "EBNF", languageExtensions = [".ebnf"], languageFileNames = []}),
    ("ECL", Language {languageID = 93, languageName = "ECL", languageExtensions = [".ecl",".eclxml"], languageFileNames = []}),
    ("ECLiPSe", Language {languageID = 94, languageName = "ECLiPSe", languageExtensions = [".ecl"], languageFileNames = []}),
    ("EJS", Language {languageID = 95, languageName = "EJS", languageExtensions = [".ejs"], languageFileNames = []}),
    ("EML", Language {languageID = 529653389, languageName = "EML", languageExtensions = [".eml",".mbox"], languageFileNames = []}),
    ("EQ", Language {languageID = 96, languageName = "EQ", languageExtensions = [".eq"], languageFileNames = []}),
    ("Eagle", Language {languageID = 97, languageName = "Eagle", languageExtensions = [".sch",".brd"], languageFileNames = []}),
    ("Easybuild", Language {languageID = 342840477, languageName = "Easybuild", languageExtensions = [".eb"], languageFileNames = []}),
    ("Ecere Projects", Language {languageID = 98, languageName = "Ecere Projects", languageExtensions = [".epj"], languageFileNames = []}),
    ("EditorConfig", Language {languageID = 96139566, languageName = "EditorConfig", languageExtensions = [], languageFileNames = [".editorconfig"]}),
    ("Edje Data Collection", Language {languageID = 342840478, languageName = "Edje Data Collection", languageExtensions = [".edc"], languageFileNames = []}),
    ("Eiffel", Language {languageID = 99, languageName = "Eiffel", languageExtensions = [".e"], languageFileNames = []}),
    ("Elixir", Language {languageID = 100, languageName = "Elixir", languageExtensions = [".ex",".exs"], languageFileNames = ["mix.lock"]}),
    ("Elm", Language {languageID = 101, languageName = "Elm", languageExtensions = [".elm"], languageFileNames = []}),
    ("Emacs Lisp", Language {languageID = 102, languageName = "Emacs Lisp", languageExtensions = [".el",".emacs",".emacs.desktop"], languageFileNames = [".abbrev_defs",".emacs",".emacs.desktop",".gnus",".spacemacs",".viper","Cask","Project.ede","_emacs","abbrev_defs"]}),
    ("EmberScript", Language {languageID = 103, languageName = "EmberScript", languageExtensions = [".em",".emberscript"], languageFileNames = []}),
    ("Erlang", Language {languageID = 104, languageName = "Erlang", languageExtensions = [".erl",".app.src",".es",".escript",".hrl",".xrl",".yrl"], languageFileNames = ["Emakefile","rebar.config","rebar.config.lock","rebar.lock"]}),
    ("F#", Language {languageID = 105, languageName = "F#", languageExtensions = [".fs",".fsi",".fsx"], languageFileNames = []}),
    ("F*", Language {languageID = 336943375, languageName = "F*", languageExtensions = [".fst"], languageFileNames = []}),
    ("FIGlet Font", Language {languageID = 686129783, languageName = "FIGlet Font", languageExtensions = [".flf"], languageFileNames = []}),
    ("FLUX", Language {languageID = 106, languageName = "FLUX", languageExtensions = [".fx",".flux"], languageFileNames = []}),
    ("Factor", Language {languageID = 108, languageName = "Factor", languageExtensions = [".factor"], languageFileNames = [".factor-boot-rc",".factor-rc"]}),
    ("Fancy", Language {languageID = 109, languageName = "Fancy", languageExtensions = [".fy",".fancypack"], languageFileNames = ["Fakefile"]}),
    ("Fantom", Language {languageID = 110, languageName = "Fantom", languageExtensions = [".fan"], languageFileNames = []}),
    ("Filebench WML", Language {languageID = 111, languageName = "Filebench WML", languageExtensions = [".f"], languageFileNames = []}),
    ("Filterscript", Language {languageID = 112, languageName = "Filterscript", languageExtensions = [".fs"], languageFileNames = []}),
    ("Formatted", Language {languageID = 113, languageName = "Formatted", languageExtensions = [".for",".eam.fs"], languageFileNames = []}),
    ("Forth", Language {languageID = 114, languageName = "Forth", languageExtensions = [".fth",".4th",".f",".for",".forth",".fr",".frt",".fs"], languageFileNames = []}),
    ("Fortran", Language {languageID = 107, languageName = "Fortran", languageExtensions = [".f90",".f",".f03",".f08",".f77",".f95",".for",".fpp"], languageFileNames = []}),
    ("FreeMarker", Language {languageID = 115, languageName = "FreeMarker", languageExtensions = [".ftl"], languageFileNames = []}),
    ("Frege", Language {languageID = 116, languageName = "Frege", languageExtensions = [".fr"], languageFileNames = []}),
    ("G-code", Language {languageID = 117, languageName = "G-code", languageExtensions = [".g",".cnc",".gco",".gcode"], languageFileNames = []}),
    ("GAMS", Language {languageID = 118, languageName = "GAMS", languageExtensions = [".gms"], languageFileNames = []}),
    ("GAP", Language {languageID = 119, languageName = "GAP", languageExtensions = [".g",".gap",".gd",".gi",".tst"], languageFileNames = []}),
    ("GCC Machine Description", Language {languageID = 121, languageName = "GCC Machine Description", languageExtensions = [".md"], languageFileNames = []}),
    ("GDB", Language {languageID = 122, languageName = "GDB", languageExtensions = [".gdb",".gdbinit"], languageFileNames = []}),
    ("GDScript", Language {languageID = 123, languageName = "GDScript", languageExtensions = [".gd"], languageFileNames = []}),
    ("GLSL", Language {languageID = 124, languageName = "GLSL", languageExtensions = [".glsl",".fp",".frag",".frg",".fs",".fsh",".fshader",".geo",".geom",".glslv",".gshader",".shader",".tesc",".tese",".vert",".vrx",".vsh",".vshader"], languageFileNames = []}),
    ("GN", Language {languageID = 302957008, languageName = "GN", languageExtensions = [".gn",".gni"], languageFileNames = [".gn"]}),
    ("Game Maker Language", Language {languageID = 125, languageName = "Game Maker Language", languageExtensions = [".gml"], languageFileNames = []}),
    ("Genie", Language {languageID = 792408528, languageName = "Genie", languageExtensions = [".gs"], languageFileNames = []}),
    ("Genshi", Language {languageID = 126, languageName = "Genshi", languageExtensions = [".kid"], languageFileNames = []}),
    ("Gentoo Ebuild", Language {languageID = 127, languageName = "Gentoo Ebuild", languageExtensions = [".ebuild"], languageFileNames = []}),
    ("Gentoo Eclass", Language {languageID = 128, languageName = "Gentoo Eclass", languageExtensions = [".eclass"], languageFileNames = []}),
    ("Gerber Image", Language {languageID = 404627610, languageName = "Gerber Image", languageExtensions = [".gbr",".gbl",".gbo",".gbp",".gbs",".gko",".gml",".gpb",".gpt",".gtl",".gto",".gtp",".gts"], languageFileNames = []}),
    ("Gettext Catalog", Language {languageID = 129, languageName = "Gettext Catalog", languageExtensions = [".po",".pot"], languageFileNames = []}),
    ("Gherkin", Language {languageID = 76, languageName = "Gherkin", languageExtensions = [".feature"], languageFileNames = []}),
    ("Git Attributes", Language {languageID = 956324166, languageName = "Git Attributes", languageExtensions = [], languageFileNames = [".gitattributes"]}),
    ("Git Config", Language {languageID = 807968997, languageName = "Git Config", languageExtensions = [".gitconfig"], languageFileNames = [".gitconfig",".gitmodules"]}),
    ("Glyph", Language {languageID = 130, languageName = "Glyph", languageExtensions = [".glf"], languageFileNames = []}),
    ("Glyph Bitmap Distribution Format", Language {languageID = 997665271, languageName = "Glyph Bitmap Distribution Format", languageExtensions = [".bdf"], languageFileNames = []}),
    ("Gnuplot", Language {languageID = 131, languageName = "Gnuplot", languageExtensions = [".gp",".gnu",".gnuplot",".plot",".plt"], languageFileNames = []}),
    ("Go", Language {languageID = 132, languageName = "Go", languageExtensions = [".go"], languageFileNames = []}),
    ("Golo", Language {languageID = 133, languageName = "Golo", languageExtensions = [".golo"], languageFileNames = []}),
    ("Gosu", Language {languageID = 134, languageName = "Gosu", languageExtensions = [".gs",".gst",".gsx",".vark"], languageFileNames = []}),
    ("Grace", Language {languageID = 135, languageName = "Grace", languageExtensions = [".grace"], languageFileNames = []}),
    ("Gradle", Language {languageID = 136, languageName = "Gradle", languageExtensions = [".gradle"], languageFileNames = []}),
    ("Grammatical Framework", Language {languageID = 137, languageName = "Grammatical Framework", languageExtensions = [".gf"], languageFileNames = []}),
    ("Graph Modeling Language", Language {languageID = 138, languageName = "Graph Modeling Language", languageExtensions = [".gml"], languageFileNames = []}),
    ("GraphQL", Language {languageID = 139, languageName = "GraphQL", languageExtensions = [".graphql",".gql",".graphqls"], languageFileNames = []}),
    ("Graphviz (DOT)", Language {languageID = 140, languageName = "Graphviz (DOT)", languageExtensions = [".dot",".gv"], languageFileNames = []}),
    ("Groovy", Language {languageID = 142, languageName = "Groovy", languageExtensions = [".groovy",".grt",".gtpl",".gvy"], languageFileNames = ["Jenkinsfile"]}),
    ("Groovy Server Pages", Language {languageID = 143, languageName = "Groovy Server Pages", languageExtensions = [".gsp"], languageFileNames = []}),
    ("HAProxy", Language {languageID = 366607477, languageName = "HAProxy", languageExtensions = [".cfg"], languageFileNames = ["haproxy.cfg"]}),
    ("HCL", Language {languageID = 144, languageName = "HCL", languageExtensions = [".hcl",".tf",".tfvars",".workflow"], languageFileNames = []}),
    ("HLSL", Language {languageID = 145, languageName = "HLSL", languageExtensions = [".hlsl",".cginc",".fx",".fxh",".hlsli"], languageFileNames = []}),
    ("HTML", Language {languageID = 146, languageName = "HTML", languageExtensions = [".html",".htm",".html.hl",".inc",".st",".xht",".xhtml"], languageFileNames = []}),
    ("HTML+Django", Language {languageID = 147, languageName = "HTML+Django", languageExtensions = [".jinja",".jinja2",".mustache",".njk"], languageFileNames = []}),
    ("HTML+ECR", Language {languageID = 148, languageName = "HTML+ECR", languageExtensions = [".ecr"], languageFileNames = []}),
    ("HTML+EEX", Language {languageID = 149, languageName = "HTML+EEX", languageExtensions = [".eex"], languageFileNames = []}),
    ("HTML+ERB", Language {languageID = 150, languageName = "HTML+ERB", languageExtensions = [".erb",".erb.deface"], languageFileNames = []}),
    ("HTML+PHP", Language {languageID = 151, languageName = "HTML+PHP", languageExtensions = [".phtml"], languageFileNames = []}),
    ("HTML+Razor", Language {languageID = 479039817, languageName = "HTML+Razor", languageExtensions = [".cshtml",".razor"], languageFileNames = []}),
    ("HTTP", Language {languageID = 152, languageName = "HTTP", languageExtensions = [".http"], languageFileNames = []}),
    ("HXML", Language {languageID = 786683730, languageName = "HXML", languageExtensions = [".hxml"], languageFileNames = []}),
    ("Hack", Language {languageID = 153, languageName = "Hack", languageExtensions = [".hh",".php"], languageFileNames = []}),
    ("Haml", Language {languageID = 154, languageName = "Haml", languageExtensions = [".haml",".haml.deface"], languageFileNames = []}),
    ("Handlebars", Language {languageID = 155, languageName = "Handlebars", languageExtensions = [".handlebars",".hbs"], languageFileNames = []}),
    ("Harbour", Language {languageID = 156, languageName = "Harbour", languageExtensions = [".hb"], languageFileNames = []}),
    ("Haskell", Language {languageID = 157, languageName = "Haskell", languageExtensions = [".hs",".hsc"], languageFileNames = []}),
    ("Haxe", Language {languageID = 158, languageName = "Haxe", languageExtensions = [".hx",".hxsl"], languageFileNames = []}),
    ("HiveQL", Language {languageID = 931814087, languageName = "HiveQL", languageExtensions = [".q"], languageFileNames = []}),
    ("HolyC", Language {languageID = 928121743, languageName = "HolyC", languageExtensions = [".hc"], languageFileNames = []}),
    ("Hy", Language {languageID = 159, languageName = "Hy", languageExtensions = [".hy"], languageFileNames = []}),
    ("HyPhy", Language {languageID = 160, languageName = "HyPhy", languageExtensions = [".bf"], languageFileNames = []}),
    ("IDL", Language {languageID = 161, languageName = "IDL", languageExtensions = [".pro",".dlm"], languageFileNames = []}),
    ("IGOR Pro", Language {languageID = 162, languageName = "IGOR Pro", languageExtensions = [".ipf"], languageFileNames = []}),
    ("INI", Language {languageID = 163, languageName = "INI", languageExtensions = [".ini",".cfg",".lektorproject",".prefs",".pro",".properties"], languageFileNames = ["buildozer.spec"]}),
    ("IRC log", Language {languageID = 164, languageName = "IRC log", languageExtensions = [".irclog",".weechatlog"], languageFileNames = []}),
    ("Idris", Language {languageID = 165, languageName = "Idris", languageExtensions = [".idr",".lidr"], languageFileNames = []}),
    ("Ignore List", Language {languageID = 74444240, languageName = "Ignore List", languageExtensions = [".gitignore"], languageFileNames = [".atomignore",".babelignore",".bzrignore",".coffeelintignore",".cvsignore",".dockerignore",".eslintignore",".gitignore",".nodemonignore",".npmignore",".prettierignore",".stylelintignore",".vscodeignore","gitignore-global","gitignore_global"]}),
    ("Inform 7", Language {languageID = 166, languageName = "Inform 7", languageExtensions = [".ni",".i7x"], languageFileNames = []}),
    ("Inno Setup", Language {languageID = 167, languageName = "Inno Setup", languageExtensions = [".iss"], languageFileNames = []}),
    ("Io", Language {languageID = 168, languageName = "Io", languageExtensions = [".io"], languageFileNames = []}),
    ("Ioke", Language {languageID = 169, languageName = "Ioke", languageExtensions = [".ik"], languageFileNames = []}),
    ("Isabelle", Language {languageID = 170, languageName = "Isabelle", languageExtensions = [".thy"], languageFileNames = []}),
    ("Isabelle ROOT", Language {languageID = 171, languageName = "Isabelle ROOT", languageExtensions = [], languageFileNames = ["ROOT"]}),
    ("J", Language {languageID = 172, languageName = "J", languageExtensions = [".ijs"], languageFileNames = []}),
    ("JFlex", Language {languageID = 173, languageName = "JFlex", languageExtensions = [".flex",".jflex"], languageFileNames = []}),
    ("JSON", Language {languageID = 174, languageName = "JSON", languageExtensions = [".json",".avsc",".geojson",".gltf",".har",".ice",".JSON-tmLanguage",".jsonl",".mcmeta",".tfstate",".tfstate.backup",".topojson",".webapp",".webmanifest",".yy",".yyp"], languageFileNames = [".arcconfig",".htmlhintrc",".tern-config",".tern-project",".watchmanconfig","composer.lock","mcmod.info"]}),
    ("JSON with Comments", Language {languageID = 423, languageName = "JSON with Comments", languageExtensions = [".sublime-build",".sublime-commands",".sublime-completions",".sublime-keymap",".sublime-macro",".sublime-menu",".sublime-mousemap",".sublime-project",".sublime-settings",".sublime-theme",".sublime-workspace",".sublime_metrics",".sublime_session"], languageFileNames = [".babelrc",".eslintrc.json",".jscsrc",".jshintrc",".jslintrc","jsconfig.json","language-configuration.json","tsconfig.json"]}),
    ("JSON5", Language {languageID = 175, languageName = "JSON5", languageExtensions = [".json5"], languageFileNames = []}),
    ("JSONLD", Language {languageID = 176, languageName = "JSONLD", languageExtensions = [".jsonld"], languageFileNames = []}),
    ("JSONiq", Language {languageID = 177, languageName = "JSONiq", languageExtensions = [".jq"], languageFileNames = []}),
    ("JSX", Language {languageID = 178, languageName = "JSX", languageExtensions = [".jsx"], languageFileNames = []}),
    ("Jasmin", Language {languageID = 180, languageName = "Jasmin", languageExtensions = [".j"], languageFileNames = []}),
    ("Java", Language {languageID = 181, languageName = "Java", languageExtensions = [".java"], languageFileNames = []}),
    ("Java Properties", Language {languageID = 519377561, languageName = "Java Properties", languageExtensions = [".properties"], languageFileNames = []}),
    ("Java Server Pages", Language {languageID = 182, languageName = "Java Server Pages", languageExtensions = [".jsp"], languageFileNames = []}),
    ("JavaScript", Language {languageID = 183, languageName = "JavaScript", languageExtensions = [".js","._js",".bones",".es",".es6",".frag",".gs",".jake",".jsb",".jscad",".jsfl",".jsm",".jss",".mjs",".njs",".pac",".sjs",".ssjs",".xsjs",".xsjslib"], languageFileNames = ["Jakefile"]}),
    ("JavaScript+ERB", Language {languageID = 914318960, languageName = "JavaScript+ERB", languageExtensions = [".js.erb"], languageFileNames = []}),
    ("Jison", Language {languageID = 284531423, languageName = "Jison", languageExtensions = [".jison"], languageFileNames = []}),
    ("Jison Lex", Language {languageID = 406395330, languageName = "Jison Lex", languageExtensions = [".jisonlex"], languageFileNames = []}),
    ("Jolie", Language {languageID = 998078858, languageName = "Jolie", languageExtensions = [".ol",".iol"], languageFileNames = []}),
    ("Jsonnet", Language {languageID = 664885656, languageName = "Jsonnet", languageExtensions = [".jsonnet",".libsonnet"], languageFileNames = []}),
    ("Julia", Language {languageID = 184, languageName = "Julia", languageExtensions = [".jl"], languageFileNames = []}),
    ("Jupyter Notebook", Language {languageID = 185, languageName = "Jupyter Notebook", languageExtensions = [".ipynb"], languageFileNames = ["Notebook"]}),
    ("KRL", Language {languageID = 186, languageName = "KRL", languageExtensions = [".krl"], languageFileNames = []}),
    ("KiCad Layout", Language {languageID = 187, languageName = "KiCad Layout", languageExtensions = [".kicad_pcb",".kicad_mod",".kicad_wks"], languageFileNames = ["fp-lib-table"]}),
    ("KiCad Legacy Layout", Language {languageID = 140848857, languageName = "KiCad Legacy Layout", languageExtensions = [".brd"], languageFileNames = []}),
    ("KiCad Schematic", Language {languageID = 622447435, languageName = "KiCad Schematic", languageExtensions = [".sch"], languageFileNames = []}),
    ("Kit", Language {languageID = 188, languageName = "Kit", languageExtensions = [".kit"], languageFileNames = []}),
    ("Kotlin", Language {languageID = 189, languageName = "Kotlin", languageExtensions = [".kt",".ktm",".kts"], languageFileNames = []}),
    ("LFE", Language {languageID = 190, languageName = "LFE", languageExtensions = [".lfe"], languageFileNames = []}),
    ("LLVM", Language {languageID = 191, languageName = "LLVM", languageExtensions = [".ll"], languageFileNames = []}),
    ("LOLCODE", Language {languageID = 192, languageName = "LOLCODE", languageExtensions = [".lol"], languageFileNames = []}),
    ("LSL", Language {languageID = 193, languageName = "LSL", languageExtensions = [".lsl",".lslp"], languageFileNames = []}),
    ("LTspice Symbol", Language {languageID = 1013566805, languageName = "LTspice Symbol", languageExtensions = [".asy"], languageFileNames = []}),
    ("LabVIEW", Language {languageID = 194, languageName = "LabVIEW", languageExtensions = [".lvproj"], languageFileNames = []}),
    ("Lasso", Language {languageID = 195, languageName = "Lasso", languageExtensions = [".lasso",".las",".lasso8",".lasso9",".ldml"], languageFileNames = []}),
    ("Latte", Language {languageID = 196, languageName = "Latte", languageExtensions = [".latte"], languageFileNames = []}),
    ("Lean", Language {languageID = 197, languageName = "Lean", languageExtensions = [".lean",".hlean"], languageFileNames = []}),
    ("Less", Language {languageID = 198, languageName = "Less", languageExtensions = [".less"], languageFileNames = []}),
    ("Lex", Language {languageID = 199, languageName = "Lex", languageExtensions = [".l",".lex"], languageFileNames = []}),
    ("LilyPond", Language {languageID = 200, languageName = "LilyPond", languageExtensions = [".ly",".ily"], languageFileNames = []}),
    ("Limbo", Language {languageID = 201, languageName = "Limbo", languageExtensions = [".b",".m"], languageFileNames = []}),
    ("Linker Script", Language {languageID = 202, languageName = "Linker Script", languageExtensions = [".ld",".lds",".x"], languageFileNames = ["ld.script"]}),
    ("Linux Kernel Module", Language {languageID = 203, languageName = "Linux Kernel Module", languageExtensions = [".mod"], languageFileNames = []}),
    ("Liquid", Language {languageID = 204, languageName = "Liquid", languageExtensions = [".liquid"], languageFileNames = []}),
    ("Literate Agda", Language {languageID = 205, languageName = "Literate Agda", languageExtensions = [".lagda"], languageFileNames = []}),
    ("Literate CoffeeScript", Language {languageID = 206, languageName = "Literate CoffeeScript", languageExtensions = [".litcoffee"], languageFileNames = []}),
    ("Literate Haskell", Language {languageID = 207, languageName = "Literate Haskell", languageExtensions = [".lhs"], languageFileNames = []}),
    ("LiveScript", Language {languageID = 208, languageName = "LiveScript", languageExtensions = [".ls","._ls"], languageFileNames = ["Slakefile"]}),
    ("Logos", Language {languageID = 209, languageName = "Logos", languageExtensions = [".xm",".x",".xi"], languageFileNames = []}),
    ("Logtalk", Language {languageID = 210, languageName = "Logtalk", languageExtensions = [".lgt",".logtalk"], languageFileNames = []}),
    ("LookML", Language {languageID = 211, languageName = "LookML", languageExtensions = [".lookml",".model.lkml",".view.lkml"], languageFileNames = []}),
    ("LoomScript", Language {languageID = 212, languageName = "LoomScript", languageExtensions = [".ls"], languageFileNames = []}),
    ("Lua", Language {languageID = 213, languageName = "Lua", languageExtensions = [".lua",".fcgi",".nse",".p8",".pd_lua",".rbxs",".wlua"], languageFileNames = []}),
    ("M", Language {languageID = 214, languageName = "M", languageExtensions = [".mumps",".m"], languageFileNames = []}),
    ("M4", Language {languageID = 215, languageName = "M4", languageExtensions = [".m4"], languageFileNames = []}),
    ("M4Sugar", Language {languageID = 216, languageName = "M4Sugar", languageExtensions = [".m4"], languageFileNames = ["configure.ac"]}),
    ("MATLAB", Language {languageID = 225, languageName = "MATLAB", languageExtensions = [".matlab",".m"], languageFileNames = []}),
    ("MAXScript", Language {languageID = 217, languageName = "MAXScript", languageExtensions = [".ms",".mcr"], languageFileNames = []}),
    ("MQL4", Language {languageID = 426, languageName = "MQL4", languageExtensions = [".mq4",".mqh"], languageFileNames = []}),
    ("MQL5", Language {languageID = 427, languageName = "MQL5", languageExtensions = [".mq5",".mqh"], languageFileNames = []}),
    ("MTML", Language {languageID = 218, languageName = "MTML", languageExtensions = [".mtml"], languageFileNames = []}),
    ("MUF", Language {languageID = 219, languageName = "MUF", languageExtensions = [".muf",".m"], languageFileNames = []}),
    ("Makefile", Language {languageID = 220, languageName = "Makefile", languageExtensions = [".mak",".d",".make",".mk",".mkfile"], languageFileNames = ["BSDmakefile","GNUmakefile","Kbuild","Makefile","Makefile.am","Makefile.boot","Makefile.frag","Makefile.in","Makefile.inc","Makefile.wat","makefile","makefile.sco","mkfile"]}),
    ("Mako", Language {languageID = 221, languageName = "Mako", languageExtensions = [".mako",".mao"], languageFileNames = []}),
    ("Markdown", Language {languageID = 222, languageName = "Markdown", languageExtensions = [".md",".markdown",".mdown",".mdwn",".mdx",".mkd",".mkdn",".mkdown",".ronn",".workbook"], languageFileNames = ["contents.lr"]}),
    ("Marko", Language {languageID = 932782397, languageName = "Marko", languageExtensions = [".marko"], languageFileNames = []}),
    ("Mask", Language {languageID = 223, languageName = "Mask", languageExtensions = [".mask"], languageFileNames = []}),
    ("Mathematica", Language {languageID = 224, languageName = "Mathematica", languageExtensions = [".mathematica",".cdf",".m",".ma",".mt",".nb",".nbp",".wl",".wlt"], languageFileNames = []}),
    ("Maven POM", Language {languageID = 226, languageName = "Maven POM", languageExtensions = [], languageFileNames = ["pom.xml"]}),
    ("Max", Language {languageID = 227, languageName = "Max", languageExtensions = [".maxpat",".maxhelp",".maxproj",".mxt",".pat"], languageFileNames = []}),
    ("MediaWiki", Language {languageID = 228, languageName = "MediaWiki", languageExtensions = [".mediawiki",".wiki"], languageFileNames = []}),
    ("Mercury", Language {languageID = 229, languageName = "Mercury", languageExtensions = [".m",".moo"], languageFileNames = []}),
    ("Meson", Language {languageID = 799141244, languageName = "Meson", languageExtensions = [], languageFileNames = ["meson.build","meson_options.txt"]}),
    ("Metal", Language {languageID = 230, languageName = "Metal", languageExtensions = [".metal"], languageFileNames = []}),
    ("MiniD", Language {languageID = 231, languageName = "MiniD", languageExtensions = [".minid"], languageFileNames = []}),
    ("Mirah", Language {languageID = 232, languageName = "Mirah", languageExtensions = [".druby",".duby",".mirah"], languageFileNames = []}),
    ("Modelica", Language {languageID = 233, languageName = "Modelica", languageExtensions = [".mo"], languageFileNames = []}),
    ("Modula-2", Language {languageID = 234, languageName = "Modula-2", languageExtensions = [".mod"], languageFileNames = []}),
    ("Modula-3", Language {languageID = 564743864, languageName = "Modula-3", languageExtensions = [".i3",".ig",".m3",".mg"], languageFileNames = []}),
    ("Module Management System", Language {languageID = 235, languageName = "Module Management System", languageExtensions = [".mms",".mmk"], languageFileNames = ["descrip.mmk","descrip.mms"]}),
    ("Monkey", Language {languageID = 236, languageName = "Monkey", languageExtensions = [".monkey",".monkey2"], languageFileNames = []}),
    ("Moocode", Language {languageID = 237, languageName = "Moocode", languageExtensions = [".moo"], languageFileNames = []}),
    ("MoonScript", Language {languageID = 238, languageName = "MoonScript", languageExtensions = [".moon"], languageFileNames = []}),
    ("Motorola 68K Assembly", Language {languageID = 477582706, languageName = "Motorola 68K Assembly", languageExtensions = [".X68"], languageFileNames = []}),
    ("Myghty", Language {languageID = 239, languageName = "Myghty", languageExtensions = [".myt"], languageFileNames = []}),
    ("NCL", Language {languageID = 240, languageName = "NCL", languageExtensions = [".ncl"], languageFileNames = []}),
    ("NL", Language {languageID = 241, languageName = "NL", languageExtensions = [".nl"], languageFileNames = []}),
    ("NSIS", Language {languageID = 242, languageName = "NSIS", languageExtensions = [".nsi",".nsh"], languageFileNames = []}),
    ("Nearley", Language {languageID = 521429430, languageName = "Nearley", languageExtensions = [".ne",".nearley"], languageFileNames = []}),
    ("Nemerle", Language {languageID = 243, languageName = "Nemerle", languageExtensions = [".n"], languageFileNames = []}),
    ("NetLinx", Language {languageID = 244, languageName = "NetLinx", languageExtensions = [".axs",".axi"], languageFileNames = []}),
    ("NetLinx+ERB", Language {languageID = 245, languageName = "NetLinx+ERB", languageExtensions = [".axs.erb",".axi.erb"], languageFileNames = []}),
    ("NetLogo", Language {languageID = 246, languageName = "NetLogo", languageExtensions = [".nlogo"], languageFileNames = []}),
    ("NewLisp", Language {languageID = 247, languageName = "NewLisp", languageExtensions = [".nl",".lisp",".lsp"], languageFileNames = []}),
    ("Nextflow", Language {languageID = 506780613, languageName = "Nextflow", languageExtensions = [".nf"], languageFileNames = ["nextflow.config"]}),
    ("Nginx", Language {languageID = 248, languageName = "Nginx", languageExtensions = [".nginxconf",".vhost"], languageFileNames = ["nginx.conf"]}),
    ("Nim", Language {languageID = 249, languageName = "Nim", languageExtensions = [".nim",".nim.cfg",".nimble",".nimrod",".nims"], languageFileNames = ["nim.cfg"]}),
    ("Ninja", Language {languageID = 250, languageName = "Ninja", languageExtensions = [".ninja"], languageFileNames = []}),
    ("Nit", Language {languageID = 251, languageName = "Nit", languageExtensions = [".nit"], languageFileNames = []}),
    ("Nix", Language {languageID = 252, languageName = "Nix", languageExtensions = [".nix"], languageFileNames = []}),
    ("Nu", Language {languageID = 253, languageName = "Nu", languageExtensions = [".nu"], languageFileNames = ["Nukefile"]}),
    ("NumPy", Language {languageID = 254, languageName = "NumPy", languageExtensions = [".numpy",".numpyw",".numsc"], languageFileNames = []}),
    ("OCaml", Language {languageID = 255, languageName = "OCaml", languageExtensions = [".ml",".eliom",".eliomi",".ml4",".mli",".mll",".mly"], languageFileNames = []}),
    ("ObjDump", Language {languageID = 256, languageName = "ObjDump", languageExtensions = [".objdump"], languageFileNames = []}),
    ("ObjectScript", Language {languageID = 202735509, languageName = "ObjectScript", languageExtensions = [".cls"], languageFileNames = []}),
    ("Objective-C", Language {languageID = 257, languageName = "Objective-C", languageExtensions = [".m",".h"], languageFileNames = []}),
    ("Objective-C++", Language {languageID = 258, languageName = "Objective-C++", languageExtensions = [".mm"], languageFileNames = []}),
    ("Objective-J", Language {languageID = 259, languageName = "Objective-J", languageExtensions = [".j",".sj"], languageFileNames = []}),
    ("Omgrofl", Language {languageID = 260, languageName = "Omgrofl", languageExtensions = [".omgrofl"], languageFileNames = []}),
    ("Opa", Language {languageID = 261, languageName = "Opa", languageExtensions = [".opa"], languageFileNames = []}),
    ("Opal", Language {languageID = 262, languageName = "Opal", languageExtensions = [".opal"], languageFileNames = []}),
    ("OpenCL", Language {languageID = 263, languageName = "OpenCL", languageExtensions = [".cl",".opencl"], languageFileNames = []}),
    ("OpenEdge ABL", Language {languageID = 264, languageName = "OpenEdge ABL", languageExtensions = [".p",".cls",".w"], languageFileNames = []}),
    ("OpenRC runscript", Language {languageID = 265, languageName = "OpenRC runscript", languageExtensions = [], languageFileNames = []}),
    ("OpenSCAD", Language {languageID = 266, languageName = "OpenSCAD", languageExtensions = [".scad"], languageFileNames = []}),
    ("OpenType Feature File", Language {languageID = 374317347, languageName = "OpenType Feature File", languageExtensions = [".fea"], languageFileNames = []}),
    ("Org", Language {languageID = 267, languageName = "Org", languageExtensions = [".org"], languageFileNames = []}),
    ("Ox", Language {languageID = 268, languageName = "Ox", languageExtensions = [".ox",".oxh",".oxo"], languageFileNames = []}),
    ("Oxygene", Language {languageID = 269, languageName = "Oxygene", languageExtensions = [".oxygene"], languageFileNames = []}),
    ("Oz", Language {languageID = 270, languageName = "Oz", languageExtensions = [".oz"], languageFileNames = []}),
    ("P4", Language {languageID = 348895984, languageName = "P4", languageExtensions = [".p4"], languageFileNames = []}),
    ("PHP", Language {languageID = 272, languageName = "PHP", languageExtensions = [".php",".aw",".ctp",".fcgi",".inc",".php3",".php4",".php5",".phps",".phpt"], languageFileNames = [".php",".php_cs",".php_cs.dist","Phakefile"]}),
    ("PLSQL", Language {languageID = 273, languageName = "PLSQL", languageExtensions = [".pls",".bdy",".ddl",".fnc",".pck",".pkb",".pks",".plb",".plsql",".prc",".spc",".sql",".tpb",".tps",".trg",".vw"], languageFileNames = []}),
    ("PLpgSQL", Language {languageID = 274, languageName = "PLpgSQL", languageExtensions = [".pgsql",".sql"], languageFileNames = []}),
    ("POV-Ray SDL", Language {languageID = 275, languageName = "POV-Ray SDL", languageExtensions = [".pov",".inc"], languageFileNames = []}),
    ("Pan", Language {languageID = 276, languageName = "Pan", languageExtensions = [".pan"], languageFileNames = []}),
    ("Papyrus", Language {languageID = 277, languageName = "Papyrus", languageExtensions = [".psc"], languageFileNames = []}),
    ("Parrot", Language {languageID = 278, languageName = "Parrot", languageExtensions = [".parrot"], languageFileNames = []}),
    ("Parrot Assembly", Language {languageID = 279, languageName = "Parrot Assembly", languageExtensions = [".pasm"], languageFileNames = []}),
    ("Parrot Internal Representation", Language {languageID = 280, languageName = "Parrot Internal Representation", languageExtensions = [".pir"], languageFileNames = []}),
    ("Pascal", Language {languageID = 281, languageName = "Pascal", languageExtensions = [".pas",".dfm",".dpr",".inc",".lpr",".pascal",".pp"], languageFileNames = []}),
    ("Pawn", Language {languageID = 271, languageName = "Pawn", languageExtensions = [".pwn",".inc",".sma"], languageFileNames = []}),
    ("Pep8", Language {languageID = 840372442, languageName = "Pep8", languageExtensions = [".pep"], languageFileNames = []}),
    ("Perl", Language {languageID = 282, languageName = "Perl", languageExtensions = [".pl",".al",".cgi",".fcgi",".perl",".ph",".plx",".pm",".psgi",".t"], languageFileNames = ["Makefile.PL","Rexfile","ack","cpanfile"]}),
    ("Perl 6", Language {languageID = 283, languageName = "Perl 6", languageExtensions = [".6pl",".6pm",".nqp",".p6",".p6l",".p6m",".pl",".pl6",".pm",".pm6",".t"], languageFileNames = []}),
    ("Pic", Language {languageID = 425, languageName = "Pic", languageExtensions = [".pic",".chem"], languageFileNames = []}),
    ("Pickle", Language {languageID = 284, languageName = "Pickle", languageExtensions = [".pkl"], languageFileNames = []}),
    ("PicoLisp", Language {languageID = 285, languageName = "PicoLisp", languageExtensions = [".l"], languageFileNames = []}),
    ("PigLatin", Language {languageID = 286, languageName = "PigLatin", languageExtensions = [".pig"], languageFileNames = []}),
    ("Pike", Language {languageID = 287, languageName = "Pike", languageExtensions = [".pike",".pmod"], languageFileNames = []}),
    ("Pod", Language {languageID = 288, languageName = "Pod", languageExtensions = [".pod"], languageFileNames = []}),
    ("Pod 6", Language {languageID = 155357471, languageName = "Pod 6", languageExtensions = [".pod",".pod6"], languageFileNames = []}),
    ("PogoScript", Language {languageID = 289, languageName = "PogoScript", languageExtensions = [".pogo"], languageFileNames = []}),
    ("Pony", Language {languageID = 290, languageName = "Pony", languageExtensions = [".pony"], languageFileNames = []}),
    ("PostCSS", Language {languageID = 262764437, languageName = "PostCSS", languageExtensions = [".pcss"], languageFileNames = []}),
    ("PostScript", Language {languageID = 291, languageName = "PostScript", languageExtensions = [".ps",".eps",".pfa"], languageFileNames = []}),
    ("PowerBuilder", Language {languageID = 292, languageName = "PowerBuilder", languageExtensions = [".pbt",".sra",".sru",".srw"], languageFileNames = []}),
    ("PowerShell", Language {languageID = 293, languageName = "PowerShell", languageExtensions = [".ps1",".psd1",".psm1"], languageFileNames = []}),
    ("Processing", Language {languageID = 294, languageName = "Processing", languageExtensions = [".pde"], languageFileNames = []}),
    ("Prolog", Language {languageID = 295, languageName = "Prolog", languageExtensions = [".pl",".pro",".prolog",".yap"], languageFileNames = []}),
    ("Propeller Spin", Language {languageID = 296, languageName = "Propeller Spin", languageExtensions = [".spin"], languageFileNames = []}),
    ("Protocol Buffer", Language {languageID = 297, languageName = "Protocol Buffer", languageExtensions = [".proto"], languageFileNames = []}),
    ("Public Key", Language {languageID = 298, languageName = "Public Key", languageExtensions = [".asc",".pub"], languageFileNames = []}),
    ("Pug", Language {languageID = 179, languageName = "Pug", languageExtensions = [".jade",".pug"], languageFileNames = []}),
    ("Puppet", Language {languageID = 299, languageName = "Puppet", languageExtensions = [".pp"], languageFileNames = ["Modulefile"]}),
    ("Pure Data", Language {languageID = 300, languageName = "Pure Data", languageExtensions = [".pd"], languageFileNames = []}),
    ("PureBasic", Language {languageID = 301, languageName = "PureBasic", languageExtensions = [".pb",".pbi"], languageFileNames = []}),
    ("PureScript", Language {languageID = 302, languageName = "PureScript", languageExtensions = [".purs"], languageFileNames = []}),
    ("Python", Language {languageID = 303, languageName = "Python", languageExtensions = [".py",".bzl",".cgi",".fcgi",".gyp",".gypi",".lmi",".py3",".pyde",".pyi",".pyp",".pyt",".pyw",".rpy",".spec",".tac",".wsgi",".xpy"], languageFileNames = [".gclient","BUCK","BUILD","BUILD.bazel","DEPS","SConscript","SConstruct","Snakefile","WORKSPACE","wscript"]}),
    ("Python console", Language {languageID = 428, languageName = "Python console", languageExtensions = [], languageFileNames = []}),
    ("Python traceback", Language {languageID = 304, languageName = "Python traceback", languageExtensions = [".pytb"], languageFileNames = []}),
    ("QML", Language {languageID = 305, languageName = "QML", languageExtensions = [".qml",".qbs"], languageFileNames = []}),
    ("QMake", Language {languageID = 306, languageName = "QMake", languageExtensions = [".pro",".pri"], languageFileNames = []}),
    ("Quake", Language {languageID = 375265331, languageName = "Quake", languageExtensions = [], languageFileNames = ["m3makefile","m3overrides"]}),
    ("R", Language {languageID = 307, languageName = "R", languageExtensions = [".r",".rd",".rsx"], languageFileNames = [".Rprofile","expr-dist"]}),
    ("RAML", Language {languageID = 308, languageName = "RAML", languageExtensions = [".raml"], languageFileNames = []}),
    ("RDoc", Language {languageID = 309, languageName = "RDoc", languageExtensions = [".rdoc"], languageFileNames = []}),
    ("REALbasic", Language {languageID = 310, languageName = "REALbasic", languageExtensions = [".rbbas",".rbfrm",".rbmnu",".rbres",".rbtbar",".rbuistate"], languageFileNames = []}),
    ("REXX", Language {languageID = 311, languageName = "REXX", languageExtensions = [".rexx",".pprx",".rex"], languageFileNames = []}),
    ("RHTML", Language {languageID = 312, languageName = "RHTML", languageExtensions = [".rhtml"], languageFileNames = []}),
    ("RMarkdown", Language {languageID = 313, languageName = "RMarkdown", languageExtensions = [".rmd"], languageFileNames = []}),
    ("RPC", Language {languageID = 1031374237, languageName = "RPC", languageExtensions = [".x"], languageFileNames = []}),
    ("RPM Spec", Language {languageID = 314, languageName = "RPM Spec", languageExtensions = [".spec"], languageFileNames = []}),
    ("RUNOFF", Language {languageID = 315, languageName = "RUNOFF", languageExtensions = [".rnh",".rno"], languageFileNames = []}),
    ("Racket", Language {languageID = 316, languageName = "Racket", languageExtensions = [".rkt",".rktd",".rktl",".scrbl"], languageFileNames = []}),
    ("Ragel", Language {languageID = 317, languageName = "Ragel", languageExtensions = [".rl"], languageFileNames = []}),
    ("Rascal", Language {languageID = 173616037, languageName = "Rascal", languageExtensions = [".rsc"], languageFileNames = []}),
    ("Raw token data", Language {languageID = 318, languageName = "Raw token data", languageExtensions = [".raw"], languageFileNames = []}),
    ("Reason", Language {languageID = 869538413, languageName = "Reason", languageExtensions = [".re",".rei"], languageFileNames = []}),
    ("Rebol", Language {languageID = 319, languageName = "Rebol", languageExtensions = [".reb",".r",".r2",".r3",".rebol"], languageFileNames = []}),
    ("Red", Language {languageID = 320, languageName = "Red", languageExtensions = [".red",".reds"], languageFileNames = []}),
    ("Redcode", Language {languageID = 321, languageName = "Redcode", languageExtensions = [".cw"], languageFileNames = []}),
    ("Regular Expression", Language {languageID = 363378884, languageName = "Regular Expression", languageExtensions = [".regexp",".regex"], languageFileNames = []}),
    ("Ren'Py", Language {languageID = 322, languageName = "Ren'Py", languageExtensions = [".rpy"], languageFileNames = []}),
    ("RenderScript", Language {languageID = 323, languageName = "RenderScript", languageExtensions = [".rs",".rsh"], languageFileNames = []}),
    ("Rich Text Format", Language {languageID = 51601661, languageName = "Rich Text Format", languageExtensions = [".rtf"], languageFileNames = []}),
    ("Ring", Language {languageID = 431, languageName = "Ring", languageExtensions = [".ring"], languageFileNames = []}),
    ("RobotFramework", Language {languageID = 324, languageName = "RobotFramework", languageExtensions = [".robot"], languageFileNames = []}),
    ("Roff", Language {languageID = 141, languageName = "Roff", languageExtensions = [".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"], languageFileNames = ["mmn","mmt"]}),
    ("Roff Manpage", Language {languageID = 612669833, languageName = "Roff Manpage", languageExtensions = [".1",".1in",".1m",".1x",".2",".3",".3in",".3m",".3p",".3pm",".3qt",".3x",".4",".5",".6",".7",".8",".9",".man",".mdoc"], languageFileNames = []}),
    ("Rouge", Language {languageID = 325, languageName = "Rouge", languageExtensions = [".rg"], languageFileNames = []}),
    ("Ruby", Language {languageID = 326, languageName = "Ruby", languageExtensions = [".rb",".builder",".eye",".fcgi",".gemspec",".god",".jbuilder",".mspec",".pluginspec",".podspec",".rabl",".rake",".rbuild",".rbw",".rbx",".ru",".ruby",".spec",".thor",".watchr"], languageFileNames = [".irbrc",".pryrc","Appraisals","Berksfile","Brewfile","Buildfile","Capfile","Dangerfile","Deliverfile","Fastfile","Gemfile","Gemfile.lock","Guardfile","Jarfile","Mavenfile","Podfile","Puppetfile","Rakefile","Snapfile","Thorfile","Vagrantfile","buildfile"]}),
    ("Rust", Language {languageID = 327, languageName = "Rust", languageExtensions = [".rs",".rs.in"], languageFileNames = []}),
    ("SAS", Language {languageID = 328, languageName = "SAS", languageExtensions = [".sas"], languageFileNames = []}),
    ("SCSS", Language {languageID = 329, languageName = "SCSS", languageExtensions = [".scss"], languageFileNames = []}),
    ("SMT", Language {languageID = 330, languageName = "SMT", languageExtensions = [".smt2",".smt"], languageFileNames = []}),
    ("SPARQL", Language {languageID = 331, languageName = "SPARQL", languageExtensions = [".sparql",".rq"], languageFileNames = []}),
    ("SQF", Language {languageID = 332, languageName = "SQF", languageExtensions = [".sqf",".hqf"], languageFileNames = []}),
    ("SQL", Language {languageID = 333, languageName = "SQL", languageExtensions = [".sql",".cql",".ddl",".inc",".mysql",".prc",".tab",".udf",".viw"], languageFileNames = []}),
    ("SQLPL", Language {languageID = 334, languageName = "SQLPL", languageExtensions = [".sql",".db2"], languageFileNames = []}),
    ("SRecode Template", Language {languageID = 335, languageName = "SRecode Template", languageExtensions = [".srt"], languageFileNames = []}),
    ("SSH Config", Language {languageID = 554920715, languageName = "SSH Config", languageExtensions = [], languageFileNames = ["ssh-config","ssh_config","sshconfig","sshconfig.snip","sshd-config","sshd_config"]}),
    ("STON", Language {languageID = 336, languageName = "STON", languageExtensions = [".ston"], languageFileNames = []}),
    ("SVG", Language {languageID = 337, languageName = "SVG", languageExtensions = [".svg"], languageFileNames = []}),
    ("Sage", Language {languageID = 338, languageName = "Sage", languageExtensions = [".sage",".sagews"], languageFileNames = []}),
    ("SaltStack", Language {languageID = 339, languageName = "SaltStack", languageExtensions = [".sls"], languageFileNames = []}),
    ("Sass", Language {languageID = 340, languageName = "Sass", languageExtensions = [".sass"], languageFileNames = []}),
    ("Scala", Language {languageID = 341, languageName = "Scala", languageExtensions = [".scala",".kojo",".sbt",".sc"], languageFileNames = []}),
    ("Scaml", Language {languageID = 342, languageName = "Scaml", languageExtensions = [".scaml"], languageFileNames = []}),
    ("Scheme", Language {languageID = 343, languageName = "Scheme", languageExtensions = [".scm",".sch",".sld",".sls",".sps",".ss"], languageFileNames = []}),
    ("Scilab", Language {languageID = 344, languageName = "Scilab", languageExtensions = [".sci",".sce",".tst"], languageFileNames = []}),
    ("Self", Language {languageID = 345, languageName = "Self", languageExtensions = [".self"], languageFileNames = []}),
    ("ShaderLab", Language {languageID = 664257356, languageName = "ShaderLab", languageExtensions = [".shader"], languageFileNames = []}),
    ("Shell", Language {languageID = 346, languageName = "Shell", languageExtensions = [".sh",".bash",".bats",".cgi",".command",".fcgi",".ksh",".sh.in",".tmux",".tool",".zsh"], languageFileNames = [".bash_aliases",".bash_history",".bash_logout",".bash_profile",".bashrc",".cshrc",".login",".profile",".zlogin",".zlogout",".zprofile",".zshenv",".zshrc","9fs","PKGBUILD","bash_aliases","bash_logout","bash_profile","bashrc","cshrc","gradlew","login","man","profile","zlogin","zlogout","zprofile","zshenv","zshrc"]}),
    ("ShellSession", Language {languageID = 347, languageName = "ShellSession", languageExtensions = [".sh-session"], languageFileNames = []}),
    ("Shen", Language {languageID = 348, languageName = "Shen", languageExtensions = [".shen"], languageFileNames = []}),
    ("Slash", Language {languageID = 349, languageName = "Slash", languageExtensions = [".sl"], languageFileNames = []}),
    ("Slice", Language {languageID = 894641667, languageName = "Slice", languageExtensions = [".ice"], languageFileNames = []}),
    ("Slim", Language {languageID = 350, languageName = "Slim", languageExtensions = [".slim"], languageFileNames = []}),
    ("Smali", Language {languageID = 351, languageName = "Smali", languageExtensions = [".smali"], languageFileNames = []}),
    ("Smalltalk", Language {languageID = 352, languageName = "Smalltalk", languageExtensions = [".st",".cs"], languageFileNames = []}),
    ("Smarty", Language {languageID = 353, languageName = "Smarty", languageExtensions = [".tpl"], languageFileNames = []}),
    ("Solidity", Language {languageID = 237469032, languageName = "Solidity", languageExtensions = [], languageFileNames = []}),
    ("SourcePawn", Language {languageID = 354, languageName = "SourcePawn", languageExtensions = [".sp",".inc"], languageFileNames = []}),
    ("Spline Font Database", Language {languageID = 767169629, languageName = "Spline Font Database", languageExtensions = [".sfd"], languageFileNames = []}),
    ("Squirrel", Language {languageID = 355, languageName = "Squirrel", languageExtensions = [".nut"], languageFileNames = []}),
    ("Stan", Language {languageID = 356, languageName = "Stan", languageExtensions = [".stan"], languageFileNames = []}),
    ("Standard ML", Language {languageID = 357, languageName = "Standard ML", languageExtensions = [".ML",".fun",".sig",".sml"], languageFileNames = []}),
    ("Stata", Language {languageID = 358, languageName = "Stata", languageExtensions = [".do",".ado",".doh",".ihlp",".mata",".matah",".sthlp"], languageFileNames = []}),
    ("Stylus", Language {languageID = 359, languageName = "Stylus", languageExtensions = [".styl"], languageFileNames = []}),
    ("SubRip Text", Language {languageID = 360, languageName = "SubRip Text", languageExtensions = [".srt"], languageFileNames = []}),
    ("SugarSS", Language {languageID = 826404698, languageName = "SugarSS", languageExtensions = [".sss"], languageFileNames = []}),
    ("SuperCollider", Language {languageID = 361, languageName = "SuperCollider", languageExtensions = [".sc",".scd"], languageFileNames = []}),
    ("Svelte", Language {languageID = 928734530, languageName = "Svelte", languageExtensions = [".svelte"], languageFileNames = []}),
    ("Swift", Language {languageID = 362, languageName = "Swift", languageExtensions = [".swift"], languageFileNames = []}),
    ("SystemVerilog", Language {languageID = 363, languageName = "SystemVerilog", languageExtensions = [".sv",".svh",".vh"], languageFileNames = []}),
    ("TI Program", Language {languageID = 422, languageName = "TI Program", languageExtensions = [".8xp",".8xk",".8xk.txt",".8xp.txt"], languageFileNames = []}),
    ("TLA", Language {languageID = 364, languageName = "TLA", languageExtensions = [".tla"], languageFileNames = []}),
    ("TOML", Language {languageID = 365, languageName = "TOML", languageExtensions = [".toml"], languageFileNames = ["Cargo.lock","Gopkg.lock"]}),
    ("TSQL", Language {languageID = 918334941, languageName = "TSQL", languageExtensions = [".sql"], languageFileNames = []}),
    ("TSX", Language {languageID = 94901924, languageName = "TSX", languageExtensions = [".tsx"], languageFileNames = []}),
    ("TXL", Language {languageID = 366, languageName = "TXL", languageExtensions = [".txl"], languageFileNames = []}),
    ("Tcl", Language {languageID = 367, languageName = "Tcl", languageExtensions = [".tcl",".adp",".tm"], languageFileNames = ["owh","starfield"]}),
    ("Tcsh", Language {languageID = 368, languageName = "Tcsh", languageExtensions = [".tcsh",".csh"], languageFileNames = []}),
    ("TeX", Language {languageID = 369, languageName = "TeX", languageExtensions = [".tex",".aux",".bbx",".bib",".cbx",".cls",".dtx",".ins",".lbx",".ltx",".mkii",".mkiv",".mkvi",".sty",".toc"], languageFileNames = []}),
    ("Tea", Language {languageID = 370, languageName = "Tea", languageExtensions = [".tea"], languageFileNames = []}),
    ("Terra", Language {languageID = 371, languageName = "Terra", languageExtensions = [".t"], languageFileNames = []}),
    ("Text", Language {languageID = 372, languageName = "Text", languageExtensions = [".txt",".fr",".nb",".ncl",".no"], languageFileNames = ["COPYING","COPYING.regex","COPYRIGHT.regex","FONTLOG","INSTALL","INSTALL.mysql","LICENSE","LICENSE.mysql","NEWS","README.1ST","README.me","README.mysql","click.me","delete.me","go.mod","go.sum","keep.me","read.me","readme.1st","test.me"]}),
    ("Textile", Language {languageID = 373, languageName = "Textile", languageExtensions = [".textile"], languageFileNames = []}),
    ("Thrift", Language {languageID = 374, languageName = "Thrift", languageExtensions = [".thrift"], languageFileNames = []}),
    ("Turing", Language {languageID = 375, languageName = "Turing", languageExtensions = [".t",".tu"], languageFileNames = []}),
    ("Turtle", Language {languageID = 376, languageName = "Turtle", languageExtensions = [".ttl"], languageFileNames = []}),
    ("Twig", Language {languageID = 377, languageName = "Twig", languageExtensions = [".twig"], languageFileNames = []}),
    ("Type Language", Language {languageID = 632765617, languageName = "Type Language", languageExtensions = [".tl"], languageFileNames = []}),
    ("TypeScript", Language {languageID = 378, languageName = "TypeScript", languageExtensions = [".ts"], languageFileNames = []}),
    ("Unified Parallel C", Language {languageID = 379, languageName = "Unified Parallel C", languageExtensions = [".upc"], languageFileNames = []}),
    ("Unity3D Asset", Language {languageID = 380, languageName = "Unity3D Asset", languageExtensions = [".anim",".asset",".mat",".meta",".prefab",".unity"], languageFileNames = []}),
    ("Unix Assembly", Language {languageID = 120, languageName = "Unix Assembly", languageExtensions = [".s",".ms"], languageFileNames = []}),
    ("Uno", Language {languageID = 381, languageName = "Uno", languageExtensions = [".uno"], languageFileNames = []}),
    ("UnrealScript", Language {languageID = 382, languageName = "UnrealScript", languageExtensions = [".uc"], languageFileNames = []}),
    ("UrWeb", Language {languageID = 383, languageName = "UrWeb", languageExtensions = [".ur",".urs"], languageFileNames = []}),
    ("VCL", Language {languageID = 384, languageName = "VCL", languageExtensions = [".vcl"], languageFileNames = []}),
    ("VHDL", Language {languageID = 385, languageName = "VHDL", languageExtensions = [".vhdl",".vhd",".vhf",".vhi",".vho",".vhs",".vht",".vhw"], languageFileNames = []}),
    ("Vala", Language {languageID = 386, languageName = "Vala", languageExtensions = [".vala",".vapi"], languageFileNames = []}),
    ("Verilog", Language {languageID = 387, languageName = "Verilog", languageExtensions = [".v",".veo"], languageFileNames = []}),
    ("Vim script", Language {languageID = 388, languageName = "Vim script", languageExtensions = [".vim",".vba",".vmb"], languageFileNames = [".gvimrc",".nvimrc",".vimrc","_vimrc","gvimrc","nvimrc","vimrc"]}),
    ("Visual Basic", Language {languageID = 389, languageName = "Visual Basic", languageExtensions = [".vb",".bas",".cls",".frm",".frx",".vba",".vbhtml",".vbs"], languageFileNames = []}),
    ("Volt", Language {languageID = 390, languageName = "Volt", languageExtensions = [".volt"], languageFileNames = []}),
    ("Vue", Language {languageID = 391, languageName = "Vue", languageExtensions = [".vue"], languageFileNames = []}),
    ("Wavefront Material", Language {languageID = 392, languageName = "Wavefront Material", languageExtensions = [".mtl"], languageFileNames = []}),
    ("Wavefront Object", Language {languageID = 393, languageName = "Wavefront Object", languageExtensions = [".obj"], languageFileNames = []}),
    ("Web Ontology Language", Language {languageID = 394, languageName = "Web Ontology Language", languageExtensions = [".owl"], languageFileNames = []}),
    ("WebAssembly", Language {languageID = 956556503, languageName = "WebAssembly", languageExtensions = [".wast",".wat"], languageFileNames = []}),
    ("WebIDL", Language {languageID = 395, languageName = "WebIDL", languageExtensions = [".webidl"], languageFileNames = []}),
    ("WebVTT", Language {languageID = 658679714, languageName = "WebVTT", languageExtensions = [".vtt"], languageFileNames = []}),
    ("Windows Registry Entries", Language {languageID = 969674868, languageName = "Windows Registry Entries", languageExtensions = [".reg"], languageFileNames = []}),
    ("Wollok", Language {languageID = 632745969, languageName = "Wollok", languageExtensions = [".wlk"], languageFileNames = []}),
    ("World of Warcraft Addon Data", Language {languageID = 396, languageName = "World of Warcraft Addon Data", languageExtensions = [".toc"], languageFileNames = []}),
    ("X BitMap", Language {languageID = 782911107, languageName = "X BitMap", languageExtensions = [".xbm"], languageFileNames = []}),
    ("X Font Directory Index", Language {languageID = 208700028, languageName = "X Font Directory Index", languageExtensions = [], languageFileNames = ["encodings.dir","fonts.alias","fonts.dir","fonts.scale"]}),
    ("X PixMap", Language {languageID = 781846279, languageName = "X PixMap", languageExtensions = [".xpm",".pm"], languageFileNames = []}),
    ("X10", Language {languageID = 397, languageName = "X10", languageExtensions = [".x10"], languageFileNames = []}),
    ("XC", Language {languageID = 398, languageName = "XC", languageExtensions = [".xc"], languageFileNames = []}),
    ("XCompose", Language {languageID = 225167241, languageName = "XCompose", languageExtensions = [], languageFileNames = [".XCompose","XCompose","xcompose"]}),
    ("XML", Language {languageID = 399, languageName = "XML", languageExtensions = [".xml",".adml",".admx",".ant",".axml",".builds",".ccproj",".ccxml",".clixml",".cproject",".cscfg",".csdef",".csl",".csproj",".ct",".depproj",".dita",".ditamap",".ditaval",".dll.config",".dotsettings",".filters",".fsproj",".fxml",".glade",".gml",".gmx",".grxml",".iml",".ivy",".jelly",".jsproj",".kml",".launch",".mdpolicy",".mjml",".mm",".mod",".mxml",".natvis",".ncl",".ndproj",".nproj",".nuspec",".odd",".osm",".pkgproj",".plist",".pluginspec",".proj",".props",".ps1xml",".psc1",".pt",".rdf",".resx",".rss",".sch",".scxml",".sfproj",".shproj",".srdf",".storyboard",".stTheme",".sublime-snippet",".targets",".tmCommand",".tml",".tmLanguage",".tmPreferences",".tmSnippet",".tmTheme",".ts",".tsx",".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",".xproj",".xsd",".xspec",".xul",".zcml"], languageFileNames = [".classpath",".cproject",".project","App.config","NuGet.config","Settings.StyleCop","Web.Debug.config","Web.Release.config","Web.config","packages.config"]}),
    ("XPages", Language {languageID = 400, languageName = "XPages", languageExtensions = [".xsp-config",".xsp.metadata"], languageFileNames = []}),
    ("XProc", Language {languageID = 401, languageName = "XProc", languageExtensions = [".xpl",".xproc"], languageFileNames = []}),
    ("XQuery", Language {languageID = 402, languageName = "XQuery", languageExtensions = [".xquery",".xq",".xql",".xqm",".xqy"], languageFileNames = []}),
    ("XS", Language {languageID = 403, languageName = "XS", languageExtensions = [".xs"], languageFileNames = []}),
    ("XSLT", Language {languageID = 404, languageName = "XSLT", languageExtensions = [".xslt",".xsl"], languageFileNames = []}),
    ("Xojo", Language {languageID = 405, languageName = "Xojo", languageExtensions = [".xojo_code",".xojo_menu",".xojo_report",".xojo_script",".xojo_toolbar",".xojo_window"], languageFileNames = []}),
    ("Xtend", Language {languageID = 406, languageName = "Xtend", languageExtensions = [".xtend"], languageFileNames = []}),
    ("YAML", Language {languageID = 407, languageName = "YAML", languageExtensions = [".yml",".mir",".reek",".rviz",".sublime-syntax",".syntax",".yaml",".yaml-tmlanguage",".yml.mysql"], languageFileNames = [".clang-format",".clang-tidy",".gemrc","glide.lock"]}),
    ("YANG", Language {languageID = 408, languageName = "YANG", languageExtensions = [".yang"], languageFileNames = []}),
    ("YARA", Language {languageID = 805122868, languageName = "YARA", languageExtensions = [".yar",".yara"], languageFileNames = []}),
    ("YASnippet", Language {languageID = 378760102, languageName = "YASnippet", languageExtensions = [".yasnippet"], languageFileNames = []}),
    ("Yacc", Language {languageID = 409, languageName = "Yacc", languageExtensions = [".y",".yacc",".yy"], languageFileNames = []}),
    ("ZAP", Language {languageID = 952972794, languageName = "ZAP", languageExtensions = [".zap",".xzap"], languageFileNames = []}),
    ("ZIL", Language {languageID = 973483626, languageName = "ZIL", languageExtensions = [".zil",".mud"], languageFileNames = []}),
    ("Zeek", Language {languageID = 40, languageName = "Zeek", languageExtensions = [".zeek",".bro"], languageFileNames = []}),
    ("ZenScript", Language {languageID = 494938890, languageName = "ZenScript", languageExtensions = [".zs"], languageFileNames = []}),
    ("Zephir", Language {languageID = 410, languageName = "Zephir", languageExtensions = [".zep"], languageFileNames = []}),
    ("Zig", Language {languageID = 646424281, languageName = "Zig", languageExtensions = [".zig"], languageFileNames = []}),
    ("Zimpl", Language {languageID = 411, languageName = "Zimpl", languageExtensions = [".zimpl",".zmpl",".zpl"], languageFileNames = []}),
    ("desktop", Language {languageID = 412, languageName = "desktop", languageExtensions = [".desktop",".desktop.in"], languageFileNames = []}),
    ("eC", Language {languageID = 413, languageName = "eC", languageExtensions = [".ec",".eh"], languageFileNames = []}),
    ("edn", Language {languageID = 414, languageName = "edn", languageExtensions = [".edn"], languageFileNames = []}),
    ("fish", Language {languageID = 415, languageName = "fish", languageExtensions = [".fish"], languageFileNames = []}),
    ("mcfunction", Language {languageID = 462488745, languageName = "mcfunction", languageExtensions = [".mcfunction"], languageFileNames = []}),
    ("mupad", Language {languageID = 416, languageName = "mupad", languageExtensions = [".mu"], languageFileNames = []}),
    ("nanorc", Language {languageID = 775996197, languageName = "nanorc", languageExtensions = [".nanorc"], languageFileNames = [".nanorc","nanorc"]}),
    ("nesC", Language {languageID = 417, languageName = "nesC", languageExtensions = [".nc"], languageFileNames = []}),
    ("ooc", Language {languageID = 418, languageName = "ooc", languageExtensions = [".ooc"], languageFileNames = []}),
    ("q", Language {languageID = 970539067, languageName = "q", languageExtensions = [".q"], languageFileNames = []}),
    ("reStructuredText", Language {languageID = 419, languageName = "reStructuredText", languageExtensions = [".rst",".rest",".rest.txt",".rst.txt"], languageFileNames = []}),
    ("sed", Language {languageID = 847830017, languageName = "sed", languageExtensions = [".sed"], languageFileNames = []}),
    ("wdl", Language {languageID = 374521672, languageName = "wdl", languageExtensions = [".wdl"], languageFileNames = []}),
    ("wisp", Language {languageID = 420, languageName = "wisp", languageExtensions = [".wisp"], languageFileNames = []}),
    ("xBase", Language {languageID = 421, languageName = "xBase", languageExtensions = [".prg",".ch",".prw"], languageFileNames = []})  ]

-- | Map of languages by file extension.
languagesByExtension :: Map.Map Text [LanguageKey]
languagesByExtension = Map.fromList  [
    (".1", ["Roff", "Roff Manpage"]),
    (".1in", ["Roff", "Roff Manpage"]),
    (".1m", ["Roff", "Roff Manpage"]),
    (".1x", ["Roff", "Roff Manpage"]),
    (".2", ["Roff", "Roff Manpage"]),
    (".3", ["Roff", "Roff Manpage"]),
    (".3in", ["Roff", "Roff Manpage"]),
    (".3m", ["Roff", "Roff Manpage"]),
    (".3p", ["Roff", "Roff Manpage"]),
    (".3pm", ["Roff", "Roff Manpage"]),
    (".3qt", ["Roff", "Roff Manpage"]),
    (".3x", ["Roff", "Roff Manpage"]),
    (".4", ["Roff", "Roff Manpage"]),
    (".4th", ["Forth"]),
    (".5", ["Roff", "Roff Manpage"]),
    (".6", ["Roff", "Roff Manpage"]),
    (".6pl", ["Perl 6"]),
    (".6pm", ["Perl 6"]),
    (".7", ["Roff", "Roff Manpage"]),
    (".8", ["Roff", "Roff Manpage"]),
    (".8xk", ["TI Program"]),
    (".8xk.txt", ["TI Program"]),
    (".8xp", ["TI Program"]),
    (".8xp.txt", ["TI Program"]),
    (".9", ["Roff", "Roff Manpage"]),
    (".E", ["E"]),
    (".JSON-tmLanguage", ["JSON"]),
    (".ML", ["Standard ML"]),
    (".OutJob", ["Altium Designer"]),
    (".PcbDoc", ["Altium Designer"]),
    (".PrjPCB", ["Altium Designer"]),
    (".SchDoc", ["Altium Designer"]),
    (".X68", ["Motorola 68K Assembly"]),
    ("._coffee", ["CoffeeScript"]),
    ("._js", ["JavaScript"]),
    ("._ls", ["LiveScript"]),
    (".a51", ["Assembly"]),
    (".abap", ["ABAP"]),
    (".abnf", ["ABNF"]),
    (".ada", ["Ada"]),
    (".adb", ["Ada"]),
    (".adml", ["XML"]),
    (".admx", ["XML"]),
    (".ado", ["Stata"]),
    (".adoc", ["AsciiDoc"]),
    (".adp", ["Tcl"]),
    (".ads", ["Ada"]),
    (".afm", ["Adobe Font Metrics"]),
    (".agc", ["Apollo Guidance Computer"]),
    (".agda", ["Agda"]),
    (".ahk", ["AutoHotkey"]),
    (".ahkl", ["AutoHotkey"]),
    (".aj", ["AspectJ"]),
    (".al", ["Perl"]),
    (".als", ["Alloy"]),
    (".ampl", ["AMPL"]),
    (".angelscript", ["AngelScript"]),
    (".anim", ["Unity3D Asset"]),
    (".ant", ["XML"]),
    (".apacheconf", ["ApacheConf"]),
    (".apib", ["API Blueprint"]),
    (".apl", ["APL"]),
    (".app.src", ["Erlang"]),
    (".applescript", ["AppleScript"]),
    (".arc", ["Arc"]),
    (".arpa", ["DNS Zone"]),
    (".as", ["ActionScript", "AngelScript"]),
    (".asax", ["ASP"]),
    (".asc", ["AGS Script", "AsciiDoc", "Public Key"]),
    (".asciidoc", ["AsciiDoc"]),
    (".ascx", ["ASP"]),
    (".asd", ["Common Lisp"]),
    (".ash", ["AGS Script"]),
    (".ashx", ["ASP"]),
    (".asm", ["Assembly"]),
    (".asmx", ["ASP"]),
    (".asn", ["ASN.1"]),
    (".asn1", ["ASN.1"]),
    (".asp", ["ASP"]),
    (".aspx", ["ASP"]),
    (".asset", ["Unity3D Asset"]),
    (".asy", ["Asymptote", "LTspice Symbol"]),
    (".au3", ["AutoIt"]),
    (".aug", ["Augeas"]),
    (".auk", ["Awk"]),
    (".aux", ["TeX"]),
    (".avsc", ["JSON"]),
    (".aw", ["PHP"]),
    (".awk", ["Awk"]),
    (".axd", ["ASP"]),
    (".axi", ["NetLinx"]),
    (".axi.erb", ["NetLinx+ERB"]),
    (".axml", ["XML"]),
    (".axs", ["NetLinx"]),
    (".axs.erb", ["NetLinx+ERB"]),
    (".b", ["Brainfuck", "Limbo"]),
    (".bal", ["Ballerina"]),
    (".bas", ["Visual Basic"]),
    (".bash", ["Shell"]),
    (".bat", ["Batchfile"]),
    (".bats", ["Shell"]),
    (".bb", ["BitBake", "BlitzBasic"]),
    (".bbx", ["TeX"]),
    (".bdf", ["Glyph Bitmap Distribution Format"]),
    (".bdy", ["PLSQL"]),
    (".befunge", ["Befunge"]),
    (".bf", ["Brainfuck", "HyPhy"]),
    (".bib", ["TeX"]),
    (".bison", ["Bison"]),
    (".blade", ["Blade"]),
    (".blade.php", ["Blade"]),
    (".bmx", ["BlitzMax"]),
    (".bones", ["JavaScript"]),
    (".boo", ["Boo"]),
    (".boot", ["Clojure"]),
    (".brd", ["Eagle", "KiCad Legacy Layout"]),
    (".bro", ["Zeek"]),
    (".brs", ["Brightscript"]),
    (".bsl", ["1C Enterprise"]),
    (".bsv", ["Bluespec"]),
    (".builder", ["Ruby"]),
    (".builds", ["XML"]),
    (".bzl", ["Python"]),
    (".c", ["C"]),
    (".c++", ["C++"]),
    (".c++-objdump", ["Cpp-ObjDump"]),
    (".c++objdump", ["Cpp-ObjDump"]),
    (".c-objdump", ["C-ObjDump"]),
    (".cabal", ["Cabal Config"]),
    (".cake", ["C#", "CoffeeScript"]),
    (".capnp", ["Cap'n Proto"]),
    (".cats", ["C"]),
    (".cbl", ["COBOL"]),
    (".cbx", ["TeX"]),
    (".cc", ["C++"]),
    (".ccp", ["COBOL"]),
    (".ccproj", ["XML"]),
    (".ccxml", ["XML"]),
    (".cdf", ["Mathematica"]),
    (".ceylon", ["Ceylon"]),
    (".cfc", ["ColdFusion CFC"]),
    (".cfg", ["HAProxy", "INI"]),
    (".cfm", ["ColdFusion"]),
    (".cfml", ["ColdFusion"]),
    (".cgi", ["Perl", "Python", "Shell"]),
    (".cginc", ["HLSL"]),
    (".ch", ["Charity", "xBase"]),
    (".chem", ["Pic"]),
    (".chpl", ["Chapel"]),
    (".chs", ["C2hs Haskell"]),
    (".cirru", ["Cirru"]),
    (".cjsx", ["CoffeeScript"]),
    (".ck", ["ChucK"]),
    (".cl", ["Common Lisp", "Cool", "OpenCL"]),
    (".cl2", ["Clojure"]),
    (".click", ["Click"]),
    (".clixml", ["XML"]),
    (".clj", ["Clojure"]),
    (".cljc", ["Clojure"]),
    (".cljs", ["Clojure"]),
    (".cljs.hl", ["Clojure"]),
    (".cljscm", ["Clojure"]),
    (".cljx", ["Clojure"]),
    (".clp", ["CLIPS"]),
    (".cls", ["Apex", "ObjectScript", "OpenEdge ABL", "TeX", "Visual Basic"]),
    (".clw", ["Clarion"]),
    (".cmake", ["CMake"]),
    (".cmake.in", ["CMake"]),
    (".cmd", ["Batchfile"]),
    (".cnc", ["G-code"]),
    (".cob", ["COBOL"]),
    (".cobol", ["COBOL"]),
    (".coffee", ["CoffeeScript"]),
    (".com", ["DIGITAL Command Language"]),
    (".command", ["Shell"]),
    (".conll", ["CoNLL-U"]),
    (".conllu", ["CoNLL-U"]),
    (".coq", ["Coq"]),
    (".cp", ["C++", "Component Pascal"]),
    (".cpp", ["C++"]),
    (".cpp-objdump", ["Cpp-ObjDump"]),
    (".cppobjdump", ["Cpp-ObjDump"]),
    (".cproject", ["XML"]),
    (".cps", ["Component Pascal"]),
    (".cpy", ["COBOL"]),
    (".cql", ["SQL"]),
    (".cr", ["Crystal"]),
    (".creole", ["Creole"]),
    (".cs", ["C#", "Smalltalk"]),
    (".cscfg", ["XML"]),
    (".csd", ["Csound Document"]),
    (".csdef", ["XML"]),
    (".csh", ["Tcsh"]),
    (".cshtml", ["HTML+Razor"]),
    (".csl", ["XML"]),
    (".cson", ["CSON"]),
    (".csproj", ["XML"]),
    (".css", ["CSS"]),
    (".csv", ["CSV"]),
    (".csx", ["C#"]),
    (".ct", ["XML"]),
    (".ctp", ["PHP"]),
    (".cu", ["Cuda"]),
    (".cuh", ["Cuda"]),
    (".cw", ["Redcode"]),
    (".cwl", ["Common Workflow Language"]),
    (".cxx", ["C++"]),
    (".cxx-objdump", ["Cpp-ObjDump"]),
    (".cy", ["Cycript"]),
    (".d", ["D", "DTrace", "Makefile"]),
    (".d-objdump", ["D-ObjDump"]),
    (".dae", ["COLLADA"]),
    (".darcspatch", ["Darcs Patch"]),
    (".dart", ["Dart"]),
    (".dats", ["ATS"]),
    (".db2", ["SQLPL"]),
    (".dcl", ["Clean"]),
    (".ddl", ["PLSQL", "SQL"]),
    (".decls", ["BlitzBasic"]),
    (".depproj", ["XML"]),
    (".desktop", ["desktop"]),
    (".desktop.in", ["desktop"]),
    (".dfm", ["Pascal"]),
    (".dhall", ["Dhall"]),
    (".di", ["D"]),
    (".diff", ["Diff"]),
    (".dita", ["XML"]),
    (".ditamap", ["XML"]),
    (".ditaval", ["XML"]),
    (".djs", ["Dogescript"]),
    (".dll.config", ["XML"]),
    (".dlm", ["IDL"]),
    (".dm", ["DM"]),
    (".do", ["Stata"]),
    (".dockerfile", ["Dockerfile"]),
    (".doh", ["Stata"]),
    (".dot", ["Graphviz (DOT)"]),
    (".dotsettings", ["XML"]),
    (".dpatch", ["Darcs Patch"]),
    (".dpr", ["Pascal"]),
    (".druby", ["Mirah"]),
    (".dtx", ["TeX"]),
    (".duby", ["Mirah"]),
    (".dwl", ["DataWeave"]),
    (".dyalog", ["APL"]),
    (".dyl", ["Dylan"]),
    (".dylan", ["Dylan"]),
    (".e", ["Eiffel"]),
    (".eam.fs", ["Formatted"]),
    (".eb", ["Easybuild"]),
    (".ebnf", ["EBNF"]),
    (".ebuild", ["Gentoo Ebuild"]),
    (".ec", ["eC"]),
    (".ecl", ["ECL", "ECLiPSe"]),
    (".eclass", ["Gentoo Eclass"]),
    (".eclxml", ["ECL"]),
    (".ecr", ["HTML+ECR"]),
    (".edc", ["Edje Data Collection"]),
    (".edn", ["edn"]),
    (".eex", ["HTML+EEX"]),
    (".eh", ["eC"]),
    (".ejs", ["EJS"]),
    (".el", ["Emacs Lisp"]),
    (".eliom", ["OCaml"]),
    (".eliomi", ["OCaml"]),
    (".elm", ["Elm"]),
    (".em", ["EmberScript"]),
    (".emacs", ["Emacs Lisp"]),
    (".emacs.desktop", ["Emacs Lisp"]),
    (".emberscript", ["EmberScript"]),
    (".eml", ["EML"]),
    (".epj", ["Ecere Projects"]),
    (".eps", ["PostScript"]),
    (".eq", ["EQ"]),
    (".erb", ["HTML+ERB"]),
    (".erb.deface", ["HTML+ERB"]),
    (".erl", ["Erlang"]),
    (".es", ["Erlang", "JavaScript"]),
    (".es6", ["JavaScript"]),
    (".escript", ["Erlang"]),
    (".ex", ["Elixir"]),
    (".exs", ["Elixir"]),
    (".eye", ["Ruby"]),
    (".f", ["Filebench WML", "Forth", "Fortran"]),
    (".f03", ["Fortran"]),
    (".f08", ["Fortran"]),
    (".f77", ["Fortran"]),
    (".f90", ["Fortran"]),
    (".f95", ["Fortran"]),
    (".factor", ["Factor"]),
    (".fan", ["Fantom"]),
    (".fancypack", ["Fancy"]),
    (".fcgi", ["Lua", "PHP", "Perl", "Python", "Ruby", "Shell"]),
    (".fea", ["OpenType Feature File"]),
    (".feature", ["Gherkin"]),
    (".filters", ["XML"]),
    (".fish", ["fish"]),
    (".flex", ["JFlex"]),
    (".flf", ["FIGlet Font"]),
    (".flux", ["FLUX"]),
    (".fnc", ["PLSQL"]),
    (".for", ["Formatted", "Forth", "Fortran"]),
    (".forth", ["Forth"]),
    (".fp", ["GLSL"]),
    (".fpp", ["Fortran"]),
    (".fr", ["Forth", "Frege", "Text"]),
    (".frag", ["GLSL", "JavaScript"]),
    (".frg", ["GLSL"]),
    (".frm", ["Visual Basic"]),
    (".frt", ["Forth"]),
    (".frx", ["Visual Basic"]),
    (".fs", ["F#", "Filterscript", "Forth", "GLSL"]),
    (".fsh", ["GLSL"]),
    (".fshader", ["GLSL"]),
    (".fsi", ["F#"]),
    (".fsproj", ["XML"]),
    (".fst", ["F*"]),
    (".fsx", ["F#"]),
    (".fth", ["Forth"]),
    (".ftl", ["FreeMarker"]),
    (".fun", ["Standard ML"]),
    (".fx", ["FLUX", "HLSL"]),
    (".fxh", ["HLSL"]),
    (".fxml", ["XML"]),
    (".fy", ["Fancy"]),
    (".g", ["G-code", "GAP"]),
    (".g4", ["ANTLR"]),
    (".gap", ["GAP"]),
    (".gawk", ["Awk"]),
    (".gbl", ["Gerber Image"]),
    (".gbo", ["Gerber Image"]),
    (".gbp", ["Gerber Image"]),
    (".gbr", ["Gerber Image"]),
    (".gbs", ["Gerber Image"]),
    (".gco", ["G-code"]),
    (".gcode", ["G-code"]),
    (".gd", ["GAP", "GDScript"]),
    (".gdb", ["GDB"]),
    (".gdbinit", ["GDB"]),
    (".gemspec", ["Ruby"]),
    (".geo", ["GLSL"]),
    (".geojson", ["JSON"]),
    (".geom", ["GLSL"]),
    (".gf", ["Grammatical Framework"]),
    (".gi", ["GAP"]),
    (".gitconfig", ["Git Config"]),
    (".gitignore", ["Ignore List"]),
    (".gko", ["Gerber Image"]),
    (".glade", ["XML"]),
    (".glf", ["Glyph"]),
    (".glsl", ["GLSL"]),
    (".glslv", ["GLSL"]),
    (".gltf", ["JSON"]),
    (".gml", ["Game Maker Language", "Gerber Image", "Graph Modeling Language", "XML"]),
    (".gms", ["GAMS"]),
    (".gmx", ["XML"]),
    (".gn", ["GN"]),
    (".gni", ["GN"]),
    (".gnu", ["Gnuplot"]),
    (".gnuplot", ["Gnuplot"]),
    (".go", ["Go"]),
    (".god", ["Ruby"]),
    (".golo", ["Golo"]),
    (".gp", ["Gnuplot"]),
    (".gpb", ["Gerber Image"]),
    (".gpt", ["Gerber Image"]),
    (".gql", ["GraphQL"]),
    (".grace", ["Grace"]),
    (".gradle", ["Gradle"]),
    (".graphql", ["GraphQL"]),
    (".graphqls", ["GraphQL"]),
    (".groovy", ["Groovy"]),
    (".grt", ["Groovy"]),
    (".grxml", ["XML"]),
    (".gs", ["Genie", "Gosu", "JavaScript"]),
    (".gshader", ["GLSL"]),
    (".gsp", ["Groovy Server Pages"]),
    (".gst", ["Gosu"]),
    (".gsx", ["Gosu"]),
    (".gtl", ["Gerber Image"]),
    (".gto", ["Gerber Image"]),
    (".gtp", ["Gerber Image"]),
    (".gtpl", ["Groovy"]),
    (".gts", ["Gerber Image"]),
    (".gv", ["Graphviz (DOT)"]),
    (".gvy", ["Groovy"]),
    (".gyp", ["Python"]),
    (".gypi", ["Python"]),
    (".h", ["C", "C++", "Objective-C"]),
    (".h++", ["C++"]),
    (".haml", ["Haml"]),
    (".haml.deface", ["Haml"]),
    (".handlebars", ["Handlebars"]),
    (".har", ["JSON"]),
    (".hats", ["ATS"]),
    (".hb", ["Harbour"]),
    (".hbs", ["Handlebars"]),
    (".hc", ["HolyC"]),
    (".hcl", ["HCL"]),
    (".hh", ["C++", "Hack"]),
    (".hic", ["Clojure"]),
    (".hlean", ["Lean"]),
    (".hlsl", ["HLSL"]),
    (".hlsli", ["HLSL"]),
    (".hpp", ["C++"]),
    (".hqf", ["SQF"]),
    (".hrl", ["Erlang"]),
    (".hs", ["Haskell"]),
    (".hsc", ["Haskell"]),
    (".htm", ["HTML"]),
    (".html", ["HTML"]),
    (".html.hl", ["HTML"]),
    (".http", ["HTTP"]),
    (".hx", ["Haxe"]),
    (".hxml", ["HXML"]),
    (".hxsl", ["Haxe"]),
    (".hxx", ["C++"]),
    (".hy", ["Hy"]),
    (".i3", ["Modula-3"]),
    (".i7x", ["Inform 7"]),
    (".ice", ["JSON", "Slice"]),
    (".iced", ["CoffeeScript"]),
    (".icl", ["Clean"]),
    (".idc", ["C"]),
    (".idr", ["Idris"]),
    (".ig", ["Modula-3"]),
    (".ihlp", ["Stata"]),
    (".ijs", ["J"]),
    (".ik", ["Ioke"]),
    (".ily", ["LilyPond"]),
    (".iml", ["XML"]),
    (".inc", ["Assembly", "C++", "HTML", "PHP", "POV-Ray SDL", "Pascal", "Pawn", "SQL", "SourcePawn"]),
    (".ini", ["INI"]),
    (".inl", ["C++"]),
    (".ino", ["C++"]),
    (".ins", ["TeX"]),
    (".intr", ["Dylan"]),
    (".io", ["Io"]),
    (".iol", ["Jolie"]),
    (".ipf", ["IGOR Pro"]),
    (".ipp", ["C++"]),
    (".ipynb", ["Jupyter Notebook"]),
    (".irclog", ["IRC log"]),
    (".iss", ["Inno Setup"]),
    (".ivy", ["XML"]),
    (".j", ["Jasmin", "Objective-J"]),
    (".jade", ["Pug"]),
    (".jake", ["JavaScript"]),
    (".java", ["Java"]),
    (".jbuilder", ["Ruby"]),
    (".jelly", ["XML"]),
    (".jflex", ["JFlex"]),
    (".jinja", ["HTML+Django"]),
    (".jinja2", ["HTML+Django"]),
    (".jison", ["Jison"]),
    (".jisonlex", ["Jison Lex"]),
    (".jl", ["Julia"]),
    (".jq", ["JSONiq"]),
    (".js", ["JavaScript"]),
    (".js.erb", ["JavaScript+ERB"]),
    (".jsb", ["JavaScript"]),
    (".jscad", ["JavaScript"]),
    (".jsfl", ["JavaScript"]),
    (".jsm", ["JavaScript"]),
    (".json", ["JSON"]),
    (".json5", ["JSON5"]),
    (".jsonl", ["JSON"]),
    (".jsonld", ["JSONLD"]),
    (".jsonnet", ["Jsonnet"]),
    (".jsp", ["Java Server Pages"]),
    (".jsproj", ["XML"]),
    (".jss", ["JavaScript"]),
    (".jsx", ["JSX"]),
    (".kicad_mod", ["KiCad Layout"]),
    (".kicad_pcb", ["KiCad Layout"]),
    (".kicad_wks", ["KiCad Layout"]),
    (".kid", ["Genshi"]),
    (".kit", ["Kit"]),
    (".kml", ["XML"]),
    (".kojo", ["Scala"]),
    (".krl", ["KRL"]),
    (".ksh", ["Shell"]),
    (".kt", ["Kotlin"]),
    (".ktm", ["Kotlin"]),
    (".kts", ["Kotlin"]),
    (".l", ["Common Lisp", "Lex", "PicoLisp", "Roff"]),
    (".lagda", ["Literate Agda"]),
    (".las", ["Lasso"]),
    (".lasso", ["Lasso"]),
    (".lasso8", ["Lasso"]),
    (".lasso9", ["Lasso"]),
    (".latte", ["Latte"]),
    (".launch", ["XML"]),
    (".lbx", ["TeX"]),
    (".ld", ["Linker Script"]),
    (".ldml", ["Lasso"]),
    (".lds", ["Linker Script"]),
    (".lean", ["Lean"]),
    (".lektorproject", ["INI"]),
    (".less", ["Less"]),
    (".lex", ["Lex"]),
    (".lfe", ["LFE"]),
    (".lgt", ["Logtalk"]),
    (".lhs", ["Literate Haskell"]),
    (".libsonnet", ["Jsonnet"]),
    (".lid", ["Dylan"]),
    (".lidr", ["Idris"]),
    (".liquid", ["Liquid"]),
    (".lisp", ["Common Lisp", "NewLisp"]),
    (".litcoffee", ["Literate CoffeeScript"]),
    (".ll", ["LLVM"]),
    (".lmi", ["Python"]),
    (".logtalk", ["Logtalk"]),
    (".lol", ["LOLCODE"]),
    (".lookml", ["LookML"]),
    (".lpr", ["Pascal"]),
    (".ls", ["LiveScript", "LoomScript"]),
    (".lsl", ["LSL"]),
    (".lslp", ["LSL"]),
    (".lsp", ["Common Lisp", "NewLisp"]),
    (".ltx", ["TeX"]),
    (".lua", ["Lua"]),
    (".lvproj", ["LabVIEW"]),
    (".ly", ["LilyPond"]),
    (".m", ["Limbo", "M", "MATLAB", "MUF", "Mathematica", "Mercury", "Objective-C"]),
    (".m3", ["Modula-3"]),
    (".m4", ["M4", "M4Sugar"]),
    (".ma", ["Mathematica"]),
    (".mak", ["Makefile"]),
    (".make", ["Makefile"]),
    (".mako", ["Mako"]),
    (".man", ["Roff", "Roff Manpage"]),
    (".mao", ["Mako"]),
    (".markdown", ["Markdown"]),
    (".marko", ["Marko"]),
    (".mask", ["Mask"]),
    (".mat", ["Unity3D Asset"]),
    (".mata", ["Stata"]),
    (".matah", ["Stata"]),
    (".mathematica", ["Mathematica"]),
    (".matlab", ["MATLAB"]),
    (".mawk", ["Awk"]),
    (".maxhelp", ["Max"]),
    (".maxpat", ["Max"]),
    (".maxproj", ["Max"]),
    (".mbox", ["EML"]),
    (".mcfunction", ["mcfunction"]),
    (".mcmeta", ["JSON"]),
    (".mcr", ["MAXScript"]),
    (".md", ["GCC Machine Description", "Markdown"]),
    (".mdoc", ["Roff", "Roff Manpage"]),
    (".mdown", ["Markdown"]),
    (".mdpolicy", ["XML"]),
    (".mdwn", ["Markdown"]),
    (".mdx", ["Markdown"]),
    (".me", ["Roff"]),
    (".mediawiki", ["MediaWiki"]),
    (".meta", ["Unity3D Asset"]),
    (".metal", ["Metal"]),
    (".mg", ["Modula-3"]),
    (".minid", ["MiniD"]),
    (".mir", ["YAML"]),
    (".mirah", ["Mirah"]),
    (".mjml", ["XML"]),
    (".mjs", ["JavaScript"]),
    (".mk", ["Makefile"]),
    (".mkd", ["Markdown"]),
    (".mkdn", ["Markdown"]),
    (".mkdown", ["Markdown"]),
    (".mkfile", ["Makefile"]),
    (".mkii", ["TeX"]),
    (".mkiv", ["TeX"]),
    (".mkvi", ["TeX"]),
    (".ml", ["OCaml"]),
    (".ml4", ["OCaml"]),
    (".mli", ["OCaml"]),
    (".mll", ["OCaml"]),
    (".mly", ["OCaml"]),
    (".mm", ["Objective-C++", "XML"]),
    (".mmk", ["Module Management System"]),
    (".mms", ["Module Management System"]),
    (".mo", ["Modelica"]),
    (".mod", ["AMPL", "Linux Kernel Module", "Modula-2", "XML"]),
    (".model.lkml", ["LookML"]),
    (".monkey", ["Monkey"]),
    (".monkey2", ["Monkey"]),
    (".moo", ["Mercury", "Moocode"]),
    (".moon", ["MoonScript"]),
    (".mq4", ["MQL4"]),
    (".mq5", ["MQL5"]),
    (".mqh", ["MQL4", "MQL5"]),
    (".ms", ["MAXScript", "Roff", "Unix Assembly"]),
    (".mspec", ["Ruby"]),
    (".mss", ["CartoCSS"]),
    (".mt", ["Mathematica"]),
    (".mtl", ["Wavefront Material"]),
    (".mtml", ["MTML"]),
    (".mu", ["mupad"]),
    (".mud", ["ZIL"]),
    (".muf", ["MUF"]),
    (".mumps", ["M"]),
    (".mustache", ["HTML+Django"]),
    (".mxml", ["XML"]),
    (".mxt", ["Max"]),
    (".mysql", ["SQL"]),
    (".myt", ["Myghty"]),
    (".n", ["Nemerle", "Roff"]),
    (".nanorc", ["nanorc"]),
    (".nasm", ["Assembly"]),
    (".natvis", ["XML"]),
    (".nawk", ["Awk"]),
    (".nb", ["Mathematica", "Text"]),
    (".nbp", ["Mathematica"]),
    (".nc", ["nesC"]),
    (".ncl", ["NCL", "Text", "XML"]),
    (".ndproj", ["XML"]),
    (".ne", ["Nearley"]),
    (".nearley", ["Nearley"]),
    (".nf", ["Nextflow"]),
    (".nginxconf", ["Nginx"]),
    (".ni", ["Inform 7"]),
    (".nim", ["Nim"]),
    (".nim.cfg", ["Nim"]),
    (".nimble", ["Nim"]),
    (".nimrod", ["Nim"]),
    (".nims", ["Nim"]),
    (".ninja", ["Ninja"]),
    (".nit", ["Nit"]),
    (".nix", ["Nix"]),
    (".njk", ["HTML+Django"]),
    (".njs", ["JavaScript"]),
    (".nl", ["NL", "NewLisp"]),
    (".nlogo", ["NetLogo"]),
    (".no", ["Text"]),
    (".nproj", ["XML"]),
    (".nqp", ["Perl 6"]),
    (".nr", ["Roff"]),
    (".nse", ["Lua"]),
    (".nsh", ["NSIS"]),
    (".nsi", ["NSIS"]),
    (".nu", ["Nu"]),
    (".numpy", ["NumPy"]),
    (".numpyw", ["NumPy"]),
    (".numsc", ["NumPy"]),
    (".nuspec", ["XML"]),
    (".nut", ["Squirrel"]),
    (".ny", ["Common Lisp"]),
    (".obj", ["Wavefront Object"]),
    (".objdump", ["ObjDump"]),
    (".odd", ["XML"]),
    (".ol", ["Jolie"]),
    (".omgrofl", ["Omgrofl"]),
    (".ooc", ["ooc"]),
    (".opa", ["Opa"]),
    (".opal", ["Opal"]),
    (".opencl", ["OpenCL"]),
    (".orc", ["Csound"]),
    (".org", ["Org"]),
    (".os", ["1C Enterprise"]),
    (".osm", ["XML"]),
    (".owl", ["Web Ontology Language"]),
    (".ox", ["Ox"]),
    (".oxh", ["Ox"]),
    (".oxo", ["Ox"]),
    (".oxygene", ["Oxygene"]),
    (".oz", ["Oz"]),
    (".p", ["OpenEdge ABL"]),
    (".p4", ["P4"]),
    (".p6", ["Perl 6"]),
    (".p6l", ["Perl 6"]),
    (".p6m", ["Perl 6"]),
    (".p8", ["Lua"]),
    (".pac", ["JavaScript"]),
    (".pan", ["Pan"]),
    (".parrot", ["Parrot"]),
    (".pas", ["Pascal"]),
    (".pascal", ["Pascal"]),
    (".pasm", ["Parrot Assembly"]),
    (".pat", ["Max"]),
    (".patch", ["Diff"]),
    (".pb", ["PureBasic"]),
    (".pbi", ["PureBasic"]),
    (".pbt", ["PowerBuilder"]),
    (".pck", ["PLSQL"]),
    (".pcss", ["PostCSS"]),
    (".pd", ["Pure Data"]),
    (".pd_lua", ["Lua"]),
    (".pde", ["Processing"]),
    (".pep", ["Pep8"]),
    (".perl", ["Perl"]),
    (".pfa", ["PostScript"]),
    (".pgsql", ["PLpgSQL"]),
    (".ph", ["Perl"]),
    (".php", ["Hack", "PHP"]),
    (".php3", ["PHP"]),
    (".php4", ["PHP"]),
    (".php5", ["PHP"]),
    (".phps", ["PHP"]),
    (".phpt", ["PHP"]),
    (".phtml", ["HTML+PHP"]),
    (".pic", ["Pic"]),
    (".pig", ["PigLatin"]),
    (".pike", ["Pike"]),
    (".pir", ["Parrot Internal Representation"]),
    (".pkb", ["PLSQL"]),
    (".pkgproj", ["XML"]),
    (".pkl", ["Pickle"]),
    (".pks", ["PLSQL"]),
    (".pl", ["Perl", "Perl 6", "Prolog"]),
    (".pl6", ["Perl 6"]),
    (".plb", ["PLSQL"]),
    (".plist", ["XML"]),
    (".plot", ["Gnuplot"]),
    (".pls", ["PLSQL"]),
    (".plsql", ["PLSQL"]),
    (".plt", ["Gnuplot"]),
    (".pluginspec", ["Ruby", "XML"]),
    (".plx", ["Perl"]),
    (".pm", ["Perl", "Perl 6", "X PixMap"]),
    (".pm6", ["Perl 6"]),
    (".pmod", ["Pike"]),
    (".po", ["Gettext Catalog"]),
    (".pod", ["Pod", "Pod 6"]),
    (".pod6", ["Pod 6"]),
    (".podsl", ["Common Lisp"]),
    (".podspec", ["Ruby"]),
    (".pogo", ["PogoScript"]),
    (".pony", ["Pony"]),
    (".pot", ["Gettext Catalog"]),
    (".pov", ["POV-Ray SDL"]),
    (".pp", ["Pascal", "Puppet"]),
    (".pprx", ["REXX"]),
    (".prc", ["PLSQL", "SQL"]),
    (".prefab", ["Unity3D Asset"]),
    (".prefs", ["INI"]),
    (".prg", ["xBase"]),
    (".pri", ["QMake"]),
    (".pro", ["IDL", "INI", "Prolog", "QMake"]),
    (".proj", ["XML"]),
    (".prolog", ["Prolog"]),
    (".properties", ["INI", "Java Properties"]),
    (".props", ["XML"]),
    (".proto", ["Protocol Buffer"]),
    (".prw", ["xBase"]),
    (".ps", ["PostScript"]),
    (".ps1", ["PowerShell"]),
    (".ps1xml", ["XML"]),
    (".psc", ["Papyrus"]),
    (".psc1", ["XML"]),
    (".psd1", ["PowerShell"]),
    (".psgi", ["Perl"]),
    (".psm1", ["PowerShell"]),
    (".pt", ["XML"]),
    (".pub", ["Public Key"]),
    (".pug", ["Pug"]),
    (".purs", ["PureScript"]),
    (".pwn", ["Pawn"]),
    (".pxd", ["Cython"]),
    (".pxi", ["Cython"]),
    (".py", ["Python"]),
    (".py3", ["Python"]),
    (".pyde", ["Python"]),
    (".pyi", ["Python"]),
    (".pyp", ["Python"]),
    (".pyt", ["Python"]),
    (".pytb", ["Python traceback"]),
    (".pyw", ["Python"]),
    (".pyx", ["Cython"]),
    (".q", ["HiveQL", "q"]),
    (".qbs", ["QML"]),
    (".qml", ["QML"]),
    (".r", ["R", "Rebol"]),
    (".r2", ["Rebol"]),
    (".r3", ["Rebol"]),
    (".rabl", ["Ruby"]),
    (".rake", ["Ruby"]),
    (".raml", ["RAML"]),
    (".raw", ["Raw token data"]),
    (".razor", ["HTML+Razor"]),
    (".rb", ["Ruby"]),
    (".rbbas", ["REALbasic"]),
    (".rbfrm", ["REALbasic"]),
    (".rbmnu", ["REALbasic"]),
    (".rbres", ["REALbasic"]),
    (".rbtbar", ["REALbasic"]),
    (".rbuild", ["Ruby"]),
    (".rbuistate", ["REALbasic"]),
    (".rbw", ["Ruby"]),
    (".rbx", ["Ruby"]),
    (".rbxs", ["Lua"]),
    (".rd", ["R"]),
    (".rdf", ["XML"]),
    (".rdoc", ["RDoc"]),
    (".re", ["C++", "Reason"]),
    (".reb", ["Rebol"]),
    (".rebol", ["Rebol"]),
    (".red", ["Red"]),
    (".reds", ["Red"]),
    (".reek", ["YAML"]),
    (".reg", ["Windows Registry Entries"]),
    (".regex", ["Regular Expression"]),
    (".regexp", ["Regular Expression"]),
    (".rei", ["Reason"]),
    (".rest", ["reStructuredText"]),
    (".rest.txt", ["reStructuredText"]),
    (".resx", ["XML"]),
    (".rex", ["REXX"]),
    (".rexx", ["REXX"]),
    (".rg", ["Rouge"]),
    (".rhtml", ["RHTML"]),
    (".ring", ["Ring"]),
    (".rkt", ["Racket"]),
    (".rktd", ["Racket"]),
    (".rktl", ["Racket"]),
    (".rl", ["Ragel"]),
    (".rmd", ["RMarkdown"]),
    (".rnh", ["RUNOFF"]),
    (".rno", ["RUNOFF", "Roff"]),
    (".robot", ["RobotFramework"]),
    (".roff", ["Roff"]),
    (".ronn", ["Markdown"]),
    (".rpy", ["Python", "Ren'Py"]),
    (".rq", ["SPARQL"]),
    (".rs", ["RenderScript", "Rust"]),
    (".rs.in", ["Rust"]),
    (".rsc", ["Rascal"]),
    (".rsh", ["RenderScript"]),
    (".rss", ["XML"]),
    (".rst", ["reStructuredText"]),
    (".rst.txt", ["reStructuredText"]),
    (".rsx", ["R"]),
    (".rtf", ["Rich Text Format"]),
    (".ru", ["Ruby"]),
    (".ruby", ["Ruby"]),
    (".rviz", ["YAML"]),
    (".s", ["Unix Assembly"]),
    (".sage", ["Sage"]),
    (".sagews", ["Sage"]),
    (".sas", ["SAS"]),
    (".sass", ["Sass"]),
    (".sats", ["ATS"]),
    (".sbt", ["Scala"]),
    (".sc", ["Scala", "SuperCollider"]),
    (".scad", ["OpenSCAD"]),
    (".scala", ["Scala"]),
    (".scaml", ["Scaml"]),
    (".scd", ["SuperCollider"]),
    (".sce", ["Scilab"]),
    (".sch", ["Eagle", "KiCad Schematic", "Scheme", "XML"]),
    (".sci", ["Scilab"]),
    (".scm", ["Scheme"]),
    (".sco", ["Csound Score"]),
    (".scpt", ["AppleScript"]),
    (".scrbl", ["Racket"]),
    (".scss", ["SCSS"]),
    (".scxml", ["XML"]),
    (".sed", ["sed"]),
    (".self", ["Self"]),
    (".sexp", ["Common Lisp"]),
    (".sfd", ["Spline Font Database"]),
    (".sfproj", ["XML"]),
    (".sh", ["Shell"]),
    (".sh-session", ["ShellSession"]),
    (".sh.in", ["Shell"]),
    (".shader", ["GLSL", "ShaderLab"]),
    (".shen", ["Shen"]),
    (".shproj", ["XML"]),
    (".sig", ["Standard ML"]),
    (".sj", ["Objective-J"]),
    (".sjs", ["JavaScript"]),
    (".sl", ["Slash"]),
    (".sld", ["Scheme"]),
    (".slim", ["Slim"]),
    (".sls", ["SaltStack", "Scheme"]),
    (".sma", ["Pawn"]),
    (".smali", ["Smali"]),
    (".sml", ["Standard ML"]),
    (".smt", ["SMT"]),
    (".smt2", ["SMT"]),
    (".soy", ["Closure Templates"]),
    (".sp", ["SourcePawn"]),
    (".sparql", ["SPARQL"]),
    (".spc", ["PLSQL"]),
    (".spec", ["Python", "RPM Spec", "Ruby"]),
    (".spin", ["Propeller Spin"]),
    (".sps", ["Scheme"]),
    (".sqf", ["SQF"]),
    (".sql", ["PLSQL", "PLpgSQL", "SQL", "SQLPL", "TSQL"]),
    (".sra", ["PowerBuilder"]),
    (".srdf", ["XML"]),
    (".srt", ["SRecode Template", "SubRip Text"]),
    (".sru", ["PowerBuilder"]),
    (".srw", ["PowerBuilder"]),
    (".ss", ["Scheme"]),
    (".ssjs", ["JavaScript"]),
    (".sss", ["SugarSS"]),
    (".st", ["HTML", "Smalltalk"]),
    (".stTheme", ["XML"]),
    (".stan", ["Stan"]),
    (".sthlp", ["Stata"]),
    (".ston", ["STON"]),
    (".storyboard", ["XML"]),
    (".sty", ["TeX"]),
    (".styl", ["Stylus"]),
    (".sublime-build", ["JSON with Comments"]),
    (".sublime-commands", ["JSON with Comments"]),
    (".sublime-completions", ["JSON with Comments"]),
    (".sublime-keymap", ["JSON with Comments"]),
    (".sublime-macro", ["JSON with Comments"]),
    (".sublime-menu", ["JSON with Comments"]),
    (".sublime-mousemap", ["JSON with Comments"]),
    (".sublime-project", ["JSON with Comments"]),
    (".sublime-settings", ["JSON with Comments"]),
    (".sublime-snippet", ["XML"]),
    (".sublime-syntax", ["YAML"]),
    (".sublime-theme", ["JSON with Comments"]),
    (".sublime-workspace", ["JSON with Comments"]),
    (".sublime_metrics", ["JSON with Comments"]),
    (".sublime_session", ["JSON with Comments"]),
    (".sv", ["SystemVerilog"]),
    (".svelte", ["Svelte"]),
    (".svg", ["SVG"]),
    (".svh", ["SystemVerilog"]),
    (".swift", ["Swift"]),
    (".syntax", ["YAML"]),
    (".t", ["Perl", "Perl 6", "Terra", "Turing"]),
    (".tab", ["SQL"]),
    (".tac", ["Python"]),
    (".targets", ["XML"]),
    (".tcc", ["C++"]),
    (".tcl", ["Tcl"]),
    (".tcsh", ["Tcsh"]),
    (".tea", ["Tea"]),
    (".tesc", ["GLSL"]),
    (".tese", ["GLSL"]),
    (".tex", ["TeX"]),
    (".textile", ["Textile"]),
    (".tf", ["HCL"]),
    (".tfstate", ["JSON"]),
    (".tfstate.backup", ["JSON"]),
    (".tfvars", ["HCL"]),
    (".thor", ["Ruby"]),
    (".thrift", ["Thrift"]),
    (".thy", ["Isabelle"]),
    (".tl", ["Type Language"]),
    (".tla", ["TLA"]),
    (".tm", ["Tcl"]),
    (".tmCommand", ["XML"]),
    (".tmLanguage", ["XML"]),
    (".tmPreferences", ["XML"]),
    (".tmSnippet", ["XML"]),
    (".tmTheme", ["XML"]),
    (".tmac", ["Roff"]),
    (".tml", ["XML"]),
    (".tmux", ["Shell"]),
    (".toc", ["TeX", "World of Warcraft Addon Data"]),
    (".toml", ["TOML"]),
    (".tool", ["Shell"]),
    (".topojson", ["JSON"]),
    (".tpb", ["PLSQL"]),
    (".tpl", ["Smarty"]),
    (".tpp", ["C++"]),
    (".tps", ["PLSQL"]),
    (".trg", ["PLSQL"]),
    (".ts", ["TypeScript", "XML"]),
    (".tst", ["GAP", "Scilab"]),
    (".tsx", ["TSX", "XML"]),
    (".ttl", ["Turtle"]),
    (".tu", ["Turing"]),
    (".twig", ["Twig"]),
    (".txl", ["TXL"]),
    (".txt", ["Text"]),
    (".uc", ["UnrealScript"]),
    (".udf", ["SQL"]),
    (".udo", ["Csound"]),
    (".ui", ["XML"]),
    (".unity", ["Unity3D Asset"]),
    (".uno", ["Uno"]),
    (".upc", ["Unified Parallel C"]),
    (".ur", ["UrWeb"]),
    (".urdf", ["XML"]),
    (".urs", ["UrWeb"]),
    (".ux", ["XML"]),
    (".v", ["Coq", "Verilog"]),
    (".vala", ["Vala"]),
    (".vapi", ["Vala"]),
    (".vark", ["Gosu"]),
    (".vb", ["Visual Basic"]),
    (".vba", ["Vim script", "Visual Basic"]),
    (".vbhtml", ["Visual Basic"]),
    (".vbproj", ["XML"]),
    (".vbs", ["Visual Basic"]),
    (".vcl", ["VCL"]),
    (".vcxproj", ["XML"]),
    (".veo", ["Verilog"]),
    (".vert", ["GLSL"]),
    (".vh", ["SystemVerilog"]),
    (".vhd", ["VHDL"]),
    (".vhdl", ["VHDL"]),
    (".vhf", ["VHDL"]),
    (".vhi", ["VHDL"]),
    (".vho", ["VHDL"]),
    (".vhost", ["ApacheConf", "Nginx"]),
    (".vhs", ["VHDL"]),
    (".vht", ["VHDL"]),
    (".vhw", ["VHDL"]),
    (".view.lkml", ["LookML"]),
    (".vim", ["Vim script"]),
    (".viw", ["SQL"]),
    (".vmb", ["Vim script"]),
    (".volt", ["Volt"]),
    (".vrx", ["GLSL"]),
    (".vsh", ["GLSL"]),
    (".vshader", ["GLSL"]),
    (".vsixmanifest", ["XML"]),
    (".vssettings", ["XML"]),
    (".vstemplate", ["XML"]),
    (".vtt", ["WebVTT"]),
    (".vue", ["Vue"]),
    (".vw", ["PLSQL"]),
    (".vxml", ["XML"]),
    (".w", ["CWeb", "OpenEdge ABL"]),
    (".wast", ["WebAssembly"]),
    (".wat", ["WebAssembly"]),
    (".watchr", ["Ruby"]),
    (".wdl", ["wdl"]),
    (".webapp", ["JSON"]),
    (".webidl", ["WebIDL"]),
    (".webmanifest", ["JSON"]),
    (".weechatlog", ["IRC log"]),
    (".wiki", ["MediaWiki"]),
    (".wisp", ["wisp"]),
    (".wixproj", ["XML"]),
    (".wl", ["Mathematica"]),
    (".wlk", ["Wollok"]),
    (".wlt", ["Mathematica"]),
    (".wlua", ["Lua"]),
    (".workbook", ["Markdown"]),
    (".workflow", ["HCL", "XML"]),
    (".wsdl", ["XML"]),
    (".wsf", ["XML"]),
    (".wsgi", ["Python"]),
    (".wxi", ["XML"]),
    (".wxl", ["XML"]),
    (".wxs", ["XML"]),
    (".x", ["Linker Script", "Logos", "RPC"]),
    (".x10", ["X10"]),
    (".x3d", ["XML"]),
    (".xacro", ["XML"]),
    (".xaml", ["XML"]),
    (".xbm", ["X BitMap"]),
    (".xc", ["XC"]),
    (".xht", ["HTML"]),
    (".xhtml", ["HTML"]),
    (".xi", ["Logos"]),
    (".xib", ["XML"]),
    (".xlf", ["XML"]),
    (".xliff", ["XML"]),
    (".xm", ["Logos"]),
    (".xmi", ["XML"]),
    (".xml", ["XML"]),
    (".xml.dist", ["XML"]),
    (".xojo_code", ["Xojo"]),
    (".xojo_menu", ["Xojo"]),
    (".xojo_report", ["Xojo"]),
    (".xojo_script", ["Xojo"]),
    (".xojo_toolbar", ["Xojo"]),
    (".xojo_window", ["Xojo"]),
    (".xpl", ["XProc"]),
    (".xpm", ["X PixMap"]),
    (".xproc", ["XProc"]),
    (".xproj", ["XML"]),
    (".xpy", ["Python"]),
    (".xq", ["XQuery"]),
    (".xql", ["XQuery"]),
    (".xqm", ["XQuery"]),
    (".xquery", ["XQuery"]),
    (".xqy", ["XQuery"]),
    (".xrl", ["Erlang"]),
    (".xs", ["XS"]),
    (".xsd", ["XML"]),
    (".xsjs", ["JavaScript"]),
    (".xsjslib", ["JavaScript"]),
    (".xsl", ["XSLT"]),
    (".xslt", ["XSLT"]),
    (".xsp-config", ["XPages"]),
    (".xsp.metadata", ["XPages"]),
    (".xspec", ["XML"]),
    (".xtend", ["Xtend"]),
    (".xul", ["XML"]),
    (".xzap", ["ZAP"]),
    (".y", ["Yacc"]),
    (".yacc", ["Yacc"]),
    (".yaml", ["YAML"]),
    (".yaml-tmlanguage", ["YAML"]),
    (".yang", ["YANG"]),
    (".yap", ["Prolog"]),
    (".yar", ["YARA"]),
    (".yara", ["YARA"]),
    (".yasnippet", ["YASnippet"]),
    (".yml", ["YAML"]),
    (".yml.mysql", ["YAML"]),
    (".yrl", ["Erlang"]),
    (".yy", ["JSON", "Yacc"]),
    (".yyp", ["JSON"]),
    (".zap", ["ZAP"]),
    (".zcml", ["XML"]),
    (".zeek", ["Zeek"]),
    (".zep", ["Zephir"]),
    (".zig", ["Zig"]),
    (".zil", ["ZIL"]),
    (".zimpl", ["Zimpl"]),
    (".zmpl", ["Zimpl"]),
    (".zone", ["DNS Zone"]),
    (".zpl", ["Zimpl"]),
    (".zs", ["ZenScript"]),
    (".zsh", ["Shell"])  ]

-- | Map of languages by filename.
languagesByFileName :: Map.Map Text [LanguageKey]
languagesByFileName = Map.fromList  [
    (".Rprofile", ["R"]),
    (".XCompose", ["XCompose"]),
    (".abbrev_defs", ["Emacs Lisp"]),
    (".arcconfig", ["JSON"]),
    (".atomignore", ["Ignore List"]),
    (".babelignore", ["Ignore List"]),
    (".babelrc", ["JSON with Comments"]),
    (".bash_aliases", ["Shell"]),
    (".bash_history", ["Shell"]),
    (".bash_logout", ["Shell"]),
    (".bash_profile", ["Shell"]),
    (".bashrc", ["Shell"]),
    (".bzrignore", ["Ignore List"]),
    (".clang-format", ["YAML"]),
    (".clang-tidy", ["YAML"]),
    (".classpath", ["XML"]),
    (".coffeelintignore", ["Ignore List"]),
    (".cproject", ["XML"]),
    (".cshrc", ["Shell"]),
    (".cvsignore", ["Ignore List"]),
    (".dockerignore", ["Ignore List"]),
    (".editorconfig", ["EditorConfig"]),
    (".emacs", ["Emacs Lisp"]),
    (".emacs.desktop", ["Emacs Lisp"]),
    (".eslintignore", ["Ignore List"]),
    (".eslintrc.json", ["JSON with Comments"]),
    (".factor-boot-rc", ["Factor"]),
    (".factor-rc", ["Factor"]),
    (".gclient", ["Python"]),
    (".gemrc", ["YAML"]),
    (".gitattributes", ["Git Attributes"]),
    (".gitconfig", ["Git Config"]),
    (".gitignore", ["Ignore List"]),
    (".gitmodules", ["Git Config"]),
    (".gn", ["GN"]),
    (".gnus", ["Emacs Lisp"]),
    (".gvimrc", ["Vim script"]),
    (".htaccess", ["ApacheConf"]),
    (".htmlhintrc", ["JSON"]),
    (".irbrc", ["Ruby"]),
    (".jscsrc", ["JSON with Comments"]),
    (".jshintrc", ["JSON with Comments"]),
    (".jslintrc", ["JSON with Comments"]),
    (".login", ["Shell"]),
    (".nanorc", ["nanorc"]),
    (".nodemonignore", ["Ignore List"]),
    (".npmignore", ["Ignore List"]),
    (".nvimrc", ["Vim script"]),
    (".php", ["PHP"]),
    (".php_cs", ["PHP"]),
    (".php_cs.dist", ["PHP"]),
    (".prettierignore", ["Ignore List"]),
    (".profile", ["Shell"]),
    (".project", ["XML"]),
    (".pryrc", ["Ruby"]),
    (".spacemacs", ["Emacs Lisp"]),
    (".stylelintignore", ["Ignore List"]),
    (".tern-config", ["JSON"]),
    (".tern-project", ["JSON"]),
    (".vimrc", ["Vim script"]),
    (".viper", ["Emacs Lisp"]),
    (".vscodeignore", ["Ignore List"]),
    (".watchmanconfig", ["JSON"]),
    (".zlogin", ["Shell"]),
    (".zlogout", ["Shell"]),
    (".zprofile", ["Shell"]),
    (".zshenv", ["Shell"]),
    (".zshrc", ["Shell"]),
    ("9fs", ["Shell"]),
    ("APKBUILD", ["Alpine Abuild"]),
    ("App.config", ["XML"]),
    ("Appraisals", ["Ruby"]),
    ("BSDmakefile", ["Makefile"]),
    ("BUCK", ["Python"]),
    ("BUILD", ["Python"]),
    ("BUILD.bazel", ["Python"]),
    ("Berksfile", ["Ruby"]),
    ("Brewfile", ["Ruby"]),
    ("Buildfile", ["Ruby"]),
    ("CMakeLists.txt", ["CMake"]),
    ("COPYING", ["Text"]),
    ("COPYING.regex", ["Text"]),
    ("COPYRIGHT.regex", ["Text"]),
    ("Cakefile", ["CoffeeScript"]),
    ("Capfile", ["Ruby"]),
    ("Cargo.lock", ["TOML"]),
    ("Cask", ["Emacs Lisp"]),
    ("DEPS", ["Python"]),
    ("Dangerfile", ["Ruby"]),
    ("Deliverfile", ["Ruby"]),
    ("Dockerfile", ["Dockerfile"]),
    ("Emakefile", ["Erlang"]),
    ("FONTLOG", ["Text"]),
    ("Fakefile", ["Fancy"]),
    ("Fastfile", ["Ruby"]),
    ("GNUmakefile", ["Makefile"]),
    ("Gemfile", ["Ruby"]),
    ("Gemfile.lock", ["Ruby"]),
    ("Gopkg.lock", ["TOML"]),
    ("Guardfile", ["Ruby"]),
    ("INSTALL", ["Text"]),
    ("INSTALL.mysql", ["Text"]),
    ("Jakefile", ["JavaScript"]),
    ("Jarfile", ["Ruby"]),
    ("Jenkinsfile", ["Groovy"]),
    ("Kbuild", ["Makefile"]),
    ("LICENSE", ["Text"]),
    ("LICENSE.mysql", ["Text"]),
    ("Makefile", ["Makefile"]),
    ("Makefile.PL", ["Perl"]),
    ("Makefile.am", ["Makefile"]),
    ("Makefile.boot", ["Makefile"]),
    ("Makefile.frag", ["Makefile"]),
    ("Makefile.in", ["Makefile"]),
    ("Makefile.inc", ["Makefile"]),
    ("Makefile.wat", ["Makefile"]),
    ("Mavenfile", ["Ruby"]),
    ("Modulefile", ["Puppet"]),
    ("NEWS", ["Text"]),
    ("Notebook", ["Jupyter Notebook"]),
    ("NuGet.config", ["XML"]),
    ("Nukefile", ["Nu"]),
    ("PKGBUILD", ["Shell"]),
    ("Phakefile", ["PHP"]),
    ("Podfile", ["Ruby"]),
    ("Project.ede", ["Emacs Lisp"]),
    ("Puppetfile", ["Ruby"]),
    ("README.1ST", ["Text"]),
    ("README.me", ["Text"]),
    ("README.mysql", ["Text"]),
    ("ROOT", ["Isabelle ROOT"]),
    ("Rakefile", ["Ruby"]),
    ("Rexfile", ["Perl"]),
    ("SConscript", ["Python"]),
    ("SConstruct", ["Python"]),
    ("Settings.StyleCop", ["XML"]),
    ("Slakefile", ["LiveScript"]),
    ("Snakefile", ["Python"]),
    ("Snapfile", ["Ruby"]),
    ("Thorfile", ["Ruby"]),
    ("Vagrantfile", ["Ruby"]),
    ("WORKSPACE", ["Python"]),
    ("Web.Debug.config", ["XML"]),
    ("Web.Release.config", ["XML"]),
    ("Web.config", ["XML"]),
    ("XCompose", ["XCompose"]),
    ("_emacs", ["Emacs Lisp"]),
    ("_vimrc", ["Vim script"]),
    ("abbrev_defs", ["Emacs Lisp"]),
    ("ack", ["Perl"]),
    ("ant.xml", ["Ant Build System"]),
    ("apache2.conf", ["ApacheConf"]),
    ("bash_aliases", ["Shell"]),
    ("bash_logout", ["Shell"]),
    ("bash_profile", ["Shell"]),
    ("bashrc", ["Shell"]),
    ("build.xml", ["Ant Build System"]),
    ("buildfile", ["Ruby"]),
    ("buildozer.spec", ["INI"]),
    ("cabal.config", ["Cabal Config"]),
    ("cabal.project", ["Cabal Config"]),
    ("click.me", ["Text"]),
    ("composer.lock", ["JSON"]),
    ("configure.ac", ["M4Sugar"]),
    ("contents.lr", ["Markdown"]),
    ("cpanfile", ["Perl"]),
    ("cshrc", ["Shell"]),
    ("delete.me", ["Text"]),
    ("descrip.mmk", ["Module Management System"]),
    ("descrip.mms", ["Module Management System"]),
    ("encodings.dir", ["X Font Directory Index"]),
    ("expr-dist", ["R"]),
    ("firestore.rules", ["Cloud Firestore Security Rules"]),
    ("fonts.alias", ["X Font Directory Index"]),
    ("fonts.dir", ["X Font Directory Index"]),
    ("fonts.scale", ["X Font Directory Index"]),
    ("fp-lib-table", ["KiCad Layout"]),
    ("gitignore-global", ["Ignore List"]),
    ("gitignore_global", ["Ignore List"]),
    ("glide.lock", ["YAML"]),
    ("go.mod", ["Text"]),
    ("go.sum", ["Text"]),
    ("gradlew", ["Shell"]),
    ("gvimrc", ["Vim script"]),
    ("haproxy.cfg", ["HAProxy"]),
    ("httpd.conf", ["ApacheConf"]),
    ("jsconfig.json", ["JSON with Comments"]),
    ("keep.me", ["Text"]),
    ("language-configuration.json", ["JSON with Comments"]),
    ("ld.script", ["Linker Script"]),
    ("login", ["Shell"]),
    ("m3makefile", ["Quake"]),
    ("m3overrides", ["Quake"]),
    ("makefile", ["Makefile"]),
    ("makefile.sco", ["Makefile"]),
    ("man", ["Shell"]),
    ("mcmod.info", ["JSON"]),
    ("meson.build", ["Meson"]),
    ("meson_options.txt", ["Meson"]),
    ("mix.lock", ["Elixir"]),
    ("mkfile", ["Makefile"]),
    ("mmn", ["Roff"]),
    ("mmt", ["Roff"]),
    ("nanorc", ["nanorc"]),
    ("nextflow.config", ["Nextflow"]),
    ("nginx.conf", ["Nginx"]),
    ("nim.cfg", ["Nim"]),
    ("nvimrc", ["Vim script"]),
    ("owh", ["Tcl"]),
    ("packages.config", ["XML"]),
    ("pom.xml", ["Maven POM"]),
    ("profile", ["Shell"]),
    ("read.me", ["Text"]),
    ("readme.1st", ["Text"]),
    ("rebar.config", ["Erlang"]),
    ("rebar.config.lock", ["Erlang"]),
    ("rebar.lock", ["Erlang"]),
    ("riemann.config", ["Clojure"]),
    ("ssh-config", ["SSH Config"]),
    ("ssh_config", ["SSH Config"]),
    ("sshconfig", ["SSH Config"]),
    ("sshconfig.snip", ["SSH Config"]),
    ("sshd-config", ["SSH Config"]),
    ("sshd_config", ["SSH Config"]),
    ("starfield", ["Tcl"]),
    ("test.me", ["Text"]),
    ("tsconfig.json", ["JSON with Comments"]),
    ("vimrc", ["Vim script"]),
    ("wscript", ["Python"]),
    ("xcompose", ["XCompose"]),
    ("zlogin", ["Shell"]),
    ("zlogout", ["Shell"]),
    ("zprofile", ["Shell"]),
    ("zshenv", ["Shell"]),
    ("zshrc", ["Shell"])  ]