Skill'in Kendi İfadeleriyle
md-slides, bir markdown destesini herhangi bir tarayıcıda çalışan tek dosyalık bir HTML sunuma dönüştürür. Deste, --- HR sınırlarıyla veya # H1 başlıklarıyla ayrılmış slaytlardan oluşur; isteğe bağlı <!-- notes: ... --> sunucu notu blokları içerebilir. Üç stdlib Python betiğinden oluşan bir işlem hattı: slide_splitter.py, presenter_notes_parser.py, deck_html_renderer.py.
Çıktı; klavye ile gezinme, URL-hash ile doğrudan bağlantı, bir ilerleme çubuğu ve slayt sayacı, saat ile sonraki slayt önizlemesi içeren sunum modu ve tek sayfada bir slayt olacak şekilde PDF dışa aktarımı için bir yazdırma stil sayfasıyla gelir. md-document'ın markdown ayrıştırıcısını yeniden kullanır ve config_loader.py üzerinden tasarım sistemi token'larını okur. Belirgin slayt sınırları olmayan girdileri, 1 slaytlık desteleri, 100 satırın altındaki dosyaları ve --strict-notes %50 kapsama koşulunu geçemeyen desteleri reddeder.
Neler üretir
- Çözümlenen varsayılan çıktı dizininde deck-{slug}.html olarak yazılan, çakışmalarda sonuna -2, -3 vb. eklenen, oluşturulmuş HTML deste.
- Bölünmüş slaytları ve ardından eklenmiş notlarıyla birlikte slaytları tutan ara JSON dosyaları.
- Yazdırma stil sayfası aracılığıyla tarayıcıdan yazdırılarak üretilen, sayfa başına bir slayt içeren bir PDF.
Nasıl Çalışır
- 01Desteyi Sıralı Slaytlara Bölme
slide_splitter.py, kaynak markdown'ı okur ve --- HR satırlarında veya H1 başlıklarında böler; varsayılan olarak sınır stilini otomatik algılar ve sıralı bir slayt listesi yazar.
- 02Slayt Başına Sunucu Notları Ekleme
presenter_notes_parser.py her slaytı notu blokları için tarar ve bunları ilgili slayta ekler, böylece sunum modunda sağ paneli gösterecek bir içerik olur.
- 03Tek Dosyalık HTML Desteyi Oluşturma
deck_html_renderer.py, slaytları tasarım sistemi token'larıyla birleştirir ve desteyi üretir; komut satırında bir başlık ve bir çıktı yolu alır.
- 04Tasarım Sistemi Token'larını Uygulama
On iki marka CSS özel özelliği tasarım sisteminden gelir ve design_style, slayt düzenlerinin ne kadar yoğun olduğunu değiştirir.
- 05Sunum Olmayan Girdileri Reddedin
Girdide belirgin slayt sınırları yoksa, tek bir slaytla sonuçlanacaksa veya --strict-notes altında notes-coverage eşiğini geçemiyorsa skill dönüştürme yapmak yerine çıkış yapar.