- комментарий 0:
From: ярик сысоев
Date: 2026-04-22 10:00:48Z
А я уж думал я один маркдауна не смог осилить. У меня изначально на сайте все страницы были в формате маркдауна, но его стало не хватать, поэтому постепенно скрипт генерации вырос в что-то такое:
cat "$1" | preprocessor1 | preprocessor2 | ... | pandoc -f markdown | cat header - footer
Но, как оказалось, pandoc обрабатывает inline HTML так, как только одному ему известно.
(сводящего меня с ума браузера, который додумывает за меня вёрстку было, видимо, мало)
В итоге не выдержал и написал свой DSL. Не без косяков, но зато у меня теперь есть достаточная власть, чтобы их исправлять.
Да и в книжку собирать так явно удобнее стало, чем через башевые скрипты
- комментарий 1:
From: Sergey Matveev
Date: 2026-04-22 10:17:10Z
*** ярик сысоев [2026-04-22 13:00]:
>У меня изначально на сайте все страницы были в формате маркдауна, но его стало не хватать
У меня почти везде возможностей MD не хватало бы тоже.
Те же относительные или внутренние ссылки.
>В итоге не выдержал и написал свой DSL. Не без косяков, но зато у меня теперь есть достаточная власть, чтобы их исправлять.
>Да и в книжку собирать так явно удобнее стало, чем через башевые скрипты
Понимаю, понимаю.
- комментарий 2:
From: ярик сысоев
Date: 2026-04-22 10:27:57Z
>Те же относительные или внутренние ссылки.
С ними же вроде всё нормально, нет? Или речь про сборке в пдф? Я делал так, чтобы ссылки вида /chess/a/abilityname превращались а #chess:a:abilityname , чтобы при склеивании страниц в один документ они продолжали работать, вы об этом?
- комментарий 3:
From: Sergey Matveev
Date: 2026-04-22 11:21:59Z
*** ярик сысоев [2026-04-22 13:27]:
>С ними же вроде всё нормально, нет?
Я не вижу в спецификации CommonMark как можно бы было сослаться на
соседний файл. Беглый поиск говорит, что конкретно GitHub позволяет
указать относительные ссылки:
https://github.blog/news-insights/product-news/relative-links-in-markup-files/
но только после конвертации в HTML они же уже не будут .md файлами, а .html.
В PDF или Info тоже поломаются настоящие URI, ведь мы заранее же не можем
сказать во что хотим сконвертировать.
- комментарий 4:
From: ярик сысоев
Date: 2026-04-22 12:44:27Z
>Я не вижу в спецификации CommonMark
Даже если там и нет, уверен, 100% его реализаций просто содержимое круглых скобок в href запихивают и оно просто работает.
Если речь про то, что **на** маркдаун сослаться нельзя, то не представляю, как это можно решить лучше, чем есть сейчас (при этом не заставляя браузеры и остальных добавлять нативную поддержку для него).
Copyparty вот, например, позволяет ссылаться на .md файлы.
Если это относительная ссылка, то он добавляет ?v в url, чтобы открыть не как сырой файл.
Если внешняя ссылка - игнорирует и оставляет как есть.
Я (и наверняка много кто ещё, кто хранит исходники блога в md) просто не высовывают его наружу и в ссылках вообще не указывают расширение.
- комментарий 5:
From: Sergey Matveev
Date: 2026-04-22 12:59:22Z
*** ярик сысоев [2026-04-22 15:44]:
>Даже если там и нет, уверен, 100% его реализаций просто содержимое круглых скобок в href запихивают и оно просто работает.
Уверен что все просто пихают что будет указано в URI, всё так. Но если я
в .md укажу относительную ссылку на .html, то значит пока я редактирую
.md я не смогу в редакторе перейти на этот файл (ведь .html не будет,
пока только .md!). А если я генерирую вывод не только в .html, но в
.pdf/.info/whatever? Делать постпроцессор, который бы для каждого
нужного выхлопа подправлял ссылки? Вариант, и наверное только такой.
>Я (и наверняка много кто ещё, кто хранит исходники блога в md) просто не высовывают его наружу и в ссылках вообще не указывают расширение.
Наверное да, как-то так. И по моему это говно какое-то, раз такую
базовую потребность MD/CM не закрывают.
Я посмотрел как в suckless сайтах устроено. А всё банально: они просто
указывают ссылки на результирующий HTML, даже подставляя домен. То есть,
локально их всё равно не посмотреть по человечески.