Šablona:pages/doc
Parametrizovaná šablona pro generování obsahu knih.
Parametry
Šablona původně vznikla jako náhrada za nefunkční tag <pages /> který nabízí rozšíření ProofreadPage
, proto její základní parametry víceméně vychází z parametrů tohoto tagu – tedy až na parametr index=
, protože název elektronické knihy, zpracované přes rozšíření (viz Help:Jak pracovat s knihami) je základním parametrem, bez kterého její použití nedává smysl. Proto je na první pozici.
I když se může na první pohled zdát, že šablona {{pages}} vrací, to samé jako tag <pages /> není tomu tak. A je důležité vědět, v čem je ten rozdíl.
|
Nápovědu k tagu <pages /> naleznete na webu wikisource.org. Klíčový je rozdíl v parametru exclude:
- from
- Číslo první stránky, kterou má začínat vybraný obsah
- to
- Číslo stránky, kterou má vybraný obsah končit. Není-li parametr uveden, jsou zobrazeny všechny zbývající stránky dokumentu.
- exclude
- Obsahuje číslo pouze jedné(!) stránky, která se má při zpracování přeskočit. To je zásadní rozdíl, oproti použití tagu <pages />, který umožňuje zpracovat seznam několika čísel, oddělených čárkou, případně i rozsah, pokud jsou dvě čísla spojena polčkou. Šablonu
{{pages}}
(ale i tag <pages />) lze s různými parametry použít na jedné stránce opakovaně. Není tedy důvod, proč kód zbytečně komplikovat zpracováním rozsahu.
Neimplementované parametry
Tag <pages /> má implementované parametry, které u šablony {{pages}}
nejsou, poněvadž to není nutné. Více viz u příkladů použití šablony níže.
- fromsection
- Pokud mají includované stránky obsah rozdělený na sekce, lze pomocí tohoto parametru určit od které z nich se má začít obsah extrahovat (tento parametr využívá rozšíření LabeledSectionTransclusion)
- tosection
- Pokud mají includované stránky obsah rozdělený na sekce, lze pomocí tohoto parametru určit která z nich už do výběru nepatří (tento parametr využívá rozšíření LabeledSectionTransclusion)
- onlysection
- Pokud mají includované stránky obsah rozdělený na sekce, lze pomocí tohoto parametru určit která z nich se má ze stránky vytahovat (tento parametr využívá rozšíření LabeledSectionTransclusion)
- step
- Lze využít u dokumentů, jejichž obsah kontinuálně pokračuje na sudých a lichých stránkách (výchozí hodnota je 1)
Použití
Pokud si kladete otázku, co je lepší, zamyslete se nad následujícími body:
- Použití šablony umožňuje velice snadno a rychle dohledat všechny stránky, na kterých je šablona použita.
- Parametry šablony lze také (v případě potřeby) extrahovat do přehledné tabulky
- Asi ten nejdůležitější argument je, že při použití šablony, dojde ke zpracování kódu až po transkluzi, kdežto při použití tagu <pages />, až po.
Základní použití
{{pages|roll_1906.djvu
|from = 1
|to = 78
}}
Výsledek je stejný, jako kdybychom použili
<pages index="roll_1906.djvu" from="1" to="78">
Komplexní použití
Šablona {{pages}}
umožňuje generování komplexních stránek, které naleznete v kategorii Kategorie:Singlepage.
U některých dokumentů není při prvotním zpracování jasné, jaké má být správné pořadí stránek. Tato šablona ale nabízí elegantní způsob, jak lze stránky snadno a rychle přeskupit. Někdy také chceme rozdělit zpracování singlepage stránky na více částí. Následující ukázkový kód generuje stránku Stará a nová cesta Lesní moudrosti, 1937 (sborník), na kterém to lze krásně demonstrovat.
__NOEDITSECTION__
{{Vsuvka|
__TOC__
{{:Stará a nová cesta Lesní moudrosti, 1937}}
}}
{{#css: h2 { border: none; text-align: center; } h3 { border: none; text-align: center; } }}
{{pages|buk1937.djvu|from=1|to=1}}<!-- Bukovanského průvodní dopis 20.3.1937 -->
{{pages|buk1937.djvu|from=2|to=4}}
{{pages|buk1937.djvu|from=12}}
{{pages|buk1937.djvu|from=9|to=9}}
{{pages|buk1937.djvu|from=6|to=6}}<!-- Setonova návštěva o vánocích 1936 -->
{{pages|buk1937.djvu|from=5|to=8|exclude=6}}
{{pages|buk1937.djvu|from=10|to=11}}<!-- Zpráva o plánovaném táboře JGL 1937 -->
- Především je nutno upozornit, že při použití tagu <pages />, by nefungovalo přesunutí (a generování) obsahu stránky (viz
__TOC__
) - Použití šablony umožňuje měnit přes CSS konfiguraci vybraných elementů na stránce – v tomto případě jsou centrovány nadpisy 3 a 2 úrovně.
- Jak je z příkladu patrné, vložení jedné stránky lze provést uvedením jejího čísla v parametru
from=
ito=
, jak vidíte např. u strany 1, nebo 6. - Navíc můžeme za šablonu přidat skrytou poznámku, která ve stručnosti uvádí, co zobrazovaný rozsah, nebo stránka obsahuje.
- Vložení rozsahu stránek, je základní operace. Jelikož se od strany 12 již pořadí stránek nemění, proto není parametr
to=
nezbytně nutný – zpracování šablony se u poslední stránky totiž tak jako tak ukončí. - Vložení rozsahu stránek, ze kterého je potřeba vyjmout pouze jednu stránku, lze zajistit s využitím parametru
exclude=
. Ušetříme si tak minimálně jedno použití šablony{{pages}}
na stránce.