#import "/lib.typ": * #let test-languages = ( "_gvimrc", "_vimrc", "aarch64", "ad", "ada", "adb", "adoc", "adp", "ads", "agda", "angular", "ansible", "apache", "apl", "Appfile", "applescript", "Appraisals", "arm", "as", "asa", "asciidoc", "ascript", "asm", "asp", "authorized_keys", "authorized_keys2", "awk", "bash", "bat", "Berksfile", "bib", "bibtex", "Brewfile", "bsh", "build", "builder", "C", "c", "cabal", "cairo", "Cakefile", "camlp4", "capfile", "cc", "cfg", "cgi", "Cheffile", "cl", "clisp", "clj", "cljs", "clojure", "clojurescript", "cm", "cmake", "cmakecache", "cmakecommands", "cmd", "coffee", "coffeescript", "commands_bash", "comp", "conf", "cp", "cplusplus", "cpp", "cpuinfo", "cpy", "cr", "crontab", "crypttab", "crystal", "cs", "csharp", "cson", "css", "csv", "csx", "cts", "cu", "cuda", "cxx", "d", "dart", "ddl", "dektop", "Deliverfile", "di", "diff", "dml", "docker", "Dockerfile", "dockerfile", "DOT", "dot", "dotenv", "dpr", "dtml", "el", "elixir", "elm", "emacs", "email", "Emakefile", "emakefile", "eml", "env", "envvars", "epp", "erb", "erbsql", "erl", "erlang", "ex", "exs", "F", "f", "F03", "f03", "F08", "f08", "F77", "f77", "F90", "f90", "F95", "f95", "fasl", "fastcgi_params", "Fastfile", "fcgi", "FG", "fish", "FOR", "for", "fortran", "FPP", "fpp", "frag", "fs", "fsh", "fshader", "fsharp", "fsi", "fstab", "fsx", "Gemfile", "gemspec", "geom", "git", "glsl", "gnu", "GNUmakefile", "gnuplot", "go", "golang", "gp", "gpl", "gpr", "gql", "gradle", "graphql", "graphqls", "groff", "groovy", "grpc", "gs", "gsh", "gshader", "Guardfile", "gv", "gvimrc", "gvy", "gyp", "gypi", "h", "haml", "handlebars", "haskell", "haxe", "hcl", "hgrc", "hh", "hosts", "hpp", "hrl", "hs", "HTACCESS", "htaccess", "HTGROUPS", "htgroups", "htm", "html", "html5", "HTPASSWD", "htpasswd", "http", "hxx", "inc", "INF", "inf", "INI", "ini", "inl", "ipp", "irbrc", "j2", "java", "javadoc", "javascript", "jbuilder", "jinja", "jinja2", "jl", "jq", "js", "json", "jsonnet", "jsp", "julia", "known-hosts", "known_hosts", "kotlin", "kt", "kts", "l", "latex", "lean", "less", "lhs", "libjsonnet", "libsonnet", "lisp", "ll", "llvm", "lng", "log", "lsp", "ltx", "lua", "M", "m", "mac", "mak", "make", "Makefile", "makefile", "man", "manpage", "markdn", "markdown", "matlab", "mboxz", "mbx", "md", "mdown", "mediawikerpanel", "mediawiki", "meminfo", "mesh", "mk", "ml", "mli", "mll", "mly", "mm", "msg", "mtab", "mts", "mud", "multimarkdown", "mysql", "namelist", "nasm", "neovim", "nextflow", "nginx", "nim", "nimble", "nims", "ninja", "nix", "nixos", "nvim", "obj-c", "objc", "objective_c", "objectivec", "ocaml", "ocamllex", "OCamlMakefile", "ocamlyacc", "opml", "org", "orgmode", "p", "pas", "pascal", "passwd", "patch", "pbtxt", "perl", "php", "php3", "php4", "php5", "php7", "phps", "phpt", "phtml", "pip", "Pipfile", "PL", "pl", "plot", "plt", "pm", "pod", "podspec", "postgresql", "powershell", "pp", "prawn", "processing", "prolog", "properties", "proto", "protodevel", "prototxt", "ps1", "pub", "puppet", "purescript", "purs", "pxd", "pxi", "py", "py3", "pyi", "python", "pyw", "pyx", "qml", "qmlproject", "R", "r", "rabl", "racket", "rahit", "rails", "rake", "Rakefile", "Rantfile", "rb", "rbx", "rcall", "rchit", "rd", "re", "REG", "reg", "rego", "resolv", "resource", "rest", "restructuredtext", "rgen", "rhtml", "rint", "rjs", "rkt", "rmiss", "robot", "Rprofile", "rpy", "rs", "rss", "rst", "ruby", "rust", "rxml", "S", "s", "sass", "sbt", "sc", "scala", "Scanfile", "scgi_params", "scm", "SConscript", "SConstruct", "sconstruct", "scss", "sh", "shell", "shell_unix_generic", "shellscript", "show_nonprintable", "shtml", "sig", "simplecov", "skim", "slim", "sml", "Snakefile", "Snapfile", "sol", "solidity", "spl", "splunk", "sql", "sqlite", "ss", "ssh", "ssh-config", "ssh_config", "sshd-config", "sshd_config", "strace", "styl", "stylus", "sublime-build", "sublime-color-scheme", "sublime-commands", "sublime-completions", "sublime-keymap", "sublime-macro", "sublime-menu", "sublime-mousemap", "sublime-project", "sublime-settings", "sublime-Syntax", "sublime-theme", "sv", "svelte", "svg", "svh", "svlt", "swift", "syslog", "systemverilog", "t", "tab", "task", "tcl", "terraform", "tesc", "tese", "tex", "text", "textile", "textpb", "tf", "tfstate", "tfvars", "thor", "Thorfile", "tld", "tml", "tmpl", "toml", "tpl", "troff", "ts", "tsv", "tsx", "twig", "txt", "typ", "typc", "typescript", "typescriptreact", "typm", "typst", "uml", "URL", "url", "uwsgi_params", "V", "v", "Vagrantfile", "vala", "varlink", "vb", "verilog", "vert", "vh", "vim", "viml", "vimrc", "vimscript", "visualbasic", "vs", "vsh", "vshader", "vue", "vy", "vyper", "wasm", "wiki", "wikipedia", "wscript", "xhtml", "xml", "xsd", "xslt", "yaml", "yasm", "yaws", "yml", "zig", "zsh", ) #for lang in test-languages { if lang not in codly-languages.keys() { panic("warning: language " + lang + " not found in codly-languages") } } Found all languages! Language key count matches: #codly-languages.keys().len() keys.