1.1 --- a/vstup/skriptování.xml Thu Jul 05 23:31:49 2012 +0200
1.2 +++ b/vstup/skriptování.xml Fri Jul 06 13:41:35 2012 +0200
1.3 @@ -286,6 +286,13 @@
1.4 Někdy se ale může hodit ve skriptu nastavovat atributy elementů nebo elementy vytvářet dynamicky.
1.5 </p>
1.6
1.7 + <p>
1.8 + Skriptování lze použít i pro generování zdrojového kódu, který bude následně zvýrazněn
1.9 + pomocí značky <code><m:pre jazyk="…"/></code>.
1.10 + Toho využíváme na stránce <m:a href="zdrojáky">Zdrojové kódy</m:a> v případě SQL a XML ukázek.
1.11 + Skript můžeme použít mj. i ke zkrácení zdrojáku – když chceme vypsat jen jeho relevantní část.
1.12 + </p>
1.13 +
1.14 </text>
1.15
1.16 </stránka>
2.1 --- a/vstup/zdrojáky.xml Thu Jul 05 23:31:49 2012 +0200
2.2 +++ b/vstup/zdrojáky.xml Fri Jul 06 13:41:35 2012 +0200
2.3 @@ -41,16 +41,26 @@
2.4
2.5 <h2>Java</h2>
2.6
2.7 - <m:pre jazyk="java">public class Pokus {
2.8 - // komentář
2.9 - // <JavaRulezz/>
2.10 -}</m:pre>
2.11 + <m:pre jazyk="java" src="../šablona/funkce/src/cz/frantovo/xmlWebGenerator/Xmlns.java"/>
2.12
2.13 <h2>XML</h2>
2.14
2.15 - <m:pre jazyk="xml"><![CDATA[<xmlDokument>
2.16 - <element1>toto je <strong>pěkné</strong> XML!!!</element1>
2.17 -</xmlDokument>]]></m:pre>
2.18 + <p>
2.19 + Zdroják aktuální stránky – <abbr title="diakritika byla odstraněna, protože v Pygmentize je chyba – neumí značky s diakritikou, přestože to je platné XML">upravený</abbr> a zkrácený pomocí <m:a href="skriptování">skriptu</m:a>:
2.20 + </p>
2.21 + <m:pre jazyk="xml"><m:skript jazyk="bash">
2.22 +# V zvýrazňovači Pygmentize je chyba: nepodporuje znaky s diakritikou, přestože v daném jazyce můžou být.
2.23 +# TODO: opravit to tam (zřejmě špatný regulární výraz).
2.24 +
2.25 +cat $XWG_STRANKA_SOUBOR | iconv -t ASCII//TRANSLIT -f UTF-8 | head -n 8;
2.26 +echo -e "\t\t… zkráceno …";
2.27 +cat $XWG_STRANKA_SOUBOR | iconv -t ASCII//TRANSLIT -f UTF-8 | tail -n 4;
2.28 +
2.29 +# Případně:
2.30 +# cat $XWG_STRANKA_SOUBOR | sed s/á/a/g | sed s/ř/r/g | sed s/í/i/g | head -n 8;
2.31 +# echo -e "\t\t… zkráceno …";
2.32 +# cat $XWG_STRANKA_SOUBOR | sed s/á/a/g | sed s/ř/r/g | sed s/í/i/g | tail -n 4;
2.33 + </m:skript></m:pre>
2.34
2.35 <p>Další ukázka XML: <m:a href="šablona/makra/tabulka.xsl" typ="zdroják" řádek="25">tabulka.xsl</m:a>.</p>
2.36
2.37 @@ -58,6 +68,22 @@
2.38
2.39 <m:pre jazyk="bash" src="matrixový-spořič.sh" odkaz="ano"/>
2.40
2.41 + <h2>SQL</h2>
2.42 +
2.43 + <p>
2.44 + Tento SQL kód není zapsán přímo ve stránce, ale byl vygenerován pomocí <m:a href="skriptování">skriptu</m:a>,
2.45 + a poté zvýrazněn.
2.46 + </p>
2.47 +
2.48 + <m:pre jazyk="sql"><m:skript jazyk="perl"><![CDATA[
2.49 +use strict;
2.50 +use warnings;
2.51 +
2.52 +for (my $i = 0; $i < 10; $i++) {
2.53 + print "INSERT INTO tabulka VALUES ('abc $i', 'def ". $i*($i+1) . "', " . 2**$i . ");\n";
2.54 +}
2.55 + ]]></m:skript></m:pre>
2.56 +
2.57 <h2>Chyby</h2>
2.58
2.59 <p>Následující ukázky kódu nebudou zvýrazněné:</p>
3.1 --- a/šablona/funkce/src/cz/frantovo/xmlWebGenerator/Xmlns.java Thu Jul 05 23:31:49 2012 +0200
3.2 +++ b/šablona/funkce/src/cz/frantovo/xmlWebGenerator/Xmlns.java Fri Jul 06 13:41:35 2012 +0200
3.3 @@ -8,7 +8,8 @@
3.4 public class Xmlns {
3.5
3.6 public static final String XHTML = "http://www.w3.org/1999/xhtml";
3.7 - public static final String MAKRO = "https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/makro";
3.8 + public static final String MAKRO =
3.9 + "https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/makro";
3.10
3.11 private Xmlns() {
3.12 }
4.1 --- a/šablona/makra/zvýraznění-syntaxe.xsl Thu Jul 05 23:31:49 2012 +0200
4.2 +++ b/šablona/makra/zvýraznění-syntaxe.xsl Fri Jul 06 13:41:35 2012 +0200
4.3 @@ -33,8 +33,11 @@
4.4 @odkaz nastavíme hodnotu „ano“, pokud chceme vložit odkaz na soubor je stažení
4.5 -->
4.6 <xsl:template match="m:pre">
4.7 + <xsl:variable name="zadání">
4.8 + <xsl:apply-templates select="*|text()"/>
4.9 + </xsl:variable>
4.10 <xsl:call-template name="zvýrazniZdroják">
4.11 - <xsl:with-param name="zdroják" select="text()"/>
4.12 + <xsl:with-param name="zdroják" select="$zadání/text()"/>
4.13 </xsl:call-template>
4.14 </xsl:template>
4.15