faviconv-noREADME|ARCHIVES|CATEGORIES|SEARCH|
«Mon Dec 21 2020AkrISrn开发依赖eb862baRaw
Prism.js
The documentation is a work in progress, and English edition is just an empty shell for now. I will translate it when Chinese edition has done.

v-no 使用 Prism.js 对代码块进行高亮,需要高亮的语言越多,它的打包体积越大。如果你完全用不到它,最多只能将 PRISM_LANGUAGES 环境变量设为空,目前还没有办法将它彻底移除(默认打包的 JS + CSS 体积在 42 KB 左右,环境变量设空后能减少到 7 KB)。

不过因为它是动态引入的,只在页面有需要高亮的代码块时才会被加载,所以你也不用担心体积太大的代码文件会影响到页面的加载速度。

它默认支持的语言:

  • Markup:markuphtmlxmlsvgmathmlssmlatomrss
  • CSS:css
  • C-like:clike
  • JavaScript:javascriptjs

使用的插件:

使用的主题:tomorrow

编译 Prism.js

v-no 使用 babel-plugin-prismjs 对 Prism.js 按需编译。它的相关代码会被单独打包在 assets/js/prismjs.[hash].js 文件,体积会随着 PRISM_LANGUAGES 环境变量的改动而产生变化。

但我不知道为什么如果不修改导入了 Prism.js 的代码文件,它就不会使用新的环境变量进行编译。具体表现为编译后的 prismjs.[hash].js 文件的大小和 Hash 值都没有发生变化。

为了确保对 Prism.js 相关变量的更新能够生效,你需要在编译前对 src/ts/async/prismjs.ts 做出一点不影响代码逻辑的小改动。比如增加一个空行,等编译完成再把它删去。

This page is open source, improve it
Graph