VitePress 울타리 코드 블록 구문은 .NET 또는 기타 언어의 특징을 강조합니다.

2599 단어 vitepressdotnet
이 게시물은 원래 https://mysticmind.dev/vitepress-fenced-code-block-syntax-highlighting-quirks-with-net-or-other-languages에 게시되었습니다.

VitePress는 환상적인 라이브러리인 구문 강조 표시에 Shiki을 사용합니다. Shiki는 VSCode에서 자동으로 언어 문법을 가져오므로 울타리 코드 블록의 언어 이름 등이 여기에서 나옵니다.

.NET의 경우 캡처된 언어 이름은 기본적으로 csharpfsharp입니다. 즉, csharp 또는 fsharp 를 사용하는 경우에만 구문 강조 표시가 작동합니다. 그러나 관용적 사용은 구문 강조를 위해 파일 확장자csfs를 사용하므로 이것이 문제가 되는 경향이 있습니다. 이 문제를 해결하기 위해 Shiki에게 PR을 보냈습니다. 그러나 많은 움직이는 부분이 있습니다. 즉, Shiki는 수정 사항으로 릴리스를 수행한 다음 VitePress가 이를 선택하고 릴리스를 수행해야 합니다.

.NET 언어나 다른 언어뿐만 아니라 문제가 있는 경우 쉽게 해결할 수 있습니다. VitePressconfig.js 파일을 편집하고 다음을 추가합니다.

import { BUNDLED_LANGUAGES } from 'shiki'

// Include `cs` as alias for csharp
BUNDLED_LANGUAGES
  .find(lang => lang.id === 'csharp').aliases.push('cs');

// Include `fs` as alias for fsharp
BUNDLED_LANGUAGES
  .find(lang => lang.id === 'fsharp').aliases.push('fs');

좋은 웹페이지 즐겨찾기