Skip to content
This repository was archived by the owner on Nov 10, 2023. It is now read-only.

Commit e4a37a9

Browse files
Updated for highlight js to include all lanauges
1 parent 85655de commit e4a37a9

File tree

1 file changed

+15
-28
lines changed

1 file changed

+15
-28
lines changed

src/plugin/CodeBlock.vue

+15-28
Original file line numberDiff line numberDiff line change
@@ -77,19 +77,19 @@
7777
:class="`language-${props.lang}`"
7878
:style="preTagStyles"
7979
>
80-
<code
81-
v-if="prismPlugin"
82-
:class="`language-${props.lang} ${browserWindow ? 'v-code-block--code-browser' : ''} ${highlightjs ? 'hljs' : ''}`"
83-
:style="codeTagStyles"
84-
v-text="computedCode"
85-
></code>
86-
<code
87-
v-else
88-
:class="`language-${props.lang} ${browserWindow ? 'v-code-block--code-browser' : ''} ${highlightjs ? 'hljs' : ''}`"
89-
:style="codeTagStyles"
90-
v-html="renderedCode"
91-
></code>
92-
</pre>
80+
<code
81+
v-if="prismPlugin"
82+
:class="`language-${props.lang} ${browserWindow ? 'v-code-block--code-browser' : ''} ${highlightjs ? 'hljs' : ''}`"
83+
:style="codeTagStyles"
84+
v-text="computedCode"
85+
></code>
86+
<code
87+
v-else
88+
:class="`language-${props.lang} ${browserWindow ? 'v-code-block--code-browser' : ''} ${highlightjs ? 'hljs' : ''}`"
89+
:style="codeTagStyles"
90+
v-html="renderedCode"
91+
></code>
92+
</pre>
9393
</div>
9494
</div>
9595
</template>
@@ -121,13 +121,8 @@ import {
121121
neonBunnyHighlightThemeMin
122122
} from './themes';
123123
124-
import langCss from 'highlight.js/lib/languages/css';
125-
import langHtml from 'highlight.js/lib/languages/xml';
126-
import langJavascript from 'highlight.js/lib/languages/javascript';
127-
import langPhp from 'highlight.js/lib/languages/php';
128-
import langPlaintext from 'highlight.js/lib/languages/plaintext';
129-
import langTypescript from 'highlight.js/lib/languages/typescript';
130124
import { HLJSApi } from 'highlight.js';
125+
import langPlaintext from 'highlight.js/lib/languages/plaintext';
131126
132127
133128
const highlightJsVersion = '11.8.0';
@@ -145,7 +140,6 @@ const props = withDefaults(defineProps<Props>(), { ...AllProps });
145140
146141
147142
// -------------------------------------------------- Data //
148-
149143
let hljs: HLJSApi;
150144
// eslint-disable-next-line @typescript-eslint/no-explicit-any
151145
let prismModule: any;
@@ -497,17 +491,10 @@ function renderCode(): void {
497491
convertCode();
498492
499493
if (props.highlightjs) {
500-
import('highlight.js/lib/core')
494+
import('highlight.js')
501495
.then((module) => {
502496
hljs = module.default;
503-
504-
hljs.registerLanguage('css', langCss);
505-
hljs.registerLanguage('html', langHtml);
506-
hljs.registerLanguage('javascript', langJavascript);
507-
hljs.registerLanguage('php', langPhp);
508497
hljs.registerLanguage('plain', langPlaintext);
509-
hljs.registerLanguage('typescript', langTypescript);
510-
511498
renderedCode.value = hljs.highlight(convertedCode.value as string, { language: props.lang }).value;
512499
})
513500
.catch((err) => {

0 commit comments

Comments
 (0)