mirror of https://gitee.com/godoos/godoos.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
96 lines
2.2 KiB
96 lines
2.2 KiB
var CustomHookA = Cherry.createSyntaxHook('codeBlock', Cherry.constants.HOOKS_TYPE_LIST.PAR, {
|
|
makeHtml(str) {
|
|
console.warn('custom hook', 'hello');
|
|
return str;
|
|
},
|
|
rule(str) {
|
|
const regex = {
|
|
begin: '',
|
|
content: '',
|
|
end: '',
|
|
};
|
|
regex.reg = new RegExp(regex.begin + regex.content + regex.end, 'g');
|
|
return regex;
|
|
},
|
|
});
|
|
|
|
var cherryConfig = {
|
|
id: 'markdown',
|
|
externals: {
|
|
echarts: window.echarts,
|
|
katex: window.katex,
|
|
MathJax: window.MathJax,
|
|
},
|
|
engine: {
|
|
global: {
|
|
urlProcessor(url, srcType) {
|
|
console.log(`url-processor`, url, srcType);
|
|
return url;
|
|
},
|
|
},
|
|
syntax: {
|
|
table: {
|
|
enableChart: false,
|
|
// chartEngine: Engine Class
|
|
},
|
|
fontEmphasis: {
|
|
allowWhitespace: true, // 是否允许首尾空格
|
|
},
|
|
mathBlock: {
|
|
engine: 'MathJax', // katex或MathJax
|
|
src: 'https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-svg.js', // 如果使用MathJax将js在此处引入,katex则需要将js提前引入
|
|
},
|
|
inlineMath: {
|
|
engine: 'MathJax', // katex或MathJax
|
|
},
|
|
emoji: {
|
|
useUnicode: false,
|
|
customResourceURL: 'https://github.githubassets.com/images/icons/emoji/unicode/${code}.png?v8',
|
|
upperCase: true,
|
|
},
|
|
// toc: {
|
|
// tocStyle: 'nested'
|
|
// }
|
|
// 'header': {
|
|
// strict: false
|
|
// }
|
|
},
|
|
customSyntax: {
|
|
// SyntaxHookClass
|
|
CustomHook: {
|
|
syntaxClass: CustomHookA,
|
|
force: false,
|
|
after: 'br',
|
|
},
|
|
},
|
|
},
|
|
toolbars: {
|
|
toolbar: [
|
|
'switchModel',
|
|
'|',
|
|
'bold',
|
|
'italic',
|
|
'strikethrough',
|
|
'|',
|
|
'list',
|
|
{
|
|
insert: ['image', 'audio', 'video', 'link', 'hr', 'br', 'code', 'formula', 'toc', 'table', 'pdf', 'word'],
|
|
},
|
|
'graph',
|
|
],
|
|
},
|
|
editor: {
|
|
defaultModel: 'editOnly',
|
|
},
|
|
previewer: {
|
|
// 自定义markdown预览区域class
|
|
// className: 'markdown'
|
|
},
|
|
keydown: [],
|
|
//extensions: [],
|
|
};
|
|
|
|
fetch('./markdown/basic.md').then((response) => response.text()).then((value) => {
|
|
var config = Object.assign({}, cherryConfig, { value: value });
|
|
window.cherry = new Cherry(config);
|
|
});
|
|
|