fix: shiki fallback language (#1044)

This commit is contained in:
webfansplz 2023-01-13 23:08:08 +08:00 committed by GitHub
parent 0407ef353f
commit f76628d4ab
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 6 additions and 5 deletions

View file

@ -32,10 +32,11 @@ export function useHightlighter(lang: Lang) {
.then(() => {
registeredLang.value.set(lang, true)
})
.catch((e) => {
console.error(`[shiki] Failed to load language ${lang}`)
console.error(e)
registeredLang.value.set(lang, false)
.catch(() => {
const fallbackLang = 'md'
shiki.value?.loadLanguage(fallbackLang).then(() => {
registeredLang.value.set(fallbackLang, true)
})
})
return undefined
}

View file

@ -43,7 +43,7 @@ function getDecorations({
findChildren(doc, node => node.type.name === name)
.forEach((block) => {
let from = block.pos + 1
const language = block.node.attrs.language || 'text'
const language = block.node.attrs.language
const shiki = useHightlighter(language)