imzbf / md-editor-v3

Markdown editor for vue3, developed in jsx and typescript, dark theme、beautify content by prettier、render articles directly、paste or clip the picture and upload it...
https://imzbf.github.io/md-editor-v3
MIT License
1.63k stars 156 forks source link

形如 ^\*\*[a-zA-Z]+[^\w\s][a-zA-Z]+\*\*$ 的句式无法被正确解析出加粗效果 #526

Closed zsqzsq1993 closed 5 months ago

zsqzsq1993 commented 5 months ago

描述这个Bug

描述

形如^\*\*[a-zA-Z]+[^\w\s][a-zA-Z]+\*\*$的句式无法被正确解析出加粗效果 如:**Are you hungry?**Hello world 如:**我吃了东西。**不你没吃

(句子之间有空格时不会有异常,但中文语法句子间往往没空格)

示例

<script lang="ts" setup>
const mock1 = '**我吃了东西。**不你没吃'
const mock2 = '**Are you hungry?**Hello world'
</script>

<template>
  <MdPreview :model-value="mock1" />
</template>

截图

image

版本

{
  "vue": "^3.4.22",
  "md-editor-v3": "^4.14.1",
}

版本号

nodejs: v20.11.1

问题重现链接

No response

imzbf commented 5 months ago

这是默认的语法规则,大概是这样:

  1. 双星号粗显内容时,文本前后不能有标点符号
  2. 加粗内容无法避免以标点符号结尾时,需要在后双星号后面添加空格以将粗显模块与其他模块分离
zsqzsq1993 commented 5 months ago

这是默认的语法规则,大概是这样:

  1. 双星号粗显内容时,文本前后不能有标点符号
  2. 加粗内容无法避免以标点符号结尾时,需要在后双星号后面添加空格以将粗显模块与其他模块分离

好的,看了下,应该是markdown-it也没做这类语法处理。但感觉在中文中还挺常见的。我在业务层处理吧,感谢回复🙏