Форматирование текста

Оригинал на WackoWiki:WackoSintaksis



Поэкспериментировать с форматированием вы можете в разделе Тест Площадка.


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

1. Основы форматирования


**полужирный**
полужирный
//курсив//
курсив
__подчеркнутый__
подчеркнутый
##моноширинный##
моноширинный
++Мелкий текст++
Мелкий текст
--зачеркнутый--
зачеркнутый
NB Зачеркивание, как и все следующие разметки в данном разделе, работает на многострочных текстах, в отличие от предыдущих.
Выравнивание осуществляется при помощи вот такой сложной конструкции:
%%(wacko wrapper=text wrapper_align=center) текст по центру %%
wrapper_align может быть center, right и justify.
Можно использовать >>центрированный<<, но не рекомендуется
текст по центру

!!Замечание!!
(работает также ''Замечание'', но его лучше не использовать).
Замечание
!!(blue)Текст синего цвета!!
(поддерживаются три цвета: (red /крас / красный), (green /зел / зеленый), (blue / син / синий)).
Текст синего цвета
??Вопрос??
Вопрос
??(blue)Вопрос??
Вопрос
??(red)Вопрос??
Вопрос
??(green)Вопрос??
Вопрос
%%код%%
int main(int arc,char **argv)
{
    printf("Hello, %s!\n", (argc>1) ? argv[1] : "World");
    return 0;
}

2. Cсылки

Знаками разметки для создания ссылок являются круглые скобки "(, )" и квадратные скобки "[, ]". Оба знака равноправны. Использовать квадратные скобки может быть полезно, если текст документа уже содержит простые круглые скобки, которые могут быть ошибочно расценены разметкой.

2.1. Внутренние ссылки

[[Кластеры]] или ((Кластеры))
Кластеры
[[Кластеры Страница про кластеры]] или
((Кластеры Страница про кластеры))
Страница про кластеры
{{anchor name="test"}}
объявление якоря.

((#test)) и ((/HomePage#TOC_1))
ссылки на якорь.
test и /HomePage#TOC_1

NB: слова в смешанном регистре (ВотТакие) выделять ссылками вообще не надо. Для прочих внутрисайтовых ссылок URL писать не нужно (иначе не возникает связи между двумя страницами). URL нужен лишь для внешних ссылок.


NB: чтобы ВотТакое слово не стало ссылкой, поставьте перед ним знак ~ (тильда).


NB: подробности простановки ссылок на документы, находящиеся не в корне, описаны в разделе Кластеры.


2.2. Внешние ссылки


[[https://wackowiki.org WackoWiki]]
или ((https://wackowiki.org WackoWiki))
WackoWiki
https://wackowiki.org подсвечивается автоматически.
https://wackowiki.org
PPR:OneMinuteWiki
Интервики
PPR:OneMinuteWiki
mailto:adresse@example.com
((adresse@example.com))
E-Mail.
mailto:adresse@example.com
adresse@example.com
xmpp:adresse@example.com
Jabber.
xmpp:adresse@example.com
https://www.google.com/images/google_sm.gif
превратится в картинку.

((/HomePage https://www.google.com/images/google_sm.gif))
картинка, которая ссылка.
https://www.google.com/images/google_sm.gif

3. Интеграция загруженные файлы

file:/mammut_mascot.jpg
file:/Subpage/archive.zip
Файл должен быть загружен уже.


подробное описание...?

small mammut
file:/Subpage/archive.zip

4. Заголовки


== Большой заголовок ==

1. Основы форматирования

=== Заголовок поменьше ===

2. Cсылки

==== Средний заголовок ====

2.1. Внутренние ссылки

===== Маленький заголовок =====

2.2. Внешние ссылки

====== Ну совсем маленький заголовок ======
3. Интеграция загруженные файлы
======= Меньше некуда заголовок =======
4. Заголовки

NB: В заголовках справа не обязательно должно быть такое же количество знаков "=", достаточно двух


5. Отступы и списки


Отступы делаются с помощью двух пробелов (можно использовать устаревший вариант – табуляцию).
Так же нужно выделять отступом списки.
Списки:
  Отступ
    Двойной отступ
----
  * ненумерованный список
  * ненумерованный список-2
----
  1. нумерованный список
  1. нумерованный список-2
  1.#8 нумерованный список-2, с пропуском
----
  A. Верхний регистр
  A. Верхний регистр-2
----
  a. Нижний регистр
  a. Нижний регистр-2
----
  i. Римские цифры
  i. Римские цифры-2
----
  1. список
    1. вложенный список
      * ещё более вложенный список
    1. вложенный список-2
  2. список-2

Списки:

Отступ
Двойной отступ

  • ненумерованный список
  • ненумерованный список-2

  1. нумерованный список
  2. нумерованный список-2
  3. нумерованный список-2, с пропуском

  1. Верхний регистр
  2. Верхний регистр-2

  1. Нижний регистр
  2. Нижний регистр-2

  1. Римские цифры
  2. Римские цифры-2

  1. список
    1. вложенный список
      • ещё более вложенный список
    2. вложенный список-2
  2. список-2

6. Цитирование и определение

<[ Цитирование текста ]>

Цитирование текста,
длинного,
с переносами

>>Однострочное цитирование
>Да, это оно
А это обычный текст

А это обычный текст

(?Термин Некоторое определение?)

Термин
(?Термин с пробелами==Некоторое другое определение?)
NB: если вокруг '==' оставить пробелы, они так же останутся в тексте страницы
Термин с пробелами

7. Сноски (footnotes)

Текст, потом сноска[[*]] и вторая[[**]]
Текст, потом сноска* и вторая**
Текст, потом цифровая сноска[[*1]] и вторая[[*2]]
Текст, потом цифровая сноска1 и вторая2
[[#*]] Расшифровка первой сноски
[[#**]] Расшифровка второй сноски
[[#1]] Расшифровка цифровой сноски
[[#2]] Расшифровка второй цифровой сноски
* Расшифровка первой сноски
** Расшифровка второй сноски
1 Расшифровка цифровой сноски
2 Расшифровка второй цифровой сноски

Автоматически создаваемые сноски
?? [[fn Текст сноски здесь]]??
Генерирует сноски в конце страницы, см. пример

8. Таблицы


Таблица с рамкой
#|
*|заголовок 1|заголовок 2|заголовок 3|*
||клетка 1-1|клетка 1-2|клетка 1-3||
||клетка 2-1|клетка 2-2||
|#


заголовок 1заголовок 2заголовок 3
клетка 1-1клетка 1-2клетка 1-3
клетка 2-1клетка 2-2

Таблица без рамок, шириной 100%
#||
||клетка 1-1|клетка 1-2|клетка 1-3||
||клетка 2-1|клетка 2-2||
||#


клетка 1-1клетка 1-2клетка 1-3
клетка 2-1клетка 2-2

9. Прочее


Разделитель:
----



Явный перевод строки:
тест---шмест
тест
шмест


Вывод текста как есть, без применения форматирования:
текст необходимо заключить в двойные кавычки. В качестве примера можете изучить исходный текст данной страницы.
Кроме того, для экранирования любого вида разметки, можно использовать ~ (тильду).


Вывод HTML как есть:
работает только если такую функциональность разрешил администратор сайта.
<# <input type="text"> #>

Если вы видите <input type="text"> вместо поля ввода — значит, администратор сайта не разрешил данную функцию (параметр allow_rawhtml конфигурационного файла).


Верхний индекс:
E=mc^^2^^
E=mc2

  • NB: между ^^ не должно быть пробелов. Эта разметка создана для математики и ради компактности и совместимости не допускает наличия пробелов внутри размеченного блока

Нижний индекс:
пробелы перед и после vv обязательны Если их требуется избежать, следует использовать вместо них конструкцию """"

H vv2vv O
H 2 O
H""""vv2vv""""O
H2O
  • NB: между vv не должно быть пробелов. Эта разметка создана для математики и ради компактности и совместимости не допускает наличия пробелов внутри размеченного блока

10. Автокорректор

Автоматический корректор, встроенный в wiki, самостоятельно подгоняет сохраняемый текст под нормы форматирования, избавляя авторов от излишне детальной правки. Вот какие изменения он вносит:
Расстановка. Пробелов! И заглавий
Минус - превращает в тире
Два минуса -- в длинное тире
Спецсимволы (c), (r), (tm), (p), +-
Знаки градуса -15^C, +270^K
"Кавычки", "quotes"
Расстановка. Пробелов! И заглавий
Минус – превращает в тире
Два минуса — в длинное тире
Спецсимволы ©, ®, ™, §, ±
Знаки градуса -5°C, +0°K
"Кавычки", "quotes"

Если какой-то текст необходимо вывести "как есть", исключая его автоматическую корректуру, заключите его в двойные кавычки (заметьте: вся wiki-разметка внутри двойных кавычек также выводится на экран, а не форматирует текст).

11. Макросы


Макросы отличаются от остальной разметки тем, что при повторном редактировании документа вы увидите не вызов макроса, а результат его работы — они отрабатывают при сохранении текста.


Имя текущего пользователя:
::::
RomanIvanov


Имя текущего пользователя и дата:
::@::
RomanIvanov /20.06.2003 18:13/


Дата:
::+::
20.06.2003 18:13

12. Расширения – дополнительные форматтеры

В /Wacko Wiki можно легко добавлять новые обработчики текста. Их вызов происходит по синтаксису %%(name) текст%%.
В стандартной поставке есть следующие форматтеры:

%%(wacko)текст как есть. [[HomePage]]%%
Этот форматтер выводит текст так же, как если бы он был написан без форматера. Удобен для применения дополнительных оберток к тексту (выравнивание, боксы и тому подобное. См ниже.)
текст как есть. HomePage
%%(php) PHP-код%%
Важно отметить, что код должен начинаться открывающим <? и заканчиваться закрывающим ?>, так как для используемого встроенного в PHP модуля разметки синтаксиса именно эти разделители являются признаком php-кода.

<?
phpinfo
();
$s "Hello, World!\n";
print 
"$s";
?>

%%(comment) Комментарий, не выводится%%


%%(email) Email%%
 
Hi!
RI>> Yes, it is.
>Are you sure?

Of course, yes!

Roman.

%%(sql) SQL-code%%
 
SELECT * FROM sometable WHERE a = '12' and b = 2 ORDER BY c DESC --Comment

Так же доступны форматтеры (ini), (html), (css), (pascal) и (java)

 
<html>
<a href="http://www.ya.ru" width="8">test</a>
</html>


[Wiki]
BestEngine="WackoWiki"
Version=4


body {margin: 0; padding:5px;}
.class {background:url("http://www.ya.ru/")} 


program megaprogramme; 
{ comment }
BEGIN
 if a = 15 then writeln('test');
END.


Также существуют форматтеры для CSS, diff, DTD, Javascript, mySQL, PHP, Python, SQL, XML.
Они могут быть вызваны путем (hl [форматтер]), например, %%(hl css)
 
body {margin: 0; padding:5px;}
.class {background:url("http://www.ya.ru/")}


 
var a = document.getElementById("test");
a.value = new Array(15, 31);
function echo (msg) {alert(msg)};


 
<?
phpinfo();
$s = "Hello, World!\n";
print "$s";
?>


<config>
<section name="test">
  <var>Test</var>
  <val><![CDATA[..text...]]></val>
</section>
</config>

13. Обёртки вокруг форматтеров

Кроме того, любому форматтеру можно задать одну из "обёрток" указав ему параметр wrapper.
Доступны обёртки: box, shade, page и text.


%%(css wrapper=box wrapper_align=left wrapper_width=270)
.d { font-size:70% }
%%


Как мы видим, обёртка box позволяет формировать удобные "меню", обтекаемые текстом. Кстати, есть специальный форматтер (box), который не делает ничего кроме как оборачивает текст в эту обёртку.



%%(css wrapper=shade)
.d2 { font-size:70% }
%%

.d2 { font-size:70% } 

shade — это box без настроек.

%%(wacko wrapper=text wrapper_align=center) текст по центру %%
текст по центру

text выводит "плавающий" (float) блок текста.

%%(wacko wrapper=page wrapper_width=200) этот текст не может быть шире двухсот пикселей%%
этот текст не может быть шире двухсот пикселей

page позволяет регулировать ширину обычного блока текста.


%%(wacko wrapper=box wrapper_width=300)
**Box**---- «A hundred times every day I remind myself that my inner and outer life depend upon the labors of other men, living and dead, and that I must exert myself in order to give in the measure as I have received and am still receiving.» – Albert Einstein
%%



Форматтеры question и info


%%(question)Если вопрос произносят вслух, то используют характерную вопросительную интонацию. На письме вопрос выделяют вопросительным знаком. Тот, кто задает вопрос обычно ожидает какой-либо реакции собеседника. Исключение составляет риторический вопрос, на который ответ не требуется, так как он содержит утверждение...
Так сказал ((http://www.psychologos.ru/articles/view/vopros Психологос))
%%

?Если вопрос произносят вслух, то используют характерную вопросительную интонацию. На письме вопрос выделяют вопросительным знаком. Тот, кто задает вопрос обычно ожидает какой-либо реакции собеседника. Исключение составляет риторический вопрос, на который ответ не требуется, так как он содержит утверждение...
Так сказал Психологос

%%(info)Информация — это не материя и не энергия,
информация — это информация.
//Норберт Винер//
%%

iИнформация — это не материя и не энергия,
информация — это информация.
Норберт Винер

Общая оценка документа [показать форму]

страница еще не оценена