40 lines
819 B
JavaScript
40 lines
819 B
JavaScript
import { mdsvex, escapeSvelte } from 'mdsvex';
|
|
import adapter from '@sveltejs/adapter-static';
|
|
import { createHighlighter } from 'shiki';
|
|
|
|
const theme = 'github-dark';
|
|
const highlighter = await createHighlighter({
|
|
themes: [theme],
|
|
langs: [
|
|
'javascript',
|
|
'typescript',
|
|
'bash',
|
|
'json',
|
|
'css',
|
|
'html',
|
|
'markdown',
|
|
'svelte',
|
|
'xml',
|
|
'yaml',
|
|
'c',
|
|
'c++',
|
|
'go',
|
|
'ini'
|
|
]
|
|
});
|
|
|
|
/** @type {import('@sveltejs/kit').Config} */
|
|
const config = {
|
|
kit: { adapter: adapter() },
|
|
preprocess: [mdsvex({
|
|
highlight: {
|
|
highlighter: async (code, lang = 'text') => {
|
|
const html = escapeSvelte(highlighter.codeToHtml(code, { lang, theme }));
|
|
return `{@html \`${html}\` }`;
|
|
}
|
|
}
|
|
})],
|
|
extensions: ['.svelte', '.svx']
|
|
};
|
|
|
|
export default config;
|