Changeset 43:4a4364826e59
- Timestamp:
- 01/05/12 11:01:25 (14 years ago)
- Author:
- František Kučera <franta-hg@…>
- Branch:
- default
- Message:
-
Zvýrazňování syntaxe #12: zdrojáky ze souborů budeme načítat už v XSLT ne až v Javě.
- Files:
-
Legend:
- Unmodified
- Added
- Removed
-
-
|
r40
|
r43
|
|
| 80 | 80 | return null; |
| 81 | 81 | } |
| 82 | | } |
| 83 | | |
| 84 | | /** |
| 85 | | * TODO: prohodit volání mezi zvýrazniSyntaxiSouboru() a zvýrazniSyntaxi(), |
| 86 | | * aby se nepřeváděl proud na text a pak zase na proud. |
| 87 | | * |
| 88 | | * @param src cesta k souboru, jehož obsah se má zvýraznit a vložit |
| 89 | | */ |
| 90 | | public static String zvýrazniSyntaxiSouboru(String src, String jazyk) throws IOException, InterruptedException { |
| 91 | | String zdroják = načtiProud(new FileInputStream(new File(ADRESÁŘ_VSTUPNÍ, src))); |
| 92 | | return zvýrazniSyntaxi(zdroják, jazyk); |
| 93 | 82 | } |
| 94 | 83 | |
-
|
r41
|
r43
|
|
| 124 | 124 | --> |
| 125 | 125 | <xsl:template match="m:pre"> |
| 126 | | <xsl:call-template name="vypišPre"> |
| 127 | | <xsl:with-param name="zvýrazněnýText" select="j:zvýrazniSyntaxi(text(), @jazyk)"/> |
| | 126 | <xsl:call-template name="zvýrazniZdroják"> |
| | 127 | <xsl:with-param name="zdroják" select="text()"/> |
| 128 | 128 | </xsl:call-template> |
| 129 | 129 | </xsl:template> |
| 130 | 130 | |
| 131 | 131 | <xsl:template match="m:pre[@src]"> |
| 132 | | <xsl:call-template name="vypišPre"> |
| 133 | | <xsl:with-param name="zvýrazněnýText" select="j:zvýrazniSyntaxiSouboru(@src, @jazyk)"/> |
| | 132 | <xsl:call-template name="zvýrazniZdroják"> |
| | 133 | <xsl:with-param name="zdroják" select="unparsed-text(concat($vstup, @src))"/> |
| 134 | 134 | </xsl:call-template> |
| 135 | | <xsl:if test="@odkaz = 'ano'"> |
| 136 | | <p class="zdroják-ke-stažení"> |
| 137 | | <span>Stáhnout: <a href="{encode-for-uri(@src)}"><xsl:value-of select="@src"/></a></span> |
| 138 | | </p> |
| 139 | | </xsl:if> |
| 140 | | </xsl:template> |
| 141 | | |
| 142 | | <xsl:template name="vypišPre"> |
| 143 | | <xsl:param name="zvýrazněnýText"/> |
| | 135 | <xsl:if test="@odkaz = 'ano'"> |
| | 136 | <p class="zdroják-ke-stažení"> |
| | 137 | <span>Stáhnout: <a href="{encode-for-uri(@src)}"><xsl:value-of select="@src"/></a></span> |
| | 138 | </p> |
| | 139 | </xsl:if> |
| | 140 | </xsl:template> |
| | 141 | |
| | 142 | <xsl:template name="zvýrazniZdroják"> |
| | 143 | <xsl:param name="zdroják"/> |
| | 144 | <xsl:variable name="zvýrazněnýZdroják" select="j:zvýrazniSyntaxi($zdroják, @jazyk)"/> |
| 144 | 145 | <xsl:choose> |
| 145 | | <xsl:when test="$zvýrazněnýText"> |
| | 146 | <xsl:when test="$zvýrazněnýZdroják"> |
| 146 | 147 | <xsl:comment>Následující kód je v jazyce <xsl:value-of select="@jazyk"/></xsl:comment> |
| 147 | | <xsl:value-of disable-output-escaping="yes" select="$zvýrazněnýText"/> |
| | 148 | <xsl:value-of disable-output-escaping="yes" select="$zvýrazněnýZdroják"/> |
| 148 | 149 | </xsl:when> |
| 149 | 150 | <xsl:otherwise> |
| 150 | 151 | <xsl:message>Zvýraznění syntaxe se nezdařilo → bude vložen původní nezvýrazněný kód.</xsl:message> |
| 151 | | <pre><xsl:apply-templates/></pre> |
| | 152 | <pre><xsl:value-of select="$zdroják"/></pre> |
| 152 | 153 | </xsl:otherwise> |
| 153 | | </xsl:choose> |
| | 154 | </xsl:choose> |
| 154 | 155 | </xsl:template> |
| 155 | 156 | |