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 <phpgeshi> jakiś kod </phpgeshi>, czyli ten, w jamim jest napisany, jednak czasme trzeba dodać słowo geshi bo w efekcie niektóre sotrny były rozwalone. W efekcie mamy ładny text.
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; }
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
- cssgeshi - CSS
- d
- delphi
- diff
- divgeshi - DIV
- dos
- eiffel
- fortran
- freebasic
- gml
- groovy
- html4strict
- ini
- inno
- java
- java5
- javascript
- lisp
- lua
- matlab
- mpasm
- mysql - MySQL
- nsis
- objc
- ocaml
- ocaml-brief
- oobas
- oracle8
- pascal
- perl
- phpgeshi - PHP
- php-brief
- python
- qbasic
- reg
- robots
- ruby
- sas
- scheme
- sdlbasic
- sma - Small albo Pawn, dostosowany pod AMX Mod X
- smarty
- sql
- tcl
- text
- tsql
- vb
- vbnet
- vhdl
- visualfoxpro
- winbatch
- xml