Markdown

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук
Markdown
Markdown-mark.svg
Розширення файлу: .md, .markdown
MIME-тип: text/markdown
Uniform Type Identifier: net.daringfireball.markdown
Розробник: Джон Грубер[en]
Тип ліцензії: Ліцензія BSD
Рік випуску: 19 березня 2004; 4579 днів тому
Остання версія: 1.0.1
Дата випуску останньої версії: 17 грудня 2004; 4306 днів тому
Тип формату: Мова розмітки даних
Розширений до: MultiMarkdown, Markdown Extra[en], CommonMark
Сайт: daringfireball.net/projects/markdown/

«Markdown» (МФА: [маркда́ун]) — полегшена мова розмітки даних, яку створено з ухилом на прочитність та зручність у публікації з подальшим перетворенням її на structurally valid XHTML або HTML. Чимало ідей для мови позичено з існуючих домовленостей у розмітці тексту в електронних листах. Першу реалізацію Markdown написано Грубером на Perl, але з часом з'явились багато реалізацій від сторонніх розробників (див. нижче). Реалізація на Perl розповсюджується за ліцензією BSD. Реалізації Markdown різними мовами програмування включені (або наявні в якості плаґінів) у численні системи керування вмістом.

Такі сайти, як GitHub, Reddit та Stack Overflow використовують Markdown для полегшення обговорень між користувачами[1][2][3].

Приклади синтаксису[ред.ред. код]

Цей опис не є вичерпним переліком синтаксису Markdown, та у багатьох випадках для досягнення певного ефекту існує декілька стилів синтаксису[4]. Літери, які Markdown однозначно визначає як команди форматування, можуть бути екрановані бекслешем; наприклад, вираз '\*' виведе зірочку, а не означатиме початку проміжку виділеного тексту. Також Markdown не перетворює текст із «сирим» XHTML-елементом блокового рівня. Це дозволяє включати секції XHTML у джерело Markdown документа, обернувши їх в XHTML теги блокового рівня.

Заголовки[ред.ред. код]

HTML-заголовки створюються розміщенням числа "решіток" перед текстом заголовка відповідно до баженого рівня (HTML підтримує 6 рівнів озаглавлення), наприклад:

 # заголовок першого рівня

 #### заголовок четвертого рівня

Перші два рівні заголовків також мають альтернативний синтаксис:

Заголовок першого рівня
=======================

Заголовок другого рівня
-----------------------

Параграфи[ред.ред. код]

Параграф є одним чи декількома послідовними рядками тексту, які розділяються одним чи декількома порожніми рядками. Звичайні параграфи не повинні мати відступи або табуляцію:

Це параграф. Він містить два речення.

Це інший параграф. Він також містить два речення.

Список[ред.ред. код]

 * Пункт в маркованому (ненумерованому) списку
     * Підпункт, відділений 4 пробілами
 * Інший пункт в маркованому списку

 1. Пункт в нумерованому списку
     1.1. Підпункт, відділений 4 пробілами
 2. Інший пункт в нумерованому списку

Виділений текст[ред.ред. код]

 *emphasis* або _emphasis_ (тобто нахил)

 **сильне виділення** або __сильне виділення__ (тобто напівжирний)

Код[ред.ред. код]

Для включення коду (відформатованого в моноширинний шрифт), ви можете або оточити вбудований код зворотніми лапками (`), наприклад, `деяким кодом`, або відділити декілька рядків кода щонайменше чотирма пробілами, як тут:

    перший рядок кода
    другий рядок кода
    третій рядок кода

Останній варіант за допомогою пробілів дозволяє зберігати і показувати синтаксис Markdown.

Кінець рядка[ред.ред. код]

Якщо ви хочете вставити закінчення рядка Markdown, закінчіть рядок з щонайменше двома пробілами.

Наприклад:

 def show_results space space
 end

Результат:

 def show_results
 end

Ви також можете використати два порожніх рядки, наприклад:

 sentence A
 
 sentence B

Результат:

 sentence A
 sentence B

Цитати[ред.ред. код]

 > "Весь цей абзац тексту буде поміщений у HTML blockquote елемент.
 Blockquote елементи змінюються в залежності від потреби/пристрою виводу.
 Ви можете обернути довільний текст за власним смаком, та воно перетвориться
 на єдиний blockquote елемент."

Приклад вище перетвориться на такий HTML:

<blockquote><p>Весь цей абзац тексту буде поміщений у HTML blockquote елемент.
 Blockquote елементи змінюються в залежності від потреби/пристрою виводу.
 Ви можете обернути довільний текст за власним смаком, та воно перетвориться
 на єдиний blockquote елемент.</p></blockquote>

Зовнішні посилання[ред.ред. код]

Посилання можуть бути вбудованими:

 [текст посилання](адреса посилання)

Наприклад: [Markdown](http://en.wikipedia.com/wiki/Markdown)

Також посилання можуть бути розміщені у примітках поза параграфом, наприклад:

 [текст посилання][linkref]

створить посилання, якщо додати примітку (як показано нижче) поза параграфом (або в кінці документу):

 [linkref]: link.address.here "link title here"

Зображення[ред.ред. код]

Зображення мають схожий із посиланнями синтаксис з попереднім знаком оклику.

[Alt text](/path/to/img.jpg)

Або:

[Alt text](/path/to/img.jpg "Optional title")

Як і посилання, зображення також мають примітковий стиль синтаксису

[Alt text][id]

з пізнім посиланням в документі, яке визначає URL розміщення.

 [id]: url/to/image "Optional title attribute"

Горизонтальні лінії[ред.ред. код]

Горизонтальні лінії задаються розміщенням трьох або більшим дефісів, зірочок, або підкресленням в рядку самостійно. Ви можете використовувати пробіли між дефісами чи зірочками. Кожен з наведених нижче рядків створить горизонтальну лінію:

 * * *
 ***
 *****
 - - -
 ---------------------------------------

Редактори[ред.ред. код]

Хоча Markdown є полегшеною мовою розмітки яку легко читати та редагувати звичайними текстовими редакторами, існують спеціально розроблені редактори, які дозволяють попередньо переглядати зі стилями. Є безліч таких редакторів, які наявні для всіх основних платформ. Існує плаґін підсвітки синтаксису для Markdown, вбудований у gedit та Vim.

Реалізації[ред.ред. код]

Реалізації Markdown існують для багатьох різних фреймворків, платформ та мов.

  • Система документації джерельних текстів Doxygen підтримує Markdown з додатковими можливостями[Джерело?].
  • RStudio[ru], IDE для R підтримує C++ обгортку функцій[en] для реалізації markdown Sundown[5].
  • IntelliJ IDEA, IDE для Java, містить плаґін для підтримки Markdown[6][7].
  • Існують формат і програма MultiMarkdown з ширшим синтаксисом та можливостями експорту, ніж в традиційній Markdown.

Існує багато іншого відкритого програмного забезпечення реалізації Markdown, доступного в мережі.

Див. також[ред.ред. код]

Посилання[ред.ред. код]

  1. GitHub Flavored Markdown. GitHub. Процитовано 29 березня 2013. 
  2. Приклад Markdown у Reddit. Або, іншими словами, як зробити гламурне форматування ваших коментарів. Reddit. Архів оригіналу за 27 серпня 2013. Процитовано 29 березня 2013. 
  3. Допомога з Markdown. Stack Overflow. Архів оригіналу за 27 серпня 2013. Процитовано 29 березня 2013. 
  4. Повний синтаксис Markdown. 
  5. https://github.com/rstudio/rstudio/blob/master/src/cpp/core/markdown/Markdown.cpp
  6. Порожнє посилання на джерело‎ (довідка) 
  7. https://github.com/nicoulaj/idea-markdown.  Пропущений або порожній |title= (довідка)

Зовнішні посилання[ред.ред. код]