#

GeSHi - kolorowanie kodu w Joomla 1.5.8

Środa, 24 Grudzień 2008 00:18

GeSHi to klasa służąca do wyświetlania pokolorowanej składni kodu wielu języków programistycznych. Klasa ta znalazła się również w CMS Joomla umożliwiając zamieszczanie pokolorowanego kodu źródłowego wewnątrz artykułu. Wśród domyślnie dostępnych języków po zainstalowaniu Joomla 1.5.8 znajdują się:

  • CSS
  • html4strict
  • JavaScript
  • PHP
  • PHP Brief
  • SQL
  • XML

Dodatkowo można zainstalować obsługę innych języków min. Action Script, C, C++, Delphi, Java, Pascal. Pełna lista wspieranych języków dostępna jest pod adresem: http://qbnz.com/highlighter/

Z uwagi na bezpieczeństwo z treści artykułu przy jego zapisie usuwane są niektóre znaczniki HTML czy też kod PHP. Z tego powodu pierwszą czynnością jaka należy wykonać by cieszyć się funkcjonalnością GeSHi w CMS Joomla jest wyłączenie usuwania kodu dla konta Super Administrator. Dokonuje się tego w Artykuły->Wszystkie artykuły wybierając ikonę Preferencje. Następnie zaznaczamy wszystkich użytkowników, oprócz użytkownika Super Administrator i wybieramy "Czarna list"

Kolejna czynnością jest włączenie dodatku GeSHi. Przechodzimy do Rozszerzenia -> Dodatki i odnajdujemy pozycję: "Content - Code Highlighter (GeSHi)" i ją włączamy. Ponieważ na działanie poszczególnych dodatków może mieć wpływ ich kolejność, ustawiamy dodatek "Content - Code Hightlighter (GeSHi)" powyżej "Content - Email Cloaking".

Umieszczenie kodu źródłowego możliwe jest jedynie w trybie wprowadzania kodu HTML używanego edytora WYSIWYG. Po przełączeniu się do tego trybu kod zamieszczamy pomiędzy znacznikami <pre> </pre>, w którym xml:lang="jezyk" przyjmuje wartość użytego języka np.:

 
<pre xml:lang="html4strict">kod</pre>
<pre xml:lang="php">kod</pre>
<pre xml:lang="sql">kod</pre>
 

Poniżej przykład przedstawia sposób zamieszczenia kodu HTML wewnątrz artykułu. W podobny sposób można zamieścić kod php lub innego ze wspieranych przez klasę GeSHi języka.

 
<pre xml:lang="html4strict">
<html>
<head>
</head>
<body>
</body>
</html>
</pre>
 
 
<pre xml:lang="php">
<?php
echo 'GeSHi - kolorowanie składni';
?>
</pre>
 

Komentarze

avatar td
0
 
 

Piątek 13 Luty 2009, 13:42

Wiele opisów Geshi nie uzywa prefiksu xml przed atrybutem lang i tego właśnie mi brakowało. Po dodaniu prefiksu wszystko pięknie działa.
Odpowiedź
imię/nick *
Email (weryfikacja i odpowiedzi)
URL
ChronoComments by Joomla Professional Solutions
Dodaj komentarz
Anuluj
imię/nick *
Email (weryfikacja i odpowiedzi)
URL
ChronoComments by Joomla Professional Solutions
Dodaj komentarz

Zmieniony: Poniedziałek, 05 Styczeń 2009 12:46

 

Kategorie

Login