reStructuredText

пн, 23 ноября 2009 г. | naspeh
reStructuredText (rst, reST) - WYSIWYG текстовый язык разметки, который доступен для чтения, и несмотря на простоту достаточно мощный для нетривиального использования. reStructuredText можно преобразовать в HTML, для отображения в браузере.

Ниже приведен краткий обзор синтаксиса reStructuredText, достаточный для форматирования отчетов, на примерах.

Заголовки

Для создания заголовка используется подчеркивание знаками "-" и "=". При этом заголовок должен отделяться от текста пустой строкой сверху, снизу не обязательно.

Например, нужно получить:

Заголовок первого уровня

Заголовок второго уровня

Для этого в reStructuredText пишем:

Заголовок первого уровня
------------------------

Заголовок второго уровня
========================

Абзацы

Для разбивки текста на абзацы или блоки используется пустая строка. Если же два предложения написаны друг под другом (начинаются с первого символа строки, то есть без отступов), то они будут преобразованы в сплошной текст.

Без надобности не ставьте пробелов в начале строки. В противном случае получим
такой результат

Если между верхней строкой и нижней, написанной с пробелами, вставить пустую строку получим

следующий результат

Вот так вышеприведенный текст выглядит в reStructuredText:

Для разбивки текста на абзацы или блоки используется пустая строка.
Если же два предложения написаны друг под другом (начинаются с первого символа строки,
то есть без отступов), то они будут преобразованы в сплошной текст.

Без надобности не ставьте пробелов в начале строки. В противном случае получим
 такой результат

Если между верхней строкой и нижней, написанной с пробелами, вставить пустую строку получим

 следующий результат

Стили текста / выделение участков текста

курсив - получается при заключении текста в одинарные звездочки

жирный текст - текст заключен в двойные звездочки

*обычный текст выделенный с двух сторон звездочками* - каждая звездочка экранирована одинарным обратным слэшем.

Так это выглядит в reStructuredText:

*курсив* - получается при заключении текста в одинарные звездочки

**жирный текст** - текст заключен в двойные звездочки

\*обычный текст выделенный с двух сторон звездочками\* - каждая звездочка экранирована
одинарным обратным слэшем.

Списки

Чтобы поместить в текст список, нужно оставить перед первым пунктом и после последнего пустые строки (между пунктами отступы не обязательны). Пример пронумерованного списка:

  1. Обязательно наличие пустой строки перед первым пунктом;
  2. в конце пункта ставятся любые знаки препинания;
  3. можно использовать знак диеза #, для автоматической нумерации списка;
  4. Обязательно наличие пустой строки после последнего пункта.

Пример маркированного списка:

  • используется символ минус "-";
  • между ним и текстом обязателен пробел.

Вот так это выглядит в reStructuredText:

Чтобы поместить в текст список, нужно оставить перед первым пунктом и после последнего
пустые  строки (между пунктами отступы не обязательны). Пример пронумерованного списка:

1. Обязательно наличие пустой строки перед первым пунктом;
2. в конце пункта ставятся любые знаки препинания;
#. можно использовать знак диеза #, для автоматической нумерации списка;
#. Обязательно наличие пустой строки после последнего пункта.

Пример маркированного списка:

- используется символ минус "-";
- между ним и текстом обязателен пробел.

Ссылки

Чтобы в текст поместить ссылку, достаточно вставить адрес с указанием протокола (например http). Например: сейчас вы находитесь на сайте http://horosh.org.

Если же вы хотите текст ссылки спрятать под определенное слово или фразу делайте это так: сейчас вы находитесь на сайте horosh.org. В данном случае ссылка будет спрятана под названием сайта.

Или так: Python - хороший язык. Pylons - хороший Python фреймворк для веба. Сверху и снизу блока описания ссылок должны быть пустые строки.

Вот так это выглядит в reStructuredText:

Чтобы в текст поместить ссылку, достаточно вставить адрес с указанием протокола (например, http).
Например: сейчас вы находитесь на сайте http://horosh.org.

Если же вы хотите текст ссылки спрятать под определенное слово или фразу делайте это так:
сейчас вы находитесь на сайте `horosh.org <http://horosh.org>`_. В данном случае ссылка будет
спрятана под названием сайта.

Или так: Python_ - хороший язык. Pylons_ - хороший Python_ фреймворк для веба.
Сверху и снизу блока описания ссылок должны быть пустые строки.

.. _Python: http://python.org
.. _Pylons: http://pylonshq.com
Полная официальная документация на английском:
http://docutils.sourceforge.net/rst.html