]> BookStack Code Mirror - bookstack/blobdiff - resources/js/code/languages.js
Codemirror: Enabled non-standard self-closing tags
[bookstack] / resources / js / code / languages.js
index e7bac2a18b78cbe291f05118b0249e287a462861..ef317334c2b93d93b23cf63c29093a9104d22a08 100644 (file)
@@ -1,20 +1,19 @@
-import {StreamLanguage} from "@codemirror/language"
+import {StreamLanguage} from '@codemirror/language';
 
 import {css} from '@codemirror/lang-css';
 import {json} from '@codemirror/lang-json';
 import {javascript} from '@codemirror/lang-javascript';
-import {html} from "@codemirror/lang-html";
+import {html} from '@codemirror/lang-html';
 import {markdown} from '@codemirror/lang-markdown';
 import {php} from '@codemirror/lang-php';
-import {twig} from "@ssddanbrown/codemirror-lang-twig";
-import {xml} from "@codemirror/lang-xml";
+import {twig} from '@ssddanbrown/codemirror-lang-twig';
+import {xml} from '@codemirror/lang-xml';
 
-const legacyLoad = async (mode) => {
+const legacyLoad = async mode => {
     const modes = await window.importVersioned('legacy-modes');
     return StreamLanguage.define(modes[mode]);
 };
 
-
 // Mapping of possible languages or formats from user input to their codemirror modes.
 // Value can be a mode string or a function that will receive the code content & return the mode string.
 // The function option is used in the event the exact mode could be dynamic depending on the code.
@@ -24,6 +23,8 @@ const modeMap = {
     css: async () => css(),
     'c++': () => legacyLoad('cpp'),
     'c#': () => legacyLoad('csharp'),
+    clj: () => legacyLoad('clojure'),
+    clojure: () => legacyLoad('clojure'),
     csharp: () => legacyLoad('csharp'),
     dart: () => legacyLoad('dart'),
     diff: () => legacyLoad('diff'),
@@ -34,7 +35,7 @@ const modeMap = {
     go: () => legacyLoad('go'),
     haskell: () => legacyLoad('haskell'),
     hs: () => legacyLoad('haskell'),
-    html: async () => html(),
+    html: async () => html({selfClosingTags: true}),
     ini: () => legacyLoad('properties'),
     java: () => legacyLoad('java'),
     javascript: async () => javascript(),
@@ -58,7 +59,7 @@ const modeMap = {
     pascal: () => legacyLoad('pascal'),
     perl: () => legacyLoad('perl'),
     pgsql: () => legacyLoad('pgSQL'),
-    php: async (code) => {
+    php: async code => {
         const hasTags = code.includes('<?php');
         return php({plain: !hasTags});
     },
@@ -113,4 +114,4 @@ export function getLanguageExtension(langSuggestion, content) {
     }
 
     return language(content);
-}
\ No newline at end of file
+}