Changeset 30:cefd5fe75cb8
- 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:
-
Legend:
- Unmodified
- Added
- Removed
-
r28
|
r30
|
|
20 | 20 | public class Funkce { |
21 | 21 | |
| 22 | private static final String PŘÍKAZ_PYGMENTIZE = "pygmentize"; |
| 23 | private static final String PŘÍKAZ_WHICH = "which"; |
| 24 | |
22 | 25 | /** |
23 | 26 | * Zjištuje, kdy byl naposledy daný soubor změněn. |
… |
… |
|
40 | 43 | */ |
41 | 44 | public static String zvýrazniSyntaxi(String zdroják, String jazyk) throws IOException, InterruptedException { |
42 | | String příkaz = "pygmentize"; |
43 | | |
44 | 45 | if (jazyk == null || jazyk.length() == 0) { |
45 | 46 | System.err.println("Není vyplněn atribut „jazyk“ → není jasné, jak se má zvýrazňovat."); |
46 | 47 | return null; |
47 | | } else if (isPrikazDostupny(příkaz)) { |
| 48 | } else if (isPrikazDostupny(PŘÍKAZ_PYGMENTIZE)) { |
48 | 49 | 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}); |
50 | 51 | |
51 | 52 | PrintStream vstupProcesu = new PrintStream(p.getOutputStream()); |
… |
… |
|
66 | 67 | } |
67 | 68 | } 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."); |
69 | 70 | System.err.println("Můžete ho nainstalovat pomocí:"); |
70 | 71 | System.err.println("\t$ aptitude install python-pygments # (Debian/Ubuntu)"); |
… |
… |
|
103 | 104 | try { |
104 | 105 | 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}); |
106 | 107 | p.waitFor(); |
107 | 108 | return p.exitValue() == 0; |
108 | 109 | } 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()); |
109 | 111 | return false; |
110 | 112 | } |