Hasilkan situs statis dan feed Atom, dengan Markdown, shell, dan pandoc.
git clone pdssg, idealnya di samping direktori sumber situs Anda.
git clone https://github.com/torresjrjr/pdssgUntuk menjalankan pdssg dan membangun situs statis, jalankan skrip pdssg dalam satu direktori di atas direktori sumber situs.
$ ls
src/ pdssg/
$ ./pdssg/pdssg pdssg adalah skrip shell tunggal yang dapat dieksekusi, tanpa tanda baris perintah. Ini hanya menghasilkan direktori situs tetangga dst/ (tujuan) dari direktori tetangga yang ada src/ (sumber) dengan konten situs (file penurunan harga yang akan dikonversi ke halaman web HTML, dan file lainnya).
Desain pdssg bersifat modular dan berbasis pohon. Berikut ini contoh direktori sumber situs .
src/
|-- _ignore
|-- _feeds
|-- index.md
|-- about.md
|-- posts.md
|-- posts/
| |-- _drafts/
| | `--- 2020-04-01-bored.md
| |-- 2020-01-01-new-year.md
| |-- 2020-02-01-corona-what.md
| `-- 2020-03-01-stuck-at-home.md
|-- feeds/
| `-- posts.md
|-- assets/
| `-- style.css
|-- _templates/
| |-- atom.xml
| `-- main.html
`-- _includes/
|-- header.html
|-- footer.html
`-- meta.html
Inilah direktori build yang dihasilkan.
dst/
|-- index.html
|-- about.html
|-- posts.html
|-- posts/
| |--- 2020-01-01-new-year.html
| |--- 2020-02-01-corona-what.html
| `--- 2020-03-01-stuck-at-home.html
|-- feeds/
| `--- posts.html
`-- assets/
`--- style.css
Catatan: file dan direktori yang diawali dengan garis bawah _ akan dibuang.
File penurunan harga akan dikonversi ke file HTML, siap sebagai halaman web. Pengecualiannya adalah jalur file yang cocok dengan pola dalam file ./_ignore , seperti file .gitignore .
pdssg mengharapkan file Markdown memiliki blok frontmatter YAML, yang merupakan blok metadata YAML yang dikelilingi oleh sepasang --- , sebelum konten file lainnya.
Frontmatter setidaknya harus memiliki nilai title , yang akan digunakan untuk membuat judul judul <h1> . nilai author dan date adalah hal yang umum, dan direkomendasikan jika perlu.
Contoh file penurunan harga:
---
title : My Webpage Title
author : John Smith
date : 2020-12-30
---
## Subheading
contents... Seperti pada contoh, direktori _includes dan _templates akan digunakan untuk menghasilkan file HTML dan Atom. Mereka kemudian dibuang.
Untuk file di _templates :
atom.xml digunakan untuk membuat dokumen HTML.main.html digunakan untuk membuat feed Atom. Untuk file di _includes :
meta.html disisipkan di header dokumen di dalam tag <meta> .header.html disisipkan di badan dalam tag <body> , sebelum konten utama.footer.html disisipkan di badan dalam tag <body> , setelah konten utama.Umpan atom adalah umpan mirip RSS berdasarkan format sindikasi yang lebih baru dan lebih kuat. Mereka pada dasarnya digunakan seperti RSS dan disebut demikian. Umpan atom memungkinkan pembaca berlangganan konten baru situs web, seperti blog.
pdssg dapat membuat feed Atom dari direktori, dengan file direktori sebagai entri feed. Untuk melakukan ini, Anda perlu membuat direktori tertentu untuk feed Anda, dan membuat "file benih Atom" seperti:
./feeds/ ) dan tulis jalurnya di file konfigurasi _feeds./posts/ )../feeds/posts/ )..md ke jalur (misalnya ./feeds/posts.md ). Lihat contoh situs di atas untuk demonstrasi (direktori posts/ ).
File benih Atom akan dikonversi menjadi file umpan Atom. Umpan yang dihasilkan ini akan ada di jalur baru tetapi dengan ekstensi .xml bukan .md . Dalam contoh ini, feed atom akan muncul di example.com/feeds/posts.xml . Catatan, file ./posts.md tidak diperlukan untuk feed, hanya direktori.
CATATAN: Entri atom diurutkan secara alfanumerik berdasarkan nama file terkait, bukan berdasarkan date yang ditentukan oleh frontmatter YAML.
Proyek ini lahir dari tantangan pribadi, untuk situs saya sendiri. Atas permintaan seorang blogger yang ramah, saya membersihkannya dan mempublikasikannya.
Hubungi saya: t.me/torresjrjr