首页
/ Rspress v2.0.0-beta.14 发布:Shiki 集成优化与异步入口支持

Rspress v2.0.0-beta.14 发布:Shiki 集成优化与异步入口支持

2025-06-27 11:20:04作者:苗圣禹Peter

Rspress 是一个现代化的静态站点生成器,专为技术文档和博客设计。它基于 React 和 MDX,提供了丰富的功能集,包括代码高亮、主题定制和插件系统等。本次发布的 v2.0.0-beta.14 版本带来了几项重要改进,特别是对代码高亮系统的重构和异步入口的支持。

Shiki 集成优化

在本次更新中,Rspress 团队对代码高亮系统进行了重大重构。原先的 @rspress/plugin-shiki 插件包已被移除,取而代之的是内置的 rspress/shiki-transformers 模块。这一变化意味着:

  1. Shiki 现在已成为 Rspress 的核心功能,无需额外安装插件即可使用
  2. 内置了多个实用的代码转换器,如行号显示和兼容性元数据高亮
  3. 开发者可以更灵活地组合使用内置转换器和社区提供的转换器

使用示例如下:

import { CodeBlockRuntime } from '@theme';
import { transformerNotationHighlight } from '@shikijs/transformers';
import { transformerLineNumber } from "rspress/shiki-transformers";

<CodeBlockRuntime
  lang="ts"
  title="highlight.ts"
  code={`console.log('Highlighted'); // [!code highlight]
// [!code highlight:1]
console.log('Highlighted');
console.log('Not highlighted');`}
  shikiOptions={{
    transformers: [transformerNotationHighlight(), transformerLineNumber()],
  }}
/>

这种设计使得代码高亮的定制更加模块化和灵活,开发者可以根据需要选择特定的转换器组合。

异步入口支持

另一个重要改进是新增了对异步入口的支持。这意味着:

  1. 构建过程可以更高效地处理大型文档站点
  2. 开发者可以按需加载资源,优化首屏性能
  3. 为未来可能的动态功能扩展奠定了基础

其他改进

本次更新还包括以下改进:

  1. 修复了 MDX 标题中空格处理的问题,确保文档结构更准确
  2. 移除了不再需要的 highlightLanguages 配置选项,简化了配置
  3. 将部分测试用例迁移到单元测试,提高了测试覆盖率和稳定性

升级建议

对于现有项目,升级时需要注意:

  1. 如果之前使用了 @rspress/plugin-shiki,需要移除相关配置,改用内置的转换器
  2. 检查项目中是否有依赖 highlightLanguages 的配置,需要移除
  3. 考虑利用新的异步入口特性优化项目结构

Rspress 团队通过这些改进,进一步提升了框架的稳定性和易用性,为开发者提供了更强大的文档站点构建工具。

登录后查看全文
热门项目推荐
相关项目推荐