import md, { type Options } from 'markdown-it' // @ts-ignore import mm from 'markdown-it-mathjax3' const options: Options = { // Enable HTML tags in source html: true, // Use '/' to close single tags (
). // This is only for full CommonMark compatibility. xhtmlOut: true, // Convert '\n' in paragraphs into
breaks: true, // CSS language prefix for fenced blocks. Can be // Useful for external highlighters. langPrefix: 'language-', // Autoconvert URL-like text to links linkify: true, // Enable some language-neutral replacement + quotes beautification // For the full list of replacements, see https://github.com/markdown-it/markdown-it/blob/master/lib/rules_core/replacements.mjs typographer: true, // Double + single quotes replacement pairs, when typographer enabled, // And smartquotes on. Could be either a String or an Array. // // For example, you can use '«»„“' for Russian, '„“‚‘' for German, // And ['«\xA0', '\xA0»', '‹\xA0', '\xA0›'] for French (including nbsp). quotes: '“”‘’', // Highlighter function. Should return escaped HTML, // Or '' if the source string is not changed and should be escaped externally. // If result starts with { const render = md(options) .use(mm, { }) return { provide: { mdRender: render, }, } })