В большинстве случаев добавление имени файла в блок кода дает читателю контекст. Это помогает читателю решить, какой файл создается или изменяется. Имя файла в блоке кода многократно повышает удобство чтения.
Теперь вопрос в том, как добавить имя файла внутри ограждения кода уценки. Возможно ли это даже с уценкой?
Так что ответ нет. Спецификация уценки по умолчанию не поддерживает передачу чего-либо, кроме языка кода. Забудьте о передаче имени файла из-за барьера кода.
Но вы можете расширить возможности уценки с помощью плагинов. Astro использует Remark для обработки файлов уценки. Поэтому вы можете использовать плагин Remark и Rehype с Astro с минимальной конфигурацией.
Использование расширения comment-code-titles
В этом блоге я использую плагин remark-code-titles. Этот плагин анализирует имя файла из ограждения кода уценки и отображает его в документе HTML.
Вы можете передать имя файла, используя нотацию :filename
, для ограждения кода в файле уценки. Это расширение анализирует уценку и извлекает из нее имя файла. Затем он отображает имя файла как элемент <div>
над блоком кода. В дополнение к этому, он также применяет класс remark-code-title
к каждому сгенерированному <div>
. Это делает стиль более удобным.
Монтаж
Давайте установим плагин remark-code-titles
используя npm.
npm i remark-code-titles
Конфигурация
Теперь откройте файл astro.config.mjs
в своем проекте и измените конфигурацию уценки. Эта модификация также будет работать для файлов mdx.
import remarkCodeTitles from "remark-code-titles"; export default defineConfig({ markdown: { remarkPlugins: [remarkCodeTitles] }, integrations: [ mdx(), ], });
Здесь я добавляю плагин remarkCodeTitles
как remarkPlugins
в файлы конфигурации Astro.
Использование в уценке и документе MDX
Чтобы использовать этот плагин, откройте новый документ markdown или MDX. Затем добавьте ограждение кода, используя 3 обратных кавычки. Затем добавьте имя файла блока кода, используя синтаксис :filename
. Вот и все.
Теперь вы можете увидеть дополнительный элемент <div>
над отрендеренным блоком кода, который содержит имя файла. Вы можете стилизовать элемент с помощью CSS, ориентируясь на уникальный класс remark-code-title
.
Заключение
В этом блоге вы узнали, как добавить имя файла или заголовок в блок кода. Это можно просто сделать с помощью плагина для заметок под названием remark-code-titles
. Astro предлагает очень простой способ интеграции плагинов Remark и Rehype. Ознакомьтесь с официальной документацией Astro, чтобы узнать больше о расширениях уценки.