Язык разметки Textile и его реализация на движке Redmine.

Язык разметки Textile и его реализация на движке Redmine. {#язык-разметки-textile-и-его-реализация-на-движке-redmine. style=“text-align:justify;”}

{{>toc}}

Textile — простой язык разметки, позволяющий пользователям получать код HTML из своего текста. Разработан Dean Allen. Используется в CMS Textpattern и некоторых других.

  1. Синтаксис

Textile автоматически преобразует текст в разметку, отслеживая абзацы в тексте. Абзацы, отделяемые пустой строкой, преобразуются в элементы HTML

.

Переводы строк автоматически преобразуются в элементы HTML
.

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

 и .
  1. Строковые элементы

table{width:100%}.
|.Textile |.HTML |_.Отображение|
|_выделение_ |выделение |Это выделенный текст|
|*усиление* |усиление |Это усиленный текст|
|__курсив__ |курсив |Это курсивный текст|
|**полужирный** |полужирный |Это полужирный текст|
|??цитата?? |цитата |Это цитата|
|−удалённый текст− |удалённый текст |Это удалённый текст|
|+вставленный текст+ |вставленный текст |Это вставленный текст|
|^надстрочный^ |надстрочный |Это ^надстрочный^ текст|
|∼подстрочный∼ |подстрочный |Это ~подстрочный~ текст|
|%{стиль}фрагмент% |фрагмент |Это [фрагмент]{style=“color:red;”} текста|
|@код@ |код |Это код:

function code(str)

|

Некоторые особенности форматирования:

* Чтобы не делать увеличенный интервал отступа, после закрывающего тэга

оставляйте пустую строку.

* Частая ошибка использования тэга “@”. Если вставить этот тэг без отступов, эффекта не будет.

* Вместо

, для вставки текста, часто удобней использовать один отступ в начале строки. В отличие от mediawiki, до и после такого текста используйте пустую строку, а отступ пробелом используйте только в первой строке.
  1. Блочные элементы

Модификаторы блочных элементов обычно заканчиваются точкой и отделяются от содержимого пробелом.

table{width:100%}.
|. Textile|. HTML|_. Описание|
|hn.||h1. Заголовок уровня 1
h2. Заголовок уровня 2
h3. Заголовок уровня 3|
|p.|

Абзац

| | |bq.|

Блочная цитата

| | |pre.|
|
 Форматированный код 

|
|bc.|

|
<code> Программный код (комбинация из двух HTML-элементов)</code>

|

  1. Ссылки


                 Textile                     HTML                                                                                   Описание

    http://textile.thresholdstate.com/       <a href="http://textile.thresholdstate.com/">http://textile.thresholdstate.com/ </a>   URL автоматически преобразутся в ссылку:
                                                                                                                                    http://textile.thresholdstate.com/

“Textile”:http://textile.thresholdstate.com/ Textile Текст ссылки заключается в кавычки и отделяется от URL двоеточием:
“Textile”:http://textile.thresholdstate.com/

         **Redmine Wiki ссылки**

                 Textile                     Пример                                                                                 Описание

           \[\[Документация\]\]              \[\[Документация\]\]                                                                   Показывается ссылка на страницу с именем 'Документация'

    \[\[Документация\#Руководство\]\]        \[\[Документация\#Руководство\]\]                                                      Переход по ссылке "Руководство". Заголовки автоматически получают якорь для возможности использования: Руководство

     \[\[Документация|Руководство\]\]        \[\[Документация                                                                       Руководство\]\]

  1. Атрибуты элементов

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

Синтаксис

Атрибут Описание


(класс) Класс элемента
(#id) Идентификатор элемента
{стиль} Стиль элемента
[язык] Язык элемента (сокращение)

Атрибуты могут использоваться в комбинированной записи, например:

(class#id)

Атрибуты строковых элементов

Код Textile HTML


%{color:red}red% [red]{style=“color:red;”} red
%[fr]rouge% [rouge]{lang=“fr”} rouge
_(big)red_ [red]{.big} red

Атрибуты блочных элементов

table{width:100%}.
|. Textile|. HTML|
|p(bob). A paragraph|

A paragraph

| |p{color:\#ddd}. A paragraph|

A paragraph

| |p\[fr\]. A paragraph|

A paragraph

|

6.Отступы и выравнивание.

Textile Описание


p<. Выравнивание влево
p>. Выравнивание вправо
p=. Выравнивание по центру
p<>. Выравнивание по ширине
p(., p((. Отступ слева на 1em, 2em и т. д.
p)., p)). Отступ справа на 1em, 2em и т. д.

Примеры.

Textile Описание


h2()>. Заголовок 2-го уровня, выравнивание вправо, отступ на 1em с обоих сторон
h3=. Заголовок 3-го уровня, выравнивание по центру
!</image.gif! Изображение с выравниванием по левому краю
p[no]{color:red}. Абзац на норвежском языке, цвет: красный.

7.Выравнивание.

Textile поддерживает четыре типа выравнивания содержимого: влево, вправо, по центру и по ширине.

Модификатор Выравнивание


     вправо

< влево
= по центру
<> по ширине

Вертикальное выравнивание устанавливается следующими модификаторами:

Модификатор Выравнивание


^ по верху
~ по низу

  1. Таблицы.

Таблицы создаются разделением ячеек вертикальной чертой (ячейки заголовков выделяются подчёркиванием):
|. заголовок 1|. заголовок 2|_. заголовок 3|
|первый|ряд|таблицы|
|второй|ряд|таблицы|

Пример.

заголовок 1 заголовок 2 заголовок 3


первый ряд таблицы
второй ряд таблицы

Атрибуты могут применяться как к таблице в целом[^1], так и к её элементам (строкам и ячейкам) индивидуально:

table{width:100%}.
|.Textile|. HTML|
|table{width:100%}.|

| |{background:\#ddd}. |первый|ряд|таблицы|| | ||{background:red}. второй|ряд|таблицы|| |

Пример.


первый ряд таблицы
второй ряд таблицы


Объединение ячеек производится следующим образом:

table{width:100%}.
|.Textile|. HTML|
||\2. Две колонки|таблицы||

| ||/2. Две строки|таблицы|| |

Вертикальное выравнивание:

table{width:100%}.
|.Textile|. HTML|
| ^. |четвёртый|ряд|таблицы||

| | \~. |пятый|ряд|таблицы|| |
  1. Списки.

Textile поддерживает как маркированные, так и нумерованные списки. Списки могут быть вложенными, один тип списка может быть вложен в другой. Уровень вложения списков не ограничен.

table{width:100%}.
|.Textile|. HTML|
| * Маркированный список|

  • Маркированный список
| |\# Нумерованный список|
  1. Нумерованный список
| | \* Пункт 1 \*\* Подпункт 1-1 \*\* Подпункт 1-2 \* Пункт 2 \#\# Подпункт 2-1 \#\# Подпункт 2-2|
  • Пункт 1
    • Подпункт 1-1
    • Подпункт 1-2
  • Пункт 2
    1. Подпункт 2-1
    2. Подпункт 2-2
|
  1. Изображения.

Ссылка на изображение окружается восклицательными знаками и может быть дополнена гиперссылкой и альтернативным текстом:

Textile HTML Описание


!textist.gif! Рисунок
!textist.gif(Textist)! Textist Рисунок с названием
!textist.gif(Textist)!:http://textism.com Textist Рисунок с названием-ссылкой

Примеры:


Вставка картинки с тенью !=картинка.jpg#33;shadow

Для вставки картинки с превьюшкой, понадобится загрузить две картинки, обычную и уменьшенную.\ p=. !картинка_маленькая.jpg!lb:/attachments/путь/картинка.png
Разместим картинку с превьюшкой в центре

Тоже только с тенью !=картинка_маленькая.jpg!lb,shadow:/attachments/путь/картинка.png


  1. Сокращения (акронимы).

Акронимы автоматически распознаются при нахождении трёх или более знаков в верхнем регистре и описания в скобках непосредственно за ними (без пробела). Дополнительно текст акронима может заключаться в строковый элемент с определённым классом.

Textile HTML Пример


CSS(Cascading Style Sheets) CSS

  1. Сноски.

Ссылки в тексте на сноски заключаются в квадратные скобки. Для создания сноски, соответствующей ссылке в тексте, необходимо создать абзац, начинающийся с fn<номер_сноски>. :

table{width:100%}.
|.Textile|. HTML|
|См. лопата[1].| См. лопата1.|
|fn1. Лопата — хозяйственный инструмент.|

1 Лопата - хозяйственный инструмент.

|
  1. Содержание.

Textile Описание


{{toc}} расположение содержания слева
{{>toc}} расположение содержания справа

По материалам Textile , Wiki syntax, Textile manual

[^1]: Для применения атрибутов к таблице перед её началом необходимо указать дополнительный тег table

первый ряд таблицы
второй ряд таблицы
Две колонки таблицы
Две строки таблицы
четвёртый ряд таблицы
пятый ряд таблицы