Pomoc:Předłohowe programowanje

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

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

Funkcija if

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.

Funkcija ifeq

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> }}

Funkcija ifexist

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.

Funkcija expr

expr wuliči matematiske wurazy.

{{ #expr: <wuraz> }}
operatoroperacijapřikład
*multiplikacija{{#expr: 30 * 7}} = 210
/ abo divdiwidowanje{{#expr: 30 / 7}} = 4.2857142857143
+adicija{{#expr: 30+7}} = 37
-subtrakcija{{#expr: 30 - 7}} = 23
modmodulo, 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
andlogiske A (Němsce: UND){{#expr: 30 and 7}} = 1
orlogiske ABO (Němsce: ODER){{#expr: 30 or 7}} = 1
notlogiske 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.

Funkcija ifexpr

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.

Funkcija switch

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>}}

Funkcija time

#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.

KodeWopisanjeWudaće
ddźeń, z 0 (null)05
Dskrótšenje wšědneho dnja, jenož zrědka internacionalizowanyFr
jdźeń, bjez 0 (null)
lwupisane mjeno wšědneho dnja, jenož zrědka internacionalizowanyFreitag
Fwupisane mjeno wšědneho dnja, regularnje internacionalizowanyJanuar
mměsačk, z 0 (null)01
Mskrótšene mjeno měsačkoweho mjena, regularnje internacionalizowaneJan
nměsačk, bjez 0 (null)1
Ylěto, štyriměstnowe2007
ylěto, dwuměstnowe07
Hhodźina, z 0 (null)15
iminuta, z 0 (null)05
ssekunda, z 0 (null)35

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

KodeWopisanje
xnFormatowaj slědowace numeriske kode kaž hruby-ASCII. Na př. w Hindišćinje: {{ #time:H, xnH}} pokaza 01, 01.
xrFormatowaj slědowace numeriske kode kaž romske čisło.
xgWudaj genitiwowu formu měsačkoweho mjena, za rěče, kotrež maja rozeznawanja mjezy genitiwom a nominatiwom.
xxPismik "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.

Wužiwanje z subst

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

Wosebitosće

Tabele

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

Metoda A

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.

Přikład
{{#if: {{{1|}}} | {{!}} celowy wobsah | žana cela}}
Dalše předłohi
Parametry{{!}}{{!-}}{{!!}}{{!-!}}{{!+}}{{(!}}{{!)}}{{!~}}
Wobsahi||-|||-

|

|+{||}|-

!

Metoda B

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

Metoda C

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

Metoda D

So wužiwa html entity &#124;.

Weblinki

meta:Help:ParserFunctions

Z Wikipedije, swobodneje encyklopedije