MarkDown_Work.md 7.9 KB

Язык Markdown и зачем он нужен

Markdown - это облегчённый язык разметки для форматирования текстовых документов. Markdown-файлы без потерь преобразуются в другие форматы (например, HTML и PDF), открываются в любом текстовом редакторе и будут понятны любому человеку даже в виде исходного кода.

Зачем нужны языки разметки

Каждый раз, открывая интернет-страницу или текстовый документ, вы сталкиваетесь с разметкой. Например, текст этой статьи выровнен по левому краю, набран шрифтом Open Sans, отдельные слова в нём выделены полужирным, а между абзацами интервал больше, чем между строками. Чтобы ваш браузер понимал, как ему правильно отобразить страницу, используются языки разметки — в данном случае HTML. В таких языках с помощью специальных меток, или тегов, указывается, какие элементы страницы каким образом выводить на экран.

Например, вот так в HTML текст выделяют полужирным:

<b>Жирный текст</b>

Вы можете взглянуть на разметку любого сайта сами, открыв исходный код страницы. Для этого нажмите Ctrl + U (для Windows) или Command + Option + U (для macOS). Ещё есть универсальный способ: добавить перед адресом сайта магическое view-source.

Как и зачем придумали Markdown

Markdown создали Джон Грубер и Аарон Шварц в 2004 году. Название языка — игра слов. Разметка по-английски называется markup, что можно дословно перевести как «отметка вверх». Markdown, соответственно, — «отметка вниз». В процессе работы Грубер и Шварц вдохновлялись соглашениями по разметке текста в электронных письмах. Они хотели сделать язык, который было бы удобно читать даже в виде исходного кода. Также Грубер написал программу на Perl, которая преобразовывала Markdown-файлы в HTML.

Markdown — не замена HTML и даже не близок к этому. Его синтаксис очень аскетичен и покрывает лишь небольшое подмножество HTML-тегов. Его идея не в том, чтобы создать синтаксис, облегчающий расстановку HTML-тегов. На мой взгляд, их уже и так легко расставлять. Идея Markdown в том, чтобы было проще читать, писать и редактировать тексты. HTML создан для публикации, а Markdown — для написания. Таким образом, синтаксис Markdown решает только те задачи, которые возникают и могут быть выражены исключительно в форме простого текста.

Как писать на Markdown

Чтобы оформить текст на Markdown, нужно расставить по нему специальные символы, указатели. Затем конвертер или редактор переведёт файл в нужный формат — и у вас в руках окажется готовый симпатичный документ.

Сам синтаксис прост и лаконичен. Вот несколько базовых правил.

Пример текста

Результат

Какие виды Markdown бывают: спецификации и диалекты

Первоначальным Markdown, который появился в 2004 году, сейчас почти никто не пользуется. Разные платформы быстро стали создавать собственные реализации Markdown.

В какой-то момент эти реализации стали вступать в противоречие друг с другом. Из-за мелких различий в синтаксисе текст, оформленный согласно одной реализации, мог по-другому отображаться в другой.

Так продолжалось, пока в 2014 году «группа поклонников Markdown» не выпустила спецификацию CommonMark. В группу входили сотрудники разных компаний, использующих Markdown на своих платформах: Pandoc, Meteor, GitHub, Reddit, Stack Overflow, Discourse.

В спецификации они не только более детально прописали синтаксис, но и добавили новые функции. Например, разрешили использовать некоторые HTML-теги внутри Markdown-разметки, добавили новые способы переноса строк, оформления ссылок и блоков кода.

На основе CommonMark создано большинство диалектов языка Markdown — они в целом соответствуют стандарту, но расширяют его и добавляют собственные функции. Такие диалекты есть у Discourse, GitHub, GitLab, Reddit, Qt, Stack Overflow, Swift, Microsoft Learn.

Есть и другие версии Markdown, которые создавались независимо от CommonMark и не наследуются от него. Вот некоторые из них:

  • Markdown Extra — написан для PHP, позже адаптирован под Python и Ruby;
  • LiaScript — написан для создания интерактивного образовательного контента;
  • MultiMarkdown — написан, чтобы Markdown можно было конвертировать в форматы TeX, PDF и ODF;
  • R Markdown — написан для создания динамических страниц, кроме R поддерживает языки Python, C++, Julia и SQL.

    Что в итоге

  • Markdown — облегчённый язык разметки, при помощи которого оформляют текстовые документы. Он конвертируется в HTML и другие форматы, но сделан так, чтобы его было удобно читать даже в виде исходного кода.

  • Markdown часто используют программисты для написания технической документации, но сфера его применения гораздо шире.

  • У Markdown есть много реализаций и диалектов. Разные платформы расширяют инструментарий языка для своих нужд.

Источник: https://skillbox.ru/media/code/chto-takoe-markdown-i-zachem-on-nuzhen-redaktory-dialekty-otlichiya-ot-html/