K wobsahej skočić

Pomoc:Předłohowe programowanje

Z Wikipedije, swobodneje encyklopedije
Pomoc

Wot srjedźiny apryla 2006 ma k dispoziciji Wiki-syntaks mediawikineho softwara wšelake konstrukty programoweje rěče za wužiwanje we předłohach.

Rěčne kostrukty by so małe wužiwać jenož we předłohowym mjenowym rumje.

Wopisanja ParserFunctions

[wobdźěłać | žórłowy tekst wobdźěłać]

Aktualnje su funkciji if, ifeq, ifexist, expr, ifexpr, switch, time a rel2abs.

Funkcija if je hdyž-potom-hewak-owy konstrukt. Syntaksa je:

{{#if: <wuměnjenje> | <potomowy tekst> | <hewakowy tekst> }}
{{ #if:  {{{parameter|}}} | Parameter je definowany. | Parameter njeje definowany, abo prózdny  }}

Hdyž (wariabla za) <wuměnjenje> eksistuje a wobsahuje tekst, potom software da pokazać <potomowy tekst>. Hdyž njeeksistuje (wariabla za) <wuměnjenje>, wona je prózdna abo wobsahuje jenož prózdna znamjenja, potom software da pokazać <hewakowy tekst>. <hewakowy tekst> tež móže falować, potom software da pokazać ničo.

Kedźbu: if njefunguje z runicami. Hlej za to ifeq a ifexpr.

ifeq přiruna dwaj sćěhaj ze někotrych znamjenjow a wróći wšelake teksty.

{{#ifeq: <tekst 1> | <tekst 2> | <tekst hdyž samsne> | <tekst hdyž njesamsne> }}

ifexist pruwuje, hač lemma eksistuje, a wróći wšelake teksty.

{{#ifexist: <lemma> | <tekst hdyž lemma eksistuje> | <tekst hdyž lemma njeeksistuje> }}

Kedźbu: Interwikine linki njebu pruwowane.

expr wuliči matematiske wurazy.

{{ #expr: <wuraz> }}
operator operacija přikład
* multiplikacija {{#expr: 30 * 7}} = 210
/ abo div diwidowanje {{#expr: 30 / 7}} = 4.2857142857143
+ adicija {{#expr: 30+7}} = 37
- subtrakcija {{#expr: 30 - 7}} = 23
mod modulo, zbytk diwidowanja {{#expr: 30 mod 7}} = 2
round {{#expr: 30 / 7 round 7}} = 4.2857143
= runosć {{#expr: 30 = 7}} = 0
<> abo != njerunosć {{#expr: 30 <> 7}} = 1
< mjeńšo hač {{#expr: 30 < 7}} = 0
> wjetšo hač {{#expr: 30 > 7}} = 1
<= mjeńšo abo runje {{#expr: 30 <= 7}} = 0
>= wjetšo abo runje {{#expr: 30 >= 7}} = 1
and logiske A (Němsce: UND) {{#expr: 30 and 7}} = 1
or logiske ABO (Němsce: ODER) {{#expr: 30 or 7}} = 1
not logiske NIC (Němsce: NICHT) {{#expr: not 7}} = 0
( ) grupěrowanje {{#expr: (30 + 7) *7}} = 259

Boolske operatory wobjednawaja 0 (nul) kaž njewěrny a 1 kaž wěrny. Čisła buchu podawane z dypkom kaž decimalny dźělnik.

Přikład:

{{ #expr: (100 -32) / 9 * 5 round 0 }}

so pokaza

38

To přeličuje 100 Fahrenheit do Celsiusoweje temperatury.

ifexpr wuhódnoći matematiski wuraz.

{{#ifexpr: <wuraz> | <potomowy tekst> | <hewakowy tekst> }}

Hdyž rezultat <wuměnjenje> 0 (nul), bu <hewakowy tekst> wróćeny. Hewak bu <potomowy tekst> wróćeny. <hewakowy tekst> móže falować, potom bu ničo wróćene.

Syntaksa wuraza bu we wopisanje wo expr wujasnjowana.

switch přirunuje hódnosć z wjacorymi druhimi. Zakładna syntaksa je:

{{ #switch: <komparacijowa hódnosć>
| hódnosć 1=<rezultat 1>
| hódnosć 2=<rezultat 2>
| hódnosć 3=<rezultat 3>
| ...
| hódnosć<sub>n</sub>=<rezultat <sub>n</sub>>
| #default=<standardny rezultat>
}}

switch přehladuje wšě hódnosće, doniž bu hódnosć přirunowanja wunamakana. Potom bu wotpowědny rezultat wróćeny. Hdyž žana hódnosć so njeruna, potom bu zapisk w #default wužiwany, hdyž tón eksistuje.

Samsny rezultat we druhich hódnosćach tež je móžny:

{{ #switch: <komparacijowa hódnosć>
| hódnosć 1
| hódnosć 2
| hódnosć 3=<rezultat 1,2,3>
| ...
| hódnosć<sub>n</sub>=<rezultat <sub>n</sub>>
| #default=<standardny rezultat>
}}

#time je funkcija za formatowanje časow a datumow. Syntaksa je:

{{ #time: format }}

abo

{{ #time: format | time }}

Hdyž "time" njebu mjenowany, so wužiwa čas za časowy dypk přetworjenja do HTML. Dla "servercaching" móže dóńć k wotchilenju w pokazce nastawka hač do jedneho tydźenja.

Parameter "format" je podobny k PHP-datumowym parametram: http://php.net/date.

Slědowace parametry maja samsne woznamy kaž w PHP.

Kode Wopisanje Wudaće
d dźeń, z 0 (null) 05
D skrótšenje wšědneho dnja, jenož zrědka internacionalizowany Fr
j dźeń, bjez 0 (null)
l wupisane mjeno wšědneho dnja, jenož zrědka internacionalizowany Freitag
F wupisane mjeno wšědneho dnja, regularnje internacionalizowany Januar
m měsačk, z 0 (null) 01
M skrótšene mjeno měsačkoweho mjena, regularnje internacionalizowane Jan
n měsačk, bjez 0 (null) 1
Y lěto, štyriměstnowe 2007
y lěto, dwuměstnowe 07
H hodźina, z 0 (null) 15
i minuta, z 0 (null) 05
s sekunda, z 0 (null) 35

Slědowace koda su rozšěrjenja k PHP.

Kode Wopisanje
xn Formatowaj slědowace numeriske kode kaž hruby-ASCII. Na př. w Hindišćinje: {{ #time:H, xnH}} pokaza 02, 02.
xr Formatowaj slědowace numeriske kode kaž romske čisło.
xg Wudaj genitiwowu formu měsačkoweho mjena, za rěče, kotrež maja rozeznawanja mjezy genitiwom a nominatiwom.
xx Pismik "x"

Wšo njeznate znamješko bu podate do wudaća bjez wobdźěłanja. Za to eksistujetej dwě konwenciji wo njewobdźěłanym podaću znamješkow.

  • Znamješko mjezy dwójnym " bu kaž tajke wudate (bjez ").

Format parametra "format" je identiski z PHP-funkciju strtotime(). Relatiwne nadaća, kaž na př. "+10 hours" bu podpěrane. Hlej "GNU tar manual" (http://www.gnu.org/software/tar/manual/html_node/tar_109.html) za wjacoru informaciju.

ParseFunctions móže tež so wužiwa z subst, tak dołho kaž žane prózdnoty mjezy subst: a # steja.

Wikiowa syntaksa za tabele tón čas so njemóže znutřka wuměnjenjow wužiwać, tohodla eksistujetej štyri triki:

Schowaj(će) Pipeowe znamješko („|“) před Parserowu funkciju přez to zo so předłohu Předłoha:! (diskusija, Što wotkazuje sem, wobdźěłaj) wužiwa.

{{#if: {{{1|}}} | {{!}} celowy wobsah | žana cela}}
Parametry {{!}} {{!-}} {{!!}} {{!-!}} {{!+}} {{(!}} {{!)}} {{!~}}
Wobsahi | |- || |-

|

|+ {| |} |-

!

So wužiwa HTML-tabelowa syntaksa. <table>, <th>, <td>, <thead>, <tbody>,

So wužiwa wikina syntaksa, na při. <nowiki>|</nowiki>

So wužiwa html entity &#124;.

meta:Help:ParserFunctions

Z Wikipedije, swobodneje encyklopedije