class Languages:
    """
    Holds all available languages. To be passed to Editor during initialization.
    """
    ABAP = "abap"
    AMDGPU = "amdgpu"
    APL = "apl"
    ABNF = "abnf"
    ACTIONSCRIPT3 = "actionscript3"
    ACTIONSCRIPT = "actionscript"
    ADA = "ada"
    ADL = "adl"
    AGDA = "agda"
    AHEUI = "aheui"
    ALLOY = "alloy"
    AMBIENTTALK = "ambienttalk"
    AMPL = "ampl"
    HTML_NG2 = "html+ng2"
    NG2 = "ng2"
    ANTLR_ACTIONSCRIPT = "antlr-actionscript"
    ANTLR_CSHARP = "antlr-csharp"
    ANTLR_CPP = "antlr-cpp"
    ANTLR_JAVA = "antlr-java"
    ANTLR = "antlr"
    ANTLR_OBJC = "antlr-objc"
    ANTLR_PERL = "antlr-perl"
    ANTLR_PYTHON = "antlr-python"
    ANTLR_RUBY = "antlr-ruby"
    APACHECONF = "apacheconf"
    APPLESCRIPT = "applescript"
    ARDUINO = "arduino"
    ARROW = "arrow"
    ARTURO = "arturo"
    ASC = "asc"
    ASPECTJ = "aspectj"
    ASYMPTOTE = "asymptote"
    AUGEAS = "augeas"
    AUTOIT = "autoit"
    AUTOHOTKEY = "autohotkey"
    AWK = "awk"
    BBCBASIC = "bbcbasic"
    BBCODE = "bbcode"
    BC = "bc"
    BST = "bst"
    BARE = "bare"
    BASEMAKE = "basemake"
    BASH = "bash"
    CONSOLE = "console"
    BATCH = "batch"
    BDD = "bdd"
    BEFUNGE = "befunge"
    BERRY = "berry"
    BIBTEX = "bibtex"
    BLITZBASIC = "blitzbasic"
    BLITZMAX = "blitzmax"
    BNF = "bnf"
    BOA = "boa"
    BOO = "boo"
    BOOGIE = "boogie"
    BRAINFUCK = "brainfuck"
    BUGS = "bugs"
    CAMKES = "camkes"
    C = "c"
    CMAKE = "cmake"
    C_OBJDUMP = "c-objdump"
    CPSA = "cpsa"
    CSS_UL4 = "css+ul4"
    ASPX_CS = "aspx-cs"
    CSHARP = "csharp"
    CA65 = "ca65"
    CADL = "cadl"
    CAPDL = "capdl"
    CAPNP = "capnp"
    CBMBAS = "cbmbas"
    CDDL = "cddl"
    CEYLON = "ceylon"
    CFENGINE3 = "cfengine3"
    CHAISCRIPT = "chaiscript"
    CHAPEL = "chapel"
    CHARMCI = "charmci"
    HTML_CHEETAH = "html+cheetah"
    JAVASCRIPT_CHEETAH = "javascript+cheetah"
    CHEETAH = "cheetah"
    XML_CHEETAH = "xml+cheetah"
    CIRRU = "cirru"
    CLAY = "clay"
    CLEAN = "clean"
    CLOJURE = "clojure"
    CLOJURESCRIPT = "clojurescript"
    COBOLFREE = "cobolfree"
    COBOL = "cobol"
    COFFEESCRIPT = "coffeescript"
    CFC = "cfc"
    CFM = "cfm"
    CFS = "cfs"
    COMAL = "comal"
    COMMON_LISP = "common-lisp"
    COMPONENTPASCAL = "componentpascal"
    COQ = "coq"
    CPLINT = "cplint"
    CPP = "cpp"
    CPP_OBJDUMP = "cpp-objdump"
    CRMSH = "crmsh"
    CROC = "croc"
    CRYPTOL = "cryptol"
    CR = "cr"
    CSOUND_DOCUMENT = "csound-document"
    CSOUND = "csound"
    CSOUND_SCORE = "csound-score"
    CSS_DJANGO = "css+django"
    CSS_RUBY = "css+ruby"
    CSS_GENSHITEXT = "css+genshitext"
    CSS = "css"
    CSS_PHP = "css+php"
    CSS_SMARTY = "css+smarty"
    CUDA = "cuda"
    CYPHER = "cypher"
    CYTHON = "cython"
    D = "d"
    D_OBJDUMP = "d-objdump"
    DPATCH = "dpatch"
    DART = "dart"
    DASM16 = "dasm16"
    DEBCONTROL = "debcontrol"
    DELPHI = "delphi"
    DEVICETREE = "devicetree"
    DG = "dg"
    DIFF = "diff"
    DJANGO = "django"
    DOCKER = "docker"
    DTD = "dtd"
    DUEL = "duel"
    DYLAN_CONSOLE = "dylan-console"
    DYLAN = "dylan"
    DYLAN_LID = "dylan-lid"
    ECL = "ecl"
    EC = "ec"
    EARL_GREY = "earl-grey"
    EASYTRIEVE = "easytrieve"
    EBNF = "ebnf"
    EIFFEL = "eiffel"
    IEX = "iex"
    ELIXIR = "elixir"
    ELM = "elm"
    ELPI = "elpi"
    EMACS_LISP = "emacs-lisp"
    EMAIL = "email"
    ERB = "erb"
    ERLANG = "erlang"
    ERL = "erl"
    HTML_EVOQUE = "html+evoque"
    EVOQUE = "evoque"
    XML_EVOQUE = "xml+evoque"
    EXECLINE = "execline"
    EZHIL = "ezhil"
    FSHARP = "fsharp"
    FSTAR = "fstar"
    FACTOR = "factor"
    FANCY = "fancy"
    FAN = "fan"
    FELIX = "felix"
    FENNEL = "fennel"
    FIFT = "fift"
    FISH = "fish"
    FLATLINE = "flatline"
    FLOSCRIPT = "floscript"
    FORTH = "forth"
    FORTRANFIXED = "fortranfixed"
    FORTRAN = "fortran"
    FOXPRO = "foxpro"
    FREEFEM = "freefem"
    FUNC = "func"
    FUTHARK = "futhark"
    GAP_CONSOLE = "gap-console"
    GAP = "gap"
    GDSCRIPT = "gdscript"
    GLSL = "glsl"
    GSQL = "gsql"
    GAS = "gas"
    GCODE = "gcode"
    GENSHI = "genshi"
    GENSHITEXT = "genshitext"
    POT = "pot"
    GHERKIN = "gherkin"
    GNUPLOT = "gnuplot"
    GO = "go"
    GOLO = "golo"
    GOODDATA_CL = "gooddata-cl"
    GOSU = "gosu"
    GST = "gst"
    GRAPHVIZ = "graphviz"
    GROFF = "groff"
    GROOVY = "groovy"
    HLSL = "hlsl"
    HTML_UL4 = "html+ul4"
    HAML = "haml"
    HTML_HANDLEBARS = "html+handlebars"
    HANDLEBARS = "handlebars"
    HASKELL = "haskell"
    HAXE = "haxe"
    HEXDUMP = "hexdump"
    HSAIL = "hsail"
    HSPEC = "hspec"
    HTML_DJANGO = "html+django"
    HTML_GENSHI = "html+genshi"
    HTML = "html"
    HTML_PHP = "html+php"
    HTML_SMARTY = "html+smarty"
    HTTP = "http"
    HAXEML = "haxeml"
    HYLANG = "hylang"
    HYBRIS = "hybris"
    IDL = "idl"
    ICON = "icon"
    IDRIS = "idris"
    IGOR = "igor"
    INFORM6 = "inform6"
    I6T = "i6t"
    INFORM7 = "inform7"
    INI = "ini"
    IO = "io"
    IOKE = "ioke"
    IRC = "irc"
    ISABELLE = "isabelle"
    J = "j"
    JMESPATH = "jmespath"
    JSLT = "jslt"
    JAGS = "jags"
    JASMIN = "jasmin"
    JAVA = "java"
    JAVASCRIPT_DJANGO = "javascript+django"
    JAVASCRIPT_RUBY = "javascript+ruby"
    JS_GENSHITEXT = "js+genshitext"
    JAVASCRIPT = "javascript"
    JAVASCRIPT_PHP = "javascript+php"
    JAVASCRIPT_SMARTY = "javascript+smarty"
    JS_UL4 = "js+ul4"
    JCL = "jcl"
    JSGF = "jsgf"
    JSONLD = "jsonld"
    JSON = "json"
    JSONNET = "jsonnet"
    JSP = "jsp"
    JLCON = "jlcon"
    JULIA = "julia"
    JUTTLE = "juttle"
    K = "k"
    KAL = "kal"
    KCONFIG = "kconfig"
    KMSG = "kmsg"
    KOKA = "koka"
    KOTLIN = "kotlin"
    KUIN = "kuin"
    LSL = "lsl"
    CSS_LASSO = "css+lasso"
    HTML_LASSO = "html+lasso"
    JAVASCRIPT_LASSO = "javascript+lasso"
    LASSO = "lasso"
    XML_LASSO = "xml+lasso"
    LEAN = "lean"
    LESS = "less"
    LIGHTTPD = "lighttpd"
    LILYPOND = "lilypond"
    LIMBO = "limbo"
    LIQUID = "liquid"
    LITERATE_AGDA = "literate-agda"
    LITERATE_CRYPTOL = "literate-cryptol"
    LITERATE_HASKELL = "literate-haskell"
    LITERATE_IDRIS = "literate-idris"
    LIVESCRIPT = "livescript"
    LLVM = "llvm"
    LLVM_MIR_BODY = "llvm-mir-body"
    LLVM_MIR = "llvm-mir"
    LOGOS = "logos"
    LOGTALK = "logtalk"
    LUA = "lua"
    MCFUNCTION = "mcfunction"
    MCSCHEMA = "mcschema"
    MIME = "mime"
    MIPS = "mips"
    MOOCODE = "moocode"
    DOSCON = "doscon"
    MACAULAY2 = "macaulay2"
    MAKE = "make"
    CSS_MAKO = "css+mako"
    HTML_MAKO = "html+mako"
    JAVASCRIPT_MAKO = "javascript+mako"
    MAKO = "mako"
    XML_MAKO = "xml+mako"
    MAQL = "maql"
    MARKDOWN = "markdown"
    MASK = "mask"
    MASON = "mason"
    MATHEMATICA = "mathematica"
    MATLAB = "matlab"
    MATLABSESSION = "matlabsession"
    MAXIMA = "maxima"
    MESON = "meson"
    MINID = "minid"
    MINISCRIPT = "miniscript"
    MODELICA = "modelica"
    MODULA2 = "modula2"
    TRAC_WIKI = "trac-wiki"
    MONKEY = "monkey"
    MONTE = "monte"
    MOONSCRIPT = "moonscript"
    MOSEL = "mosel"
    CSS_MOZPREPROC = "css+mozpreproc"
    MOZHASHPREPROC = "mozhashpreproc"
    JAVASCRIPT_MOZPREPROC = "javascript+mozpreproc"
    MOZPERCENTPREPROC = "mozpercentpreproc"
    XUL_MOZPREPROC = "xul+mozpreproc"
    MQL = "mql"
    MSCGEN = "mscgen"
    MUPAD = "mupad"
    MXML = "mxml"
    MYSQL = "mysql"
    CSS_MYGHTY = "css+myghty"
    HTML_MYGHTY = "html+myghty"
    JAVASCRIPT_MYGHTY = "javascript+myghty"
    MYGHTY = "myghty"
    XML_MYGHTY = "xml+myghty"
    NCL = "ncl"
    NSIS = "nsis"
    NASM = "nasm"
    OBJDUMP_NASM = "objdump-nasm"
    NEMERLE = "nemerle"
    NESC = "nesc"
    NESTEDTEXT = "nestedtext"
    NEWLISP = "newlisp"
    NEWSPEAK = "newspeak"
    NGINX = "nginx"
    NIMROD = "nimrod"
    NIT = "nit"
    NIXOS = "nixos"
    NODEJSREPL = "nodejsrepl"
    NOTMUCH = "notmuch"
    NUSMV = "nusmv"
    NUMPY = "numpy"
    OBJDUMP = "objdump"
    OBJECTIVE_C = "objective-c"
    OBJECTIVE_C__ = "objective-c++"
    OBJECTIVE_J = "objective-j"
    OCAML = "ocaml"
    OCTAVE = "octave"
    ODIN = "odin"
    OMG_IDL = "omg-idl"
    OOC = "ooc"
    OPA = "opa"
    OPENEDGE = "openedge"
    OUTPUT = "output"
    PACMANCONF = "pacmanconf"
    PAN = "pan"
    PARASAIL = "parasail"
    PAWN = "pawn"
    PEG = "peg"
    PERL6 = "perl6"
    PERL = "perl"
    PHIX = "phix"
    PHP = "php"
    PIG = "pig"
    PIKE = "pike"
    PKGCONFIG = "pkgconfig"
    PLPGSQL = "plpgsql"
    POINTLESS = "pointless"
    PONY = "pony"
    PORTUGOL = "portugol"
    POSTSCRIPT = "postscript"
    PSQL = "psql"
    POSTGRESQL = "postgresql"
    POV = "pov"
    POWERSHELL = "powershell"
    PWSH_SESSION = "pwsh-session"
    PRAAT = "praat"
    PROCFILE = "procfile"
    PROLOG = "prolog"
    PROMQL = "promql"
    PROPERTIES = "properties"
    PROTOBUF = "protobuf"
    PSYSH = "psysh"
    PUG = "pug"
    PUPPET = "puppet"
    PYPYLOG = "pypylog"
    PYTHON2 = "python2"
    PY2TB = "py2tb"
    PYCON = "pycon"
    PYTHON = "python"
    PYTB = "pytb"
    PY_UL4 = "py+ul4"
    QBASIC = "qbasic"
    Q = "q"
    QVTO = "qvto"
    QLIK = "qlik"
    QML = "qml"
    RCONSOLE = "rconsole"
    RNG_COMPACT = "rng-compact"
    SPEC = "spec"
    RACKET = "racket"
    RAGEL_C = "ragel-c"
    RAGEL_CPP = "ragel-cpp"
    RAGEL_D = "ragel-d"
    RAGEL_EM = "ragel-em"
    RAGEL_JAVA = "ragel-java"
    RAGEL = "ragel"
    RAGEL_OBJC = "ragel-objc"
    RAGEL_RUBY = "ragel-ruby"
    RD = "rd"
    REASONML = "reasonml"
    REBOL = "rebol"
    RED = "red"
    REDCODE = "redcode"
    REGISTRY = "registry"
    RESOURCEBUNDLE = "resourcebundle"
    REXX = "rexx"
    RHTML = "rhtml"
    RIDE = "ride"
    RITA = "rita"
    ROBOCONF_GRAPH = "roboconf-graph"
    ROBOCONF_INSTANCES = "roboconf-instances"
    ROBOTFRAMEWORK = "robotframework"
    RQL = "rql"
    RSL = "rsl"
    RESTRUCTUREDTEXT = "restructuredtext"
    TRAFFICSCRIPT = "trafficscript"
    RBCON = "rbcon"
    RUBY = "ruby"
    RUST = "rust"
    SAS = "sas"
    SPLUS = "splus"
    SML = "sml"
    SNBT = "snbt"
    SARL = "sarl"
    SASS = "sass"
    SAVI = "savi"
    SCALA = "scala"
    SCAML = "scaml"
    SCDOC = "scdoc"
    SCHEME = "scheme"
    SCILAB = "scilab"
    SCSS = "scss"
    SED = "sed"
    SHEXC = "shexc"
    SHEN = "shen"
    SIEVE = "sieve"
    SILVER = "silver"
    SINGULARITY = "singularity"
    SLASH = "slash"
    SLIM = "slim"
    SLURM = "slurm"
    SMALI = "smali"
    SMALLTALK = "smalltalk"
    SGF = "sgf"
    SMARTY = "smarty"
    SMITHY = "smithy"
    SNOBOL = "snobol"
    SNOWBALL = "snowball"
    SOLIDITY = "solidity"
    SOPHIA = "sophia"
    SP = "sp"
    DEBSOURCES = "debsources"
    SPARQL = "sparql"
    SPICE = "spice"
    SQL_JINJA = "sql+jinja"
    SQL = "sql"
    SQLITE3 = "sqlite3"
    SQUIDCONF = "squidconf"
    SRCINFO = "srcinfo"
    SSP = "ssp"
    STAN = "stan"
    STATA = "stata"
    SUPERCOLLIDER = "supercollider"
    SWIFT = "swift"
    SWIG = "swig"
    SYSTEMVERILOG = "systemverilog"
    TAP = "tap"
    TNT = "tnt"
    TOML = "toml"
    TADS3 = "tads3"
    TAL = "tal"
    TASM = "tasm"
    TCL = "tcl"
    TCSH = "tcsh"
    TCSHCON = "tcshcon"
    TEA = "tea"
    TEAL = "teal"
    TERATERMMACRO = "teratermmacro"
    TERMCAP = "termcap"
    TERMINFO = "terminfo"
    TERRAFORM = "terraform"
    TEX = "tex"
    TEXT = "text"
    TI = "ti"
    THRIFT = "thrift"
    TID = "tid"
    TLB = "tlb"
    TODOTXT = "todotxt"
    TSQL = "tsql"
    TREETOP = "treetop"
    TURTLE = "turtle"
    HTML_TWIG = "html+twig"
    TWIG = "twig"
    TYPESCRIPT = "typescript"
    TYPOSCRIPTCSSDATA = "typoscriptcssdata"
    TYPOSCRIPTHTMLDATA = "typoscripthtmldata"
    TYPOSCRIPT = "typoscript"
    UL4 = "ul4"
    UCODE = "ucode"
    UNICON = "unicon"
    UNIXCONFIG = "unixconfig"
    URBISCRIPT = "urbiscript"
    USD = "usd"
    VBSCRIPT = "vbscript"
    VCL = "vcl"
    VCLSNIPPETS = "vclsnippets"
    VCTREESTATUS = "vctreestatus"
    VGL = "vgl"
    VALA = "vala"
    ASPX_VB = "aspx-vb"
    VB_NET = "vb.net"
    HTML_VELOCITY = "html+velocity"
    VELOCITY = "velocity"
    XML_VELOCITY = "xml+velocity"
    VERILOG = "verilog"
    VHDL = "vhdl"
    VIM = "vim"
    WDIFF = "wdiff"
    WAST = "wast"
    WEBIDL = "webidl"
    WHILEY = "whiley"
    WOWTOC = "wowtoc"
    WREN = "wren"
    X10 = "x10"
    XML_UL4 = "xml+ul4"
    XQUERY = "xquery"
    XML_DJANGO = "xml+django"
    XML_RUBY = "xml+ruby"
    XML = "xml"
    XML_PHP = "xml+php"
    XML_SMARTY = "xml+smarty"
    XORG_CONF = "xorg.conf"
    XSLT = "xslt"
    XTEND = "xtend"
    EXTEMPORE = "extempore"
    YAML_JINJA = "yaml+jinja"
    YAML = "yaml"
    YANG = "yang"
    ZEEK = "zeek"
    ZEPHIR = "zephir"
    ZIG = "zig"
    ANSYS = "ansys"
    IPYTHON2 = "ipython2"
    IPYTHON3 = "ipython3"
    IPYTHONCONSOLE = "ipythonconsole"


# from pygments.lexers import get_all_lexers, get_lexer_by_name
# for lexer in get_all_lexers():
#     try:
#         name = lexer[1][0]
#         print(f"{name.upper().replace('+', '_').replace('-', '_')} = \"{name}\"", )
#     except:
#         pass
