Шаблон:Tl: различия между версиями
Перейти к навигации
Перейти к поиску
(fix, оптимизация) |
(+флаг nav; возможность использовать флаги как булевы значения удалена для оптимизации, надеюсь, никто не использовал) |
||
Строка 1: | Строка 1: | ||
− | {{#if: {{#if: | + | {{#if: {{#if: {{{3|}}}{{{4|}}}{{{5|}}}{{{lang|}}}{{{sister|}}}{{{text|}}} | | {{#ifeq: {{{2|nav}}} | nav | {{#if: {{{1|}}} | {{#ifexpr: {{str len|{{{1}}}}} = 1 | | {{#ifeq: {{str left|{{{1}}}|1}} | : | | x }} }} | {{#ifexpr: {{str len|{{ROOTPAGENAME}}}} = 1 | {{#if: {{#titleparts: {{PAGENAME}} | 1 | 2 }} | | x }} | x }} }} | }} }} |
<!-- Оптимизируем выполнение, не вынуждая парсер проходить через катакомбы сложной обработки параметров, | <!-- Оптимизируем выполнение, не вынуждая парсер проходить через катакомбы сложной обработки параметров, | ||
если шаблон вызван без дополнительных параметров и то, что дано, не требует особой обработки --> | если шаблон вызван без дополнительных параметров и то, что дано, не требует особой обработки --> | ||
− | | | + | | {{#if: {{{1|}}} | |
{{#ifeq: | {{#ifeq: | ||
{{FULLPAGENAME: Шаблон:{{{1}}} }} <!-- {{FULLPAGENAME:}} для преобразования «_» в « » и т. п., --> | {{FULLPAGENAME: Шаблон:{{{1}}} }} <!-- {{FULLPAGENAME:}} для преобразования «_» в « » и т. п., --> | ||
| {{FULLPAGENAME}} <!-- а также решения проблемы с именами на «*», «;» и т. п. при вызове ucfirst --> | | {{FULLPAGENAME}} <!-- а также решения проблемы с именами на «*», «;» и т. п. при вызове ucfirst --> | ||
− | | < | + | | {{#ifeq: {{{2|}}} | nav | ''' }}<span class="wp-templatelink">{{</span>{{{1}}}<span class="wp-templatelink">}}</span> {{#ifeq: {{{2|}}} | nav | ''' }} |
− | | [[Шаблон:{{{1}}}|{{{1}}}]] | + | | <span class="wp-templatelink">{{</span>[[Шаблон:{{{1}}}|{{{1}}}]]<span class="wp-templatelink">}}</span> |
}} | }} | ||
− | | {{#if: {{#titleparts: {{PAGENAME}} | 1 | 2 }} | + | | <span class="wp-templatelink">{{</span>{{#if: {{#titleparts: {{PAGENAME}} | 1 | 2 }} |
| [[Шаблон:{{ROOTPAGENAME}}|{{lcfirst: {{ROOTPAGENAME}} }}]] | | [[Шаблон:{{ROOTPAGENAME}}|{{lcfirst: {{ROOTPAGENAME}} }}]] | ||
| {{lcfirst: {{ROOTPAGENAME}} }} | | {{lcfirst: {{ROOTPAGENAME}} }} | ||
− | + | }}<span class="wp-templatelink">}}</span> | |
− | + | }} | |
− | + | | {{#if: {{{1|}}} | |
<!-- С первым параметром --> | <!-- С первым параметром --> | ||
| {{#if: <!-- Показывать ли ссылку --> | | {{#if: <!-- Показывать ли ссылку --> | ||
− | {{#if: {{#switch:{{{2|}}}|nl=x|nolink=x|{{#switch:{{{3|}}}|nl=x|nolink=x|{{#switch:{{{4|}}}|nl=x|nolink=x|{{#switch:{{{5|}}}|nl=x|nolink=x| | + | {{#if: {{#switch:{{{2|}}}|nl=x|nolink=x|{{#switch:{{{3|}}}|nl=x|nolink=x|{{#switch:{{{4|}}}|nl=x|nolink=x|{{#switch:{{{5|}}}|nl=x|nolink=x|}}}}}}}} |
| x | | x | ||
| {{#if: {{{lang|}}} | | {{#if: {{{lang|}}} | ||
Строка 24: | Строка 24: | ||
| | | | ||
| {{#ifeq: | | {{#ifeq: | ||
− | {{#if: {{#ifeq:{{{2|}}}|g|x|{{#ifeq:{{{3|}}}|g|x|{{#ifeq:{{{4|}}}|g|x|{{#ifeq:{{{5|}}}|g|x | + | {{#if: {{#ifeq:{{{2|}}}|g|x|{{#ifeq:{{{3|}}}|g|x|{{#ifeq:{{{4|}}}|g|x|{{#ifeq:{{{5|}}}|g|x|{{#ifeq: {{str left|{{{1}}}|1}} | : | x | }}}}}}}}}} |
| {{FULLPAGENAME: {{{1}}} }} <!-- ←↙ Что сравниваем --> | | {{FULLPAGENAME: {{{1}}} }} <!-- ←↙ Что сравниваем --> | ||
| {{FULLPAGENAME: Шаблон:{{{1}}} }} <!-- {{FULLPAGENAME:}} для преобразования «_» в « » и т. п., --> | | {{FULLPAGENAME: Шаблон:{{{1}}} }} <!-- {{FULLPAGENAME:}} для преобразования «_» в « » и т. п., --> | ||
Строка 35: | Строка 35: | ||
}} | }} | ||
}} | }} | ||
− | | | + | | {{#if: {{#ifeq:{{{2|}}}|nav|x|{{#ifeq:{{{3|}}}|nav|x|{{#ifeq:{{{4|}}}|nav|x|{{#ifeq:{{{5|}}}|nav|x|}}}}}}}} | ''' }}<span {{#if: {{#ifeq:{{{2|}}}|b|x|{{#ifeq:{{{3|}}}|b|x|{{#ifeq:{{{4|}}}|b|x|{{#ifeq:{{{5|}}}|b|x|}}}}}}}} | | class="wp-templatelink" }}>{{{{#if: {{#ifeq:{{{2|}}}|s|x|{{#ifeq:{{{3|}}}|s|x|{{#ifeq:{{{4|}}}|s|x|{{#ifeq:{{{5|}}}|s|x|}}}}}}}} | subst: | {{#if: {{#ifeq:{{{2|}}}|п|x|{{#ifeq:{{{3|}}}|п|x|{{#ifeq:{{{4|}}}|п|x|{{#ifeq:{{{5|}}}|п|x|}}}}}}}} | подст: | }} }}</span>{{{text|{{{1}}}}}}<span {{#if: {{#ifeq:{{{2|}}}|b|x|{{#ifeq:{{{3|}}}|b|x|{{#ifeq:{{{4|}}}|b|x|{{#ifeq:{{{5|}}}|b|x|}}}}}}}} | | class="wp-templatelink" }}>}}</span>{{#if: {{#ifeq:{{{2|}}}|nav|x|{{#ifeq:{{{3|}}}|nav|x|{{#ifeq:{{{4|}}}|nav|x|{{#ifeq:{{{5|}}}|nav|x|}}}}}}}} | ''' }} |
| {{#if: | | {{#if: | ||
{{#ifexpr: {{str len|{{{text|{{{1}}}}}}}} != 1 | {{#ifexpr: {{str len|{{{text|{{{1}}}}}}}} != 1 | ||
| x | | x | ||
− | | {{#switch:{{{2|}}}|s=x|п=x|b=x|{{#switch:{{{3|}}}|s=x|п=x|b=x|{{#switch:{{{4|}}}|s=x|п=x|b=x|{{#switch:{{{5|}}}|s=x|п=x|b=x|{{{s|{{{п| | + | | {{#switch:{{{2|}}}|s=x|п=x|b=x|{{#switch:{{{3|}}}|s=x|п=x|b=x|{{#switch:{{{4|}}}|s=x|п=x|b=x|{{#switch:{{{5|}}}|s=x|п=x|b=x|{{{s|{{{п|}}}}}}}}}}}}}} |
}} <!-- Забирать ли в ссылку соседние фигурные скобки --> | }} <!-- Забирать ли в ссылку соседние фигурные скобки --> | ||
− | | | + | | <span {{#if: {{#ifeq:{{{2|}}}|b|x|{{#ifeq:{{{3|}}}|b|x|{{#ifeq:{{{4|}}}|b|x|{{#ifeq:{{{5|}}}|b|x|}}}}}}}} | | class="wp-templatelink" }}>{{{{#if: {{#ifeq:{{{2|}}}|s|x|{{#ifeq:{{{3|}}}|s|x|{{#ifeq:{{{4|}}}|s|x|{{#ifeq:{{{5|}}}|s|x|}}}}}}}} | subst: | {{#if: {{#ifeq:{{{2|}}}|п|x|{{#ifeq:{{{3|}}}|п|x|{{#ifeq:{{{4|}}}|п|x|{{#ifeq:{{{5|}}}|п|x|}}}}}}}} | подст: | }} }}</span>[[:{{#if: {{#ifeq:{{{2|}}}|g|x|{{#ifeq:{{{3|}}}|g|x|{{#ifeq:{{{4|}}}|g|x|{{#ifeq:{{{5|}}}|g|x|{{#ifeq: {{str left|{{{1}}}|1}} | : | x | }}}}}}}}}} | {{FULLPAGENAME: {{#if: {{{lang|}}} | {{{lang}}}: | }}{{#if: {{{sister|}}} | {{{sister}}}: | }}{{{1}}} }} | {{#if: {{{lang|}}} | {{{lang}}}: | }}{{#if: {{{sister|}}} | {{{sister}}}: | }}Template:{{{1}}} }}|{{{text|{{{1}}}}}}]]<span {{#if: {{#ifeq:{{{2|}}}|b|x|{{#ifeq:{{{3|}}}|b|x|{{#ifeq:{{{4|}}}|b|x|{{#ifeq:{{{5|}}}|b|x|}}}}}}}} | | class="wp-templatelink" }}>}}</span> |
<!-- {{{lang}}} и {{{sister}}} появляются не в начале, а с FULLPAGENAME, | <!-- {{{lang}}} и {{{sister}}} появляются не в начале, а с FULLPAGENAME, | ||
чтобы FULLPAGENAME не менял название пространств имён для других разделов/проектов --> | чтобы FULLPAGENAME не менял название пространств имён для других разделов/проектов --> | ||
− | | </span>[[:{{#ifeq: {{{1}}} | : | <!-- «:» как ссылка на другие разделы работает, а не должно (в случае шаблонов) --> | {{#if: {{{lang|}}} | {{{lang}}}: | }}{{#if: {{{sister|}}} | {{{sister|}}}: | }}}}{{#if: {{#ifeq:{{{2|}}}|g|x|{{#ifeq:{{{3|}}}|g|x|{{#ifeq:{{{4|}}}|g|x|{{#ifeq:{{{5|}}}|g|x | + | | <span {{#if: {{#ifeq:{{{2|}}}|b|x|{{#ifeq:{{{3|}}}|b|x|{{#ifeq:{{{4|}}}|b|x|{{#ifeq:{{{5|}}}|b|x|}}}}}}}} | | class="wp-templatelink" }}>{</span>[[:{{#ifeq: {{{1}}} | : | <!-- «:» как ссылка на другие разделы работает, а не должно (в случае шаблонов) --> | {{#if: {{{lang|}}} | {{{lang}}}: | }}{{#if: {{{sister|}}} | {{{sister|}}}: | }}}}{{#if: {{#ifeq:{{{2|}}}|g|x|{{#ifeq:{{{3|}}}|g|x|{{#ifeq:{{{4|}}}|g|x|{{#ifeq:{{{5|}}}|g|x|{{#ifeq: {{str left|{{{1}}}|1}} | : | x | }}}}}}}}}} | {{FULLPAGENAME: {{{1}}} }} | Template:{{{1}}} }}|<span class="wp-templatelink">{</span>{{{text|{{{1}}}}}}<span class="wp-templatelink">}</span>]]<span class="wp-templatelink">}</span> |
}} | }} | ||
}} | }} | ||
| {{#if: <!-- Без первого параметра. Показывать ли ссылку --> | | {{#if: <!-- Без первого параметра. Показывать ли ссылку --> | ||
− | {{#if: {{#switch:{{{2|}}}|nl=x|nolink=x|{{#switch:{{{3|}}}|nl=x|nolink=x|{{#switch:{{{4|}}}|nl=x|nolink=x|{{#switch:{{{5|}}}|nl=x|nolink=x| | + | {{#if: {{#switch:{{{2|}}}|nl=x|nolink=x|{{#switch:{{{3|}}}|nl=x|nolink=x|{{#switch:{{{4|}}}|nl=x|nolink=x|{{#switch:{{{5|}}}|nl=x|nolink=x|}}}}}}}} |
| x | | x | ||
| {{#if: {{#titleparts: {{PAGENAME}} | 1 | 2 }} | | {{#if: {{#titleparts: {{PAGENAME}} | 1 | 2 }} | ||
Строка 55: | Строка 55: | ||
}} | }} | ||
}} | }} | ||
− | | | + | | {{#if: {{#ifeq:{{{2|}}}|nav|x|{{#ifeq:{{{3|}}}|nav|x|{{#ifeq:{{{4|}}}|nav|x|{{#ifeq:{{{5|}}}|nav|x|}}}}}}}} | ''' }}<span {{#if: {{#ifeq:{{{2|}}}|b|x|{{#ifeq:{{{3|}}}|b|x|{{#ifeq:{{{4|}}}|b|x|{{#ifeq:{{{5|}}}|b|x|}}}}}}}} | | class="wp-templatelink" }}>{{{{#if: {{#ifeq:{{{2|}}}|s|x|{{#ifeq:{{{3|}}}|s|x|{{#ifeq:{{{4|}}}|s|x|{{#ifeq:{{{5|}}}|s|x|}}}}}}}} | subst: | {{#if: {{#ifeq:{{{2|}}}|п|x|{{#ifeq:{{{3|}}}|п|x|{{#ifeq:{{{4|}}}|п|x|{{#ifeq:{{{5|}}}|п|x|}}}}}}}} | подст: | }} }}</span>{{{text|{{#if: {{#ifeq:{{{2|}}}|u|x|{{#ifeq:{{{3|}}}|u|x|{{#ifeq:{{{4|}}}|u|x|{{#ifeq:{{{5|}}}|u|x|}}}}}}}} | {{ROOTPAGENAME}} | {{lcfirst: {{ROOTPAGENAME}} }} }}}}}<span {{#if: {{#ifeq:{{{2|}}}|b|x|{{#ifeq:{{{3|}}}|b|x|{{#ifeq:{{{4|}}}|b|x|{{#ifeq:{{{5|}}}|b|x|}}}}}}}} | | class="wp-templatelink" }}>}}</span>{{#if: {{#ifeq:{{{2|}}}|nav|x|{{#ifeq:{{{3|}}}|nav|x|{{#ifeq:{{{4|}}}|nav|x|{{#ifeq:{{{5|}}}|nav|x|}}}}}}}} | ''' }} |
| {{#if: | | {{#if: | ||
{{#ifexpr: {{str len|{{{text|{{ROOTPAGENAME}}}}}}} != 1 | {{#ifexpr: {{str len|{{{text|{{ROOTPAGENAME}}}}}}} != 1 | ||
| x | | x | ||
− | | {{#switch:{{{2|}}}|s=x|п=x|b=x|{{#switch:{{{3|}}}|s=x|п=x|b=x|{{#switch:{{{4|}}}|s=x|п=x|b=x|{{#switch:{{{5|}}}|s=x|п=x|b=x|{{{s|{{{п| | + | | {{#switch:{{{2|}}}|s=x|п=x|b=x|{{#switch:{{{3|}}}|s=x|п=x|b=x|{{#switch:{{{4|}}}|s=x|п=x|b=x|{{#switch:{{{5|}}}|s=x|п=x|b=x|{{{s|{{{п|}}}}}}}}}}}}}} |
}} <!-- Забирать ли в ссылку соседние фигурные скобки --> | }} <!-- Забирать ли в ссылку соседние фигурные скобки --> | ||
− | | | + | | <span {{#if: {{#ifeq:{{{2|}}}|b|x|{{#ifeq:{{{3|}}}|b|x|{{#ifeq:{{{4|}}}|b|x|{{#ifeq:{{{5|}}}|b|x|}}}}}}}} | | class="wp-templatelink" }}>{{{{#if: {{#ifeq:{{{2|}}}|s|x|{{#ifeq:{{{3|}}}|s|x|{{#ifeq:{{{4|}}}|s|x|{{#ifeq:{{{5|}}}|s|x|}}}}}}}} | subst: | {{#if: {{#ifeq:{{{2|}}}|п|x|{{#ifeq:{{{3|}}}|п|x|{{#ifeq:{{{4|}}}|п|x|{{#ifeq:{{{5|}}}|п|x|}}}}}}}} | подст: | }} }}</span>[[Шаблон:{{ROOTPAGENAME}}|{{{text|{{#if: {{#ifeq:{{{2|}}}|u|x|{{#ifeq:{{{3|}}}|u|x|{{#ifeq:{{{4|}}}|u|x|{{#ifeq:{{{5|}}}|u|x|}}}}}}}} | {{ROOTPAGENAME}} | {{lcfirst: {{ROOTPAGENAME}} }} }}}}}]]<span {{#if: {{#ifeq:{{{2|}}}|b|x|{{#ifeq:{{{3|}}}|b|x|{{#ifeq:{{{4|}}}|b|x|{{#ifeq:{{{5|}}}|b|x|}}}}}}}} | | class="wp-templatelink" }}>}}</span> |
− | + | | <span {{#if: {{#ifeq:{{{2|}}}|b|x|{{#ifeq:{{{3|}}}|b|x|{{#ifeq:{{{4|}}}|b|x|{{#ifeq:{{{5|}}}|b|x|}}}}}}}} | | class="wp-templatelink" }}>{</span>[[Шаблон:{{ROOTPAGENAME}}|<span class="wp-templatelink">{</span>{{{text|{{#if: {{#ifeq:{{{2|}}}|u|x|{{#ifeq:{{{3|}}}|u|x|{{#ifeq:{{{4|}}}|u|x|{{#ifeq:{{{5|}}}|u|x|}}}}}}}} | {{ROOTPAGENAME}} | {{lcfirst: {{ROOTPAGENAME}} }} }}}}}<span class="wp-templatelink">}</span>]]<span class="wp-templatelink">}</span> | |
}} | }} | ||
}} | }} | ||
− | }} | + | }} |
}}<!-- | }}<!-- | ||
Версия от 05:44, 28 января 2016
{{tl}}
Документация
![]() | Этому шаблону не хватает документации. |