theme-kaze / hexo-theme-kaze

⛵ A responsive, modern Hexo theme
https://theme-kaze-demo.songhn.com/
MIT License
195 stars 18 forks source link

LaTeX-incompatible input and strict mode is set to 'warn': Unicode text character "文" used in math mode [unicodeTextInMathMode] #24

Closed onestravel closed 3 years ago

onestravel commented 3 years ago

LaTeX-incompatible input and strict mode is set to 'warn': Unicode text character "文" used in math mode [unicodeTextInMathMode] LaTeX-incompatible input and strict mode is set to 'warn': Unicode text character "件" used in math mode [unicodeTextInMathMode] LaTeX-incompatible input and strict mode is set to 'warn': Unicode text character "名" used in math mode [unicodeTextInMathMode] No character metrics for '文' in style 'Main-Regular' No character metrics for '件' in style 'Main-Regular' No character metrics for '名' in style 'Main-Regular'

onestravel commented 3 years ago

请问这个问题怎么解决呢?

songhn233 commented 3 years ago

我猜测应该是开启了 hexo-renderer-markdown-it-plus 作为渲染器并且用 katex 进行公式解析

假如是这种情况的话在 $...$ 中用 \text{} 对中文包裹应该可以解决这个问题,比如 $\text{测试}$

另外这样的警告应该不会对渲染造成任何的影响,一定程度上可以忽视

如果有其他问题可以继续反馈

onestravel commented 3 years ago

另外这样的警告应该不会对渲染造成任何的影响,一定程度上可以忽视

是开启了 hexo-renderer-markdown-it-plus 作为渲染器并且用 katex 进行公式解析,但是在$...$ 中没有中文内容。

onestravel commented 3 years ago

目前看来是对渲染没有造成影响,多谢帮我解答

YiandLi commented 2 years ago

有没有办法可以找到具体是哪一个文件,如果能找到是哪一行更好。 逼死强迫症了属于😭😭😭😭😭

或者能不能设置屏蔽这个warning

songhn233 commented 2 years ago

有没有办法可以找到具体是哪一个文件,如果能找到是哪一行更好。 逼死强迫症了属于😭😭😭😭😭

或者能不能设置屏蔽这个warning

@YiandLi 建议还是忽略吧。如果想尝试解决可以提供两个思路

一个是 vscode 等支持正则搜索的工具搜索博客文章,输入 \$.*[\u4e00-\u9fa5]+.*\$ 然后尝试定位,但是由于公式语法首尾是一样的所以定位不一定准。另外这个报错是对每个字符都会报错,所以可以尝试把相关的中文连起来搜索定位。

另一种是关闭严格模式,但是 hexo-renderer-markdown-it-plus 并没有提供配置注入的能力,并且原本依赖的 markdown-it-katex 好像就不行,所以可能得自己 fork 然后发 npm 改,感觉有点麻烦。相关代码在 https://github.com/CHENXCHEN/hexo-renderer-markdown-it-plus/blob/f2dd1b25738992efc391ba9da398a9c6a7efb105/lib/renderer.js#L83

katex 也有类似的 issue,https://github.com/KaTeX/KaTeX/issues/1871

yanyuteng commented 4 months ago

cd ~/blogname/source/_posts grep -rnw . -e '\$([^$]文[^$])\$' -e '\$([^$]件[^$])\$'

hanqunfeng commented 2 days ago

如果使用的是“hexo-renderer-markdown-it-plus”,可以配置如下:

markdown_it_plus:
  highlight: true
  html: true
  xhtmlOut: true
  breaks: true
  langPrefix:
  linkify: true
  typographer:
  quotes: “”‘’
  plugins:
      - plugin:
          name: "@iktakahiro/markdown-it-katex"
          enable: true
          options:
            strict: error

如果使用的是“hexo-renderer-markdown-it”,可以配置如下:

# config of hexo-renderer-markdown-it
markdown:
  render:
    html: true
    xhtmlOut: false
    breaks: true
    linkify: true
    typographer: true
    quotes: '“”‘’'
  plugins:
    # katex公式
    - name: "@iktakahiro/markdown-it-katex"
      options:
         strict: error

strict默认为warn,这里设置为error,只有当解析器遇到不支持的公式时才报错,也可以设置为 false,表示不检查。 使用“hexo-renderer-markdown-it”要注意,不要使用markdown-it-katex,而要使用@iktakahiro/markdown-it-katex。 更多信息可以参考https://blog.hanqunfeng.com/2024/11/12/mathjax-demo/