Hexo 4.1.1、hexo-util 1.7.0 和 eslint-config-hexo 4.0.0 发布

我们发布了 hexo 的 bug 修复版本,以及官方 hexo 插件 hexo-utileslint-config-hexo 的新版本。

hexo 4.1.1

新特性

  • pretty_urls: 选项中添加 trailing_html: 来从 URL 中移除“.html” #3917

    • 使用以下配置来从永久链接中移除尾部的“.html” 变量
    _config.yml
    pretty_urls:
    trailing_html: false
    • 例如:https://example.com/page/about.html -> https://example.com/page/about

修复

  • og:locale Open Graph 标签设置默认语言环境(以“语言_地区”格式) #3921
    • 之前 og:locale 只有在 language: 以“语言-地区”格式配置时才会插入
    • 通过此修复,如果语言为“en”,og:locale 将默认设置为“en_US”。有关完整列表,请参阅拉取请求。
  • meta_generator() 辅助函数应该输出正确的 Hexo 版本 #3925
  • permalink_defaults: 选项应该被解析,而不是被替换 #3926
  • 主题中的“node_modules/“ 和 “.git/“ 文件夹现在始终被忽略 #3918

重构

  • 进一步减少 lodash 的使用 #3880

hexo-util 1.7.0

新特性

  • deepMerge() 工具 #141
    • 基于 deepmerge
    • 目标对象不会被修改,这与 Object.assign() 和 lodash.merge 不同
  • prettyUrls() 工具 #152
    • 用于从 URL 字符串中移除尾部的 .htmlindex.html
    • 通常用于 SEO,特别是创建 规范 URL

修复

  • 在代码高亮 highlight() 工具中,当启用 hljs: 时,wrap: 选项不再被禁用 #138

    • 由于 wrap: 默认情况下是启用的,如果您希望恢复 hljs: 之前的行为,则需要明确禁用 wrap:
    _config.yml
    highlight:
    wrap: false
    hljs: true
  • url_for()full_url_for() 应该忽略绝对 URL(即以“http”或双斜杠“//”开头的链接) #147

  • 选择代码块不应该包含行号 #153

    • 这恢复了在 #132 中引入的破坏性更改

eslint-config-hexo 4.0.0

新特性

  • 通过使用 eslint-plugin-node v10 支持 ES2020 语法 #23
  • 优先使用 ES6+ 语法 #22
  • 移除已弃用/重复的规则 #4, #6, #21

修复

  • 保留 旧版 URL API #19
    • 与拉取请求的描述相反,Node 8 实际上确实支持较新的 WHATWG URL API。
    • 但是,后来发现完全迁移到较新的 API 会导致性能下降,因此目前 hexo 使用了旧版和较新版 API 的混合。 hexojs/hexo#3833, hexojs/hexo#3846