Шаблон:Пример/doc: различия между версиями

Материал из wikixw
Перейти к навигации Перейти к поиску
(Новая страница: «{{docpage}} {{onLua|Example}} {{rellink|{{днш|example}}}} Этот шаблон выводит вики-текст включения шаблона (в общем случае с параметрами) и само это включение. Он в основном предназначен для упрощения оформления примеров использования шаблонов в документациях. В данный момен...»)
 
Нет описания правки
 
(не показаны 2 промежуточные версии этого же участника)
Строка 1: Строка 1:
{{docpage}}
{{docpage}}
{{onLua|Example}}
Шаблон создаёт демонстрационный пример кода какого-либо шаблона с неименованными параметрами и через стрелочку результат работы этого кода. Предназначен для использования в документации шаблонов. Первый параметр — имя демонстрируемого шаблона (по умолчанию берётся из названия страницы), остальные — его неименованные параметры (до 8 параметров).
{{rellink|{{днш|example}}}}
Этот шаблон выводит вики-текст включения шаблона (в общем случае с параметрами) и само это включение. Он в основном предназначен для упрощения оформления примеров использования шаблонов в документациях.


В данный момент шаблон не может использоваться для оформления примеров шаблонов с многострочным кодом и содержащих шаблоны внутри шаблона. (Хотя это технически реализуемо, см. [[Обсуждение шаблона:Пример#Напутствие шаблонописателям|обсуждение]].)
Следующий код:


Для вывода групп примеров пользуйтесь шаблонами {{t|стопка примеров}} (списком) и {{t|таблица примеров}} (таблицей).
<code><nowiki>{{Пример|color|red|text}}</nowiki></code>


{{TOC right}}
даст пример использования шаблона {{Tl|color}}:


== Использование ==
{{Пример|color|red|text}}
* <code><nowiki>{{пример|t|t}}</nowiki></code> даст {{пример|t|t}}
* <code><nowiki>{{пример|replace|something|some|any}}</nowiki></code> даст {{пример|replace|something|some|any}}
* <code><nowiki>{{пример|tlc|шаблон|параметр 1|||параметр 4}}</nowiki></code> даст {{пример|tlc|шаблон|параметр 1|||параметр 4}}
* <code><nowiki>{{пример|tl|:en:Template:Example|text=English Template:Example}}</nowiki></code> даст {{пример|tl|:en:Template:Example|text=English Template:Example}}
* <code><nowiki>{{пример|replace|something|some|any|_comment=Заменить все вхождения «some» на «any».}}</nowiki></code> даст {{пример|replace|something|some|any|_comment=Заменить все вхождения «some» на «any».}}


Первый параметр можно опускать — тогда его заменит название базовой страницы со строчной первой буквы. Например, в документации шаблона {{t|tr-en}} <code><nowiki>{{пример||слово}}</nowiki></code> даст:
Вместо стрелочки можно задать другой символ-разделитель, для этого есть параметр '''sep'''. Код:
: {{пример|tr-en|слово}}
Это может быть особенно удобно для групп шаблонов, для которых пишется общая документация, размещаемая на каждой странице. А {{tc|пример}} выведет пример включения шаблона, на странице которого этот код размещён, без параметров.


Для наглядности можно также указывать имя шаблона через параметр '''_template''', при этом первый параметр больше не значит имя шаблона:
<code><nowiki>{{Пример|sep=-->|color|red|text}}</nowiki></code>
* <code><nowiki>{{пример|_template=t|пример}}</nowiki></code> даст {{пример|_template=t|пример}}


== Ограничения и пути их обхода ==
даст:
При опускании первого параметра используется именно имя корневой страницы — {{mwmw|ROOTPAGENAME}}, а не проверка на суффиксы {{code|/doc}} или иные, так что для шаблонов, которые являются подстраницами других шаблонов (например, [[Special:PrefixIndex/Template:Userbox/|юзербоксов]]), первый параметр опускать нельзя.


Модуль переносит все именованные параметры в конец, а также плохо сохраняет порядок следования именованных параметров, если их больше одного (из-за технического несовершенства ПО). Чтобы этого избежать, используйте {{tcl|=}} вместо <code>=</code>:
{{Пример|color|red|text|sep=-->}}
{|
| valign=top | [[Файл:Red x.svg|15px]] || <code><nowiki>{{пример|некий шаблон|parameter1=value|parameter2=value|parameter3=value}}</nowiki></code> даст:<br
/>{{пример|некий шаблон|parameter1=value|parameter2=value|parameter3=value}}
|-
| valign=top | [[Файл:Yes_check.svg|15px]] || <code><nowiki>{{пример|некий шаблон|parameter1{{=}}value|parameter2{{=}}value|parameter3{{=}}value}}</nowiki></code> даст:<br
/>{{пример|некий шаблон|parameter1{{=}}value|parameter2{{=}}value|parameter3{{=}}value}}
|}


Также нельзя записывать напрямую параметры, чьи имена начинаются со знака подчёркивания, — для предотвращения пересечения с параметрами, модифицирующими внешний вид результата. Поможет то же решение:
{{Шаблоны для документирования шаблонов}}
* <code><nowiki>{{пример|tp|шаблон|_text{{=}}текст ссылки}}</nowiki></code> даст {{пример|tp|шаблон|_text{{=}}текст ссылки}}


Чтобы вписать {{tago|nowiki}}, используйте HTML-сущности для замены угловых скобок, например:
<includeonly>[[Категория:Шаблоны:Для документирования шаблонов]]</includeonly>
* <code><nowiki>{{пример|tp|шаблон|&amp;lt;nowiki>&lt;nowiki>{{IPA|/tʃ/}}&lt;/nowiki>&amp;lt;/nowiki>}}</nowiki></code> даст {{пример|tp|шаблон|&lt;nowiki><nowiki>{{IPA|/tʃ/}}</nowiki>&lt;/nowiki>}}
 
Чтобы вписать {{tc|=}}, используйте <code><nowiki>{{((}}{{=}}{{))}}</nowiki></code> или HTML-сущности, например:
* <code><nowiki>{{пример|pre|текст {{((}}{{=}}{{))}} текст|_sep={{sp↓|||-0.5em}}}}</nowiki></code> даст
<dl><dd>{{пример|pre|текст {{((}}{{=}}{{))}} текст|_sep={{sp↓|||-0.5em}}}}</dd></dl>
 
В данный момент не поддерживается раскрытие вложенных шаблонов и других конструкций с фигурными скобками (их можно указывать внутри {{tago|nowiki}}, но они не раскроются). Многострочные шаблоны также не поддерживаются.
 
== Настройки ==
* '''_sep''': поменять стрелочку на что угодно другое:
*: <code><nowiki>{{пример|t|t|_sep=отображается как}}</nowiki></code> даст {{пример|t|t|_sep=отображается как}}
* '''_tag''': поменять обёртку &lt;code>:
*: <code><nowiki>{{пример|_template=t|_tag=tt|пример}}</nowiki></code> даст {{пример|_template=t|_tag=tt|пример}}
* '''_link''': включить отображение ссылки:
*: <code><nowiki>{{пример|_template=флаг|_link=1|Россия}}</nowiki></code> даст {{пример|_template=флаг|_link=1|Россия}}
* '''_pre-text''' ('''_prefix''') и '''_post-text''' ('''_postfix'''): указать текст до и после шаблона:
*: <code><nowiki>{{пример|tr-en|слово|_pre-text=word (|_post-text=)}}</nowiki></code> даст {{пример|tr-en|слово|_pre-text=word (|_post-text=)}}
* '''_nobr''': запретить перенос строки для кода примера.
* '''_nocat''': запретить добавлять страницу в проставляемые шаблоном категории, если у него предусмотрен соответствующий параметр <code>_nocat</code>. При этом в коде включения шаблона этот параметр отображаться не будет. Так, например, в данном примере настоящая страница не добавляется в категорию {{cl|Компании, имеющие листинг акций на NASDAQ}}:
*: <code><nowiki>{{пример|NASDAQ|123|_nocat=1}}</nowiki></code> даст {{пример|NASDAQ|123|_nocat=1}}
* '''_spaced''': отбить пробелом каждый параметр для лучшей читаемости:
*: <code><nowiki>{{пример|MathWorld|urlname=GammaFunction|title=Gamma Function|author=John Doe|_spaced=1}}</nowiki></code> даст:
*: {{пример|MathWorld|urlname=GammaFunction|title=Gamma Function|author=John Doe|_spaced=1}}
* '''_comment''': снабдить пример комментарием:
*: <code><nowiki>{{пример|replace|something|some|any|_comment=Заменить все вхождения «some» на «any».}}</nowiki></code> даст {{пример|replace|something|some|any|_comment=Заменить все вхождения «some» на «any».}}
 
=== Стили ===
С помощью параметра '''_style''' можно установить стиль, который будет устанавливать некоторые из вышеперечисленных параметров разом. Существующие на данный момент стили — <code>pre</code>, <code>*pre</code> и <code>wikitable</code> (а также <code>pre↓</code>):
* <code><nowiki>{{пример|проверить нейтральность|дата{{=}}1 января 2010|_style=pre}}</nowiki></code> даст:
: {{пример|проверить нейтральность|дата{{=}}1 января 2010|_style=pre}}{{^}}
 
* <code><nowiki>{{пример|проверить нейтральность|дата{{=}}1 января 2010|_style=*pre}}</nowiki></code> даст:
: {{пример|проверить нейтральность|дата{{=}}1 января 2010|_style=*pre}}
{{*pre|<nowiki>{| class="wikitable"
! Код !! Результат
|-
| {{пример|Атлас мира|1967|_style=wikitable|_nobr=1}}
|-
| {{пример|Атлас мира|1991|_style=wikitable|_nobr=1}}
...
|}</nowiki>}}
: даст
<dl><dd>
{| class=wikitable
! Код !! Результат
|-
| {{пример|Атлас мира|1967|_style=wikitable|_nobr=1}}
|-
| {{пример|Атлас мира|1991|_style=wikitable|_nobr=1}}
|-
| colspan=2 | …
|}</dd></dl>
: (Для создания таблицы с примерами удобнее воспользоваться шаблоном {{t|таблица примеров}}.)
 
== См. также ==
* {{t|TestCase}}
* {{t|sp↓}}
 
{{шаблоны для документирования}}
 
<includeonly>
[[Категория:Шаблоны:Для документирования шаблонов]]
</includeonly>

Текущая версия от 21:00, 14 февраля 2024

Шаблон создаёт демонстрационный пример кода какого-либо шаблона с неименованными параметрами и через стрелочку результат работы этого кода. Предназначен для использования в документации шаблонов. Первый параметр — имя демонстрируемого шаблона (по умолчанию берётся из названия страницы), остальные — его неименованные параметры (до 8 параметров).

Следующий код:

{{Пример|color|red|text}}

даст пример использования шаблона {{color}}:

{{color|red|text}}text

Вместо стрелочки можно задать другой символ-разделитель, для этого есть параметр sep. Код:

{{Пример|sep=-->|color|red|text}}

даст:

{{color|red|text|sep=-->}}text

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

{{T}} {{Tl}} {{Tlp}} {{Tls}} {{Днш}}

Документация

{{Doc}} {{Template doc begin}} {{Docpage}} {{Doc-inline}} {{Doc-end}} {{Документируйте}} {{Noinclude}}

Ссылки/навигация

{{Template navigation}} {{Tlinks}} {{Lts}} {{TRef}}

Демонстраторы кода

{{Tc}} {{Para}} {{Tlf}} {{Пример}}