====== Синтаксис wiki-разметки ====== [[doku>DokuWiki]] использует простой язык разметки, задача которого — сделать исходные тексты страниц наиболее читаемыми. Эта страница содержит описание и примеры разметки, которую вы можете использовать при редактировании страниц. Просто посмотрите на исходник этой страницы, нажав на кнопку "Править". Если вы хотите попробовать что-то в деле, используйте [[playground:playground|песочницу]]. Часто используемая разметка доступна по кнопкам [[doku>toolbar|панели инструментов]] в редакторе. ===== Базовое форматирование текста ===== DokuWiki поддерживает **жирный**, //курсив//, __подчеркнутый__ and ''моноширинный'' стили текста. Так же вы можете **__//''комбинировать''//__** их. DokuWiki поддерживает **жирный**, //курсив//, __подчеркнутый__ and ''моноширинный'' стили текста. Так же вы можете **__//''комбинировать''//__** их. Так же вы можете **__//''комбинировать''//__** их. Вы можете использовать нижний и верхний индексы. Вы можете использовать нижний и верхний индексы. Вы можете зачеркнуть что-нибудь. Вы можете зачеркнуть что-нибудь. **Параграфы** начинаются с пустой строки. Если вы хотите сделать **перенос строки** без параграфа, используйте два обратных слеша в конце строки или с последующим пробелом. Это какой-то текст с переносами строк\\ Двойной обратный слеш имеет смысл только в конце строки\\ или с последующим\\ пробелом. \\эти слеши не будут обработаны. Это какой-то текст с переносами строк\\ Двойной обратный слеш имеет смысл только в конце строки\\ или с последующим\\ пробелом. \\эти слеши не будут обработаны. Используйте перенос строки только тогда, когда это реально необходимо! ===== Ссылки ===== DokuWiki поддерживает множество способов создания ссылок. ==== Внешние ссылки ==== Внешние ссылки распознаются //автомагически//: http://www.google.com или просто www.google.com - Вы можете сделать текстовую ссылку: [[http://www.google.com|Это ссылка на google]]. Адреса email тоже распознаются: . Внешние ссылки распознаются //автомагически//: http://www.google.com или просто www.google.com - Вы можете сделать текстовую ссылку: [[http://www.google.com|Это ссылка на google]]. Адреса email тоже распознаются: . ==== Внутренние ссылки ==== Внутренние ссылки создаются с помощью двойных квадратных скобок. Вы можете просто указать [[имястраницы]] или использовать дополнительный [[имястраницы|текст ссылки]]. Внутренние ссылки создаются с помощью двойных квадратных скобок. Вы можете просто указать [[имястраницы]] или использовать дополнительный [[имястраницы|текст ссылки]]. [[doku>pagename|Имена страниц]] автоматически конвертируются в нижний регистр и транслитеруются. Вы можете использовать [[пространства:имен]], отделяя их от двоеточием от имени страниц. Вы можете использовать [[пространства:имен]], отделяя их от двоеточием от имени страниц. Подробнее о пространствах имен [[doku>namespaces]]. Можно сделать ссылку на раздел на странице. Просто добавьте имя раздела после символа "решетки" #, так же как в HTML. Это ссылка на [[syntax#Внутренние ссылки|эту секцию]]. Это ссылка на [[syntax#Внутренние ссылки|эту секцию]]. Замечания: * Ссылки на [[syntax|существующие страницы]] отличаются от ссылок на [[nonexisting|несуществующие]]. * DokuWiki по-умолчанию не использует [[wp>CamelCase]] для автоматического создания ссылок, но такое поведение может быть изменено в [[doku>config|конфигурации]]. Подстазка: Если DokuWiki <- это ссылка, то настройка включена. * Когда меняется заголовок раздела, то "закладка" на раздел тоже меняется. Старайтесь не использовать ссылки на разделы, поскольку это может привести к "битым" ссылкам. ==== Интервики ==== DokuWiki поддерживает ссылки [[doku>Interwiki]]. Это ссылки на другие Wiki или сайты. Например, это [[wp>Wiki|ссылка на Википедию]], а это [[mista>10000|тема на форуме]]. DokuWiki поддерживает ссылки [[doku>Interwiki]]. Это ссылки на другие Wiki или сайты. Например, это [[wp>Wiki|ссылка на Википедию]], а это [[mista>10000|тема на форуме]]. ==== Изображения в ссылках ==== Вы можете использовать изображения внутри ссылок на внешние и внутрение страницы, комбинируя синтаксис ссылок и [[#Изображения и файлы|изображений]] (см. ниже): [[http://www.php.net|{{wiki:dokuwiki-128.png}}]] [[http://www.php.net|{{wiki:dokuwiki-128.png}}]] Вставка изображений — это единственно доступная разметка в подписях ссылок Вы можете комбинировать синтаксис вставки [[#Изображения и файлы|изображений]] и [[#Ссылки|ссылок]] (включая изменение размера, внешние и внутренние изображения и ссылки). ===== Сноски ===== Вы можете добавить сноски ((Это сноска)), используя двойные круглые скобки. Вы можете добавить сноски ((Это сноска)), используя двойные круглые скобки. ===== Разделы ===== Вы можете использовать пять уровней заголовков для структурирования содержимого. Если на странице используется больше трех заголовков, то автоматически будет сгенерирован блок с содержанием страницы. Это можно запретить, включив строку ''~~NOTOC~~'' в документ. ==== Заголовок 3 уровня ==== === Заголовок 4 уровня === == Заголовок 5 уровня == ==== Заголовок 3 уровня ==== === Заголовок 4 уровня === == Заголовок 5 уровня == Используя 4 или более "черточек" (-), можно добавить горизонтальную линию: ---- ===== Изображения и файлы ===== Вы можете включить внешние и внутрениие [[doku>images|изображения, видео и аудио файлы]], используя двойные фигурные скобки. Допольнительно можно изменять размер изображения: Реальный размер: {{wiki:dokuwiki-128.png}} Изображение заданной ширины: {{wiki:dokuwiki-128.png?50}} Изображение заданной ширины и высоты ((если соотношение сторон изображения не соответствует заданному, изображение будет обрезано)): {{wiki:dokuwiki-128.png?200x50}} Внешнее изображение с изменным размером: {{https://www.google.ru/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png?200x50}} Реальный размер: {{wiki:dokuwiki-128.png}} Изображение заданной ширины: {{wiki:dokuwiki-128.png?50}} Изображение заданной ширины и высоты: {{wiki:dokuwiki-128.png?200x50}} Внешнее изображение с изменным размером: {{https://www.google.ru/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png?200x50}} Выравнивание задается добавлением пробелов слева и/или справа. {{ wiki:dokuwiki-128.png}} {{wiki:dokuwiki-128.png }} {{ wiki:dokuwiki-128.png }} {{ wiki:dokuwiki-128.png}} {{wiki:dokuwiki-128.png }} {{ wiki:dokuwiki-128.png }} Можно добавить название изображения, которое будет показано в всплывающей подсказке: {{ wiki:dokuwiki-128.png |Это название картинки}} {{ wiki:dokuwiki-128.png |Это название картинки}} Как использовать изображения внутри ссылок смотрите в разделе [[#Изображения в ссылках]]. ==== Поддерживаемые форматы ==== Следующие форматы могут быть вставлены в страницы DokuWiki . | Image | ''gif'', ''jpg'', ''png'' | | Video | ''webm'', ''ogv'', ''mp4'' | | Audio | ''ogg'', ''mp3'', ''wav'' | | Flash | ''swf'' | Если вы укажете файл неподдерживаемого формата, он будет отображен в виде ссылки. С помощью параметра ''?linkonly'' вы получите ссылку на медиа-файл без вставки его в страницу. Это {{wiki:dokuwiki-128.png?linkonly|просто ссылка}} на картинку. Это {{wiki:dokuwiki-128.png?linkonly|просто ссылка}} на картинку. ==== Резервные форматы ==== К сожалению, не все браузеры понимают все видео и аудио форматы. Для "смягчения" проблемы, вы можете загрузить файлы в разных форматах для увеличения совместимости. Например, рассмотрим вставку видео в mp4: {{video.mp4|Прикольный ролик}} Если вы расположите ''video.webm'' и ''video.ogv'' рядом с указанным ''video.mp4'', DokuWiki автоматически добавит их как альтернативные, с тем, чтобы какой-нибудь из них поддерживался вашим браузером. В дополнение к этому, DokuWiki поддерживает "постеры" — это изображение, которое будет показано перед запуском видео. Это изображение должно иметь то же самое имя, что и видеофайл, и иметь расширение jpg или png. Для нашего примера это может быть ''video.jpg''. ===== Списки ===== Dokuwiki поддерживает нумерованные и ненумерованные списки. Для создания элемента списка, сделайте отступ в два пробела и поставьте ''*'' для ненумерованного списка или ''-'' для нумерованного. * Это ненумерованный список * Это второй элемент * Это вложенный список * Из двух элементов * И еще один элемент - То же самое, - Но уже с номерами - Добавьте отступ - Для вложенного списка - Все очень просто! * Это ненумерованный список * Это второй элемент * Это вложенный список * Из двух элементов * И еще один элемент - То же самое, - Но уже с номерами - Добавьте отступ - Для вложенного списка - Все очень просто! Так же смотрите [[doku>faq:lists|FAQ по спискам]]. ===== Преобразования текста ===== DokuWiki может конвертировать некоторые предопределенные комбинации символов в изображения, текст или HTML. Например, преобразования текста в картинки используется для вставки "смайликов". Преобразование символов в HTML используется для вставки специальных символов. ==== Преобразование текста в картинки ==== DokuWiki конвертирует широкоиспользуемые "[[wp>emoticon|эмотиконы]]" в их графические эквиватенты. Эти [[doku>Smileys]] и другие картинки могут быть расширены и настроены. Эти смайлики включены в DokuWiki: * 8-) %% 8-) %% * 8-O %% 8-O %% * :-( %% :-( %% * :-) %% :-) %% * =) %% =) %% * :-/ %% :-/ %% * :-\ %% :-\ %% * :-? %% :-? %% * :-D %% :-D %% * :-P %% :-P %% * :-O %% :-O %% * :-X %% :-X %% * :-| %% :-| %% * ;-) %% ;-) %% * ^_^ %% ^_^ %% * :?: %% :?: %% * :!: %% :!: %% * LOL %% LOL %% * FIXME %% FIXME %% * DELETEME %% DELETEME %% ==== Преобразование текста в HTML ==== Типографика: DokuWiki может конвертировать последовательности символов в их представление. Примеры распознаваемых символов: -> <- <-> => <= <=> >> << -- --- 640x480 (c) (tm) (r) "He thought 'It's a man's world'..." -> <- <-> => <= <=> >> << -- --- 640x480 (c) (tm) (r) "He thought 'It's a man's world'..." То же самое может быть проделано с любыми элементами HTML. Для этого необходимо добавить их в [[doku>entities|pattern file]]. Существуют три исключения, которые не настраиваются в pattern file: знак умножения (640x480), 'одинарные' and "двойные кавычки". Они могут быть выключены в [[doku>config:typography|настройках]]. ===== Цитирование ===== Иногда необходимо выделить какой-то текст как цитаты или комментарии. Это можно сделать с помощью следующего синтаксиса: I think we should do it > No we shouldn't >> Well, I say we should > Really? >> Yes! >>> Then lets do it! I think we should do it > No we shouldn't >> Well, I say we should > Really? >> Yes! >>> Then lets do it! ===== Таблицы ===== DokuWiki предоставляет простой синтаксис для создания таблиц. ^ Заголовок 1 ^ Заголовок 2 ^ Заголовок 3 ^ | Стр 1 Кол 1 | Стр 1 Кол 2 | Стр 1 Кол 3 | | Стр 2 Кол 1 | объединенная колонка (обратите внимание на двойную черту) || | Стр 3 Кол 1 | Стр 3 Кол 2 | Стр 3 Кол 3 | Строки таблицы могут начинаться и заканчиваться символами ''|'' для обычных строк или символами ''^'' для заголовков. ^ Заголовок 1 ^ Заголовок 2 ^ Заголовок 3 ^ | Стр 1 Кол 1 | Стр 1 Кол 2 | Стр 1 Кол 3 | | Стр 2 Кол 1 | объединенная колонка (обратите внимание на двойную черту) || | Стр 3 Кол 1 | Стр 3 Кол 2 | Стр 3 Кол 3 | Чтобы объединить ячейки по-горизонтали, сделайте следующую ячейку полностью пустой, как показано выше. Убедтесь, что количество разделителей колонок одинаковое во всех строках! Заголовки можно располагать в строках. | ^ Заголовок 1 ^ Заголовок 2 ^ ^ Заголовок 3 | Стр 1 Кол 2 | Стр 1 Кол 3 | ^ Заголовок 4 | нет объединения колонок | | ^ Заголовок 5 | Стр 2 Кол 2 | Стр 2 Кол 3 | Как видно, тип разделителя *перед* ячейкой определяет ее формат: | ^ Заголовок 1 ^ Заголовок 2 ^ ^ Заголовок 3 | Стр 1 Кол 2 | Стр 1 Кол 3 | ^ Заголовок 4 | нет объединения колонок | | ^ Заголовок 5 | Стр 2 Кол 2 | Стр 2 Кол 3 | Можно объединить ячейки по-вертикали, добавив символы ''%%:::%%'' непосредственно под основной ячейкой. ^ Заголовок 1 ^ Заголовок 2 ^ Заголовок 3 ^ | Стр 1 Кол 1 | эта ячейка объединена по-вертикали | Стр 1 Кол 3 | | Стр 2 Кол 1 | ::: | Стр 2 Кол 3 | | Стр 3 Кол 1 | ::: | Стр 2 Кол 3 | ^ Заголовок 1 ^ Заголовок 2 ^ Заголовок 3 ^ | Стр 1 Кол 1 | эта ячейка объединена по-вертикали | Стр 1 Кол 3 | | Стр 2 Кол 1 | ::: | Стр 2 Кол 3 | | Стр 3 Кол 1 | ::: | Стр 2 Кол 3 | Для выравнивания содержимого ячейки добавьте два пробела с //противоположной// стороны: ^ Выравнивание в таблице ^^^ | вправо| по центру |влево | |влево | вправо| по центру | | xxxxxxxxxxxxx | xxxxxxxxxxxxxxx | xxxxxxxxxxxxx | ^ Выравнивание в таблице ^^^ | вправо| по центру |влево | |влево | вправо| по центру | | xxxxxxxxxxxxx | xxxxxxxxxxxxxxx | xxxxxxxxxxxxx | Выравнивание по-вертикали не поддерживается ===== Отмена форматирования ===== Если необходимо вывести текст так, как он напечатан (без форматирования), заключите текст в теги ''%%%%'' или в двойные процентные знаки ''%%''. Это какой-то текст, который содержит ссылку: http://www.splitbrain.org и **форматирование**, и он показан "как есть". То же верно для %%//__этого__ текста// со смайликом ;-)%%. Это какой-то текст, который содержит ссылку: http://www.splitbrain.org и **форматирование**, и он показан "как есть". То же верно для %%//__этого__ текста// со смайликом ;-)%%. ===== Code Blocks ===== You can include code blocks into your documents by either indenting them by at least two spaces (like used for the previous examples) or by using the tags ''%%%%'' or ''%%%%''. This is text is indented by two spaces. This is preformatted code all spaces are preserved: like <-this This is pretty much the same, but you could use it to show that you quoted a file. Those blocks were created by this source: This is text is indented by two spaces. This is preformatted code all spaces are preserved: like <-this This is pretty much the same, but you could use it to show that you quoted a file. ==== Syntax Highlighting ==== [[wiki:DokuWiki]] can highlight sourcecode, which makes it easier to read. It uses the [[http://qbnz.com/highlighter/|GeSHi]] Generic Syntax Highlighter -- so any language supported by GeSHi is supported. The syntax uses the same code and file blocks described in the previous section, but this time the name of the language syntax to be highlighted is included inside the tag, e.g. '''' or ''''. /** * The HelloWorldApp class implements an application that * simply displays "Hello World!" to the standard output. */ class HelloWorldApp { public static void main(String[] args) { System.out.println("Hello World!"); //Display the string. } } The following language strings are currently recognized: //4cs, 6502acme, 6502kickass, 6502tasm, 68000devpac, abap, actionscript-french, actionscript, actionscript3, ada, algol68, apache, applescript, asm, asp, autoconf, autohotkey, autoit, avisynth, awk, bascomavr, bash, basic4gl, bf, bibtex, blitzbasic, bnf, boo, c, c_loadrunner, c_mac, caddcl, cadlisp, cfdg, cfm, chaiscript, cil, clojure, cmake, cobol, coffeescript, cpp, cpp-qt, csharp, css, cuesheet, d, dcs, delphi, diff, div, dos, dot, e, epc, ecmascript, eiffel, email, erlang, euphoria, f1, falcon, fo, fortran, freebasic, fsharp, gambas, genero, genie, gdb, glsl, gml, gnuplot, go, groovy, gettext, gwbasic, haskell, hicest, hq9plus, html, html5, icon, idl, ini, inno, intercal, io, j, java5, java, javascript, jquery, kixtart, klonec, klonecpp, latex, lb, lisp, llvm, locobasic, logtalk, lolcode, lotusformulas, lotusscript, lscript, lsl2, lua, m68k, magiksf, make, mapbasic, matlab, mirc, modula2, modula3, mmix, mpasm, mxml, mysql, newlisp, nsis, oberon2, objc, objeck, ocaml-brief, ocaml, oobas, oracle8, oracle11, oxygene, oz, pascal, pcre, perl, perl6, per, pf, php-brief, php, pike, pic16, pixelbender, pli, plsql, postgresql, povray, powerbuilder, powershell, proftpd, progress, prolog, properties, providex, purebasic, pycon, python, q, qbasic, rails, rebol, reg, robots, rpmspec, rsplus, ruby, sas, scala, scheme, scilab, sdlbasic, smalltalk, smarty, sql, systemverilog, tcl, teraterm, text, thinbasic, tsql, typoscript, unicon, uscript, vala, vbnet, vb, verilog, vhdl, vim, visualfoxpro, visualprolog, whitespace, winbatch, whois, xbasic, xml, xorg_conf, xpp, yaml, z80, zxbasic// ==== Downloadable Code Blocks ==== When you use the ''%%%%'' or ''%%%%'' syntax as above, you might want to make the shown code available for download as well. You can do this by specifying a file name after language code like this: If you don't want any highlighting but want a downloadable file, specify a dash (''-'') as the language code: ''%%%%''. ===== Embedding HTML and PHP ===== You can embed raw HTML or PHP code into your documents by using the ''%%%%'' or ''%%%%'' tags. (Use uppercase tags if you need to enclose block level elements.) HTML example: This is some inline HTML

And this is some block HTML

This is some inline HTML

And this is some block HTML

PHP example: echo 'The PHP version: '; echo phpversion(); echo ' (generated inline HTML)'; echo ''; echo ''; echo '
The same, but inside a block level element:'.phpversion().'
';
echo 'The PHP version: '; echo phpversion(); echo ' (inline HTML)'; echo ''; echo ''; echo '
The same, but inside a block level element:'.phpversion().'
';
**Please Note**: HTML and PHP embedding is disabled by default in the configuration. If disabled, the code is displayed instead of executed. ===== RSS/ATOM Feed Aggregation ===== [[DokuWiki]] can integrate data from external XML feeds. For parsing the XML feeds, [[http://simplepie.org/|SimplePie]] is used. All formats understood by SimplePie can be used in DokuWiki as well. You can influence the rendering by multiple additional space separated parameters: ^ Parameter ^ Description ^ | any number | will be used as maximum number items to show, defaults to 8 | | reverse | display the last items in the feed first | | author | show item authors names | | date | show item dates | | description| show the item description. If [[doku>config:htmlok|HTML]] is disabled all tags will be stripped | | nosort | do not sort the items in the feed | | //n//[dhm] | refresh period, where d=days, h=hours, m=minutes. (e.g. 12h = 12 hours). | The refresh period defaults to 4 hours. Any value below 10 minutes will be treated as 10 minutes. [[wiki:DokuWiki]] will generally try to supply a cached version of a page, obviously this is inappropriate when the page contains dynamic external content. The parameter tells [[wiki:DokuWiki]] to re-render the page if it is more than //refresh period// since the page was last rendered. By default the feed will be sorted by date, newest items first. You can sort it by oldest first using the ''reverse'' parameter, or display the feed as is with ''nosort''. **Example:** {{rss>http://slashdot.org/index.rss 5 author date 1h }} {{rss>http://slashdot.org/index.rss 5 author date 1h }} ===== Control Macros ===== Some syntax influences how DokuWiki renders a page without creating any output it self. The following control macros are availble: ^ Macro ^ Description | | %%~~NOTOC~~%% | If this macro is found on the page, no table of contents will be created | | %%~~NOCACHE~~%% | DokuWiki caches all output by default. Sometimes this might not be wanted (eg. when the %%%% syntax above is used), adding this macro will force DokuWiki to rerender a page on every call | ===== Syntax Plugins ===== DokuWiki's syntax can be extended by [[doku>plugins|Plugins]]. How the installed plugins are used is described on their appropriate description pages. The following syntax plugins are available in this particular DokuWiki installation: ~~INFO:syntaxplugins~~