Textile

Статья на основе материалов из Википедии

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

Синтаксис

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

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

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

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

TextileHTMLОтображение
_выделение_<em>выделение</em>Это выделенный текст
*усиление*<strong>усиление</strong>Это усиленный текст
__курсив__<i>курсив</i>Это курсивный текст
**полужирный**<b>полужирный</b>Это полужирный текст
??цитата??<cite>цитата</cite>Это цитата
-удалённый текст-<del>удалённый текст</del>Это удалённый текст
+вставленный текст+<ins>вставленный текст</ins>Это вставленный текст
^надстрочный^<sup>надстрочный</sup>Это надстрочный текст
~подстрочный~<sub>подстрочный</sub>Это подстрочный текст
%{стиль}фрагмент%<span style="стиль">фрагмент</span>Это фрагмент текста
@код@<code>код</code>Это код: function code(str)

Блочные элементы

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

TextileHTMLОписание
hn.<hn>Заголовок уровня n
p.<p>Абзац
bq.<blockquote>Блочная цитата
pre.<pre>Форматированный код
bc.<pre><code>Программный код (комбинация из двух HTML-элементов)

Ссылки

Текст ссылки заключается в кавычки и отделяется от URL двоеточием:

TextileHTML
"Textile":http://textile.thresholdstate.com/Textile

Пунктуация и подстановки

Автоматически исправляются[1] при конвертировании в XHTML следующие сочетания знаков:

TextileHTMLОтображение
"кавычки"&#8220;кавычки&#8221;“кавычки”
'кавычки'&#8216;кавычки&#8217;‘кавычки’
длинное -- тиредлинное&#8212;тиредлинное—тире
короткое - тирекороткое &#8211; тирекороткое – тире
д'Орсед&#8216;Орсед’Орсе
многоточие...многоточие&#8230;многоточие…
2 x 2 = 42&#215;2 = 42×2 = 4
(c) Dean Allen&#169; Dean Allen© Dean Allen
Textile(r)Textile&#174;Textile®
Textpattern(tm)Textpattern&#8482;Textpattern™

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

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

Синтаксис

АтрибутОписание
(класс)Класс элемента
(#id)Идентификатор элемента
{стиль}Стиль элемента
язык Язык элемента (сокращение)
Атрибуты могут использоваться в комбинированной записи, например:

(class#id)

Атрибуты строковых элементов
TextileHTML
%{color:red}red%red
%fr rouge%rouge
_(big)red_red
Атрибуты блочных элементов
TextileHTML
p(bob). A paragraph

A paragraph

p{color:#ddd}. A paragraph

A paragraph

pfr . A paragraph

A paragraph

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

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

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

МодификаторВыравнивание
>вправо
<влево
=по центру
<>по ширине
Вертикальное выравнивание устанавливается следующими модификаторами:

МодификаторВыравнивание
^по верху
~по низу

Таблицы

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


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

TextileHTML
table{width:100%}=.
{background:#ddd}. >первый|ряд|таблицы|
первыйрядтаблицы
>{background:red}. второй|ряд|таблицы|
второйрядтаблицы

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

TextileHTML
>\2. Две колонки|таблицы|
Две колонкитаблицы
>/2. Две строки|таблицы|
Две строкитаблицы
Вертикальное выравнивание
TextileHTML
^. >четвёртый|ряд|таблицы|
четвёртыйрядтаблицы
~. >пятый|ряд|таблицы|
пятыйрядтаблицы

Списки

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

TextileHTML
* Маркированный список<ul>
<li>Маркированный список</li>
</ul>
# Нумерованный список<ol>
<li>Нумерованный список</li>
</ol>

Изображения

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

TextileHTML
!textist.gif!
!textist.gif(Textist)!Textist
!textist.gif(Textist)!:http://textism.comTextist

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

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

TextileHTML
CSS(Cascading Style Sheets)CSS

Сноски

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

TextileHTML
См. лопата[1].См. лопата1.
fn1. Лопата — хозяйственный инструмент.

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

HTML


здесь <b>textile</b> не обрабатывается

notextile. здесь <b>textile</b> не обрабатывается

Примечания

  1. К сожалению, используются нормы английской типографики. Локализация зависит от реализации Textile или настроек дополнения CMS.
  2. Для применения атрибутов к таблице перед её началом необходимо указать дополнительный тег table.

Ссылки

Реализации

Руководства

Прочее

  • Textism , домашняя страница Textile на сайте разработчика.
  • Textile Markup with MediaWiki , использование Textile на сайтах MediaWiki.
  • Xilize , утилита для генерации документов с разметкой Textile (доступно дополнение для редактора jEdit).
  • Форум русскоязычных пользователей CMS Textpattern.
  • Txt.io - простой, минималистичный блогосервис, для разметки используется Textile.