Skip to content

Kbd Plugin ​

Плагин @ampernic/markdown-it-kbd превращает [[x]] в <kbd>x</kbd>. TypeScript-переписка классического markdown-it-kbd с типизированным API и минимальным набором опций.

📦 Установка ​

bash
npm install @ampernic/markdown-it-kbd

Пакет доступен во внутреннем Forgejo-реестре:

@ampernic:registry=https://altlinux.space/api/packages/ampernic/npm/

🚀 Использование в VitePress ​

typescript
// docs/.vitepress/config.ts
import { defineConfig } from 'vitepress'
import kbd from '@ampernic/markdown-it-kbd'

export default defineConfig({
  markdown: {
    config: (md) => {
      md.use(kbd)
    },
  },
})

📖 Синтаксис ​

markdown
Нажмите [[Ctrl]] + [[C]] чтобы скопировать

Рендерится как:

Нажмите Ctrl + C чтобы скопировать

Правила разбора ​

  • Закрывающий ]] должен быть на той же строке, что и открывающий [[.
  • Вложенный [[ до закрытия отменяет совпадение.
  • Внутри [[...]] продолжает работать инлайновый Markdown: [[*Ctrl*]] -> <kbd><em>Ctrl</em></kbd>.
  • В инлайновом и блочном коде клавиши не оборачиваются.

Опции ​

Передаются вторым аргументом в md.use(kbd, options):

ОпцияТипПо умолчаниюОписание
tagstring'kbd'Тег-обёртка для клавиши
classNamestring-Класс на теге-обёртке. Опускается, если не задан

Пример с настройками ​

typescript
md.use(kbd, { tag: 'span', className: 'kbd-key' })
// [[Ctrl]] -> <span class="kbd-key">Ctrl</span>