v-md-editor
Version:
A markdown editor built on Vue
25 lines (22 loc) • 677 B
JavaScript
import createPrismTheme from '@/theme/base/prism';
import createHljsTheme from '@/theme/base/highlight';
export default function createVuepressTheme(config) {
const hljsTheme = createHljsTheme({
Hljs: config.Hljs,
codeHighlightExtensionMap: config.codeHighlightExtensionMap || {},
codeBlockClass: config.codeBlockClass || ((lang) => `v-md-hljs-${lang}`),
baseConfig: {
link: {
openLinkIcon: true,
},
...config.baseConfig,
},
});
return {
previewClass: 'vuepress-markdown-body',
extend(callback) {
hljsTheme.extend(callback);
},
markdownParser: hljsTheme.markdownParser,
};
}