Markdown

Введение

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

Таким образом, “Markdown” включает две вещи: (1) синтаксис форматирования plain text; (2) средство программного обеспечения, написанное на Perl, которое преобразует формат plain text в HTML. Подробную информацию по синтаксису форматирования Markdown смотрите на странице Синтаксис. Вы можете попробовать его прямо сейчас, используя онлайн конвертер (Dingus).

Первостепенной задачей синтаксиса форматирования Markdown является цель сделать его удобным для чтения на сколько это возможно. Идея заключается в том, что документ формата Markdown должен быть представлен "как есть", как plain text, не смотря на то, что он может быть помечен тегами или инструкциями форматирования. Пока на синтаксис Markdown влияют отдельно существующие фильтры, преобразующие текст в формат HTML, единственной влиятельной причиной использования синтаксиса Markdown является формат электронной почты plain text.

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

(Вы можете использовать окончание ‘.text’ в URL, чтобы посмотреть исходный текст на Markdown для содержимого каждой страницы из любого раздела, например на страницах разделов Синтаксис и Лицензия.)

Markdown это свободное ПО, доступное по открытой лицензии типа BSD. Для более полной информации смотрите раздел Лицензия.

Обсуждения

Автором создана открытая рассылка для обсуждения Markdown. Любая тема связанная с Markdown — как синтаксис, так и ПО — является поводом для обсуждения. Всякий, кто заинтересован, может присоединиться.

Автор надеется, что список рассылки приведет к новым идеям для развития Markdown.

Установка и Требования

Для Markdown требуется Perl 5.6.0 или более поздние версии. Добро пожаловать в 21 век. Markdown также требует стандартную библиотеку Perl с модулем Digest::MD5, которая вероятно уже установлена на вашем сервере.

Movable Type

Markdown работает с Movable Type версии 2.6 или более поздними (включая Movable Type 3.0).

  1. Скопируйте файл “Markdown.pl” в папку “plugins” вашего Movable Type. Папка “plugins” должна быть в той же папке что и “mt.cgi”; если папки “plugins” нет, создайте ее, используя ваш FTP program. Путь к установочному файлу должен быть таким:

    (mt home)/plugins/Markdown.pl
    
  2. После установки, Markdown появится как опция форматирования текста в всплывающем меню в Movable Type. Она выбирается для каждого нового сообщения:

    Option Markdown

    Markdown преобразует ваши сообщения в HTML формат при их выводе; сами сообщения хранятся в вашей MT базе данных в формате Markdown.

  3. Если у вас также установлен SmartyPants 1.5 (либо поздняя версия), Markdown может также предложить второй вариант форматирования текста: “Markdown With SmartyPants”. Эта функция такая же, как обычный “Markdown” форматтер, за исключением того, что автоматически использует SmartyPants для создания типографически правильных фигурных кавычек, м-тире и эллипсов. Для более полной информации посмотрите раздел SmartyPants.

  4. Чтобы поставить Markdown по умолчанию (или “Markdown With SmartyPants”) в качестве опции форматирования текста новых сообщений, перейдите в Weblog Config: Preferences.

Заметим, что по умолчанию Markdown в результате создает XHTML документ. Как настроить Markdown, чтобы в результате получить формат HTML 4, смотрите в разделе Конфигурация, ниже.

Blosxom

Markdown работает с Blosxom версии 2.0 либо более поздними.

  1. Переименуйте плагин “Markdown.pl” в “Markdown” (это важно). Для плагинов Movable Type требуется расширение “.pl”; Blosxom же его запрещает.

  2. Скопируйте плагин “Markdown” в папку плагинов Blosxom. Если вы не уверены, где находится папка с плагинами Blosxom, посмотрите документацию по Blosxom.

  3. Вот и все. Данные вашего веблога будут сразу же, автоматически, обрабатываться Markdown-ом.

  4. Если вы хотите применить форматирование Markdown только к некоторым сообщениям, а не ко всем, Markdown может быть использован совместно с Meta плагином Blosxom-а . Во-первых, установите Meta плагин. Затем откройте плагин Markdown в текстовом редакторе, и пропишитие переменную $g_blosxom_use_meta в 1. И потом просто прописывая заголовок “meta-markup: Markdown” в начале каждого сообщения, вы таким образом подключаете Markdown.

BBEdit

Markdown работает с BBEdit 6.1 либо поздней версии на Mac OS X. Он также работает с BBEdit 5.1 или более поздними версиями и MacPerl 5.6.1 на Mac OS 8.6 либо поздних версиях. Если вы используете Mac OS X 10.2 (Jaguar), вам возможно понадобиться установить Perl модуль Digest::MD5 от CPAN; Digest::MD5 устанавливается предварительно на Mac OS X 10.3 (Panther).

  1. Скопируйте файл “Markdown.pl” в соответствующую папку с фильтрами в папке вашего “BBEdit Support”. В Mac OS X, это должно быть:

    BBEdit Support/Unix Support/Unix Filters/
    

    Для более полной информации о расположении этих папок посмотрите документацию по BBEdit.

    Вы можете переименовать файл “Markdown.pl” на ваше усмотрение.

  2. Вот и все. Чтобы применить Markdown, выберите определенный текст в документе BBEdit, затем выберите Markdown из Filters sub-menu в “#!”меню, или в плавающем окошке Filters.

Конфигурация

По умолчанию, Markdown создает документ с тегами в стиле XHTML. Например:

<br />

Markdown можно настроить для получения тегов в стиле HTML, например:

<br>

Movable Type

Вы можете воспользоваться специальным контейнером-тегом MTMarkdownOptions в любом шаблоне Movable Type, где хотите в результате получить стиль HTML 4:

<MTMarkdownOptions output='html4'>
    ... put your entry content here ...
</MTMarkdownOptions>

Простейшим способом использования тега MTMarkdownOptions является размещение открывающего тега сразу после тега <body> и закрывающего тега перед тегом </body>.

Чтобы запретить обработку Markdown-ом в конкретном шаблоне, то есть вывести текст в формате Markdown как есть, без перевода в (X)HTML, установите параметр output как ‘raw’:

<MTMarkdownOptions output='raw'>
    ... put your entry content here ...
</MTMarkdownOptions>

Командная строка

Используйте ключевую командную строку
--html4tags, чтобы получить формат HTML из командной строки Unix-style. Например:

% perl Markdown.pl --html4tags foo.text

Наберите perldoc Markdown.pl, или прочтите документацию POD внутри исходного кода Markdown.pl для более полной информации.

Благодарности

Aaron Swartz заслуживает огромного количества похвал за помощь в разработке синтаксиса форматироваония Markdown. Markdown стал намного лучше, благодаря идеям Aaron-а, его отзывам и тестированию. Также, html2text Aaron-а является очень удобной (и свободной) утилитой для преобразования HTML в формат Markdown plain text.

Nathaniel Irons, Dan Benjamin, Daniel Bogan, и Jason Perkins также заслуживают благодарность за их отзывы.

[Michel Fortin] портировала Markdown для PHP; это замечательный порт, и весьма рекомендуется всем тем, кто желает применить Markdown для PHP.