@aparte/ plugin-shiki (英语)
语法突出显示 独立 通过 志纪。 。 。 . 将 shiki 注册为突出显示提供者, 并辅以 单个懒散创建的突出显示器 - 语法 和按需装入的主题负载并被缓存,所以你永远不会重新初始化每个代码块.
npm install @aparte/plugin-shiki @aparte/core shiki
import { setupShikiProvider } from '@aparte/plugin-shiki';
await setupShikiProvider({ theme: 'github-dark' });
@aparte/core 财务报告和审定财务报表 shiki 为: 同行依赖关系。 。 。 . setupShikiProvider 自动同步 await 一次 一次
在渲染突出显示消息前启动 .
两个切入点,因为大小是一个选择
正在装入 无论是懒惰还是懒惰:语言第一次出现时会获取语法,而且未知 语言降解为纯文本,而不是扔出.
航运 没有。 上面的导入拉入 shiki,其捆绑地图 每个 已知语言a
动态导入, 因此您的捆绑器每个语法会输出一个文件
其他情况:
| 您导入 | 文件已发布 | 重量 |
|---|---|---|
@aparte/plugin-shiki | 302 (简体中文) | 11 个 MB |
@aparte/plugin-shiki/core (3个语法) | 1个 | 560千贝 |
列出各种语言的选项不会改变这一点——静态导入是静态导入(测量: 仍为302文件). 所以,如果你运送的东西很重要, 建立亮点自己 并把它交给:
这些精细的入口 单独的软件包 ——同时增加 shiki数字 :
npm install @shikijs/langs @shikijs/themes
import { createHighlighterCore } from 'shiki/core';
import { createJavaScriptRegexEngine } from 'shiki/engine/javascript';
import ts from '@shikijs/langs/typescript';
import githubDark from '@shikijs/themes/github-dark';
import { setupShikiProviderFromHighlighter } from '@aparte/plugin-shiki/core';
setupShikiProviderFromHighlighter(
await createHighlighterCore({
themes: [githubDark],
langs: [ts],
engine: createJavaScriptRegexEngine(),
}),
);
这个模块没有从 shiki 交易是它的语法是固定的 所以是一种语言
不随身携带会像纯文本一样产生(没有按需载荷可返回).
仅限无害环境管理。 离相单相.