kolorowanie składni - geshi

0

‌ Na początek kilka faktów:
‌ · 4programmers do kolorowania składni używa biblioteki GeSHi
‌ · w wersji produkcyjnej jest to zmodyfikowana wersja GeSHi 1.6
‌ · w wersji rozwojowej jest to wersja 1.8.2
‌ · aktualna wersja GeSHi to 1.8.6 i obsługuje 157 języków – wersja 1.6 ma ich 36.

Problem w tym, że nawet najnowsza wersja geshi nadal ma sporo usterek i braków: brakujące nowe słowa kluczowe, a w niektórych językach pewne niuanse których nie da się obecnie obsłużyć.

‌ Dysponuję wersją GeSHi 1.8.6 w której poprawiłem kilka języków (głównie asembler, także C# i Delphi) oraz dodałem dwa (Oxygene i C++/CLI). Zamierzam też dokonać głębszych zmian w bibliotece (w tej chwili nie da się w pełni prawidłowo koloryzować C#, C++/CLI ani Delphi). Na razie nie planuję wysyłania tych zmian do autorów GeSHi. Mogę jednak podjąć się zintegrowania moich zmian ze zmianami już wprowadzonymi w 4prog (np. niestandardowa kolorystyka).
‌ Myślę że warto, by w serwisie dotyczącym programowania tak ważna rzecz – jaką jest kolorowanie składni – była lepiej dopracowana niż jest to do tej pory…

0

Wiesz, propozycje zmian w GeSHi były dawno, o ile pamiętam to postanowiono nic z tym nie robić do czasu Coyote Forever (kiedyś zwanego 0.9.4, obecnie 1.0.0)... A to narzekano na spieprzone kolorowanie C#, a to na kiepski wygląd Pythona itd. itd. i tak się to ciągnie latami.

0

Hmm, aktualna wersja to 1.0.8.6 jezeil dobrze widze?
A na SVN jest 1.0.8.2: http://trac.4programmers.net/trac/coyote/browser/trunk/4programmers/lib/geshi/geshi.php

Czy jest jakas inna biblioteka Geshi? ;)

Ja nawet myslalem zeby zastapic Geshi ... skryptem JavaScript, tak jak tutaj: http://coyote.boduch.net/demo/Pastebin/10 Co Wy o tym myslicie?

Tak czy inaczej Azarien, kazda pomoc jest mile widziana :) Zrodla juz masz. Samo Geshi znajduje sie w katalogu /lib/geshi, inicjalizacja biblioteki oraz "kolorowanie skladnii" obdywa sie w pliku /lib/parser/highlight.class.php.

Jakies zmiany mozesz slac do mnie na maila, a jak bedzie potrzeba, to po prostu utworzymy Ci konto SVN :)

A oto probka aktualnego kolorowania geshi (kod PHP): http://coyote.boduch.net/demo/Geshi Sa to chyba domyslne ustawienia, bo obecnie na 4programmers.net jest m.in. ustawione tlo:

// Line numbers - use with enable_line_numbers()
/** Use no line numbers when building the result */
define('GESHI_NO_LINE_NUMBERS', 0);
/** Use normal line numbers when building the result */
define('GESHI_NORMAL_LINE_NUMBERS', 1);
/** Use fancy line numbers when building the result */
define('GESHI_FANCY_LINE_NUMBERS', 2);
0
Adam Boduch napisał(a)

Hmm, aktualna wersja to 1.0.8.6 jezeil dobrze widze?
A na SVN jest 1.0.8.2
Tak, zjadło mi zero ;-)

Ja nawet myslalem zeby zastapic Geshi ... skryptem JavaScript, tak jak tutaj: http://coyote.boduch.net/demo/Pastebin/10 Co Wy o tym myslicie?
Zaczynanie czegoś od początku zawsze wiąże się z długim okresem doganiania tego co już było...

Jakies zmiany mozesz slac do mnie na maila, a jak bedzie potrzeba, to po prostu utworzymy Ci konto SVN :)
Dobrze więc, przyślę coś gdy ukończę zaplanowane już zmiany i poprawki.

0

Jestem za utworzeniem Azarienowi konta. Razem studiowaliśmy przez 6 lat, sprawdzony chłop :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1