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