Markdown — облегченный язык разметки, создaнный с целью написания
максимально читабельного и удобного для правки текcта, но пригодного
для преобразования в языки для продвинутых публикаций (HTML, Rich
Text и дpугие).
Философия Markdown — писать текст,
который легко читается и в то же время автоматически
конвертируется в обычный HTML.
Многие идеи языка были позаимствованы из
существующих соглашений по разметке текcта в электронных письмах.
Синтаксис языка построен на использовании специальных символов,
благодаря которым введeнный текст автоматически преобразуется в
дальнейшем в заголoвок, цитату, нумерованный или произвольный
список, ссылку, картинку и прочее.
Авторы сразу
выпустили и парсер Perl и Markdown пошёл в массы.
Сегодня Markdown
очень популярен. Большинство
статей онлайновых компьютерных изданий авторы
пишут имeнно в этой разметке.
Репозиторий проекта на GitHub
Синтаксис Markdown (официальная документация)
Синтаксис Markdown (статья на русском языке)
Официальный сайт Flask
http://daringfireball.net/projects/markdown/
|
Язык разметки Markdown
разработан в 2004 году
Джоном
Грубером
и
Аароном Шварцем.
-
Джон Грубер
(John Gruber) – один из самых авторитетных,
информируемых и цитируемых блоггеров
Apple-сообщества, программист.
-
Аарон Шварц
(Aaron Hillel Swartz; 1986-2013) -
интернет-гений, активист и программист (о нем
здесь).
|
|
К сожалению, до сих пор так и не принято
общепринятой спецификации Markdown, что порождает
некоторую путаницу.
Каноническое описание
Грубера не
даёт ответов на все вопросы, как и код
вышеупомянутого парсера, оказавшегося слегка глючным.
Во многих случаях он выдаёт явно плохой результат. В
общем, проблема сохраняется уже 10 лет.
Своё решение предложила группа активистов, в которую
вошли Джон Макфарлейн из университета Беркли (автор
маркдаун-конвертера Pandoc и
теста Babelmark),
представители компаний Meteor, Github, Reddit,
StackExchange и Discourse. За два года совместной
работы они согласовали «наиболее оптимальные
спецификации синтаксиса» в рамках проекта Standard
Markdown. Они также выпустили всеобъемлющий
набор тестов для проверки каждой реализации Markdown
на соответствие спецификациям.
Проект имеет неплохие перспективы, хотя бы исходя из
состава участников. Если все эти сайты перейдут на
единый синтаксис Markdown, то он действительно может
стать стандартом де-факто, даже без официальных
спецификаций. В конце концов, тому же Perl ничто не
помешало успешно развиваться без них.
Казалось бы, инициатива достойна всяческих похвал.
Однако, сам Джон Грубер несколько
возмущён, что посторонние люди называют
очередную реализацию синтаксиса «стандартной».
Существует более
двух десятков реализаций синтаксиса, и почему
25-тая вдруг должна называться «стандартной» с
самого начала? В общем-то, это классическая ситуация,
которая в мире ИТ встречается очень часто.
К тому же, в консорциуме W3C некоторое время назад
создали группу Markdown
Community Group, которая и должна координировать
усилия по выработке единой версии Markdown. Работа и
выпуск «стандартных» спецификаций за их спиной — по
меньшей мере, показатель некоторого неуважения к тем,
кто потратил время и усилия на этот проект.
Тем не менее, Meteor, Github, Reddit, StackExchange
— сайты, имеющие большое влияние на
веб-разработчиков. И если они договорились о единой
реализации синтаксиса, существует неплохая
вероятность, что многие веб-разработчики последуют
их примеру. А это самое главное. Авторы Standard
Markdown говорят, что после обсуждения с сообществом
готовы выпустить версию 1.0, которую можно будет
признать «стандартной и однозначной».
Сравнить между собой 20+ реализаций синтаксиса
Markdown можно с помощью неофициального
теста MDTest.
Примеры реализации парсера на C99 и JavaScript и
тесты на соответствие спецификациям опубликованы
на Github.
Непосредственно сам текст спецификаций Standard
Markdown с более чем 400 примерами опубликован здесь (маркдаун-исходник: spec.txt).
Судя по первым
отзывам в
сообществе веб-разработчиков, грядёт очередной
холивар.