Pārlūkot izejas kodu

FIX: dollar-sign escaping in preprocessLaTeX code‐block handling (#21796)

Co-authored-by: LinYing <linying@momenta.ai>
tags/1.5.1
ShadowJobs pirms 4 mēnešiem
vecāks
revīzija
86179beaa5
Revīzijas autora e-pasta adrese nav piesaistīta nevienam kontam
1 mainītis faili ar 4 papildinājumiem un 1 dzēšanām
  1. 4
    1
      web/app/components/base/markdown/markdown-utils.ts

+ 4
- 1
web/app/components/base/markdown/markdown-utils.ts Parādīt failu

@@ -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
}


Notiek ielāde…
Atcelt
Saglabāt