Модуль:ParamValue2Value/doc
Перейти к навигации
Перейти к поиску
Это страница документации Модуль:ParamValue2Value.
Для документации этого модуля может быть создана страница Модуль:ParamValue2Value/doc/doc
Ошибка скрипта: Ошибка Lua на строке 1: unexpected symbol near '{'.
{{module rating|release}}
Этот модуль позволяет в отдельных случаях избавиться от нужды использовать в неименованных параметрах шаблона костыли типа шаблона {{tp|=}}, HTML-сущности = или ручной нумерации параметров. Он:
# принимает от шаблона параметры, с которыми тот был вызван;
# преобразует именованные параметры вида <code>параметр=значение</code>, за исключением тех, имя которых начинается со знака подчёркивания <code>_</code>, и перечисленных через <code>/</code> в параметре <code>_exceptions</code>, в неименованные, соединяя имя параметра и его значение знаком <code>=</code> и добавляя получившийся параметр в конец списка;
# передаёт все параметры в шаблон, указанный в параметре <code>_pass_to</code>.
'''Важно:''' пока не будет решена [[:mw:Extension_talk:Scribunto/Lua_reference_manual#Is there a way to keep the original parameter order?|проблема искажённого порядка именованных параметров]] в Scribunto, модуль будет стабильно работать только при '''одном''', и не больше, именованном параметре, который надо преобразовать; иначе порядок следования параметров может изменяться безо всякой логики. Причём параметр, в который может затесаться знак «=», должен быть последним в списке, иначе порядок исказится.
В частности, он используется в шаблонах для ссылок на шаблоны с указанием параметров, таких как {{t|tp}}, {{t|tc}} и {{t|tlc}}. Например, в шаблоне {{t|tp}} он вызывается так:
<pre>{{#invoke:ParamValue2Value|main|_pass_to=tp/formatting}}</pre>
В шаблоне [[Шаблон:Tp/formatting|tp/formatting]] осуществляется финальное форматирование, и в результате мы можем вызвать {{t|tp}} с именованными параметрами, не используя для этого костыли в виде шаблона {{tp|=}}, HTML-сущности &#61; или ручной нумерации параметров:
: {{tc|tp|шаблон|параметр 1|параметр 2=значение}} → {{tp|шаблон|параметр 1|параметр 2=значение}}
== См. также ==
* [[Модуль:Example]]
<noinclude>
[[Категория:Модули:Документация]]
</noinclude>