Help:ExpandTemplates

From mediawiki.org
Jump to navigation Jump to search
This page is a translated version of the page Help:ExpandTemplates and the translation is 100% complete.
Other languages:
Deutsch • ‎English • ‎Türkçe • ‎français • ‎polski • ‎português • ‎svenska • ‎فارسی • ‎中文 • ‎日本語 • ‎한국어
Screenshot Expand templates Βικιβιβλία.png

ExpandTemplates, şablonların, ayrıştırıcı işlevlerin ve değişkenlerin özyinelemeli uzantısına izin verir.

Special:ExpandTemplates sayfasında, biri wiki metin girmek için diğeri ise bir sayfa adı girmek için iki giriş kutusu bulunur. "Sonuç" penceresinde genişletilmiş wiki metin, yani şablonlar, ayrıştırıcı işlevler ve değişkenler tekrar tekrar genişletilir; sayfa adına göre değişkenler, verilen sayfa sayısına göre genişletilir. Bu, bir sayfanın kaydedilmesinden veya "Önizleme" ye (veya sonuçtaki vikimetin diğer işlemlere gönderilir) basıldıktan sonra oluşturulmasından önce bir ara sonuçtur, vikimetin genişlemesini anlama ve hata ayıklama konusunda yardımcı olur. İkameyi desteklemiyor (bir düzenleme penceresinde vikimetin girdikten ve "Önizlemeyi göster" veya "Kaydet" e bastıktan sonra ilk gerçekleştirilen ayrı bir genişletme işlemi; sonuçtaki vikimetin isteğe bağlı bir düzenleme penceresinde incelenebilir "Değişiklikleri göster" seçeneğine basarak veya bir test sayfasını kaydederek ve düzenleme penceresini yeniden açarak).

Ek olarak, bir gözetleme alanı var. Ancak bu, genişletilmiş vikimetni (görev T30616) yeniden genişletmenin işlenmiş sonucunu gösterir. Her ne kadar sonuç genellikle tek genişlemeden sonraki ile aynı olsa da, ilk genişlemenin diş telleri üretmesi farklı olabilir.

'!' sihirli kelimesi, bir şablonun veya ayrıştırıcı işlevinin bir parametre değerinde, özellikle tablo sözdiziminde kullanım için "|" ile izin vermenin bir yolunu sağlar. Bu şablon kısmi genişleme/ikame yapmak için ExpandTemplates ile birlikte kullanılabilir.

Template:2x kullanan tablo, "|" parametre ayırıcılı bir çağrının {{!}} şeklinde sıradan bir genişleme önler; Son sütun önizleme alanını gösterir (çift genişleme sonucu).

Kullanım

orijinal vikimetin genişletilmiş vikimetin dönüşme ExpandTemplates tarafından üretilen önizleme
{{2x|[[MediaWiki]] }} [[MediaWiki]] [[MediaWiki]] MediaWiki MediaWiki MediaWiki MediaWiki
{{2x{{!}}[[MediaWiki]] }} {{2x|[[MediaWiki]] }} MediaWiki }} MediaWiki MediaWiki
{{2x{{!{{!}}}}[[MediaWiki]] }} {{2x{{!|}}[[MediaWiki]] }} }}MediaWiki }} MediaWiki }}

Yorumları kaldır

"Yorumları kaldır" seçeneği, yorumların yalnızca nihai sonuçta değil, genişletme süreci boyunca kaldırılıp kaldırılmayacağını belirler. Bu, ayrıştırıcı işlevlerinin sonucunu etkiler: #expr veya #ifexpr ifadesindeki bir yorum, "Yorumları kaldır" açık olmadığı sürece bir hata mesajı verir ve yorumlar #if ve ifeq'i etkiler.

Örnek:

{{#expr:<!--p-->3}}

{{#ifeq:<!--p-->3|3|1|0}}

{{#if:<!--p-->|1|0}}

Normal genişletme ve üzerinde "Yorumları kaldır" yazan ExpandTemplates:

3

1

0

Tam değiştirme ve "Yorumları kaldır" kapalıyken ExpandTemplates:

Expression error: Unexpected < operator

0

1

XML ayrıştırma ağacı

İsteğe bağlı olarak XML ayrıştırma ağacı (vikimetinin XML DOM temsili, belge ağacı veya DOM ağacı olarak da adlandırılır) gösterilir (ayrıca bakınız Manual:Preprocessor DOM.php ). Örneğin:

a [[b|c]]
{{CURRENTYEAR}}
{{{{{a}}}}}
{{#ifeq:2|3|a|b}}
{{#switch:a|a=3|b=4|a=5}}
{{a|b|c=d[[e|f]]g|h}}
{{{a|b}}}
{{#tag:nowiki|a=b}}
{{#tag:nowiki|aeb}}

gives

<root>a [[b|c]]
<template lineStart="1"><title>CURRENTYEAR</title></template>
<template lineStart="1"><title><tplarg><title>a</title></tplarg></title></template>
<template lineStart="1"><title>#ifeq:2</title><part><name index="1"/><value>3</value></part><part><name index="2"/><value>a</value></part><part><name index="3"/><value>b</value></part></template>
<template lineStart="1"><title>#switch:a</title><part><name>a</name>=<value>3</value></part><part><name>b</name>=<value>4</value></part><part><name>a</name>=<value>5</value></part></template>
<template lineStart="1"><title>a</title><part><name index="1"/><value>b</value></part><part><name>c</name>=<value>d[[e|f]]g</value></part><part><name index="2"/><value>h</value></part></template>
<tplarg lineStart="1"><title>a</title><part><name index="1"/><value>b</value></part></tplarg></root>
<template lineStart="1"><title>#tag:nowiki</title><part><name>a</name>=<value>b</value></part></template>
<template lineStart="1"><title>#tag:nowiki</title><part><name index="1"/><value>aeb</value></part></template>

Thus:

  • The result shows a stage in processing before actual evaluation. Thus even names of variables, parser functions, and templates have not been determined. Also, the colon and "#" are not detected yet, so no distinction is made between variables, parser functions, and templates, let alone that there would be distinction between existing and non-existing variables, parser functions, and templates. Therefore:
    • Distinction is made between parameter items with and without "=", even though for some items of some parser functions it is treated as plain text after all.
    • "|a=b|a=c" is not reduced yet to "|a=c" because the fact that the left sides are equal is only known after their evaluation, and also because this reduction depends on the evaluation of title. For example, for titles of the form #switch:.., "|a=b|a=c" is equivalent to "|a=b" after all.
  • A pair of double rectangular brackets shields "|" from being interpreted as a parameter separator, but links are not shown separately in the tree.

URL’ye metin girin

The wikitext serving as input can also be put in the URL, e.g., using urlencode, {{fullurl:special:ExpandTemplates|wpInput={{urlencode:{{texpr{{!}}abc}}}}}} gives //www.mediawiki.org/w/index.php?title=Special:ExpandTemplates&wpInput=%7B%7Btexpr%7Cabc%7D%7D. {{!}}, using Template:!, prevents the template texpr from expanding in the URL, and also prevents "|" from being interpreted as a separator of the parameter of urlencode from a dummy second parameter. It can also be used in a template call without parameters, albeit that in the input box of ExpandTemplates this becomes a template with unnamed parameter {{{1}}} being the empty string instead of undefined; e.g. {{fullurl:special:ExpandTemplates|wpInput={{tc{{!}}}}}}. This does not work for variables and parser functions, use percent codes for one pair of braces instead (see wikitext); for the ParserFunctions prefix "#" use %23:

https://www.mediawiki.org/w/index.php?title=Special:ExpandTemplates&wpInput={{CURRENTTIME}}.

https://www.mediawiki.org/w/index.php?title=Special:ExpandTemplates&wpInput={{%23expr:2*3}}.

Örnek

Sorgu parametreleri
  • wpContextTitle=pagetitle
  • wpGenerateRawHtml=true
  • wpGenerateXml=true
  • wpInput=
  • wpRemoveComments=true
  • wpRemoveNowiki=true

URL:

Özelleştirme

Adjusting the box width

By default the width of the input and result box is only 11 characters. You may want to change this to full width by adding something like the following to your CSS:

textarea {
    border: 1px solid #2f6fab;
    color: Black;
    background-color: white;
    width: 100%;
    padding: 0.1em;
    overflow: auto;
}

Ayrıca bakınız