Changeset 30:cefd5fe75cb8

Show
Ignore:
Timestamp:
08/22/11 01:26:23 (13 years ago)
Author:
František Kučera <franta-hg@…>
Branch:
default
Message:

#12 konstanty příkazů + chybová hláška u which.

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • šablona/funkce/src/cz/frantovo/xmlWebGenerator/Funkce.java

    r28 r30  
    2020public class Funkce { 
    2121 
     22        private static final String PŘÍKAZ_PYGMENTIZE = "pygmentize"; 
     23        private static final String PŘÍKAZ_WHICH = "which"; 
     24 
    2225        /** 
    2326         * Zjištuje, kdy byl naposledy daný soubor změněn. 
     
    4043         */ 
    4144        public static String zvýrazniSyntaxi(String zdroják, String jazyk) throws IOException, InterruptedException { 
    42                 String příkaz = "pygmentize"; 
    43  
    4445                if (jazyk == null || jazyk.length() == 0) { 
    4546                        System.err.println("Není vyplněn atribut „jazyk“ → není jasné, jak se má zvýrazňovat."); 
    4647                        return null; 
    47                 } else if (isPrikazDostupny(příkaz)) { 
     48                } else if (isPrikazDostupny(PŘÍKAZ_PYGMENTIZE)) { 
    4849                        Runtime r = Runtime.getRuntime(); 
    49                         Process p = r.exec(new String[]{příkaz, "-f", "html", "-l", jazyk}); 
     50                        Process p = r.exec(new String[]{PŘÍKAZ_PYGMENTIZE, "-f", "html", "-l", jazyk}); 
    5051 
    5152                        PrintStream vstupProcesu = new PrintStream(p.getOutputStream()); 
     
    6667                        } 
    6768                } else { 
    68                         System.err.println("Příkaz " + příkaz + " není na vašem systému dostupný → zvýrazňování syntaxe nebude fungovat."); 
     69                        System.err.println("Příkaz " + PŘÍKAZ_PYGMENTIZE + " není na vašem systému dostupný → zvýrazňování syntaxe nebude fungovat."); 
    6970                        System.err.println("Můžete ho nainstalovat pomocí:"); 
    7071                        System.err.println("\t$ aptitude install python-pygments   # (Debian/Ubuntu)"); 
     
    103104                try { 
    104105                        Runtime r = Runtime.getRuntime(); 
    105                         Process p = r.exec(new String[]{"which", příkaz}); 
     106                        Process p = r.exec(new String[]{PŘÍKAZ_WHICH, příkaz}); 
    106107                        p.waitFor(); 
    107108                        return p.exitValue() == 0; 
    108109                } catch (Exception e) { 
     110                        System.err.printf("Při zjišťování dostupnosti příkazu „%s“ došlo k chybě: %s", příkaz, e.getLocalizedMessage()); 
    109111                        return false; 
    110112                }