Уценка

редактировать
Чтобы узнать о маркетинговом термине, см. Уценка.
Уценка
Markdown-mark.svg
Тип интернет-СМИ text/markdown
Единый идентификатор типа (UTI) net.daringfireball.markdown
Разработано Джон Грубер и Аарон Шварц
Первый выпуск 19 марта 2004 г. (17 лет назад) ( 2004-03-19)
Последний релиз 1.0.1 (17 декабря 2004 г. (16 лет назад)) ( 2004-12-17)
Тип формата Язык разметки
Расширен до pandoc, MultiMarkdown, Markdown Extra, CommonMark, RMarkdown
Открытый формат ? да
Веб-сайт daringfireball.net / проекты / уценка /

Markdown - это легкий язык разметки для создания форматированного текста с помощью текстового редактора. Джон Грубер и Аарон Шварц создали Markdown в 2004 году как язык разметки, который привлекает читателей в форме исходного кода. Markdown широко используется в блогах, обмене мгновенными сообщениями, онлайн-форумах, программном обеспечении для совместной работы, страницах документации и файлах readme.

Первоначальное описание Markdown содержало двусмысленность и вызывало вопросы без ответов. Чтобы исправить эти проблемы, в более поздних реализациях были введены тонкие отличия от исходной версии, а также расширения синтаксиса.

СОДЕРЖАНИЕ

  • 1 История
  • 2 Стандартизация
    • 2.1 CommonMark
  • 3 варианта
    • 3.1 Разметка со вкусом GitHub
    • 3.2 Дополнительная уценка
  • 4 Пример
  • 5 Реализации
  • 6 См. Также
  • 7 ссылки
  • 8 Внешние ссылки

История

В 2002 году Аарон Шварц создал atx, «настоящий структурированный текстовый формат». Затем Шварц и Джон Грубер вместе работали над созданием языка Markdown в 2004 году с целью дать людям возможность «писать, используя простой для чтения и записи простой текстовый формат, при необходимости преобразовывая его в структурно допустимый XHTML (или HTML ) ".

Его ключевой целью дизайна является удобочитаемость - чтобы язык можно было читать как есть, не создавая впечатление, что он был размечен тегами или инструкциями по форматированию, в отличие от текста, отформатированного с помощью языка разметки, такого как Rich Text Format (RTF) или HTML, который иметь понятные теги и инструкции по форматированию. С этой целью его главным источником вдохновения являются существующие соглашения о разметке обычного текста в электронной почте, хотя он также опирается на более ранние языки разметки, в частности, setext, Textile и reStructuredText.

Грубер написал сценарий Perl Markdown.pl, который преобразует вводимый размеченный текст в допустимый, правильно сформированный XHTML или HTML и заменяет угловые скобки ' lt;' ' gt;' и амперсанды ' amp;' соответствующими ссылками на символьные сущности. Он может выполнять роль отдельного скрипта, плагина для Blosxom или Movable Type или текстового фильтра для BBEdit.

Стандартизация

Markdown характеризуется неформальной спецификацией и эталонной реализацией для преобразования в HTML. Со временем появилось множество реализаций Markdown. Люди разрабатывали их в основном из-за потребности в дополнительных функциях поверх базового синтаксиса, таких как таблицы, сноски, списки определений (технически списки описаний HTML) и разметка внутри блоков HTML. Поведение некоторых из них отличается от эталонной реализации. В то же время привлек внимание ряд двусмысленностей в неформальной спецификации. Эти проблемы стимулировали создание таких инструментов, как Babelmark, для сравнения результатов различных реализаций, а также усилия некоторых разработчиков синтаксических анализаторов Markdown для стандартизации. Однако Грубер утверждал, что полная стандартизация была бы ошибкой: «У разных сайтов (и людей) разные потребности. Ни один синтаксис не сделает всех счастливыми».

В марте 2016 года были опубликованы два актуальных информационных RFC в Интернете:

  • RFC 7763 представил тип MIME text/markdown с исходным вариантом.
  • RFC 7764 обсудили и зарегистрирован варианты MultiMarkdown, GitHub ароматизированный Markdown (GFM), Pandoc, CommonMark и Markdown Extra среди других.

CommonMark

CommonMark
Markdown-mark.svg
Расширения имени файла .md, .markdown
Тип интернет-СМИ text/markdown; variant=CommonMark
Единый идентификатор типа (UTI) неуверенный
Конформация ИМП public.plain-text
Разработано Джон Макфарлейн, открытый исходный код
Первый выпуск 25 октября 2014 г. (6 лет назад) ( 2014-10-25)
Последний релиз 0,30 (19 июня 2021 г. (3 месяца назад)) ( 2021-06-19)
Тип формата Язык разметки
Расширен с Уценка
Расширен до Уценка со вкусом GitHub
Открытый формат ? да
Веб-сайт spec.commonmark.org

С 2012 года группа людей, включая Джеффа Этвуда и Джона Макфарлейна, начала то, что Этвуд охарактеризовал как усилия по стандартизации. Веб-сайт сообщества теперь направлен на «документирование различных инструментов и ресурсов, доступных авторам и разработчикам документов, а также разработчикам различных реализаций Markdown». В сентябре 2014 года Грубер возразил против использования «Markdown» в названии этой попытки, и он был переименован в новый диалект под названием CommonMark. CommonMark.org опубликовал несколько версий спецификации, эталонной реализации, набора тестов и «[планирует] объявить окончательную версию 1.0 спецификации и набора тестов в 2019 году». С тех пор не было выпущено ни одной спецификации 1.0, так как основные проблемы все еще остаются нерешенными. Тем не менее, следующие сайты и проекты приняли CommonMark: Discourse, GitHub, GitLab, Reddit, Qt, Stack Exchange (Stack Overflow) и Swift.

Варианты

Такие сайты, как GitHub, Bitbucket, Reddit, Diaspora, Stack Exchange, OpenStreetMap и SourceForge, используют варианты Markdown для облегчения обсуждения между пользователями.

В зависимости от реализации могут поддерживаться базовые встроенные HTML-теги. Курсивный текст может быть реализован с помощью _underscores_и / или *single-asterisks*.

Уценка со вкусом GitHub

GitHub использовал свой собственный вариант Markdown еще с 2009 года, добавляя поддержку дополнительного форматирования, такого как таблицы и содержимое блока вложенности внутри элементов списка, а также специфичные для GitHub функции, такие как автоматическое связывание ссылок на коммиты, проблемы, имена пользователей. и т. д. В 2017 году GitHub выпустил официальную спецификацию своей GitHub Flavored Markdown (GFM), основанную на CommonMark. Это строгий надмножество CommonMark, точно соответствующее его спецификации, за исключением таблиц, зачеркивания, автоматических ссылок и списков задач, которые GFM добавляет в качестве расширений. GitHub также соответствующим образом изменил парсер, используемый на своих сайтах, что потребовало изменения некоторых документов. Например, GFM теперь требует, чтобы символ решетки, который создает заголовок, отделялся от текста заголовка пробелом.

Markdown Extra

Markdown Extra - это легкий язык разметки, основанный на Markdown, реализованном в PHP (изначально), Python и Ruby. Он добавляет функции, недоступные с простым синтаксисом Markdown. Markdown Extra поддерживается в некоторых системах управления контентом, таких как, например, Drupal и TYPO3.

Markdown Extra добавляет в Markdown следующие функции:

  • Разметка разметки внутри блоков HTML
  • Элементы с атрибутом id / class
  • «Изолированные блоки кода», которые охватывают несколько строк кода.
  • Таблицы
  • Списки определений
  • Сноски
  • Сокращения

Пример

Текст с использованием синтаксиса Markdown Соответствующий HTML, созданный процессором Markdown Текст просматривается в браузере
Heading ======= Sub-heading ----------- Paragraphs are separated by a blank line. Two spaces at the end of a line produce a line break.
lt;h1gt;Headinglt;/h1gt; lt;h2gt;Sub-headinglt;/h2gt; lt;pgt;Paragraphs are separated by a blank line.lt;/pgt; lt;pgt;Two spaces at the end of a linelt;br /gt; produce a line break.lt;/pgt;
Заголовок Подзаголовок

Абзацы разделяются пустой строкой.

Два пробела в конце строки создают разрыв строки.

 Text attributes _italic_, **bold**, `monospace`. Some implementations may use *single-asterisks* for italic text. Horizontal rule: --- Strikethrough: ~~strikethrough~~
lt;pgt;Text attributes lt;emgt;italiclt;/emgt;, lt;stronggt;boldlt;/stronggt;, lt;codegt;monospacelt;/codegt;. Some implementations may use lt;igt;single-asteriskslt;/igt; for italic text.lt;/pgt; lt;pgt;Horizontal rule:lt;/pgt; lt;hr /gt; lt;pgt;Strikethrough:lt;/pgt; lt;sgt;strikethroughlt;/sgt;
Атрибуты текста курсивом, жирным шрифтом, monospace. Некоторые реализации могут использовать одиночные звездочки для курсивного текста.

Горизонтальная линейка:


Зачеркнутый:

зачеркивание

Bullet list: * apples * oranges * pears Numbered list: 1. lather 2. rinse 3. repeat
lt;pgt;Bullet list:lt;/pgt; lt;ulgt; lt;ligt;appleslt;/ligt; lt;ligt;orangeslt;/ligt; lt;ligt;pearslt;/ligt; lt;/ulgt; lt;pgt;Numbered list:lt;/pgt; lt;olgt; lt;ligt;latherlt;/ligt; lt;ligt;rinselt;/ligt; lt;ligt;repeatlt;/ligt; lt;/olgt;
Список маркеров:
  • яблоки
  • апельсины
  • груши

Нумерованный список:

  1. пена
  2. смывать
  3. повторить
An [example](http://example.com). ![Image](Icon-pictures.png "icon") gt; Markdown uses email-style gt; characters for blockquoting. gt; Multiple paragraphs need to be prepended individually. Basic inline lt;abbr title="Hypertext Markup Language"gt;HTMLlt;/abbrgt; may be supported.
lt;pgt;An lt;a href="http://example.com"gt;examplelt;/agt;.lt;/pgt; lt;pgt;lt;img alt="img" title="icon" src="Icon-pictures.png" /gt;lt;/pgt; lt;blockquotegt; lt;pgt;Markdown uses email-style characters for blockquoting. Multiple paragraphs need to be prepended individually.lt;/pgt; lt;/blockquotegt; lt;pgt;Basic inline lt;abbr title="Hypertext Markup Language"gt;HTMLlt;/abbrgt; may be supported.lt;/pgt;
Пример.

Изображение

Markdown использует символы в стиле электронной почты для цитирования. Несколько абзацев нужно добавлять по отдельности.

Базовый встроенный HTML может поддерживаться.

Реализации

Реализации Markdown доступны для более чем дюжины языков программирования; кроме того, многие платформы и фреймворки поддерживают Markdown. Например, плагины Markdown существуют для всех основных платформ для ведения блогов.

Хотя Markdown является минимальным языком разметки и читается и редактируется с помощью обычного текстового редактора, существуют специально разработанные редакторы, которые предварительно просматривают файлы со стилями, которые доступны для всех основных платформ. Многие редакторы текста и кода общего назначения имеют встроенные плагины подсветки синтаксиса для Markdown или доступные для дополнительной загрузки. Редакторы могут иметь параллельное окно предварительного просмотра или отображать код непосредственно в режиме WYSIWYG.

  • JotterPad - онлайн-редактор WYSIWYG, поддерживающий Markdown и fountain
  • Doxygen - генератор документации исходного кода, который поддерживает Markdown с дополнительными функциями.
  • RStudio - IDE для R. Он предоставляет функцию- оболочку C ++ для варианта уценки, называемого sundown.
  • GitHub Flavored Markdown (GFM) игнорирует символы подчеркивания в словах и добавляет подсветку синтаксиса, списки задач и таблицы.
  • RMarkdown

Смотрите также

использованная литература

внешние ссылки

Последняя правка сделана 2023-04-13 06:10:54
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте