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

Материал из Буквицы
< Шаблон:Пример
Версия от 08:21, 21 июня 2021; Karaby (обсуждение | вклад) (Новая страница: «{{docpage}} {{onLua|Example}} {{rellink|{{днш|example}}}} Этот шаблон выводит вики-текст включения шаблона (в общ…»)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)
Перейти к навигации Перейти к поиску

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

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

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

Использование

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

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

{{tr-en|слово}}

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

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

  • {{пример|_template=t|пример}} даст {{t|пример}}{{пример}}

Ограничения и пути их обхода

При опускании первого параметра используется именно имя корневой страницы — {{ROOTPAGENAME}}, а не проверка на суффиксы /doc или иные, так что для шаблонов, которые являются подстраницами других шаблонов (например, юзербоксов), первый параметр опускать нельзя.

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

Red x.svg {{пример|некий шаблон|parameter1=value|parameter2=value|parameter3=value}} даст:
{{некий шаблон|parameter1=value|parameter3=value|parameter2=value}}
Yes check.svg {{пример|некий шаблон|parameter1{{=}}value|parameter2{{=}}value|parameter3{{=}}value}} даст:
{{некий шаблон|parameter1=value|parameter2=value|parameter3=value}}

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

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

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

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

Чтобы вписать {{пример}}, используйте {{((}}{{=}}{{))}} или HTML-сущности, например:

  • {{пример|pre|текст {{((}}{{=}}{{))}} текст|_sep={{sp↓|||-0.5em}}}} даст
{{pre|текст {{=}} текст}} Шаблон:Sp↓
текст = текст

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

Настройки

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

Стили

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

  • {{пример|проверить нейтральность|дата{{=}}1 января 2010|_style=pre}} даст:
{{проверить нейтральность|дата=1 января 2010}}
  • {{пример|проверить нейтральность|дата{{=}}1 января 2010|_style=*pre}} даст:

Шаблон:*pre

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

См. также

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