0%

hello, my blog

第一个blog持续更新可能在博客种遇到的问题

  • 遇到两大括号连用如{ {,要把它们分开,否则渲染会报错

    • expected variable end
    • 这是我遇到渲染最大的问题,当时解决了很长时间没有得到结果
  • 其他公式渲染的问题:

    • hexo默认使用hexo-renderer-marked引擎去渲染网页,它会把利用Markdown语法写的文本去转换为相应的html标签。在利用Markdown写MathJax公式的时候,经常会用到下划线_表示下标,但是下划线_会被hexo的默认引擎hexo-renderer-marked渲染成html中的<em>标签,表示斜体,这样一来,我们写的MathJax公式就被错误渲染了,也就没办法正确显示出来

      1
      2
      npm uninstall hexo-renderer-marked --save
      npm install hexo-renderer-kramed --save

      使用上述改成kramed渲染引擎即可,注意要在blog目录下改,否则不起作用

  • 即是行间公式都没有问题,但是个别行内公式还会出现渲染出错

    • 定位到博客根目录,找到../node_modules/kramed/lib/rules/inline.js文件,进行如下修改:

      1
      2
      3
      4
      5
      //escape: /^\\([\\`*{}\[\]()#$+\-.!_>])/,      第11行,将其修改为
      escape: /^\\([`*\[\]()#$+\-.!_>])/,
      //em: /^\b_((?:__|[\s\S])+?)_\b|^\*((?:\*\*|[\s\S])+?)\*(?!\*)/, 第20行,将其修改为
      em: /^\*((?:\*\*|[\s\S])+?)\*(?!\*)/,
      在: /^\*((?:\*\*|[\s\S])+?)\*(?!\*)/,

      它取消了该渲染引擎对\,{,}的转义,改掉之后即可解决

  • 关于图片显示的问题

    • 使用hexo-image-link插件,路径为Typora默认的即可
  • —-是front matter

  • markdown语法加粗失效的问题

  • tags用英文,类别用中文

  • npm安装显示权限不够:用管理员权限打开命令行,或者给npm对应的node.js相应的权限