Макрокоманды

Макрокоманды позволяют вставлять в обычные вики-страницы результаты работы функций самого вики-движка. Т. н. «специальные страницы» (например, ПоследниеИзменения или SystemInfo — системная информация) реализованы путём добавления в их содержимое макрокоманд. Достаточно посмотреть исходную разметку этих страниц, чтобы понять, как именно это сделано.

Более подробную информацию о собственно разметке см. на страницах КакРедактировать и СправочникПоСинтаксису.

Поисковые макрокоманды

Поисковая подсистема МойнМойн позволяет создавать довольно сложные поисковые запросы как непосредственно в поле поиска, так и при вызове любой поисковой макрокоманды, подробнее см. КакИскать. В частности, вместо поиска подстроки может использоваться поиск регулярного выражения, составной поиск, применяться фильтрация по языку и т. п.

Макрокоманда

Описание

<<AdvancedSearch>>

Добавляет на страницу форму расширенного поиска, см. НайтиСтраницу.

<<TitleSearch>>

Добавляет на страницу поле для поиска по заголовкам, см. НайтиСтраницу.

<<FullSearch>>

Добавляет на страницу поле для поиска по всему содержимому сайта, см. НайтиСтраницу.

<<FullSearch()>>

Выводит список страниц, ссылающихся на данную; то же самое происходит, если кликнуть на заголовок страницы. См., например, КатегорияКатегория.

<<FullSearch(текст[, highlight_titles={0|1}, highlight_pages={0|1}])>>

Выводит список страниц, содержащих текст. Если параметр конфигурации search_macro_parse_args включен, то параметр highlight_titles позволяет управлять выделением части имён страниц в генерируемом списке, соответствующей условию, а параметр highlight_pages отвечает за добавление параметра highlight= к URL ссылок в списке страниц.

<<FullSearchCached(текст[, highlight_titles={0|1}, highlight_pages={0|1}])>>

работает аналогично FullSearch, плюс к тому сохраняет результаты поиска в кэше страницы. Это даёт значительный выигрыш в производительности, но сами результаты, возможно, окажутся устаревшими. Поведение параметров highlight_titles и highlight_pages аналогично поведению их в макрокоманде FullSearch.

<<GoTo>>

Добавляет на страницу поле для перехода на определённую страницу, см. НайтиСтраницу.

<<PageList(Имя[, highlight_titles={0|1}])>>

Выводит список страниц, заголовки которых содержат Имя. Используется, например, на странице СправочныйУказатель. Поведение параметра highlight_titles такое же, как и у макрокоманды FullSearch.

Навигационные макрокоманды

Макрокоманды, упрощающие навигацию по сети вики-страниц и связанных с ними объектов.

Макрокоманда

Описание

<<RecentChanges>>

Список страниц, которые недавно редактировались. См. ПоследниеИзменения.

<<TitleIndex>>

Список всех страниц. См. АлфавитныйУказатель.

<<WordIndex>>

Список всех слов, встречающихся в именах страниц. См. ПредметныйУказатель.

<<WantedPages>>

Список несуществующих страниц, на которые имеются ссылки. См. НенаписанныеСтраницы.

<<OrphanedPages>>

Список страниц, на которые никто не ссылается. См. ОдинокиеСтраницы.

<<AbandonedPages>>

Список страниц, которые давно уже никто не редактировал. См. БрошенныеСтраницы

<<RandomPage>>

Ссылка, всякий раз ведущая на случайную страницу. См. СтраницаНаугад.

<<RandomPage(N)>>

Список из N ссылок, ведущих на случайные страницы.

<<TableOfContents([глубина])>>

Выводит содержание текущей страницы (иерархический список ссылок на заголовки). Можно ограничить уровень упоминаемых заголовков уровнем глубина. Пример — в начале этой страницы.

<<Anchor(якорь)>>

Макрокоманда, помещающая якорь в текущее место страницы.

<<Navigation(children[,maxdepth])>>

Выводит список всех вложенных страниц текущей страницы. Можно ограничить уровень упоминаемых вложенных страниц глубиной. Пример — в начале этой страницы.

<<Navigation(siblings[,maxdepth])>>

Выводит список всех страниц того же уровня, что и текущая; иными словами, список вложенных страниц родительской страницы. Пример — страница /MailTo.

<<Navigation(slideshow)>>

Вставляет переключатель между режимом слайд-шоу и обычным, а также ссылку на начало слайд-шоу и режим раздаточных материалов, в котором текст всех слайдов представлен без вики-оформления. См. КакДелатьСлайды.

<<Navigation(slides)>>

Вставляет ссылки на первый, предыдущий, следующий и последний слайды. См. КакДелатьСлайды.

<<AttachInfo>>

Показывает количество приложенных к текущей странице файлов. См ПомощьПоДействиям/AttachFile.

<<AttachInfo(ИмяСтраницы)>>

Показывает количество приложенных к странице ИмяСтраницы файлов. См ПомощьПоДействиям/AttachFile.

<<AttachList([ИмяСтраницы])>>

Показывает список ссылок на файлы, приложенные к текущей странице (или к странице ИмяСтраницы, если этот параметр указан). См. ПомощьПоДействиям/AttachFile.

<<AttachList([ИмяСтраницы[,тип MIME[,фильтр поиска]]])>>

Показывает список ссылок только на файлы, прикреплённые к странице ИмяСтраницы, имеющие тип тип MIME и удовлетворяющие регулярному выражению, указанному в параметре фильтр поиска. См ПомощьПоДействиям/AttachFile.

Информационные макрокоманды

Макрокоманда

Описание

<<Hits([all=(False, True)][, event_type=(VIEWPAGE, SAVEPAGE)])>>

Счётчик количества обращений к странице. Параметр all определяет, должна ли статистика отображать для всех страниц (в случае, если значение параметра равно «True») или только для страницы, на которой расположена макрокоманда (при значении «False» параметра, поведение по умолчанию). Параметр event_type указывает используемый счётчик действий, значений которого необходимо отображать; «VIEWPAGE» (используется по умолчанию) — просмотры страницы, «SAVEPAGE» — правки.

<<InterWiki>>

Список ИнтерВики-имён.

<<SystemInfo>>

Информация о версии вики-сервера, интерпретатора Python и базовой операционной системы.

<<PageCount([exists])>>

Общее количество имён страниц. Если в качестве параметра указано {exists, подсчитываются только существующие страницы.

<<PageSize>>

Выводит список страниц, отсортированный по их размеру (размер тоже выводится). /!\ Осторожно! Эта макрокоманда довольно ресурсоёмка! См. РазмерыСтраниц

<<StatsChart(тип)>>

Показывает различную статистику по страницам. Допустимые значения параметра тип: hitcounts, pagesize, useragents, languages. См. страницу СтатистикаПросмотров и её вложенные страницы.

<<SystemAdmin>>

Информация для администратора вики. Доступна только суперпользователю.

<<EditedSystemPages>>

Список изменённых системных страниц.

<<WikiConfig>>

Список изменённых или не заданных настроек вики-сервера. Доступен только суперпользователю

<<WikiConfigHelp>>

Полный список настроек вики-движка и их описание.

<<HighlighterList>>

Список доступных лексеров Pygments. См. MacroMarket/HighlighterList/Ru для дополнительной информации.

Разное

Макрокоманда

Описание

<<Action(действие[, пояснительный текст])>>

Ссылка на страницу, порождаемую соответствующим действием (см. ПомощьПоДействиям); допустим необязательный параметр пояснительный текст. Пример: <<Action(print, Напечатать эту страницу)>> преобразуется в Напечатать эту страницу.

<<Icon(иконка)>>

Показывает значок иконка. См. КакОриентироваться.

<<BR>>

Вставляет перевод строки.

<<RandomQuote([СборникЦитат])>>

Показывает случайную цитату со страницы СборникЦитат (если параметр не указан — со страницы FortuneCookies).

<<Include(СтраницаДляВстраивания[, "заголовок"[, уровень]])>>

Вставляет содержимое страницы HelloWorld. См. /Include.

<<FootNote(текст сноски)>>

Добавляет в хранилище сносок сноску1 и вставляет ссылку на неё. Если текст сноски опущен, выводит содержимое хранилища сносок со ссылками на соответствующие пометки в тексте. Если вызов макрокоманды <<FootNote>> без параметров отсутствует в тексте страницы, то сноски будут добавлены с её конец.

<<Date([timestamp])>>

Вставляет дату (по умолчанию — текущую) в соответствие с системными настройками; пример: 2024-12-18.

<<DateTime(timestamp)>>

Вставляет дату и время2 в соответствие с системными на стройками; пример:2024-12-18 03:22:54.

<<GetText(текст)>>

(используется чаще всего в страницах помощи) Показывает переведённый текст, если таковой существует в подсистеме локализации. Пример: «RecentChanges» переводится как «RecentChanges».

<<GetText2(,сообщение,параметр1,параметр2, ...)>>

(используется чаще всего в страницах помощи и в автоматически создаваемых разделах страниц) Подставляет в I18N-перевод сообщения на место каждого вхождения %s очередной параметр; результат выводит.
<!> Особенность этой макрокоманды: первый символ внутри скобок используется в качестве разделителя сообщения и параметров (в примере ниже это минус -); пробельные и управляющие символы в качестве разделителя должны экранироваться с помощью обратной косой черты \\. Пример: «<<GetText2(-[You may not read %s]-FooBar)>>» переводится как «[You may not read FooBar]».
Для именованных параметров в строке формата указывайте используйте "=" для разделения имени и значения в аргументах, например: «<<GetText2(,Upload new attachment \"%(filename)s\",filename=файл.txt)>>» будет отображён как «Upload new attachment "файл.txt"».

<<TeudView>>

Используется главным образом разработчиками для просмотра документации, порождаемой pydoc, которая форматируется посредством XSLT-преобразования. См. http://twistedmatrix.com/wiki/python/TeudProject.

<<MailTo(email)>>

Позволяет записывать почтовый адрес в виде, непригодном для спам-ботов. См. /MailTo.

<<NewPage(ШаблонСтраницы, НадписьНаКнопке[, (РодительскаяСтраница | @ME | @SELF)][, ШаблонИмени])>>

Позволяет быстро создавать (вложенные) страницы по шаблону ШаблонСтраницы для содержимого и ШаблонИмени для имени страницы3. Вместо параметра РодительскаяСтраница можно использовать @ME (в этом случае будет создана вложенная страница домашней страницы пользователя) и @SELF (в этом случае создастся вложенная страница той страницы, где была вызвана макрокоманда).

<<GetVal(СтраницаСоСловарём, ЗаголовокСтатьи)>>

Показывает словарную статью со СтраницыСоСловарём. Например, если существует страница RussianDict, а в ней — статья Test, здесь должен появиться перевод: Тест.

<<MonthCalendar(,,12)>>

показывает календарь и ссылки в нём на вложенные страницы, соответствующие дням. См. /MonthCalendar.

  1. Текст сноски может содержать разметку: подчёркивание, полужирное начертание (1)

  2. параметр «timestamp» можно опускать (что соответствует текущей дате), выражаться количеством секунд, прошедших с начала 1970 года (т. н. «UNIX time»), либо время в стандарте W3C («2002-01-23T12:34:56», см. RFC 822, раздел 5. (2)

  3. ШаблонИмени форматируется функцией time.strftime(), причём если в нём присутствует подстрока %s, то показывается также поле ввода и она заменяется на строчку, введённую пользователем; по умолчанию ШаблонИмени — это %s (3)

MoinMaster: ПомощьПоМакроКомандам (last edited 2015-09-21 01:12:11 by EugeneSyromyatnikov)