Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]GeShi, wiele języków na raz
Forum PHP.pl > Forum > Przedszkole
Kloc
Postanowiłem użyć bibloteki GeShi do kolorowania kodu.
Proces instalacji jest bardzo prosty i przejrzysty. Jak mogę dodać kolejny język, aby skrypt pracował na php i css. Teraz mam samo php.

  1. <?Php
  2.  
  3. if (!class_exists('GeSHi', FALSE))
  4. {
  5. // require_once DOCROOT.'../geshi/geshi.php';
  6. include('../geshi/geshi.php');
  7. }
  8. /**
  9.  * Inicjacja skryptu. Zmienna $data jest ciąg znaków, który
  10.  * chcemy ostylować, drugi parametr określa język.
  11.  */
  12.  
  13. $data = file_get_contents('kod.txt'); //Mój kod php
  14.  
  15. $geshi = new GeSHi($data,'php');
  16.  
  17. // otacza ciąg znacznikiem pre
  18. $geshi->set_header_type(GESHI_HEADER_PRE_VALID);
  19.  
  20. // numeruje linie
  21. $geshi->enable_line_numbers(GESHI_FANCY_LINE_NUMBERS, 5);
  22.  
  23. // wykonanie skryptu
  24. echo $geshi->parse_code();
  25.  
  26. ?>
SmokAnalog
Masz na myśli kolorowanie kilku języków z jednego pliku czy w osobnych plikach?
Kloc
Kolorowanie wielu języków z jednego pliku np.

Kod
<html>
    Tutaj trochę html
    
    <style>
        Tutaj trochę css
    </style>

    <?Php
        Tutaj trochę php
    ?>
</html>


by_ikar
Z tego co widzę po kodzie: https://github.com/GeSHi/geshi-1.0/blob/mas.../geshi.php#L676 jest możliwość ustawienia tylko jednego języka, lecz zawsze można napisać swój parser pod geshi, tyle że to raczej mija się z celem.. Tak jak wcześniej ci pisałem, lepiej żebyś się zainteresował czymś w javascipt, bo jest masa łatwych w użyciu bibliotek które mają już dodane obsługę wielu języków, zarówno osobno jak i w jednym snipecie. Ot chociażby taki prism: http://prismjs.com/
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.