Diskuse k šabloně:Šablona

Z Wikipedie, otevřené encyklopedie
Skočit na navigaci Skočit na vyhledávání

2 vylepseni[editovat zdroj]

Zdravim!

Mam hotovou vylepsenou verzi:

  • 0) Umi vytvaret pro copy&paste predlohy uplne stejne jako ted,
  • 1) navic umi ozbrazovat vice predavanych parametru
  • 2) a take ma moznost substu i pres pojmenovany parametr, takze anonymni params zustavaji k dispozici te substovane sblonky. (neprijde se o ten druhy param, subst mohl drive byt jen misto nej)

Verim, ze mi to odkyvete, no nechtel jsem to tam rvat natvrdo hned rovnou...

Sablonku si kdekoli v editu muzete vyzkouset, zatim ji tedy mam u sebe: Wikipedista:Oashi/Šablona.

Mam k ni hotove i test cases, ty jsou tady na piskovisti: Wikipedista:Oashi/Sandbox pro Šablona:Šablona

Nenicte mi to tam, pouziju to jako vychozi bod pro doc. --Franta Oashi 12. 9. 2009, 17:49 (UTC)


Zdravím, vaše verze je zcela zbytečně složitá. Kromě toho současná verze více parametrů (virtuálně nekonečné) podporuje ({{Foo|parametr 1|parametr 2|parametr 3|parametr 4|parametr 5|parametr 6|parametr 7|parametr 8|parametr 9|parametr 10|atd...}} a {{subst:Foo|parametr 1|parametr 2|parametr 3|parametr 4|parametr 5|parametr 6|parametr 7|parametr 8|parametr 9|parametr 10|atd...}}), zatímco vaše jen omezené. Výpis parametrů i v případě zobrazování subst: jsem doplnil. Přechod na vaši verzi proto nedoporučuji.
Danny B. | diskuse | mail | přehled příspěvků | 13. 9. 2009, 12:18 (UTC)

Tak ted vidim, ze tu asi doslo k nepochopeni. :) Jak uz jsem psal vyse, moje vylepseni prinasi dve nove vlastnosti a navic nevylucuje vase soucasne pouziti.

1) Kdy jsem se podival na vas kod, tak vy tu vsude pouzivate {{!}}... A kde zustala myslenka snadneho copypastu? Ze se cela sekvence parametru te sablonky da narvat do toho prvniho parametru, to je sice pravda, ale mel jsem zato, ze {{Šablona}} je tu pro snadne copypasty:

a) snadny copypaste z docu do kodu: To je ted splneno, ano.
b) ale take snadny copypaste z kodu do docu (nebo diskuse!), tedy snadno a rychle, a ne s komplikovanym nahrazovanim vsech znaku "|" za {{!}}. Vsak i vy, abyste mi to tu mohl predvest, jste to tak preci musel zdlouhave konstruavat! ;) To vam neprislo obtizne?

Co ma moje reseni prinest, je snady oboustranny copypaste, z docu do kodu i z kodu do diskusi. A to soucasne reseni neumoznuje. Oeditovat se predmet copypastu trosku bude muset, ano:

  • (i) pridat "Šablona" na zacatek
  • a (ii) pridat pripadnou zminku o substu.

Vlastne jedine, co z vasich argumentu mohu dale pouzit, je myslenka o omezenem poctu argumentu... Ano, to je pravda: Je obecou vlastnosti WikiScriptu, ze bohuzel neumoznuje iterace. Ale jinak "zesloziteni" teto Sablony prece neni nazavadu: Vsak toho take vice umi.

Ad sozitost: Vadi vam snad to mnozstvi komentaru? To ma byt naopak ku prospechu veci, aby se dal pocet prijimanych argumentu zvysit. ...rekneme, ze 20 bude stacit? ;) Ano, bude jich stale jen limitovany pocet, ale to pro bezne pouziti naprosto staci. A ikdyby nekdo chtel v diskusi predvadet kod treba celeho Infoboxu (maji velice mnoho parametru), tak ten pocet prijimanych params mohu zvysit treba na 50... Ale kdokdy takovou sablonu videl (prepsanou do diskuse)? ...se soucasnou Sablonou nikdo, s tou mou se mozna par vlastovek objevi. ;)

2) Druha novinka stavi na te prvni: do "Šablony" predavany prvni parametr pak vzdy bude "nazev sablonky", uz ho nebude treba pripadne odsouvat na dalsi zminkou o substu (ikdyz zpetna kompatibilita zustava zachovana).

Je uz videt sila meho reseni? Zadne {{!}}! Prosim, zvazte muj navrh znovu: Oproti soucasnemu prinasi jako novinky oboustranny copypaste. --Franta Oashi 13. 9. 2009, 16:31 (UTC)

chybně interpretovaný tag code[editovat zdroj]

Zdravim!

Doc a zdrojaky prikladu sablony jsou zapsane spravne, ale WP interpret wiki inerpretuje znacky "code" nespravne!

Zapis
  • <code>x<code>y</code>z</code> (xyz)

interpretuje nejak divne, jako

<p><code>x</code>yz</p>

ackoli znamena

<code>
x
<code>y</code>
z
</code>

Takze je neinterpretuje jako vnorene XML tagy, ale spis jen jednopruchodove. Pritom to ale jsou XML tagy!

Mozna proto, ze <code>sekvence<code> otviracich slouzi jako prepinac a zaviraci </code> se uplne ignoruje..? Kazdopadne bug, nespravne parsovani!

Projevy chyby
Vnorenim dvou sablon {{šablona}} (bezne spise {{tl}}) do sebe, tedy vytvoreni dvou urovni, by se na stylovani vysledku nemelo projevit, protoze XML DOM...
Ovsem projevi: druha pulka vypisu (po ukonceni vnoreneho a navratu na melci uroven) se pak zobrazuje jako obycejny plain text (ukonci se i ta prvni, sic!), ackoli jde stale o vypis kodu!

Nemluve o tom, ze do vysledneho HTML se nektere tagy vubec dostanou, takze je to bug i z tohoto pohledu: Wikiparser meni nejen styly, ale i primo strukturu dokumentu, coz by nemel.

Reseni A, uplne
Opravit wiki-interpret.
Reseni B, docasne
Upravit sablonu {Sablona}, aby neobklopovala tagem "code", ale radeji "span" s nastavenym attr style. (jako ma tag code; jaka/kde je CSS class pro HTML tag code?)
...to nez se interpret opravi, a klidne i pak dal: Stejne jde jen o stylovani, tak se s tim wiki-stroj nemusi zatezovat.

--Franta Oashi 17. 5. 2010, 17:34 (UTC)

Oznameno pod lipou, odkaz vede sem. --Franta Oashi 17. 5. 2010, 18:06 (UTC)


"...Stejne jde jen o stylovani..." - Nikoliv, jde i o sémantiku dat, což je věc, která vám evidentně unikla, a proto změna na <span> nepřipadá v úvahu. A už obzvláště ne kvůli takovéto malichernosti, kterou lze vyřešit tuctem jiných způsobů.
A jak již říkal kolega jinde - kdybyste si nehrál se zbytečnými rekurzivními veletoči, a používal místo toho triviální konstrukce a šablonu k tomu, k čemu je určena, na takovouto situaci, na níž regulérní uživatel nenarazí, byste rovněž nenarazil.
Jinak abych zabránil vašim dalším spekulacím na téma kde a proč vzniká daná úprava kódu: Vzhledem k tomu, že konstrukce <code><code></code></code> je z logiky věci přinejmenším zbytečná (neváhal bych použít i přívlastek nesmyslná), Tidy takovou věc, vyskočivší jako warning, opravuje způsobem, který je popsán výše - tedy první vnořený <code> převede na </code> a následující </code> tím pádem odstraní jako neočekávané. Totéž udělá s jakýmkoliv párem vnořených negenerických či nerelativních tagů, tedy např. i s <b> apod.
Před dalším laborováním se šablonami bych proto doporučil nastudování elementárních webových standardů a postupů, pak vás takovéto základní věci nepřekvapí.
Danny B. | diskuse | mail | přehled příspěvků | 17. 5. 2010, 20:03 (UTC)

Template:Šablona[editovat zdroj]

English: hi I would like to add these updated codes please

{{[[Šablona:{{{1}}}|{{{1}}}]]}}<noinclude>
{{documentation}}
</noinclude>

86.181.66.37 24. 1. 2013, 18:31 (UTC)

Why? current code can use parameter subst and when template does not exists, no link is created. Your code is worse. JAn (diskuse) 24. 1. 2013, 19:01 (UTC)

Návrh na zjednodušení[editovat zdroj]

Šablonu jsem použil zjednodušeně, než je na dokumentační stránce. Pojmenované parametry (nebo další parametry šablony) jsem obalil spolu s hodnotami tagem <nowiki>. Nějak takhle: {{Šablona|Možná hledáte|<nowiki>redirect=Obecné jméno|jiné=[[Obecný název]]</nowiki>}}

Což dává tento výsledek: {{Možná hledáte|redirect=Obecné jméno|jiné=[[Obecný název]]}}

Zkontrolujte si zdroj, tak to používám já. Rád bych tento fígl předal dále ☺

Wikipedistům by to značně ulehčilo prácičku, navíc při odkazování přes {{Tl}} lze použít to samé. Navrhuji tento způsob přidat do dokumentace.

P.S. Narazil jsem na problém s interpretací tagu <nowiki>: v popisu kódu je třeba < nahradit zápisem &lt; a > zase zápisem &gt;. — Polda18 (diskusepříspěvky) 7. 8. 2013, 16:11 (UTC)

Návrh na vylepšení[editovat zdroj]

Měl bych návrh na vylepšení této šablony. Navrhuji, že by mohla mít více nepojmenovaných parametrů a každý by se zobrazil jako parametr šablony.

Místo zápisu {{šablona|překlad{{!}}kód jazyka{{!}}název článku{{!}}číslo revize}} by stačilo pouze {{šablona|překlad|kód jazyka|název článku|číslo revize}}.

Bylo by to podle mě intuitivnější. Vaše názory? --Urbanecm (diskuse) 5. 12. 2015, 11:42 (CET)[odpovědět]

Intuitivnější by to jistě bylo, navíc by to ulehčilo i vkládání =, ale bylo by asi potřeba omezit počet možných parametrů (více by poté bylo řešeno postaru) nebo by se to muselo udělat pomocí modulu. --Dvorapa (diskuse) 27. 2. 2016, 18:44 (CET)[odpovědět]
První variantu již zpracoval Oashi výše, ale přesně jak píšu, je omezená na 10 parametrů (samozřejmě lze přidat, ale není to asi lepší řešení). --Dvorapa (diskuse) 27. 2. 2016, 18:48 (CET)[odpovědět]