GeSHi
Opis
GeSHi to generator podświetlenia składni - czyli jak masz jakiś kod, to, umieszczając go w odpowiednich dla danego języka w jakim zostął napsiany tagach, zostanie podświetlony - koloryzowany.
Przykład
Pewnie dla niektórych opis to czarna magia, więc dla nich jakże prosty przykład.
Mamy plik napisany w PHP, normalnie bysmy go wstawili w znacznik >pre< jakis kod >/pre< i byśmy uzyskali żródło na szarym tle.
function geshi_list_languages ( $path = 'geshi/' ) { $lang_list = array(); if ($handle = opendir($path)) { while (false !== ($file = readdir($handle))) { // Loop over the directory. if(is_dir($file)) continue; // Drop anything that is a directory, cause we want files only if( ".php" == substr($file, strrpos($file, "."),4)) // process only .php files { $lang_list[]= substr($file, 0, strrpos($file, ".")); } } closedir($handle); } sort($lang_list); //sort the output, i like ordered lists in Wiki Version page :) return $lang_list; }
Zamiast tego dajemy zanczniki >php< jakiś kod >/php<, czyli ten, w jamim jest napisany. W efekcie mamy ładny text.
<php>function geshi_list_languages ( $path = 'geshi/' ) { $lang_list = array(); if ($handle = opendir($path)) { while (false !== ($file = readdir($handle))) { // Loop over the directory. if(is_dir($file)) continue;
// Drop anything that is a directory, cause we want files only
if( ".php" == substr($file, strrpos($file, "."),4))
// process only .php files
{ $lang_list[]= substr($file, 0, strrpos($file, ".")); } }
closedir($handle); } sort($lang_list);
//sort the output, i like ordered lists in Wiki Version page :)
return $lang_list; } </php>
Języki
Podświetlane języki, nalezy używać wyrazu jako tagu, np dla c i c++ mamy c, czyli będzie to >c< kod w C >/c<. Pamiętajcie o zamykaniu tagów.
- actionscript
- ada
- apache
- applescript
- asm
- asp
- autoit
- bash
- blitzbasic
- c
- c_mac
- caddcl
- cadlisp
- cfdg
- cfm
- cpp
- csharp
- css
- d
- delphi
- diff
- div
- dos
- eiffel
- fortran
- freebasic
- gml
- groovy
- html4strict
- ini
- inno
- java
- java5
- javascript
- lisp
- lua
- matlab
- mpasm
- mysql
- nsis
- objc
- ocaml
- ocaml-brief
- oobas
- oracle8
- pascal
- perl
- php
- php-brief
- python
- qbasic
- reg
- robots
- ruby
- sas
- scheme
- sdlbasic
- smarty
- sql
- tcl
- text
- tsql
- vb
- vbnet
- vhdl
- visualfoxpro
- winbatch
- xml