|
|
|
|
@ -11,6 +11,7 @@ export const preprocessLaTeX = (content: string) => {
|
|
|
|
|
|
|
|
|
|
const codeBlockRegex = /```[\s\S]*?```/g
|
|
|
|
|
const codeBlocks = content.match(codeBlockRegex) || []
|
|
|
|
|
const escapeReplacement = (str: string) => str.replace(/\$/g, '_TMP_REPLACE_DOLLAR_')
|
|
|
|
|
let processedContent = content.replace(codeBlockRegex, 'CODE_BLOCK_PLACEHOLDER')
|
|
|
|
|
|
|
|
|
|
processedContent = flow([
|
|
|
|
|
@ -21,9 +22,11 @@ export const preprocessLaTeX = (content: string) => {
|
|
|
|
|
])(processedContent)
|
|
|
|
|
|
|
|
|
|
codeBlocks.forEach((block) => {
|
|
|
|
|
processedContent = processedContent.replace('CODE_BLOCK_PLACEHOLDER', block)
|
|
|
|
|
processedContent = processedContent.replace('CODE_BLOCK_PLACEHOLDER', escapeReplacement(block))
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
processedContent = processedContent.replace(/_TMP_REPLACE_DOLLAR_/g, '$')
|
|
|
|
|
|
|
|
|
|
return processedContent
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|