facebook / facebook/docusaurus

Use shiki for code highlight

Đang mở
#9,122 48 bình luận 18 reaction 0 người được giao Xem trên GitHub
proposal
Ngôn ngữ chính
TypeScript
Star
66.2k
Fork
10k
Merge trung bình
1 ngày 3 giờ
Pull request đã merge (30 ngày)
52

Mô tả

### Have you read the Contributing Guidelines on issues?

- [X] I have read the [Contributing Guidelines on issues](https://github.com/facebook/docusaurus/blob/main/CONTRIBUTING.md#issues).

### Motivation

Have you guys ever considered switching to Shiki for code highlight, instead of Prism?

I find Shiki a lot nicer, with much better grammars that are able to highlight much more code than Prism does.

Also, [Shiki](https://github.com/shikijs/shiki) is being actively maintained, while [Prism](https://github.com/PrismJS/prism) seems a little bit abandoned. However, even if Shiki wasn't being maintained, its themes would never stop improving since they are taken from VS Code anyway.

Here is a quick comparison I did:

Prism (dracula - the default theme from Docusaurus):

![chrome_tz08jPgBEk](https://github.com/facebook/docusaurus/assets/29582865/d0428924-571f-4e33-be0b-7efbdd453a4b)

Shiki (dracula):

![chrome_7sR87uZFQO](https://github.com/facebook/docusaurus/assets/29582865/46914b60-89f5-44da-9b37-68e8f42c7d8d)

PS: I'm aware of [docusaurus-preset-shiki-twoslash](https://www.npmjs.com/package/docusaurus-preset-shiki-twoslash), and that's what I used for the example above (https://github.com/felipecrs/shiki-docusaurus-test). This is to suggest a better default for the project as a whole.

Maybe it's a good breaking change candidate for Docusaurus v3?

### Self-service

- [ ] I'd be willing to do some initial work on this proposal myself.

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.