Ana içeriğe geç
Programlama

Guile Scheme ile Org modunu HTML formatına çeviren kütüphane geliştirildi

Öne çıkanlar

  • OrgWebAlchemy, Org mode belgelerini Emacs bağımlılığı olmadan ayrıştırıp HTML çıktısına dönüştürüyor.
  • Sözdizim çözümlemesinde düzenli ifadeler yerine Guile Scheme'in buz-9 peg dilbilgisi modülü kullanılıyor.
  • Sözdizim ağacından üretilen SXML verisi, kullanıcı tanımlı CSS sınıflarıyla esnek biçimde HTML'e aktarılıyor.

Geliştirici Josep, Emacs editörüne ihtiyaç duymadan Org mode belgelerini HTML formatına dönüştüren OrgWebAlchemy adlı açık kaynaklı Guile Scheme kütüphanesini tanıttı. Başlangıçta düzenli ifadelerle geliştirilmeye çalışılan proje, Org sözdiziminin iç içe listeler, bağlantılar ve özel bloklar gibi karmaşık yapılar içermesi nedeniyle Ayrıştırma İfadesi Dilbilgisi yaklaşımına taşındı. Projenin kaynak kodları Codeberg platformunda paylaşıldı.

OrgWebAlchemy, Guile Scheme içinde yerleşik olarak sunulan buz-9 peg modülünü kullanarak girdi metinlerini soyut sözdizim ağacına dönüştürüyor. Elde edilen sözdizim ağacı ardından SXML formatına aktarılıyor ve son aşamada HTML çıktısı üretiliyor. Kütüphane; başlıklar, paragraflar, kaynak kodu ve alıntı blokları, tablolar ile farklı girinti düzeylerine sahip sıralı, sırasız ve açıklama listelerini ayrıştırabiliyor. HTML üretim katmanında ise başlık düzeylerine göre CSS sınıflarının belirlenmesine izin veren parametrik bir yapı yer alıyor.

GNU LGPL v3 lisansıyla dağıtılan projenin yakında GNU Guix paket yöneticisine guile-orgwebalchemy adıyla eklenmesi hedefleniyor. Geliştirici, dilbilgisi kurallarının doğrudan S-ifadesi biçiminde yazılmasının dilin belgelenmesini kolaylaştırdığını belirtti. Ayrıştırıcı mimarisinin gevşek bağlı yapısı sayesinde, ilerleyen süreçte Markdown gibi farklı çıktı formatlarına yönelik dönüştürücüler de eklenebilecek.

Kaynak

Bu özet yapay zekâ ile hazırlanmıştır; ayrıntılar ve doğrulama için orijinal kaynağa başvurun.