Шаблон:Пример/doc

Материал из Altermed Wiki
Перейти к навигации Перейти к поиску

{{#invoke:Message box|fmbox}} {{#invoke:Message box|ombox}} Шаблон:Rellink Этот шаблон выводит вики-текст включения шаблона (в общем случае с параметрами) и само это включение. Он в основном предназначен для упрощения оформления примеров использования шаблонов в документациях.

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

Для вывода групп примеров пользуйтесь шаблонами {{стопка примеров}} (списком) и {{таблица примеров}} (таблицей).

Шаблон:TOC right

Использование[править код]

  • {{пример|t|t}} даст {{#invoke:Example|main}}
  • {{пример|replace|something|some|any}} даст {{#invoke:Example|main}}
  • {{пример|tlc|шаблон|параметр 1|||параметр 4}} даст {{#invoke:Example|main}}
  • {{пример|tl|:en:Template:Example|text=English Template:Example}} даст {{#invoke:Example|main}}
  • {{пример|replace|something|some|any|_comment=Заменить все вхождения «some» на «any».}} даст {{#invoke:Example|main}}

Первый параметр можно опускать — тогда его заменит название базовой страницы со строчной первой буквы. Например, в документации шаблона {{tr-en}} {{пример||слово}} даст:

{{#invoke:Example|main}}

Это может быть особенно удобно для групп шаблонов, для которых пишется общая документация, размещаемая на каждой странице. А {{safesubst:#invoke: Template call code | withParams | _tag = code }} выведет пример включения шаблона, на странице которого этот код размещён, без параметров.

Для наглядности можно также указывать имя шаблона через параметр _template, при этом первый параметр больше не значит имя шаблона:

  • {{пример|_template=t|пример}} даст {{#invoke:Example|main}}

Ограничения и пути их обхода[править код]

При опускании первого параметра используется именно имя корневой страницы — Шаблон:Mwmw, а не проверка на суффиксы Шаблон:Code или иные, так что для шаблонов, которые являются подстраницами других шаблонов (например, юзербоксов), первый параметр опускать нельзя.

Модуль переносит все именованные параметры в конец, а также плохо сохраняет порядок следования именованных параметров, если их больше одного (из-за технического несовершенства ПО). Чтобы этого избежать, используйте Шаблон:Tcl вместо =:

Файл:Red x.svg main}}
Файл:Yes check.svg main}}

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

  • {{пример|tp|шаблон|_text{{=}}текст ссылки}} даст {{#invoke:Example|main}}

Чтобы вписать Шаблон:Tago, используйте HTML-сущности для замены угловых скобок, например:

  • {{пример|tp|шаблон|&lt;nowiki><nowiki>{{IPA|/tʃ/}}</nowiki>&lt;/nowiki>}} даст {{#invoke:Example|main}}

Чтобы вписать {{#invoke: Template call code | withParams | _tag = code }}, используйте {{((}}{{=}}{{))}} или HTML-сущности, например:

  • {{пример|pre|текст {{((}}{{=}}{{))}} текст|_sep={{sp↓|||-0.5em}}}} даст
{{#invoke:Example|main}}

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

Настройки[править код]

  • _sep: поменять стрелочку на что угодно другое:
    {{пример|t|t|_sep=отображается как}} даст {{#invoke:Example|main}}
  • _tag: поменять обёртку <code>:
    {{пример|_template=t|_tag=tt|пример}} даст {{#invoke:Example|main}}
  • _link: включить отображение ссылки:
    {{пример|_template=флаг|_link=1|Россия}} даст {{#invoke:Example|main}}
  • _pre-text (_prefix) и _post-text (_postfix): указать текст до и после шаблона:
    {{пример|tr-en|слово|_pre-text=word (|_post-text=)}} даст {{#invoke:Example|main}}
  • _nobr: запретить перенос строки для кода примера.
  • _nocat: запретить добавлять страницу в проставляемые шаблоном категории, если у него предусмотрен соответствующий параметр _nocat. При этом в коде включения шаблона этот параметр отображаться не будет. Так, например, в данном примере настоящая страница не добавляется в категорию Шаблон:Cl:
    {{пример|NASDAQ|123|_nocat=1}} даст {{#invoke:Example|main}}
  • _spaced: отбить пробелом каждый параметр для лучшей читаемости:
    {{пример|MathWorld|urlname=GammaFunction|title=Gamma Function|author=John Doe|_spaced=1}} даст:
    {{#invoke:Example|main}}
  • _comment: снабдить пример комментарием:
    {{пример|replace|something|some|any|_comment=Заменить все вхождения «some» на «any».}} даст {{#invoke:Example|main}}

Стили[править код]

С помощью параметра _style можно установить стиль, который будет устанавливать некоторые из вышеперечисленных параметров разом. Существующие на данный момент стили — pre, *pre и wikitable (а также pre↓):

  • {{пример|проверить нейтральность|дата{{=}}1 января 2010|_style=pre}} даст:
{{#invoke:Example|main}}Шаблон:^
  • {{пример|проверить нейтральность|дата{{=}}1 января 2010|_style=*pre}} даст:
{{#invoke:Example|main}}

Шаблон:*pre

даст
Код Результат
main}}
main}}
(Для создания таблицы с примерами удобнее воспользоваться шаблоном {{таблица примеров}}.)

См. также[править код]

Шаблон:Шаблоны для документирования