diff --git a/src/ui/js/diff2html-ui-base.ts b/src/ui/js/diff2html-ui-base.ts
index 9b2317fd..4368ea72 100644
--- a/src/ui/js/diff2html-ui-base.ts
+++ b/src/ui/js/diff2html-ui-base.ts
@@ -151,7 +151,7 @@ export class Diff2HtmlUI {
this.config.highlightLanguages = new Map(Object.entries(this.config.highlightLanguages));
}
- const hljsLanguage =
+ let hljsLanguage =
language && this.config.highlightLanguages.has(language)
? // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
this.config.highlightLanguages.get(language)!
@@ -159,6 +159,11 @@ export class Diff2HtmlUI {
? getLanguage(language)
: 'plaintext';
+ // Fallback to plaintext in case language is not loaded
+ if (hljs.getLanguage(hljsLanguage) === undefined) {
+ hljsLanguage = 'plaintext';
+ }
+
// Collect all the code lines and execute the highlight on them
const codeLines = file.querySelectorAll('.d2h-code-line-ctn');
codeLines.forEach(line => {