vstup/zdrojáky.xml
author František Kučera <franta-hg@frantovo.cz>
Fri, 06 Jul 2012 13:41:35 +0200
changeset 112 7d4b23ccf144
parent 87 25dec6931f18
child 118 5488d34dd789
permissions -rw-r--r--
#20 Skriptování: kód ke zvýraznění syntaxe generovaný skriptem

<stránka
	xmlns="https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/strana"
	xmlns:m="https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/makro">
	<nadpis>Zdrojové kódy</nadpis>
	<perex>Ukázka našich zdrojových kódů.</perex>
	<pořadí>40</pořadí>

	<text xmlns="http://www.w3.org/1999/xhtml">

		<p>Zde je malá ukázka našich zdrojových kódů. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed mi nisl, tincidunt in viverra vitae, pharetra nec urna. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Integer gravida gravida convallis. Phasellus erat ligula, vestibulum vel commodo ac, fringilla quis lorem. Morbi a massa a ligula tincidunt mattis et et felis. Vivamus a quam nulla, at vulputate nisi. Duis gravida placerat luctus. Phasellus vehicula lobortis arcu vitae hendrerit. Maecenas ut molestie elit. Aliquam erat volutpat. Curabitur sed euismod nisl. Mauris molestie tristique nulla, eu pellentesque sem tincidunt non.</p>
		<p>Morbi et magna a ligula pulvinar posuere. Pellentesque sit amet sem <m:a href="odkazy" title="Ukázka odkazů">sed orci</m:a> convallis tincidunt sed sed nisl. Aenean id nibh lorem, eget tempor mauris. Duis diam dui, ullamcorper quis iaculis eget, blandit non dolor. Vestibulum pretium lorem aliquet libero tristique vehicula. Quisque sit amet odio risus, sed tincidunt augue. Proin tincidunt eros eu sem sodales sit amet sollicitudin libero vestibulum. Proin sed nunc elit. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam mollis, nisl ut sodales sodales, quam lacus elementum magna, nec blandit leo enim id odio. Integer risus leo, sagittis vitae vestibulum vitae, elementum eu eros.</p>

		<h2>C++</h2>
		<p>Ukázka převzatá ze stránky <a href="https://podnik.frantovo.cz/s/zdrojovy-kod">Zdrojový kód</a>:</p>

		<m:pre jazyk="cpp"><![CDATA[# include <iostream>
using namespace std;

int main(int argc, char *argv[]) {

	cout << "Chcete slyšet vtip?" << endl;
	char odpoved = cin.get();
	cin.get();

	if (odpoved == 'a') {
		cout
		<< "Lidé se dělí do 10 skupin." << endl
		<< "Na ty, kteří rozumějí binárnímu kódu, "
		<< "a na ty ostatní." << endl;
		return 0;
	} else if (odpoved == 'n') {
		cout << "Dobře, tak ne." << endl;
		return 0;
	} else {
		cout
		<< "Nerozumím odpovědi "
		<< "– očekávám „ano“ nebo „ne“." << endl;
		return 1;
	}
}]]></m:pre>

		<h2>Java</h2>

		<m:pre jazyk="java" src="../šablona/funkce/src/cz/frantovo/xmlWebGenerator/Xmlns.java"/>

		<h2>XML</h2>

		<p>
			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>:
		</p>
		<m:pre jazyk="xml"><m:skript jazyk="bash">
# V zvýrazňovači Pygmentize je chyba: nepodporuje znaky s diakritikou, přestože v daném jazyce můžou být.
# TODO: opravit to tam (zřejmě špatný regulární výraz).

cat $XWG_STRANKA_SOUBOR | iconv -t ASCII//TRANSLIT -f UTF-8 | head -n 8;
echo -e "\t\t… zkráceno …";
cat $XWG_STRANKA_SOUBOR | iconv -t ASCII//TRANSLIT -f UTF-8 | tail -n 4;

# Případně:
# cat $XWG_STRANKA_SOUBOR | sed s/á/a/g | sed s/ř/r/g | sed s/í/i/g | head -n 8;
# echo -e "\t\t… zkráceno …";
# cat $XWG_STRANKA_SOUBOR | sed s/á/a/g | sed s/ř/r/g | sed s/í/i/g | tail -n 4;
		</m:skript></m:pre>

		<p>Další ukázka XML: <m:a href="šablona/makra/tabulka.xsl" typ="zdroják" řádek="25">tabulka.xsl</m:a>.</p>

		<h2>BASH</h2>

		<m:pre jazyk="bash" src="matrixový-spořič.sh" odkaz="ano"/>

		<h2>SQL</h2>

		<p>
			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>,
			a poté zvýrazněn.
		</p>

		<m:pre jazyk="sql"><m:skript jazyk="perl"><![CDATA[
use strict;
use warnings;

for (my $i = 0; $i < 10; $i++) {
	print "INSERT INTO tabulka VALUES ('abc $i', 'def ". $i*($i+1) . "', " . 2**$i . ");\n";
}
		]]></m:skript></m:pre>

		<h2>Chyby</h2>

		<p>Následující ukázky kódu nebudou zvýrazněné:</p>

		<m:pre jazyk="xxxxxxxx">Nepodporovaný jazyk → syntaxe nebude zvýrazněna &lt;blee/&gt;</m:pre>

		<m:pre>#!/bin/bash
# tento kód nebude zvýrazněn, protože atribut „jazyk“ chybí
# &lt;blee/&gt;</m:pre>

		<h2>Objekty</h2>

		<p>
			Při vývoji softwaru používáme <abbr title="objektově orientované programování">OOP</abbr>.
		</p>

		<m:diagram src="kočka-a-pes-oop.dot" nadpis="Třídy Kočka a Pes jsou potomkem třídy Zvíře"/>

	</text>

</stránka>