Index: šablona/makra/diagramy.xsl
===================================================================
--- šablona/makra/diagramy.xsl	(revision 67:89b42acb3593)
+++ šablona/makra/diagramy.xsl	(revision 71:895757141bff)
@@ -44,5 +44,5 @@
 	<xsl:template match="m:diagram[@src]">
 		<xsl:call-template name="vložDiagram">
-			<xsl:with-param name="zadání" select="unparsed-text(concat('../', $vstup, @src))"/>
+			<xsl:with-param name="zadání" select="m:načti-textový-soubor(@src)"/>
 			<xsl:with-param name="kompletní" select="not(@kompletní) or @kompletní = 'ano'"/>
 		</xsl:call-template>
Index: šablona/makra/odkazy.xsl
===================================================================
--- šablona/makra/odkazy.xsl	(revision 66:a8085dedd92b)
+++ šablona/makra/odkazy.xsl	(revision 71:895757141bff)
@@ -98,9 +98,4 @@
 	</xsl:template>
 	
-	<xsl:function name="m:escapuj-url-zachovej-lomítka" as="xs:string">
-		<xsl:param name="cesta"/>
-		<xsl:value-of select="replace(encode-for-uri($cesta), '%2F', '/')"/>
-	</xsl:function>
-
 	<!--
 		Wikipedia
Index: šablona/makra/tabulka.xsl
===================================================================
--- šablona/makra/tabulka.xsl	(revision 70:032c62852ef1)
+++ šablona/makra/tabulka.xsl	(revision 71:895757141bff)
@@ -18,8 +18,8 @@
 -->
 <xsl:stylesheet version="2.0"
-xmlns="http://www.w3.org/1999/xhtml"
-xmlns:m="https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/makro"
-xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
-exclude-result-prefixes="m">
+	xmlns="http://www.w3.org/1999/xhtml"
+	xmlns:m="https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/makro"
+	xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+	exclude-result-prefixes="m">
 
 	<!--
@@ -42,5 +42,5 @@
 	<xsl:template match="m:tabulka[@src]">
 		<xsl:call-template name="vykresliTabulku">
-			<xsl:with-param name="zadání" select="unparsed-text(concat('../', $vstup, @src))"/>
+			<xsl:with-param name="zadání" select="m:načti-textový-soubor(@src)"/>
 			<xsl:with-param name="oddělovač" select="(@oddělovač, ';')[1]"/>
 		</xsl:call-template>
Index: šablona/makra/zvýraznění-syntaxe.xsl
===================================================================
--- šablona/makra/zvýraznění-syntaxe.xsl	(revision 61:9503eb8377f1)
+++ šablona/makra/zvýraznění-syntaxe.xsl	(revision 71:895757141bff)
@@ -41,5 +41,5 @@
     <xsl:template match="m:pre[@src]">
     	<xsl:call-template name="zvýrazniZdroják">
-    		<xsl:with-param name="zdroják" select="unparsed-text(concat('../', $vstup, @src))"/>
+    		<xsl:with-param name="zdroják" select="m:načti-textový-soubor(@src)"/>
     	</xsl:call-template>
 		<xsl:if test="@odkaz = 'ano'">
Index: šablona/stránka-společné.xsl
===================================================================
--- šablona/stránka-společné.xsl	(revision 61:9503eb8377f1)
+++ šablona/stránka-společné.xsl	(revision 71:895757141bff)
@@ -71,3 +71,17 @@
     </xsl:template>
     
+    <xsl:function name="m:escapuj-url-zachovej-lomítka" as="xs:string">
+		<xsl:param name="cesta"/>
+		<xsl:value-of select="replace(encode-for-uri($cesta), '%2F', '/')"/>
+	</xsl:function>
+	
+	<!--
+		Vrací obsah textového souboru ve vstupním adresáři.
+		Obvykle jako parametr předáváme atribut „src“.
+	-->
+	<xsl:function name="m:načti-textový-soubor" as="xs:string">
+		<xsl:param name="soubor"/>
+		<xsl:value-of select="unparsed-text(concat($vstup, $soubor))"/>
+	</xsl:function>
+    
 </xsl:stylesheet>
