Pomoc:Pśedłogowe programowanje

Pomoc

Wót srjejźiny apryla 2006 ma k dispoziciji Wiki-syntaks mediawikinego softwara wšelake konstrukty programoweje rěcy za wužywanje we pśedłogach.

Rěcne kostrukty by se małe wužywaś jano we pśedłogowem mjenjowym rumje.

Wopisanja ParserFunctions wobźěłaś

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

Funkcija if wobźěłaś

Funkcija if jo gaž-pótom-howacej-owy konstrukt. Syntaksa jo:

{{#if: <wuměnjenje> | <pótomowy tekst> | <howacejowy tekst> }}
{{ #if:  {{{parameter|}}} | Parameter jo definěrowany. | Parameter njejo definěrowany, abo prozny  }}

Gaž (wariabla za) <wuměnjenje> eksistěrujo a wopśimjejo tekst, pótom software da pokazaś <pótomowy tekst>. Gaž njeeksistětrujo (wariabla za) <wuměnjenje>, wóna jo prozna abo wopśimjejo jano prozna znamjenja, pótom software da pokazaś <howacejowy tekst>. <howacejowy tekst> teke móžo felowaś, pótom software da pokazaś nic.

Glědajśo: if njefunkcioněrujo z rownicami. Glědaj za to ifeq a ifexpr.

Funkcija ifeq wobźěłaś

ifeq pśirowna dwa slědaj ze někotarych znamjenjow a wrośi wšelake teksty.

{{#ifeq: <tekst 1> | <tekst 2> | <tekst gaž samske> | <tekst gaž njesamske> }}

Funkcija ifexist wobźěłaś

ifexist testujo, lěc lemma eksistěrujo, a wrośi wšelake teksty.

{{#ifexist: <lemma> | <tekst gaž lemma eksistěrujo> | <tekst gaž lemma njeeksistěrujo> }}

Glědajśo: Interwikine linki njebu testowane.

Funkcija expr wobźěłaś

expr wulicy 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
= rownosć {{#expr: 30 = 7}} = 0
<> abo != njerownosć {{#expr: 30 <> 7}} = 1
< mjenjej ako {{#expr: 30 < 7}} = 0
> wěcej ako {{#expr: 30 > 7}} = 1
<= mjenjej abo rownje {{#expr: 30 <= 7}} = 0
>= wěcej abo rownje {{#expr: 30 >= 7}} = 1
and logiske A (Nimski: UND) {{#expr: 30 and 7}} = 1
or logiske ABO (Nimski: ODER) {{#expr: 30 or 7}} = 1
not logiske NIC (Nimski: NICHT) {{#expr: not 7}} = 0
( ) grupěrowanje {{#expr: (30 + 7) *7}} = 259

Boolske operatory wobjadnawaja 0 (nul) kaž njewěrny a 1 kaž wěrny. Cysła bu pódawane z dypkom kaž decimalny źělak.

Pśikład:

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

se pokaza

38

To pśelicujo 100 Fahrenheit do Celsiusoweje temperatury.

Funkcija ifexpr wobźěłaś

ifexpr wugódnośi matematiski wuraz.

{{#ifexpr: <wuraz> | <pótomowy tekst> | <howacejowy tekst> }}

Gaž rezultat <wuměnjenje> 0 (nul), bu <howacejowy tekst> wrośony. Howacej bu <pótomowy tekst> wrośony. <howacejowy tekst> móžo felowaś, pótom bu nic wrośone.

Syntaksa wuraza bu we wopisanje wó expr wujasnjowana.

Funkcija switch wobźěłaś

switch pśirownujo gódnosć z wšakimi drugimi. Zakładna syntaksa jo:

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

switch pśeglědujo wše gódnosće, tak dłujko ako bu gódnosć pśirownowanja wunamakana. Pótom bu wótpowědny rezultat wrośony. Gaž žedna gódnosć se njerowna, pótom bu zapisk w #default wužywany, gaž ten eksistěrujo.

Samski rezultat we drugich gódnosćach teke jo móžny:

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

Funkcija time wobźěłaś

#time jo funkcija za formatowanje casow a datumow. Syntaksa jo:

{{ #time: format }}

abo

{{ #time: format | time }}

Gaž "time" njebu mjenjowany, se wužywa cas za casowy dypk pśetwórjenja do HTML. Dla "servercaching" móžo dójś k wótchylenju w pokazce nastawka až do jadnego tyźenja.

Parameter "format" jo pódobny k PHP-datumowym parametram: http://php.net/date.

Slědujuce parametry maju samske wóznamy kaž w PHP.

Kode Wopisanje Wudaśe
d źeń, z 0 (null) 05
D skrotconje wšednego dnja, jano zrědka internacionalizowany Fr
j źeń, bźez 0 (null)
l wupisane mě wšednego dnja, jano zrědka internacionalizowany Freitag
F wupisane mě wšednego dnja, regularnje internacionalizowany Januar
m mjasec, z 0 (null) 01
M skrotcone mě mjasacowego mjenja, regularnje internacionalizowane Jan
n mjasec, bźez 0 (null) 1
Y lěto, styriměstnowe 2007
y lěto, dwuměstnowe 07
H góźina, z 0 (null) 15
i minuta, z 0 (null) 05
s sekunda, z 0 (null) 35

Slědujuce koda su rozšyrjonja k PHP.

Kode Wopisanje
xn Formatowaj slědujuce numeriske kode kaž gruby-ASCII. Na pś. w Hindišćinje: {{ #time:H, xnH}} pokaza 00, 00.
xr Formatowaj slědujuce numeriske kode kaž romske cysło.
xg Wudaj genitiwowu formu mjasecowego mjenja, za rěcy, kótarež maju rozeznawanja mjazy genitiwom a nominatiwom.
xx Pismik "x"

Wšo njeznate znamješko bu pódate do wudaśa bźez wobźěłanja. Za to eksistěrujotej dwě konwenciji wó njewobźěłanym pódaśu znamješkow.

  • Znamješko mjazy dwójnym " bu kaž take wudate (bźez ").

Format parametra "format" jo identiski z PHP-funkciju strtotime(). Relatiwne nadaśa, kaž na pś. "+10 hours" bu pódpěrane. Glědaj "GNU tar manual" (http://www.gnu.org/software/tar/manual/html_node/tar_109.html) za wšaku informaciju.

Wužywanje z subst wobźěłaś

ParseFunctions móžo teke se wužywa z subst, tak dłujko kaž žedne prozne znamja mjazy subst: a # stoje.

Wósebnosći wobźěłaś

Tabele wobźěłaś

Wikiowa syntaksa za tabele ten cas se njemóžo znutřka wuměnjenjow wužywaś, togodla eksistěrujotej styri triki:

Metoda A wobźěłaś

Schowaj(śo) Pipeowe znamješko („|“) pśed Parserowu funkciju pśez to zo se pśedłogu Pśedłoga:! (diskusija, Co wótkazujo sem, wobźěłaj) wužywa.

Pśikład wobźěłaś
{{#if: {{{1|}}} | {{!}} celowe wopśimjeśe | žedna cela}}
Dalšne pśedłogi wobźěłaś
Parametry {{!}} {{!-}} {{!!}} {{!-!}} {{!+}} {{(!}} {{!)}} {{!~}}
Wopśimjeśa | |- || |-

|

|+ {| |} |-

!

Metoda B wobźěłaś

Se wužywa HTML-tabelowa syntaksa. <table>, <th>, <td>, <thead>, <tbody>,

Metoda C wobźěłaś

Se wužywa wikina syntaksa, na pś. <nowiki>|</nowiki>

Metoda D wobźěłaś

Se wužywa html entity &#124;.

meta:Help:ParserFunctions