Сообщение Спецификация языка разметки от 05.09.2014 13:52
Изменено 06.09.2014 15:01 AndrewVK
Параграфы
Спецификация разметки
Стили текста
Жирный
Выделяется символами ~*~* с обеих сторон. При этом слева от открывающей ~*~* должен быть пробел или начало строки, а справа не пробел и не конец строки. Для закрывающей, соответственно, не пробел и не начало строки слева, и пробел или конец строки справа.**слово**
**несколько слов**
1 ** 2Выходной HTML
<strong>слово</strong>
<strong>несколько слов</strong>
1 * 2Внутри блока кода вместо одинарного символа * следует использовать двойной **
Курсив
Выделяется символами // с обеих сторон. Правила по обрамлению пробелами соответствуют выделению жирным.//слово//
//несколько слов//Выходной HTML
<em>слово</em>
<em>несколько слов</em>Подчеркнутый
__слово__
__несколько слов__Перечеркнутый
--слово--
--несколько слов--Верхний индекс
^^слово^^
^^несколько слов^^Нижний индекс
___слово___
___несколько слов___Заголовки
= Уровень 1
== Уровень 2
=== Уровень 3
==== Уровень 4
===== Уровень 5
====== Уровень 6Параграфы
Начало строки — начало параграфа. Перенос строки — конец параграфа.One Two
ThreeВыходной HTML
<p class='plain-text'>One Two</p>
<p class='plain-text'>Three</p>Цитаты сообщений
Строка цитаты имеет следующий формат:* Префикс из символов, цифр и знака подчеркивания, без пробелов, длиной от 0 до 6 символов.
* Произвольное количество символов >. Количество символов определяет уровень вложенности.
* Произвольный текст до конца строки.
A>> O La La
Bb> One TwoВыходной HTML
<span class='quota-prefix'>A</span><span class='quota level2'>O La La</span>
<span class='quota-prefix'>Bb</span><span class='quota level1'>O La La</span>Списки
Ненумерованный список
Элемент списка — строка, начинающаяся с одного или нескольких символов * (в зависимости от уровня вложенности) и следующего за ним пробела.* Item 1
** Item 1.1
* Item 2
* Item 3Нумерованный список
Элемент списка — строка, начинающаяся с символа # или № и следующего за ним пробела№ Item 1
## Item 1.1
№ Item 2
№ Item 3Ссылки
((текст ссылки|url))Текст ссылки может быть пустым. В этом случае в качестве текста используется сам url, но с заменой url escaping на исходный текст.
Ссылки на сообщения по имени
TBDСсылки на сообщения по id
TDBИзображения
!((имя изображения|url))имя изображения может быть пустым. В этом случае в качестве текста используется последний сегмент пути url (имя файла).
Смайлы
Стандартные смайлы
:)
:))
:)))
:(
;)
:-\Смайлы из расширений
Имеют формат :smileid:, где smileid — строка от 1 до 5 символов английского или русского алфавита без пробелов и знаков препинания. Для каждого smileid должны быть два синонима — в русской и английской раскладке.Свернутый блок
Начинается с символов +++ в начале строки и следующего за этими символами названия блока. Завершается строкой из символов +++.+++ Много текста
Текст текст текст текст.
+++Код
Внутри кода игнорируется вся разметка, за исключением выделения. Внутри кода так же допускается использование ~{~{~{ и ~}~}~}. Признак конца кода определяется парсером по парности фигурных скобок.Строчный код
Кусок текста, окруженный тройными скобками ~{~{~{ и ~}~}~} на одной строке. Опционально между второй и третьей открывающей скобкой можно указать название языка.Текст {{ruby{if (x == 0) return;}}} текстВыходной HTML:
Текст <span class='code'>if (x == 0) return;</span> текстБлок кода
Кусок текста, окруженный тройными скобками ~{~{~{ и ~}~}~} на отдельных строчках. Опционально между второй и третьей открывающей скобкой можно указать название языка.{{cs{
if (x == 0)
return;
}}} текстВыходной HTML:
<div class='code'>
<span class='code-keyword'>if</span> (x == <span class='code-num-literal'>0</span>)
<span class='code-keyword'>return</span>;
</div>Перед открывающими скобками можно указать символ +. Это будет означать, что блок кода будет по умолчанию свернут в строку "Код[[ язык]".
Выделение в коде
Выделить можно либо строку целиком, либо конкретный участок кода. Выделенная строка начинается с символов >>> и следующего на ними пробельного символа. Выделенный участок кода должен быть расположен на одной строке и обрамляется символами >>> и <<< слева и справа. Расположение этих символов относительно слов соответствует правилам для выделения жирным.if (x == 0)
>>> Foo();
else
x = >>>GetX()<<<;Блочная цитата
Начинается с тройного символа " и им же заканчивается."""
Один классик сказал …
"""Перед открывающими кавычками можно указать символ +. Это будет означать, что цитата будет по умолчанию свернута в строку "Цитата".
Таблицы
|* Header 1 | Header 2 | Header 3|
| Cell 1.1 | Cell 1.2 | Cell 1.3|
| Cell 2.1 | Cell 2.2 | Cell 2.3|
|Left aligned | Centered | Right aligned|
|>| Colspan |<|
|\|||
|Rowspan|||Горизонтальный разделитель
Строка, состоящая только из трех символов ---Сообщение модератора или системы
Заключается в скобки из тройных символов !!!Теглайн
Строка, начинающаяся с трех символов @@@, следующиего за ними одного или нескольких пробелов и произвольным текстом далее до конца строки.Экранирование
Для экранирования служебного символа или комбинации можно применять символ экранирования \. Символ \, окруженный пробелами или двойной \\ интерпретируется как просто символ \.Автозамены
Некоторые комбинации символов заменяются:* ... (три точки) на … (троеточие)
* --, окруженный пробелами на — (длинное тире)
Объекты
Предназначены для вставки внешних по отношению к форматтеру объектов. Должно присутствовать уникальное имя объекта, а в теле тега значение параметров в JSON формате.TBD
Спецификация разметки
Стили текста
Жирный
Выделяется символами ~*~* с обеих сторон. При этом слева от открывающей ~*~* должен быть пробел или начало строки, а справа не пробел и не конец строки. Для закрывающей, соответственно, не пробел и не начало строки слева, и пробел или конец строки справа.**слово**
**несколько слов**
1 ** 2Выходной HTML
<strong>слово</strong>
<strong>несколько слов</strong>
1 * 2Внутри блока кода вместо одинарного символа * следует использовать двойной **
Курсив
Выделяется символами // с обеих сторон. Правила по обрамлению пробелами соответствуют выделению жирным.//слово//
//несколько слов//Выходной HTML
<em>слово</em>
<em>несколько слов</em>Подчеркнутый
__слово__
__несколько слов__Перечеркнутый
--слово--
--несколько слов--Верхний индекс
^^слово^^
^^несколько слов^^Нижний индекс
___слово___
___несколько слов___Заголовки
= Уровень 1
== Уровень 2
=== Уровень 3
==== Уровень 4
===== Уровень 5
====== Уровень 6Параграфы
Начало строки — начало параграфа. Одна или несколько пустых строк — конец параграфа. Переносы без пустых строк внутри параграфа полностью игнорируются. Если начало строки и конец предыдущей строки непробельные символы — между ними добавляется пробел. Все пробельные символы в начале и конце параграфа игнорируются.One Two
Three
Four
FiveВыходной HTML
<p class='plain-text'>One Two Three</p>
<p class='plain-text'>Four</p>
<p class='plain-text'>Five</p>Цитаты сообщений
Строка цитаты имеет следующий формат:* Префикс из символов, цифр и знака подчеркивания, без пробелов, длиной от 0 до 6 символов.
* Произвольное количество символов >. Количество символов определяет уровень вложенности.
* Произвольный текст до конца строки.
A>> O La La
Bb> One TwoВыходной HTML
<span class='quota-prefix'>A</span><span class='quota level2'>O La La</span>
<span class='quota-prefix'>Bb</span><span class='quota level1'>O La La</span>Списки
Ненумерованный список
Элемент списка — строка, начинающаяся с одного или нескольких символов * (в зависимости от уровня вложенности) и следующего за ним пробела.* Item 1
** Item 1.1
* Item 2
* Item 3Нумерованный список
Элемент списка — строка, начинающаяся с символа # или № и следующего за ним пробела№ Item 1
## Item 1.1
№ Item 2
№ Item 3Ссылки
((текст ссылки|url))Текст ссылки может быть пустым. В этом случае в качестве текста используется сам url, но с заменой url escaping на исходный текст.
Ссылки на сообщения по имени
TBDСсылки на сообщения по id
TDBИзображения
!((имя изображения|url))имя изображения может быть пустым. В этом случае в качестве текста используется последний сегмент пути url (имя файла).
Смайлы
Стандартные смайлы
:)
:))
:)))
:(
;)
:-\Смайлы из расширений
Имеют формат :smileid:, где smileid — строка от 1 до 5 символов английского или русского алфавита без пробелов и знаков препинания. Для каждого smileid должны быть два синонима — в русской и английской раскладке.Свернутый блок
Начинается с символов +++ в начале строки и следующего за этими символами названия блока. Завершается строкой из символов +++.+++ Много текста
Текст текст текст текст.
+++Код
Внутри кода игнорируется вся разметка, за исключением выделения. Внутри кода так же допускается использование ~{~{~{ и ~}~}~}. Признак конца кода определяется парсером по парности фигурных скобок.Строчный код
Кусок текста, окруженный тройными скобками ~{~{~{ и ~}~}~} на одной строке. Опционально между второй и третьей открывающей скобкой можно указать название языка.Текст {{ruby{if (x == 0) return;}}} текстВыходной HTML:
Текст <span class='code'>if (x == 0) return;</span> текстБлок кода
Кусок текста, окруженный тройными скобками ~{~{~{ и ~}~}~} на отдельных строчках. Опционально между второй и третьей открывающей скобкой можно указать название языка.{{cs{
if (x == 0)
return;
}}} текстВыходной HTML:
<div class='code'>
<span class='code-keyword'>if</span> (x == <span class='code-num-literal'>0</span>)
<span class='code-keyword'>return</span>;
</div>Перед открывающими скобками можно указать символ +. Это будет означать, что блок кода будет по умолчанию свернут в строку "Код[[ язык]".
Выделение в коде
Выделить можно либо строку целиком, либо конкретный участок кода. Выделенная строка начинается с символов >>> и следующего на ними пробельного символа. Выделенный участок кода должен быть расположен на одной строке и обрамляется символами >>> и <<< слева и справа. Расположение этих символов относительно слов соответствует правилам для выделения жирным.if (x == 0)
>>> Foo();
else
x = >>>GetX()<<<;Блочная цитата
Начинается с тройного символа " и им же заканчивается."""
Один классик сказал …
"""Перед открывающими кавычками можно указать символ +. Это будет означать, что цитата будет по умолчанию свернута в строку "Цитата".
Таблицы
|* Header 1 | Header 2 | Header 3|
| Cell 1.1 | Cell 1.2 | Cell 1.3|
| Cell 2.1 | Cell 2.2 | Cell 2.3|
|Left aligned | Centered | Right aligned|
|>| Colspan |<|
|\|||
|Rowspan|||Горизонтальный разделитель
Строка, состоящая только из трех символов ---Сообщение модератора или системы
Заключается в скобки из тройных символов !!!Теглайн
Строка, начинающаяся с трех символов @@@, следующиего за ними одного или нескольких пробелов и произвольным текстом далее до конца строки.Экранирование
Для экранирования служебного символа или комбинации можно применять символ экранирования \. Символ \, окруженный пробелами или двойной \\ интерпретируется как просто символ \.Автозамены
Некоторые комбинации символов заменяются:* ... (три точки) на … (троеточие)
* --, окруженный пробелами на — (длинное тире)
Объекты
Предназначены для вставки внешних по отношению к форматтеру объектов. Должно присутствовать уникальное имя объекта, а в теле тега значение параметров в JSON формате.TBD