Cut down highlight.js size

This commit is contained in:
venashial
2022-06-24 22:26:49 -07:00
parent 81c039d645
commit 1b17049e94
7 changed files with 49 additions and 31 deletions

28
src/utils/highlight.ts Normal file
View File

@@ -0,0 +1,28 @@
import hljs from 'highlight.js/lib/core'
import bash from 'highlight.js/lib/languages/bash'
import diff from 'highlight.js/lib/languages/diff'
import java from 'highlight.js/lib/languages/java'
import javascript from 'highlight.js/lib/languages/javascript'
import json from 'highlight.js/lib/languages/json'
import plaintext from 'highlight.js/lib/languages/plaintext'
import python from 'highlight.js/lib/languages/python'
import rust from 'highlight.js/lib/languages/rust'
import ini from 'highlight.js/lib/languages/ini'
import yaml from 'highlight.js/lib/languages/yaml'
hljs.registerLanguage('bash', bash)
hljs.registerLanguage('diff', diff)
hljs.registerLanguage('java', java)
hljs.registerLanguage('javascript', javascript)
hljs.registerLanguage('json', json)
hljs.registerLanguage('plaintext', plaintext)
hljs.registerLanguage('python', python)
hljs.registerLanguage('rust', rust)
hljs.registerLanguage('ini', ini)
hljs.registerLanguage('yaml', yaml)
export function highlight(code: string, lang: string) {
const language = hljs.getLanguage(lang) ? lang : 'plaintext'
return hljs.highlight(code, { language }).value
}

View File

@@ -1,6 +1,6 @@
import { marked } from 'marked'
import hljs from 'highlight.js'
import insane from 'insane'
import { highlight } from './highlight'
const renderer = new marked.Renderer()
@@ -27,10 +27,7 @@ renderer.link = (href, title, text) => {
marked.setOptions({
renderer,
highlight: function (code, lang) {
const language = hljs.getLanguage(lang) ? lang : 'plaintext'
return hljs.highlight(code, { language }).value
},
highlight,
langPrefix: 'hljs language-',
headerPrefix: '',
gfm: true,