[50b49eb63a10d5852200885462917270ba33c433] #doc #hate 

Пустые строки перед списками Markdown

http://xahlee.info/comp/fuck_markdown.html
Очередная статья на тему "нафиг markdown!". Размеры его спецификации
просто огромны. Это сложный, сильно сложный формат. Никем толком не
поддерживается, как и CommonMark. Только какие-то подмножества, да и то
с разной интерпретацией/багами.

Для меня сразу же падает ценность/серьёзность проекта где используется
.md. Никого из серьёзных не знаю, кто бы его для дела применял в больших
документациях. А сам я преобладающую часть всех своих проектов перевёл
на свой SWG. Вот это -- реально простой формат. gemtext в целом тоже
можно отнести бы было, но он не подходит для чтения людьми, из-за
длинных строк (то есть это формат для машины).

[оставить комментарий]
комментарий 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, даже подставляя домен. То есть,
локально их всё равно не посмотреть по человечески.