Создайте статический сайт и каналы Atom с помощью Markdown, оболочки и pandoc.
git clone pdssg, в идеале рядом с исходным каталогом вашего сайта.
git clone https://github.com/torresjrjr/pdssgЧтобы запустить pdssg и создать статический сайт, выполните сценарий pdssg в одном каталоге над исходным каталогом сайта.
$ ls
src/ pdssg/
$ ./pdssg/pdssg pdssg — это один исполняемый сценарий оболочки без флагов командной строки. Он просто генерирует каталог dst/ соседнего сайта (назначение) из существующего соседнего каталога src/ (источник) с содержимым сайта (файлы Markdown для преобразования в веб-страницы HTML и другие файлы).
Дизайн pdssg является модульным и древовидным. Вот пример исходного каталога сайта .
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
Вот полученный каталог сборки.
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
Примечание. Файлы и каталоги, начинающиеся с подчеркивания _ будут удалены.
Файлы Markdown будут преобразованы в файлы HTML, готовые в виде веб-страниц. Исключением являются пути к файлам, соответствующие шаблонам в файле ./_ignore , например файле .gitignore .
pdssg ожидает, что файлы Markdown будут иметь блок заголовка YAML, который представляет собой блок метаданных YAML, окруженный парой --- , предшествующий остальному содержимому файла.
Во вступительной части должно быть как минимум значение title , которое будет использоваться для создания заголовка <h1> . Значения author и date являются общими и рекомендуются при необходимости.
Пример файла Markdown:
---
title : My Webpage Title
author : John Smith
date : 2020-12-30
---
## Subheading
contents... Как и в примере, каталоги _includes и _templates будут использоваться для создания файлов HTML и Atom. Затем они отбрасываются.
Для файлов в _templates :
atom.xml используется для создания HTML-документов.main.html используется для создания каналов Atom. Для файлов в _includes :
meta.html вставляется в заголовок документа в тегах <meta> .header.html вставляется в тело внутри тегов <body> перед основным содержимым.footer.html вставляется в тело внутри тегов <body> после основного содержимого.Ленты Atom — это RSS-каналы, основанные на новом и более надежном формате распространения. По сути, они используются так же, как RSS, и называются таковыми. Каналы Atom позволяют читателям подписываться на новый контент веб-сайта, например блога.
pdssg может создавать каналы Atom из каталогов, используя файлы каталогов в качестве записей каналов. Для этого вам нужно создать указанный каталог для ваших каналов и создать «начальный файл Atom» как таковой:
./feeds/ ) и пропишите его путь в файле конфигурации _feeds./posts/ )../feeds/posts/ )..md (например, ./feeds/posts.md ). Для демонстрации обратитесь к примеру сайта выше (каталог posts/ ).
Исходный файл Atom будет преобразован в файл канала Atom. Полученный фид будет существовать по новому пути, но с расширением .xml вместо .md . В этом примере канал атома появится по адресу example.com/feeds/posts.xml . Обратите внимание: файл ./posts.md не нужен для канала, он нужен только для каталога.
ПРИМЕЧАНИЕ. Записи Atom упорядочены по алфавиту и цифрам по соответствующим именам файлов, а не по date указанной в их заголовке YAML.
Этот проект родился из личного вызова для моего собственного сайта. По просьбе дружелюбного блоггера я подчистил и выложил в открытый доступ.
Свяжитесь со мной: t.me/torresjrjr