canonicalName

fun canonicalName(nameOrAlias: String): String?

Resolves a language identifier, alias, or file extension to its canonical Highlight.js grammar name.

Resolution order:

  1. If nameOrAlias matches a registered Highlight.js alias (such as "kt" ->"kotlin", "py" ->"python", "js" ->"javascript", "ts" ->"typescript", "sh" ->"bash", "html" ->"html"), returns the mapped canonical identifier.

  2. If nameOrAlias matches a canonical language in all (case-insensitively), returns the canonical lowercase identifier.

  3. If nameOrAlias matches a known file extension in fromExtension, returns that identifier.

Returns null if the identifier or alias is not recognized.

Example:

HighlightLanguage.canonicalName("kt")         // "kotlin"
HighlightLanguage.canonicalName("KOTLIN") // "kotlin"
HighlightLanguage.canonicalName("html") // "html"
HighlightLanguage.canonicalName("sh") // "bash"
HighlightLanguage.canonicalName("unknown") // null

Return

Canonical Highlight.js language identifier, or null if unrecognized.

Parameters

nameOrAlias

Language identifier, alias, or file extension to resolve.