šablona/funkce/src/cz/frantovo/xmlWebGenerator/Funkce.java
changeset 31 da6ae32853cb
parent 30 cefd5fe75cb8
child 32 6bc25517ac4f
     1.1 --- a/šablona/funkce/src/cz/frantovo/xmlWebGenerator/Funkce.java	Mon Aug 22 01:26:23 2011 +0200
     1.2 +++ b/šablona/funkce/src/cz/frantovo/xmlWebGenerator/Funkce.java	Mon Aug 22 13:57:20 2011 +0200
     1.3 @@ -39,7 +39,9 @@
     1.4  	 * @param zdroják zdrojový kód, který předáme příkazu pygmentize na standardním vstupu
     1.5  	 * @param jazyk předáme příkazu pygmentize jako parametr -l <lexer>
     1.6  	 * @return zvýrazněný text nebo null, pokud došlo k chybě.
     1.7 -	 * TODO: použít (?) místo textu instanci com.icl.saxon.om.NodeInfo http://saxon.sourceforge.net/saxon6.5.3/extensibility.html
     1.8 +	 * TODO: 
     1.9 +	 *	- použít (?) místo textu instanci com.icl.saxon.om.NodeInfo http://saxon.sourceforge.net/saxon6.5.3/extensibility.html
    1.10 +	 *  - nebo kontrolovat validitu vygenerovaného kódu (v současnosti se spoléháme na bezchybnost pygmentize)
    1.11  	 */
    1.12  	public static String zvýrazniSyntaxi(String zdroják, String jazyk) throws IOException, InterruptedException {
    1.13  		if (jazyk == null || jazyk.length() == 0) {
    1.14 @@ -75,6 +77,20 @@
    1.15  	}
    1.16  
    1.17  	/**
    1.18 +	 * Vygeneruje CSS styl pro zvýrazňování syntaxe.
    1.19 +	 * @return obsah CSS souboru nebo null, pokud generování nebylo možné
    1.20 +	 */
    1.21 +	public static String generujCssSyntaxe() throws IOException, InterruptedException {
    1.22 +		if (isPrikazDostupny(PŘÍKAZ_PYGMENTIZE)) {
    1.23 +			Runtime r = Runtime.getRuntime();
    1.24 +			Process p = r.exec(new String[]{PŘÍKAZ_PYGMENTIZE, "-S", "default", "-f", "html"});
    1.25 +			return načtiProud(p.getInputStream());
    1.26 +		} else {
    1.27 +			return null;
    1.28 +		}
    1.29 +	}
    1.30 +
    1.31 +	/**
    1.32  	 * Čte proud dat dokud to jde a výsledek pak vrátí jako text.
    1.33  	 * @param proud vstupní proud
    1.34  	 * @return obsah proudu jako text