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:
markup
、html
、xml
、svg
、mathml
、ssml
、atom
、rss
- CSS:
css
- C-like:
clike
- JavaScript:
javascript
、js
使用的插件:
- line-numbers
- line-highlight(像这样把它们加到语言标记后
```text|1-2,5,9-20
) - show-language
- copy-to-clipboard
使用的主题: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