copied from old source

This commit is contained in:
Claude 2012-04-13 09:20:49 +02:00
parent f97a53311b
commit c44c85caea
199 changed files with 39514 additions and 334 deletions

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
.DS_Store

View File

@ -0,0 +1,93 @@
<?php if (!defined('BASEPATH')) exit('No direct script access allowed');
//
// Stikked Config File
// stikked
//
// Created by Ben McRedmond on 2008-01-25.
// Copyright 2008 HiPPstr. All rights reserved.
//
/**
* Site Name
*
* The name of your site
*
*/
$config['site_name'] = "Stikked";
/**
* Key for Cron
*
* The password required to run the cron job
*
**/
$config['cron_key'] = "";
/**
* Pastes Per Page
*
* Number of pastes per page, on the recent pastes listings.
*
**/
$config['per_page'] = 10;
/**
* Name for anonymous poster
*
* What name is to be set for anonymous posters
* DO NOT SET BLANK
* Set to random for a random paste to be generated
* NOTE: if changed only pastes from then on will be updated.
*
**/
$config['unknown_poster'] = "random";
/**
* Name for untitled pastes
*
* What name is to be set for untitled pastes.
* DO NOT SET BLANK
* NOTE: if changed only pastes from then on will be updated.
**/
$config['unknown_title'] = "Untitled";
/**
*
*
* Words used for when unknown_poster is set to random
*
*
**/
$config['nouns'] = array('Hornbill', 'Elephant', 'Bison', 'Lion', 'Camel', 'Sheep',
'Monkey', 'Prairie Dog', 'Plover', 'Tapir', 'Capybara', 'Cheetah', 'Flamingo', 'Peccary', 'Eider', 'Porcupine', 'Pelican', 'Dove', 'Crane', 'Tortoise', 'Agouti',
'Tamarin', 'Pheasant', 'Owl', 'Gibbon', 'Goose', 'Baboon', 'Hamerkop', 'Zebra',
'Macaw', 'Gibbon', 'Madrill', 'Wolf', 'Stork', 'Armadillo', 'Ostrich', 'Marmoset',
'Lizard', 'Panda', 'Giraffe', 'Cassowary', 'Kangaroo', 'Gorilla', 'Pheasant',
'Finch', 'Duck', 'Matamata', 'Teal', 'Macaque', 'Goat', 'Lechwe', 'Ibis', 'Parrot',
'Parakeet', 'Bongo', 'Pudu', 'Echidna', 'Lemur', 'Bat', 'Curlew', 'Terrapin',
'Peafowl', 'Duck', 'Owl', 'Parakeet', 'Meerkat', 'Tern', 'Wigeon', 'Pintail',
'Meerkat', 'Motmot', 'Motmot', 'Shama', 'Dormouse', 'Horse', 'Rhinoceros', 'Sloth',
'Mousedeer', 'Treeshrew', 'Bushbaby', 'Guinea Pig', 'Agouti', 'Water Vole', 'Hog',
'Pig', 'Anoa', 'Octupus', 'Butterfly', 'Cat', 'Kitten', 'Coyote', 'Crocodile',
'Cockroach', 'Crow', 'Bird', 'Dolphin', 'Earthworm', 'Frog', 'Hamster', 'Hedgehog',
'Hog', 'Human', 'Hummingbird', 'Iguana', 'Leech', 'Leopard', ' Marten',
'Mockingbird', 'Mosquito', 'Moth', 'Partdridge', 'Bee', 'Penguin');
$config['adjectives'] = array('Ample', 'Mature', 'Bulky', 'Burly', 'Capacious',
'Colossal', 'Commodious', 'Thundering', 'Mammoth', 'Mungo', 'Voluminous',
'Walloping', 'Tiny', 'Baby', 'Bitty', 'Diminutive', 'Little', 'Paltry', 'Scanty',
'Trivial', 'Scribby', 'Blush', 'Tinct', 'Colorant', 'Aqua', 'Beige', 'Bistre',
'Buff', 'Bistre', 'Chartreuse', 'Chocolate', 'Cobalt', 'Coral', 'Cream', 'Crimson',
'Denim', 'Emerald', 'Gray', 'Gamboge', 'Ivory', 'Mustard', 'Silly', 'Perl',
'Whipped', 'Violet', 'Harmless', 'Gentle', 'Innocent', 'Reliable', 'Unreliable',
'Soft', 'Toxic', 'Anorexic', 'Beefy', 'Sexy', 'Morose', 'Rude', 'Ungracious',
'Abrupt', 'Gracious', 'Queen', 'Cute', 'Edgy', 'Insensitive', 'Round', 'Sharp',
'Gruff', 'Subtle', 'Crippled', 'Eratic', 'Social', 'Jittery', 'Sole', 'Unique',
'Botched', 'Tacky', 'Sludgy', 'Stained', 'Wet', 'Soiled', 'Big', 'Small', 'Sloppy',
'Smelly', 'Funky', 'Putrid', 'Melodic', 'Corrupt', 'Lousy', 'Fiery', 'Red',
'Sweet', 'Hot', 'Scorching', 'Sweltering', 'Torrid', 'Obese', 'Speedy', 'Flying',
'Idiotic', 'Chunky');
?>

15
htdocs/application/controllers/index.html Normal file → Executable file
View File

@ -1,10 +1,15 @@
<html>
<head>
<title>403 Forbidden</title>
</head>
<body>
<p>Directory access is forbidden.</p>
<head>
<title>403 Forbidden</title>
</head>
<body bgcolor='#ffffff'>
<p>Directory access is forbidden.<p>
</body>
</html>

View File

@ -0,0 +1,69 @@
<?php
/**
* iPhone Controller for Stikked
*
* @author Ben McRedmond <hello@benmcredmond.com>
* @copyright Ben McRedmond
* @package Stikked
*
*/
/**
* iPhone controller class for stikked.
*
* @author Ben McRedmond <hello@benmcredmond.com>
* @version 0.5.1
* @access public
* @copyright Ben McRedmond
* @package Stikked
* @subpackage Controllers
*
*/
class Iphone extends CI_Controller
{
/**
* Class Constructor
*
* @return void
*/
function __construct()
{
parent::__construct();
}
/**
* Displays recent pastes in an iPhone optimized version.
*
* @return void
* @access public
*/
function index()
{
$this->load->model('pastes');
$data = $this->pastes->getLists('iphone/');
$this->load->view('iphone/recent', $data);
}
/**
* Displays an individual paste in an iPhone optimized version.
*
* @return void
* @access public
*/
function view()
{
$this->load->model('pastes');
$data = $this->pastes->getPaste(3);
$this->load->view('iphone/view', $data);
}
}
?>

View File

@ -0,0 +1,414 @@
<?php
/**
* Main Controller for Stikked
*
* @author Ben McRedmond <hello@benmcredmond.com>
* @copyright Ben McRedmond
* @package Stikked
*
*/
/**
* Main controller class for stikked.
*
* @author Ben McRedmond <hello@benmcredmond.com>
* @version 0.5.1
* @access public
* @copyright Ben McRedmond
* @package Stikked
* @subpackage Controllers
*
*/
class Main extends CI_Controller
{
/**
* Class Constructor, loads languages model which is inherited in the pastes model.
*
* @return void
*/
function __construct()
{
parent::__construct();
$this->load->model('languages');
}
/**
* Sets all the fields in a paste form, depending on whether the form is being repopulated or items need to be loaded from session data.
*
* @param string $lang Paste language
* @param string $title Paste title
* @param string $paste Paste body
* @param bool|string $reply Is this paste a reply? Bool if not, otherwise it's the id of the paste.
* @return Array
* @access private
* @see index()
* @see view()
*/
function _form_prep($lang='php', $title = '', $paste='', $reply=false)
{
$this->load->model('languages');
$this->load->helper("form");
$data['languages'] = $this->languages->get_languages();
$data['scripts'] = array('jquery.js', 'jquery.timers.js');
if(!$this->input->post('submit'))
{
if($this->db_session->flashdata('settings_changed'))
{
$data['status_message'] = 'Settings successfully changed';
}
$data['name_set'] = $this->db_session->userdata('name');
$data['expire_set'] = $this->db_session->userdata('expire');
$data['acopy_set'] = $this->db_session->userdata('acopy');
$data['private_set'] = $this->db_session->userdata('private');
$data['snipurl_set'] = $this->db_session->userdata('snipurl');
$data['remember_set'] = $this->db_session->userdata('remember');
$data['paste_set'] = $paste;
$data['title_set'] = $title;
$data['reply'] = $reply;
if($lang != 'php' or ($lang == 'php' and $this->db_session->userdata('lang') == false))
{
$data['lang_set'] = $lang;
}
elseif($this->db_session->userdata('lang'))
{
$data['lang_set'] = $this->db_session->userdata('lang');
}
}
else
{
$data['name_set'] = $this->input->post('name');
$data['expire_set'] = $this->input->post('expire');
$data['acopy_set'] = $this->input->post('acopy');
$data['private_set'] = $this->input->post('private');
$data['snipurl_set'] = $this->input->post('snipurl');
$data['remember_set'] = $this->input->post('remember');
$data['paste_set'] = $this->input->post('paste');
$data['title_set'] = $this->input->post('title');
$data['reply'] = $this->input->post('reply');
$data['lang_set'] = $this->input->post('lang');
}
return $data;
}
/**
* Controller method to load front page.
*
* @return void
* @access public
* @see _form_prep()
* @see _valid_lang()
*/
function index()
{
if(!isset($_POST['submit']))
{
$data = $this->_form_prep();
$this->load->view('home', $data);
}
else
{
$this->load->model('pastes');
$this->load->library('validation');
$rules['code'] = 'required';
$rules['lang'] = 'min_length[1]|required|callback__valid_lang';
$fields['code'] = 'Main Paste';
$fields['lang'] = 'Language';
$this->validation->set_rules($rules);
$this->validation->set_fields($fields);
$this->validation->set_message('min_length', 'The %s field can not be empty');
$this->validation->set_error_delimiters('<div class="message error"><div class="container">', '</div></div>');
if ($this->validation->run() == FALSE)
{
$data = $this->_form_prep();
$this->load->view('home', $data);
}
else
{
if(isset($_POST['acopy']) and $_POST['acopy'] > 0)
{
$this->db_session->set_flashdata('acopy', 'true');
}
if($this->input->post('remember') and $this->input->post('reply') == false )
{
$user_data = array(
'name' => $this->input->post('name'),
'lang' => $this->input->post('lang'),
'expire' => $this->input->post('expire'),
'acopy' => $this->input->post('acopy'),
'snipurl' => $this->input->post('snipurl'),
'private' => $this->input->post('private'),
'remember' => $this->input->post('remember')
);
$this->db_session->set_userdata($user_data);
}
if($this->input->post('remember') == false and $this->db_session->userdata("remember") == 1)
{
$user_data = array(
'name' => '',
'lang' => 'php',
'expire' => '0',
'acopy' => '0',
'snipurl' => '0',
'private' => '0',
'remember' => '0'
);
$this->db_session->unset_userdata($user_data);
}
redirect($this->pastes->createPaste());
}
}
}
/**
* Controller method to load raw pastes.
*
* @return void
* @access public
*
*/
function raw()
{
$this->load->model('pastes');
$check = $this->pastes->checkPaste(3);
if($check)
{
$data = $this->pastes->getPaste(3);
$this->load->view('view/raw', $data);
}
else
{
show_404();
}
}
/**
* Controller method to download pastes.
*
* @return void
* @access public
*
*/
function download()
{
$this->load->model('pastes');
$check = $this->pastes->checkPaste(3);
if($check)
{
$data = $this->pastes->getPaste(3);
$this->load->view('view/download', $data);
}
else
{
show_404();
}
}
/**
* Controller method to show recent pastes.
*
* @return void
* @access public
*
*/
function lists()
{
$this->load->model('pastes');
$data = $this->pastes->getLists();
$this->load->view('list', $data);
}
/**
* Controller method to show a paste.
*
* @return void
* @access public
*
*/
function view()
{
$this->load->model('pastes');
$check = $this->pastes->checkPaste(2);
if($check)
{
if($this->db_session->userdata('view_raw'))
{
$this->db_session->keep_flashdata('acopy');
redirect('view/raw/'.$this->uri->segment(2));
}
$data = $this->pastes->getPaste(2, true);
$data['reply_form'] = $this->_form_prep($data['lang_code'], "RE: ".$data['title'], $data['raw'], $data['pid']);
if($this->db_session->userdata('full_width'))
{
$data['full_width'] = true;
}
else
{
$data['full_width'] = false;
}
$this->load->view('view/view', $data);
}
else
{
show_404();
}
}
/**
* Loads data for view_options from session data or not if not set.
*
* @return array
* @access private
*
*/
function _view_options_prep()
{
$this->load->helper('form');
if($this->db_session->userdata('remember_view') > 0)
{
$data['full_width_set'] = $this->db_session->userdata('full_width');
$data['view_raw_set'] = $this->db_session->userdata('view_raw');
}
else
{
$data['full_width_set'] = false;
$data['view_raw_set'] = false;
}
return $data;
}
/**
* Displays the page where a user can change their paste viewing settings which are saved to session data.
*
* @return void
* @access public
*
*/
function view_options()
{
if(!isset($_POST['submit']))
{
$data = $this->_view_options_prep();
$this->load->view('view/view_options', $data);
}
else
{
$this->load->library('validation');
$rules['full_width'] = 'max_length[1]';
$rules['view_raw'] = 'max_length[1]';
$this->validation->set_rules($rules);
if($this->validation->run() == false)
{
exit('Ugh, stupid skiddie.');
}
else
{
$user_data = array(
'full_width' => $this->input->post('full_width'),
'view_raw' => $this->input->post('view_raw'),
'remember_view' => true
);
$this->db_session->set_userdata($user_data);
$this->db_session->set_flashdata('settings_changed', 'true');
redirect();
}
}
}
/**
* Controller method to run the cron. Requires a valid cron key supplied as an argument in the url.
*
* @return void;
* @access public
*
*/
function cron()
{
$this->load->model('pastes');
$key = $this->uri->segment(2);
if($key != $this->config->item('cron_key'))
{
show_404();
}
else
{
$this->pastes->cron();
return 0;
}
}
/**
* Controller method to load about view.
*
* @return void
* @access public
*
*/
function about()
{
$this->load->view('about');
}
/**
* Validation callback method to validate whether the paste language is valid.
*
* @return bool
* @access private
* @see index()
*
*/
function _valid_lang($lang)
{
$this->load->model('languages');
$this->validation->set_message('_valid_lang', 'Please select your language');
return $this->languages->valid_language($lang);
}
}
?>

View File

@ -1,27 +0,0 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Welcome extends CI_Controller {
/**
* Index Page for this controller.
*
* Maps to the following URL
* http://example.com/index.php/welcome
* - or -
* http://example.com/index.php/welcome/index
* - or -
* Since this controller is set as the default controller in
* config/routes.php, it's displayed at http://example.com/
*
* So any other public methods not prefixed with an underscore will
* map to /index.php/welcome/<method_name>
* @see http://codeigniter.com/user_guide/general/urls.html
*/
public function index()
{
$this->load->view('welcome_message');
}
}
/* End of file welcome.php */
/* Location: ./application/controllers/welcome.php */

99
htdocs/application/errors/error_404.php Normal file → Executable file
View File

@ -1,62 +1,51 @@
<!DOCTYPE html>
<html lang="en">
<?php header("HTTP/1.1 404 Not Found");
include("system/application/config/config.php");
include("system/application/config/stikked.php");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>404 Page Not Found</title>
<style type="text/css">
::selection{ background-color: #E13300; color: white; }
::moz-selection{ background-color: #E13300; color: white; }
::webkit-selection{ background-color: #E13300; color: white; }
body {
background-color: #fff;
margin: 40px;
font: 13px/20px normal Helvetica, Arial, sans-serif;
color: #4F5155;
}
a {
color: #003399;
background-color: transparent;
font-weight: normal;
}
h1 {
color: #444;
background-color: transparent;
border-bottom: 1px solid #D0D0D0;
font-size: 19px;
font-weight: normal;
margin: 0 0 14px 0;
padding: 14px 15px 10px 15px;
}
code {
font-family: Consolas, Monaco, Courier New, Courier, monospace;
font-size: 12px;
background-color: #f9f9f9;
border: 1px solid #D0D0D0;
color: #002166;
display: block;
margin: 14px 0 14px 0;
padding: 12px 10px 12px 10px;
}
#container {
margin: 10px;
border: 1px solid #D0D0D0;
-webkit-box-shadow: 0 0 8px #D0D0D0;
}
p {
margin: 12px 15px 12px 15px;
}
</style>
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
<title>Stikked</title>
<link rel="stylesheet" href="<?php echo $config['base_url']?>static/styles/reset.css" type="text/css" />
<link rel="stylesheet" href="<?php echo $config['base_url']?>static/styles/fonts.css" type="text/css" />
<link rel="stylesheet" href="<?php echo $config['base_url']?>static/styles/main.css" type="text/css" media="screen" title="main" charset="utf-8" />
</head>
<body>
<div id="container">
<h1><?php echo $heading; ?></h1>
<?php echo $message; ?>
<div class="container">
<div class="header">
<h1><a href="<?=$config['base_url']?>" class="title"><?php echo $config['site_name']?></a></h1>
<div class="tabs">
<ul>
<li><a href="<?=$config['base_url']?>index.php">Paste</a></li>
<li><a href="<?=$config['base_url']?>index.php/lists">Recent</a></li>
<li><a href="<?=$config['base_url']?>index.php/about">About</a></li>
</ul>
</div>
</div>
<div class="page">
<div class="content">
<div class="container">
<h1><?=$heading?></h1>
<div class="about">
<?=$message?>
<p>Woops! We can't find that page, <a href="<?=$config['base_url']?>">Go Home</a></p>
</div>
</div>
</div>
</div>
<div class="footer">
<?php include("system/application/views/defaults/footer_message.php"); ?>
<?php include("system/application/views/defaults/stats.php"); ?>
</div>
</div>
</div>
</body>
</html>

99
htdocs/application/errors/error_db.php Normal file → Executable file
View File

@ -1,62 +1,51 @@
<!DOCTYPE html>
<html lang="en">
<?php header("HTTP/1.1 404 Not Found");
include("system/application/config/config.php");
include("system/application/config/stikked.php");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Database Error</title>
<style type="text/css">
::selection{ background-color: #E13300; color: white; }
::moz-selection{ background-color: #E13300; color: white; }
::webkit-selection{ background-color: #E13300; color: white; }
body {
background-color: #fff;
margin: 40px;
font: 13px/20px normal Helvetica, Arial, sans-serif;
color: #4F5155;
}
a {
color: #003399;
background-color: transparent;
font-weight: normal;
}
h1 {
color: #444;
background-color: transparent;
border-bottom: 1px solid #D0D0D0;
font-size: 19px;
font-weight: normal;
margin: 0 0 14px 0;
padding: 14px 15px 10px 15px;
}
code {
font-family: Consolas, Monaco, Courier New, Courier, monospace;
font-size: 12px;
background-color: #f9f9f9;
border: 1px solid #D0D0D0;
color: #002166;
display: block;
margin: 14px 0 14px 0;
padding: 12px 10px 12px 10px;
}
#container {
margin: 10px;
border: 1px solid #D0D0D0;
-webkit-box-shadow: 0 0 8px #D0D0D0;
}
p {
margin: 12px 15px 12px 15px;
}
</style>
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
<title>Stikked</title>
<link rel="stylesheet" href="<?php echo $config['base_url']?>static/styles/reset.css" type="text/css" />
<link rel="stylesheet" href="<?php echo $config['base_url']?>static/styles/fonts.css" type="text/css" />
<link rel="stylesheet" href="<?php echo $config['base_url']?>static/styles/main.css" type="text/css" media="screen" title="main" charset="utf-8" />
</head>
<body>
<div id="container">
<h1><?php echo $heading; ?></h1>
<?php echo $message; ?>
<div class="container">
<div class="header">
<h1><a href="<?=$config['base_url']?>" class="title"><?php echo $config['site_name']?></a></h1>
<div class="tabs">
<ul>
<li><a href="<?=$config['base_url']?>index.php">Paste</a></li>
<li><a href="<?=$config['base_url']?>index.php/lists">Recent</a></li>
<li><a href="<?=$config['base_url']?>index.php/about">About</a></li>
</ul>
</div>
</div>
<div class="page">
<div class="content">
<div class="container">
<h1><?=$heading?></h1>
<div class="about">
<?=$message?>
<p><a href="<?=$config['base_url']?>">Go Home</a></p>
</div>
</div>
</div>
</div>
<div class="footer">
<?php include("system/application/views/defaults/footer_message.php"); ?>
<?php include("system/application/views/defaults/stats.php"); ?>
</div>
</div>
</div>
</body>
</html>

98
htdocs/application/errors/error_general.php Normal file → Executable file
View File

@ -1,62 +1,50 @@
<!DOCTYPE html>
<html lang="en">
<?php header("HTTP/1.1 404 Not Found");
include("system/application/config/config.php");
include("system/application/config/stikked.php");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Error</title>
<style type="text/css">
::selection{ background-color: #E13300; color: white; }
::moz-selection{ background-color: #E13300; color: white; }
::webkit-selection{ background-color: #E13300; color: white; }
body {
background-color: #fff;
margin: 40px;
font: 13px/20px normal Helvetica, Arial, sans-serif;
color: #4F5155;
}
a {
color: #003399;
background-color: transparent;
font-weight: normal;
}
h1 {
color: #444;
background-color: transparent;
border-bottom: 1px solid #D0D0D0;
font-size: 19px;
font-weight: normal;
margin: 0 0 14px 0;
padding: 14px 15px 10px 15px;
}
code {
font-family: Consolas, Monaco, Courier New, Courier, monospace;
font-size: 12px;
background-color: #f9f9f9;
border: 1px solid #D0D0D0;
color: #002166;
display: block;
margin: 14px 0 14px 0;
padding: 12px 10px 12px 10px;
}
#container {
margin: 10px;
border: 1px solid #D0D0D0;
-webkit-box-shadow: 0 0 8px #D0D0D0;
}
p {
margin: 12px 15px 12px 15px;
}
</style>
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
<title>Stikked</title>
<link rel="stylesheet" href="<?php echo $config['base_url']?>static/styles/reset.css" type="text/css" />
<link rel="stylesheet" href="<?php echo $config['base_url']?>static/styles/fonts.css" type="text/css" />
<link rel="stylesheet" href="<?php echo $config['base_url']?>static/styles/main.css" type="text/css" media="screen" title="main" charset="utf-8" />
</head>
<body>
<div id="container">
<h1><?php echo $heading; ?></h1>
<?php echo $message; ?>
<div class="container">
<div class="header">
<h1><a href="<?=$config['base_url']?>" class="title"><?php echo $config['site_name']?></a></h1>
<div class="tabs">
<li><a href="<?=$config['base_url']?>index.php">Paste</a></li>
<li><a href="<?=$config['base_url']?>index.php/lists">Recent</a></li>
<li><a href="<?=$config['base_url']?>index.php/about">About</a></li>
</ul>
</div>
</div>
<div class="page">
<div class="content">
<div class="container">
<h1><?=$heading?></h1>
<div class="about">
<?=$message?>
<p><a href="<?=$config['base_url']?>">Go Home</a></p>
</div>
</div>
</div>
</div>
<div class="footer">
<?php include("system/application/views/defaults/footer_message.php"); ?>
<?php include("system/application/views/defaults/stats.php"); ?>
</div>
</div>
</div>
</body>
</html>

0
htdocs/application/errors/error_php.php Normal file → Executable file
View File

15
htdocs/application/errors/index.html Normal file → Executable file
View File

@ -1,10 +1,15 @@
<html>
<head>
<title>403 Forbidden</title>
</head>
<body>
<p>Directory access is forbidden.</p>
<head>
<title>403 Forbidden</title>
</head>
<body bgcolor='#ffffff'>
<p>Directory access is forbidden.<p>
</body>
</html>

View File

@ -0,0 +1,509 @@
<?php if (!defined('BASEPATH')) exit('No direct script access allowed');
// ------------------------------------------------------------------------
/**
* Session Class
*
* @package CodeIgniter
* @subpackage Libraries
* @category Sessions
* @author Dready
* @inpiredFrom Session class by Rick Ellis
* @inspireFrom Native_Session by Dariusz Debowczyk
* @link http://dready.jexiste.fr/dotclear/index.php?2006/09/13/19-reworked-session-handler-for-code-igniter
*/
class DB_Session {
var $now;
var $encryption = TRUE;
var $use_database = FALSE;
var $session_table = FALSE;
var $sess_length = 7200;
var $sess_cookie = 'ci_session';
var $userdata = array();
var $gc_probability = 5;
var $cookie_sent = FALSE;
var $object;
var $flash_key = 'flash'; // prefix for "flash" variables (eg. flash:new:message)
/**
* Session Constructor
*
* The constructor runs the session routines automatically
* whenever the class is instantiated.
*/
function DB_Session()
{
$this->object =& get_instance();
log_message('debug', "Session Class Initialized (db)");
$this->sess_run();
}
// --------------------------------------------------------------------
/**
* Run the session routines
*
* @access public
* @return void
*/
function sess_run()
{
// We MUST use a database !
if ($this->object->config->item('sess_use_database') === TRUE AND $this->object->config->item('sess_table_name') != '')
{
$this->use_database = TRUE;
$this->session_table = $this->object->config->item('sess_table_name');
$this->object->load->database();
} else {
log_message('error',__CLASS__.': sessions requires a database');
return FALSE;
}
/*
* Set the "now" time
*
// * It can either set to GMT or time(). The pref
* is set in the config file. If the developer
* is doing any sort of time localization they
* might want to set the session time to GMT so
* they can offset the "last_activity" and
* "last_visit" times based on each user's locale.
*
*/
if (strtolower($this->object->config->item('time_reference')) == 'gmt')
{
$now = time();
$this->now = mktime(gmdate("H", $now), gmdate("i", $now), gmdate("s", $now), gmdate("m", $now), gmdate("d", $now), gmdate("Y", $now));
if (strlen($this->now) < 10)
{
$this->now = time();
log_message('error', 'The session class could not set a proper GMT timestamp so the local time() value was used.');
}
}
else
{
$this->now = time();
}
/*
* Set the session length
*
* If the session expiration is set to zero in
* the config file we'll set the expiration
* two years from now.
*
*/
$expiration = $this->object->config->item('sess_expiration');
if (is_numeric($expiration))
{
if ($expiration > 0)
{
$this->sess_length = $this->object->config->item('sess_expiration');
}
else
{
$this->sess_length = (60*60*24*365*2);
}
}
// Set the cookie name
if ($this->object->config->item('sess_cookie_name') != FALSE)
{
$this->sess_cookie = $this->object->config->item('cookie_prefix').$this->object->config->item('sess_cookie_name');
}
/*
* Fetch the current session
*
* If a session doesn't exist we'll create
* a new one. If it does, we'll update it.
*
*/
if ( ! $this->sess_read())
{
$this->sess_create();
}
else
{
// We only update the session every five minutes
if (($this->userdata['last_activity'] + 300) < $this->now)
{
$this->sess_update();
}
}
// Delete expired sessions if necessary
$this->sess_gc();
// delete old flashdata (from last request)
$this->_flashdata_sweep();
// mark all new flashdata as old (data will be deleted before next request)
$this->_flashdata_mark();
}
// END sess_run()
// --------------------------------------------------------------------
/**
* Fetch the current session data if it exists
*
* @access public
* @return void
*/
function sess_read()
{
// Fetch the cookie
$session_id = $this->object->input->cookie($this->sess_cookie);
if ($session_id === FALSE)
{
log_message('debug', 'A session cookie was not found.');
return FALSE;
}
// Is there a corresponding session in the DB?
$this->object->db->where('session_id', $session_id);
// session should not have expired
$this->object->db->where('last_activity >', ($this->now - $this->sess_length) );
// matching IP ?
if ($this->object->config->item('sess_match_ip') == TRUE)
{
$this->object->db->where('ip_address', $this->object->input->ip_address());
}
// matching user agent ?
if ($this->object->config->item('sess_match_useragent') == TRUE)
{
$this->object->db->where('user_agent', substr($this->object->input->user_agent(), 0, 50));
}
$query = $this->object->db->get($this->session_table);
if ($query->num_rows() == 0)
{
$this->sess_destroy();
return FALSE;
}
else
{
$row = $query->row();
if (($row->last_activity + $this->sess_length) < $this->now)
{
$this->object->db->where('session_id', $session_id);
$this->object->db->delete($this->session_table);
$this->sess_destroy();
return FALSE;
} else {
$session = @unserialize($row->session_data);
if ( ! is_array($session) ) {
$session = array();
}
$session['session_id'] = $session_id;
$session['ip_address'] = $row->ip_address;
$session['user_agent'] = $row->user_agent;
$session['last_activity'] = $row->last_activity;
}
}
// Session is valid!
$this->userdata = $session;
unset($session);
return TRUE;
}
// END sess_read()
// --------------------------------------------------------------------
/**
* Write the session cookie
*
* @access public
* @param boolean true if we want to send cookie even if a cookie has already been sent
* @return void
*/
function sess_send_cookie($force = FALSE)
{
if ( !$force && $this->cookie_sent ) return;
log_message('debug','sending session cookie');
setcookie(
$this->sess_cookie,
$this->userdata['session_id'],
$this->sess_length + $this->now,
$this->object->config->item('cookie_path'),
$this->object->config->item('cookie_domain'),
0
);
$this->cookie_sent = TRUE;
}
// END sess_send_cookie()
// --------------------------------------------------------------------
/**
* Create a new session
*
* @access public
* @return void
*/
function sess_create()
{
$sessid = '';
while (strlen($sessid) < 32)
{
$sessid .= mt_rand(0, mt_getrandmax());
}
$this->userdata = array(
'session_id' => md5(uniqid($sessid, TRUE)),
'ip_address' => $this->object->input->ip_address(),
'user_agent' => substr($this->object->input->user_agent(), 0, 50),
'last_activity' => $this->now
);
$this->object->db->query($this->object->db->insert_string($this->session_table, $this->userdata));
// Write the cookie
$this->sess_send_cookie();
}
// END sess_create()
// --------------------------------------------------------------------
/**
* Update an existing session
*
* @access public
* @return void
*/
function sess_update()
{
$this->userdata['last_activity'] = $this->now;
// format query array to update database
$ud = $this->userdata;
$query_array = array( 'last_activity' => $ud['last_activity'],
'user_agent' => $ud['user_agent'],
'ip_address' => $ud['ip_address'] );
unset($ud['session_id']);
unset($ud['last_activity']);
unset($ud['user_agent']);
unset($ud['ip_address']);
$query_array['session_data'] = serialize($ud);
$this->object->db->query($this->object->db->update_string($this->session_table, $query_array, array('session_id' => $this->userdata['session_id'])));
// Write the cookie
$this->sess_send_cookie();
}
// END sess_update()
// --------------------------------------------------------------------
/**
* Destroy the current session
*
* @access public
* @return void
*/
function sess_destroy()
{
setcookie(
$this->sess_cookie,
'',
($this->now - 31500000),
$this->object->config->item('cookie_path'),
$this->object->config->item('cookie_domain'),
0
);
}
// END sess_destroy()
// --------------------------------------------------------------------
/**
* Garbage collection
*
* This deletes expired session rows from database
* if the probability percentage is met
*
* @access public
* @return void
*/
function sess_gc()
{
srand(time());
if ((rand() % 100) < $this->gc_probability)
{
$expire = $this->now - $this->sess_length;
$this->object->db->where("last_activity < {$expire}");
$this->object->db->delete($this->session_table);
log_message('debug', 'Session garbage collection performed.');
}
}
// END sess_gc()
// --------------------------------------------------------------------
/**
* Fetch a specific item form the session array
*
* @access public
* @param string
* @return string
*/
function userdata($item = '')
{
if ( ! strlen($item) ) return $this->userdata;
return ( ! isset($this->userdata[$item])) ? FALSE : $this->userdata[$item];
}
// END userdata()
// --------------------------------------------------------------------
/**
* Add or change data in the "userdata" array
*
* @access public
* @param mixed
* @param string
* @return void
*/
function set_userdata($newdata = array(), $newval = '')
{
if (is_string($newdata))
{
$newdata = array($newdata => $newval);
}
if (count($newdata) > 0)
{
foreach ($newdata as $key => $val)
{
$this->userdata[$key] = $val;
}
}
$this->sess_update();
}
// END set_userdata()
// --------------------------------------------------------------------
/**
* Delete a session variable from the "userdata" array
*
* @access array
* @return void
*/
function unset_userdata($newdata = array())
{
if (is_string($newdata))
{
$newdata = array($newdata => '');
}
if (count($newdata) > 0)
{
foreach ($newdata as $key => $val)
{
unset($this->userdata[$key]);
}
}
$this->sess_update();
}
// END unset_userdata()
/**
* Sets "flash" data which will be available only in next request (then it will
* be deleted from session). You can use it to implement "Save succeeded" messages
* after redirect.
*/
function set_flashdata($key, $value)
{
$flash_key = $this->flash_key.':new:'.$key;
$this->set_userdata($flash_key, $value);
}
/**
* Keeps existing "flash" data available to next request.
*/
function keep_flashdata($key)
{
$old_flash_key = $this->flash_key.':old:'.$key;
$value = $this->userdata($old_flash_key);
$new_flash_key = $this->flash_key.':new:'.$key;
$this->set_userdata($new_flash_key, $value);
}
/**
* Returns "flash" data for the given key.
*/
function flashdata($key)
{
$flash_key = $this->flash_key.':old:'.$key;
return $this->userdata($flash_key);
}
/**
* PRIVATE: Internal method - marks "flash" session attributes as 'old'
*/
function _flashdata_mark()
{
$userdata = $this->userdata();
foreach ($userdata as $name => $value)
{
$parts = explode(':new:', $name);
if (is_array($parts) && count($parts) == 2)
{
$new_name = $this->flash_key.':old:'.$parts[1];
$this->set_userdata($new_name, $value);
$this->unset_userdata($name);
}
}
}
/**
* PRIVATE: Internal method - removes "flash" session marked as 'old'
*/
function _flashdata_sweep()
{
$userdata = $this->userdata();
foreach ($userdata as $name => $value)
{
$parts = explode(':old:', $name);
if (is_array($parts) && count($parts) == 2 && $parts[0] == $this->flash_key)
{
$this->unset_userdata($name);
}
}
}
// --------------------------------------------------------------------
}
// END DB_Session Class
/*
CREATE TABLE IF NOT EXISTS `ci_sessions` (
session_id varchar(40) DEFAULT '0' NOT NULL,
ip_address varchar(16) DEFAULT '0' NOT NULL,
user_agent varchar(50) NOT NULL,
last_activity int(10) unsigned DEFAULT 0 NOT NULL,
session_data text default '' not null,
PRIMARY KEY (session_id)
);
*/
?>

View File

@ -0,0 +1,124 @@
<?php
/**
* Another GeSHi example script
*
* Configure your Apache server with 'AcceptPathInfo true' and something like
* 'Alias /viewmysource /var/www/geshi/contrib/aliased.php'. Don't forget
* to protect this alias as necessary.
*
* Usage - visit /viewmysource/file.name.ext to see that file with syntax
* highlighting, where "viewmysource" is the name of the alias you set up.
* You can use this without an alias too, just by visiting
* aliased.php/file.name.ext.
*
* @author Ross Golder <ross@golder.org>
* @version $Id: aliased.php 785 2006-07-19 10:09:45Z oracleshinoda $
*/
// Your config here
define("SOURCE_ROOT", "/var/www/your/source/root/");
// Assume you've put geshi in the include_path already
require_once("geshi.php");
// Get path info
$path = SOURCE_ROOT.$_SERVER['PATH_INFO'];
// Check for dickheads trying to use '../' to get to sensitive areas
$base_path_len = strlen(SOURCE_ROOT);
$real_path = realpath($path);
if(strncmp($real_path, SOURCE_ROOT, $base_path_len)) {
exit("Stop that.");
}
// Check file exists
if(!file_exists($path)) {
exit("File not found ($path).");
}
// Gather contents
$contents = file_get_contents($path);
// Prepare GeSHi instance
$geshi =& new GeSHi($contents, "PHP");
$geshi->set_header_type(GESHI_HEADER_PRE);
$geshi->enable_classes();
$geshi->enable_line_numbers(GESHI_FANCY_LINE_NUMBERS, 10);
$geshi->set_overall_style('color: #000066; border: 1px solid #d0d0d0; background-color: #f0f0f0;', true);
$geshi->set_line_style('font: normal normal 95% \'Courier New\', Courier, monospace; color: #003030;', 'font-weight: bold; color: #006060;', true);
$geshi->set_code_style('color: #000020;', 'color: #000020;');
$geshi->set_link_styles(GESHI_LINK, 'color: #000060;');
$geshi->set_link_styles(GESHI_HOVER, 'background-color: #f0f000;');
$geshi->set_header_content('Source code viewer');
$geshi->set_header_content_style('font-family: Verdana, Arial, sans-serif; color: #808080; font-size: 70%; font-weight: bold; background-color: #f0f0ff; border-bottom: 1px solid #d0d0d0; padding: 2px;');
$geshi->set_footer_content('Parsed in <TIME> seconds, using GeSHi <VERSION>');
$geshi->set_footer_content_style('font-family: Verdana, Arial, sans-serif; color: #808080; font-size: 70%; font-weight: bold; background-color: #f0f0ff; border-top: 1px solid #d0d0d0; padding: 2px;');
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Source code viewer - <?php echo $path; ?></title>
<style type="text/css">
<!--
<?php
// Output the stylesheet. Note it doesn't output the <style> tag
echo $geshi->get_stylesheet();
?>
html {
background-color: #f0f0f0;
}
body {
font-family: Verdana, Arial, sans-serif;
margin: 10px;
border: 2px solid #e0e0e0;
background-color: #fcfcfc;
padding: 5px;
}
h2 {
margin: .1em 0 .2em .5em;
border-bottom: 1px solid #b0b0b0;
color: #b0b0b0;
font-weight: normal;
font-size: 150%;
}
h3 {
margin: .1em 0 .2em .5em;
color: #b0b0b0;
font-weight: normal;
font-size: 120%;
}
#footer {
text-align: center;
font-size: 80%;
color: #a9a9a9;
}
#footer a {
color: #9999ff;
}
textarea {
border: 1px solid #b0b0b0;
font-size: 90%;
color: #333;
margin-left: 20px;
}
select, input {
margin-left: 20px;
}
p {
font-size: 90%;
margin-left: .5em;
}
-->
</style>
</head>
<body>
<?php
// The fun part :)
echo $geshi->parse_code();
?>
<hr/>
</body>
</html>

View File

@ -0,0 +1,456 @@
<?php
/*************************************************************************************
* cssgen.php
* ----------
* Author: Nigel McNie (nigel@geshi.org)
* Copyright: (c) 2004 Nigel McNie
* Release Version: 1.0.7.19
* Date Started: 2004/05/20
*
* Application to generate custom CSS files for GeSHi (based on an idea by Andreas
* Gohr)
*
*************************************************************************************
*
* This file is part of GeSHi.
*
* GeSHi is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* GeSHi is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with GeSHi; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
************************************************************************************/
set_magic_quotes_runtime(0);
//
// Functions
//
function make_header ( $title )
{
echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>GeSHi CSS Generator :: ' . $title . ' </title>
<style type="text/css" media="screen">
<!--
html {
font-family: Verdana, Arial, sans-serif;
font-size: 80%;
background-color: #d0d0d0;
}
body {
margin: 10px;
padding: 5px;
border: 1px solid #f0f0f0;
background-color: #f6f6f6;
}
h1 {
border-bottom: 2px solid #e0e0e0;
font-weight: normal;
font-size: 150%;
color: #c0c0c0;
}
input, textarea {
border: 1px solid #d0d0d0;
}
th {
text-align: right;
font-weight: normal;
}
pre {
font-size: 110%;
color: #202020;
}
#footer {
color: #b0b0b0;
text-align: center;
font-size: 90%;
margin: 0 auto;
border-top: 1px solid #e0e0e0;
}
#footer a {
color: #c0c0c0;
}
-->
</style>
<script type="text/javascript">
function select (state)
{
var cboxes = document.getElementsByTagName(\'input\');
for (var i = 0; i < cboxes.length; i++) {
if (cboxes[i].type == "checkbox") {
if (state == "true") {
cboxes[i].checked = true;
} else if (state == "false") {
cboxes[i].checked = false;
} else if (state == "invert") {
cboxes[i].checked = !cboxes[i].checked;
}
}
}
}
</script>
</head>
<body>
<h1>' . $title . '</h1>
';
}
function make_footer ()
{
echo '<div id="footer"><a href="http://qbnz.com/highlighter/">GeSHi</a> &copy; Nigel McNie, 2004, released under the GPL</div></body>
</html>';
}
function get_var ( $var_name )
{
if ( isset($_GET[$var_name]) )
{
return str_replace("\'", "'", $_GET[$var_name]);
}
elseif ( isset($_POST[$var_name]) )
{
return str_replace("\'", "'", $_POST[$var_name]);
}
return null;
}
//
// Unset everything
//
foreach ( $_REQUEST as $var )
{
unset($$var);
}
foreach ( array(
'_POST' => 'HTTP_POST_VARS',
'_GET' => 'HTTP_GET_VARS',
'_COOKIE' => 'HTTP_COOKIE_VARS',
'_SERVER' => 'HTTP_SERVER_VARS',
'_ENV' => 'HTTP_ENV_VARS',
'_FILES' => 'HTTP_POST_FILES') as $array => $other )
{
if ( !isset($$array) )
{
$$array = $$other;
}
unset($$other);
}
// Get what step we're up to
$step = get_var('step');
if ( !$step || $step == 1 )
{
$errors = 0;
make_header('Step 1');
echo "Welcome to the GeSHi CSS generator.<br /><pre>Searching for GeSHi... ";
// Find GeSHi
$geshi_path = get_var('geshi-path');
$geshi_lang_path = get_var('geshi-lang-path');
if ( !$geshi_path )
{
$geshi_path = '../geshi.php';
}
if ( !$geshi_lang_path )
{
$geshi_lang_path = '../geshi/';
}
if ( is_file($geshi_path) && is_readable($geshi_path) )
{
// Get file contents and see if GeSHi is in here
$file = @file($geshi_path);
$contents = '';
foreach ( $file as $line )
{
$contents .= $line;
}
if ( strpos($contents, '<?php
/**
* GeSHi - Generic Syntax Highlighter') !== false )
{
echo '<span style="color: green;">Found at ' . realpath($geshi_path) . '</span>';
}
else
{
++$errors;
$no_geshi_dot_php_error = true;
echo '<span style="color: red;">Not found</span>';
}
}
else
{
++$errors;
$no_geshi_dot_php_error = true;
echo '<span style="color: red;">Not found</span>';
}
// Find language files
echo "\nSearching for language files... ";
if ( is_readable($geshi_lang_path . 'css-gen.cfg') )
{
echo '<span style="color: green;">Found at ' . realpath($geshi_lang_path) . '</span>';
}
else
{
++$errors;
$no_lang_dir_error = true;
echo '<span style="color: red;">Not found</span>';
}
echo "</pre>\n";
if ( $errors > 0 )
{
// We're gonna have to ask for the paths...
echo 'Unfortunately CSSGen could not detect the following paths. Please input them and press &quot;submit&quot; to try again.';
echo "
<form action=\"cssgen.php\" method=\"post\">";
if ( $no_geshi_dot_php_error )
{
echo "
<br />geshi.php: <input type=\"text\" name=\"geshi-path\" value=\"" . realpath('../geshi.php') . "\" size=\"50\" />";
}
else
{
echo '<input type="hidden" name="geshi-path" value="' . htmlspecialchars($geshi_path) . '" />';
}
if ( $no_lang_dir_error )
{
echo "
<br />language files directory: <input type=\"text\" name=\"geshi-lang-path\" value=\"" . realpath('../geshi/') . "/\" size=\"50\" /> (should have a trailing slash)";
}
else
{
echo '<input type="hidden" name="geshi-lang-path" value="' . $geshi_lang_path . '" />';
}
echo "
<br /><input type=\"submit\" value=\"Search\" /></form>";
}
else
{
// no errors - echo continue form
echo 'Everything seems to be detected successfully. Use the button to continue.
<br /><br /><form action="cssgen.php?step=2" method="post">
<input type="hidden" name="geshi-path" value="' . realpath($geshi_path) . '" /><input type="hidden" name="geshi-lang-path" value="' . realpath($geshi_lang_path) . '" />
<input type="submit" value="Step 2" />';
}
make_footer();
}
// Step 2
elseif ( $step == 2 )
{
make_header('Step 2');
$geshi_path = get_var('geshi-path');
$geshi_lang_path = get_var('geshi-lang-path');
$dh = opendir($geshi_lang_path);
$lang_files = array();
$file = readdir($dh);
while ( $file !== false )
{
if ( $file == '.' || $file == '..' || $file == 'CVS' || $file == 'css-gen.cfg' )
{
$file = readdir($dh);
continue;
}
$lang_files[] = $file;
$file = readdir($dh);
}
closedir($dh);
sort($lang_files);
// Now installed languages are in $lang_files
echo '<form action="cssgen.php?step=3" method="post" id="step2">
What languages are you wanting to make this stylesheet for?<br /><br />
Detected languages:<br />';
foreach ( $lang_files as $lang )
{
$lang = substr($lang, 0, strpos($lang, '.'));
if ($lang) {
echo "<input type=\"checkbox\" name=\"langs[$lang]\" checked=\"checked\" />&nbsp;$lang<br />\n";
}
}
echo "Select: <a href=\"javascript:select('true')\">All</a>, <a href=\"javascript:select('false')\">None</a>, <a href=\"javascript:select('invert')\">Invert</a><br />\n";
echo 'If you\'d like any other languages not detected here to be supported, please enter
them here, one per line:<br /><textarea rows="4" cols="20" name="extra-langs"></textarea><br />
';
echo '<br />Styles:
<table>
<tr><th>Style for the overall code block:</th><td><input type="text" name="overall" value="border: 1px dotted #a0a0a0; font-family: \'Courier New\', Courier, monospace; background-color: #f0f0f0; color: #0000bb;" /></td></tr>
<tr><th>Default Styles</th><td><input type="text" name="default-styles" value="font-weight:normal;background:transparent;color:#000; padding-left: 5px;" /></td></tr>
<tr><th>Keywords I (if, do, while etc)</th><td><input type="text" name="keywords-1" value="color: #a1a100;" /></td></tr>
<tr><th>Keywords II (null, true, false etc)</th><td><input type="text" name="keywords-2" value="color: #000; font-weight: bold;" /></td></tr>
<tr><th>Inbuilt Functions (echo, print etc)</th><td><input type="text" name="keywords-3" value="color: #000066;" /></td></tr>
<tr><th>Data Types (int, boolean etc)</th><td><input type="text" name="keywords-4" value="color: #f63333;" /></td></tr>
<tr><th>Comments (//, <!-- --> etc)</th><td><input type="text" name="comments" value="color: #808080;" /></td></tr>
<tr><th>Escaped Characters (\n, \t etc)</th><td><input type="text" name="escaped-chars" value="color: #000033; font-weight: bold;" /></td></tr>
<tr><th>Brackets ( ([{}]) etc)</th><td><input type="text" name="brackets" value="color: #66cc66;" /></td></tr>
<tr><th>Strings ("foo" etc)</th><td><input type="text" name="strings" value="color: #ff0000;" /></td></tr>
<tr><th>Numbers (1, -54, 2.5 etc)</th><td><input type="text" name="numbers" value="color: #ff33ff;" /></td></tr>
<tr><th>Methods (Foo.bar() etc)</th><td><input type="text" name="methods" value="color: #006600;" /></td></tr>
</table>';
echo '<input type="hidden" name="geshi-path" value="' . realpath($geshi_path) . '" /><input type="hidden" name="geshi-lang-path" value="' . realpath($geshi_lang_path) . '" />
<input type="submit" value="Step 3" /></form>';
make_footer();
}
// Step 3
elseif ( $step == 3 )
{
make_header('Step 3');
echo '<p>Here is your completed stylesheet. Note that it may not be perfect - no regular expression styles are included for one thing,
you\'ll have to add those yourself (php and xml are just two languages that use them), and line numbers are not included, however
it includes most of the basic information.</p>';
// Make the stylesheet
$part_selector_1 = '';
$part_selector_2 = '';
$part_selector_3 = '';
$langs = get_var('langs');
$extra_langs = trim(get_var('extra-langs'));
if ( $extra_langs != '' )
{
$l = explode("\r\n", $extra_langs);
foreach ( $l as $lng )
{
$langs[$lng] = true;
}
}
foreach ( $langs as $lang => $dummy )
{
$part_selector_1 .= ".$lang {PART}, ";
$part_selector_2 .= ".$lang {PART1}, .$lang {PART2}, ";
$part_selector_3 .= ".$lang {PART1}, .$lang {PART2}, .$lang {PART3}, ";
}
$part_selector_1 = substr($part_selector_1, 0, -2);
$part_selector_2 = substr($part_selector_2, 0, -2);
$part_selector_3 = substr($part_selector_3, 0, -2);
$default_styles = get_var('default-styles');
$ol_selector = str_replace('{PART}', 'ol', $part_selector_1);
$overall_styles = get_var('overall');
$overall_selector = str_replace('{PART}', '', $part_selector_1);
$stylesheet = "/* GeSHi (c) Nigel McNie 2004 (http://qbnz.com/highlighter) */";
if ( $overall != '' )
{
$stylesheet .= "\n$overall_selector {{$overall_styles}}";
}
if ( $default_styles != '' )
{
$default_selector = str_replace(array('{PART1}', '{PART2}'), array('.de1', '.de2'), $part_selector_2);
$stylesheet .= "\n$default_selector {{$default_styles}}";
}
// Do keywords
$keywords_1 = get_var('keywords-1');
$keyword_selector_1 = str_replace('{PART}', '.kw1', $part_selector_1);
if ( $keywords_1 != '' )
{
$stylesheet .= "\n$keyword_selector_1 {{$keywords_1}}";
}
$keywords_2 = get_var('keywords-2');
$keyword_selector_2 = str_replace('{PART}', '.kw2', $part_selector_1);
if ( $keywords_2 != '' )
{
$stylesheet .= "\n$keyword_selector_2 {{$keywords_2}}";
}
$keywords_3 = get_var('keywords-3');
$keyword_selector_3 = str_replace('{PART}', '.kw3', $part_selector_1);
if ( $keywords_3 != '' )
{
$stylesheet .= "\n$keyword_selector_3 {{$keywords_3}}";
}
$keywords_4 = get_var('keywords-4');
$keyword_selector_4 = str_replace('{PART}', '.kw4', $part_selector_1);
if ( $keywords_4 != '' )
{
$stylesheet .= "\n$keyword_selector_4 {{$keywords_4}}";
}
// Do other lexics
$comments = get_var('comments');
$comment_selector = str_replace(array('{PART1}', '{PART2}', '{PART3}'), array('.co1', '.co2', '.coMULTI'), $part_selector_3);
if ( $comments != '' )
{
$stylesheet .= "\n$comment_selector {{$comments}}";
}
$esc = get_var('escaped-chars');
$esc_selector = str_replace('{PART}', '.es0', $part_selector_1);
if ( $esc != '' )
{
$stylesheet .= "\n$esc_selector {{$esc}}";
}
$brackets = get_var('brackets');
$brk_selector = str_replace('{PART}', '.br0', $part_selector_1);
if ( $brackets != '' )
{
$stylesheet .= "\n$brk_selector {{$brackets}}";
}
$strings = get_var('strings');
$string_selector = str_replace('{PART}', '.st0', $part_selector_1);
if ( $strings != '' )
{
$stylesheet .= "\n$string_selector {{$strings}}";
}
$numbers = get_var('numbers');
$num_selector = str_replace('{PART}', '.nu0', $part_selector_1);
if ( $numbers != '' )
{
$stylesheet .= "\n$num_selector {{$numbers}}";
}
$methods = get_var('methods');
$method_selector = str_replace('{PART}', '.me0', $part_selector_1);
if ( $methods != '' )
{
$stylesheet .= "\n$method_selector {{$methods}}";
}
echo "<pre>$stylesheet</pre>";
make_footer();
}
?>

View File

@ -0,0 +1,193 @@
<?php
/**
* GeSHi example script
*
* Just point your browser at this script (with geshi.php in the parent directory,
* and the language files in subdirectory "../geshi/")
*
* @author Nigel McNie
* @version $Id: example.php 706 2006-05-19 11:40:16Z oracleshinoda $
*/
// Rudimentary checking of where GeSHi is. In a default install it will be in ../, but
// it could be in the current directory if the include_path is set. There's nowhere else
// we can reasonably guess.
if (!@include '../geshi.php') {
if (!@include 'geshi.php') {
die('Could not find geshi.php - make sure it is in your include path!');
} else {
$path = './';
}
} else {
$path = '../';
}
if ( isset($_POST['submit']) )
{
if ( get_magic_quotes_gpc() ) $_POST['source'] = stripslashes($_POST['source']);
if ( !strlen(trim($_POST['source'])) )
{
$_POST['language'] = preg_replace('#[^a-zA-Z0-9\-_]#', '', $_POST['language']);
$_POST['source'] = implode('', @file($path . 'geshi/' . $_POST['language'] . '.php'));
$_POST['language'] = 'php';
}
// Here's a free demo of how GeSHi works.
// First the initialisation: source code to highlight and the language to use. Make sure
// you sanitise correctly if you use $_POST of course - this very script has had a security
// advisory against it in the past because of this. Please try not to use this script on a
// live site.
$geshi =& new GeSHi($_POST['source'], $_POST['language']);
// Use the PRE header. This means less output source since we don't have to output &nbsp;
// everywhere. Of course it also means you can't set the tab width.
$geshi->set_header_type(GESHI_HEADER_PRE);
// Enable CSS classes. You can use get_stylesheet() to output a stylesheet for your code. Using
// CSS classes results in much less output source.
$geshi->enable_classes();
// Enable line numbers. We want fancy line numbers, and we want every 5th line number to be fancy
$geshi->enable_line_numbers(GESHI_FANCY_LINE_NUMBERS, 5);
// Set the style for the PRE around the code. The line numbers are contained within this box (not
// XHTML compliant btw, but if you are liberally minded about these things then you'll appreciate
// the reduced source output).
$geshi->set_overall_style('color: #000066; border: 1px solid #d0d0d0; background-color: #f0f0f0;', true);
// Set the style for line numbers. In order to get style for line numbers working, the <li> element
// is being styled. This means that the code on the line will also be styled, and most of the time
// you don't want this. So the set_code_style reverts styles for the line (by using a <div> on the line).
// So the source output looks like this:
//
// <pre style="[set_overall_style styles]"><ol>
// <li style="[set_line_style styles]"><div style="[set_code_style styles]>...</div></li>
// ...
// </ol></pre>
$geshi->set_line_style('font: normal normal 95% \'Courier New\', Courier, monospace; color: #003030;', 'font-weight: bold; color: #006060;', true);
$geshi->set_code_style('color: #000020;', 'color: #000020;');
// Styles for hyperlinks in the code. GESHI_LINK for default styles, GESHI_HOVER for hover style etc...
// note that classes must be enabled for this to work.
$geshi->set_link_styles(GESHI_LINK, 'color: #000060;');
$geshi->set_link_styles(GESHI_HOVER, 'background-color: #f0f000;');
// Use the header/footer functionality. This puts a div with content within the PRE element, so it is
// affected by the styles set by set_overall_style. So if the PRE has a border then the header/footer will
// appear inside it.
$geshi->set_header_content('GeSHi &copy; 2004, Nigel McNie. View source of example.php for example of using GeSHi');
$geshi->set_header_content_style('font-family: Verdana, Arial, sans-serif; color: #808080; font-size: 70%; font-weight: bold; background-color: #f0f0ff; border-bottom: 1px solid #d0d0d0; padding: 2px;');
// You can use <TIME> and <VERSION> as placeholders
$geshi->set_footer_content('Parsed in <TIME> seconds, using GeSHi <VERSION>');
$geshi->set_footer_content_style('font-family: Verdana, Arial, sans-serif; color: #808080; font-size: 70%; font-weight: bold; background-color: #f0f0ff; border-top: 1px solid #d0d0d0; padding: 2px;');
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>GeSHi examples</title>
<style type="text/css">
<!--
<?php
if ( isset($_POST['submit']) )
{
// Output the stylesheet. Note it doesn't output the <style> tag
echo $geshi->get_stylesheet();
}
?>
html {
background-color: #f0f0f0;
}
body {
font-family: Verdana, Arial, sans-serif;
margin: 10px;
border: 2px solid #e0e0e0;
background-color: #fcfcfc;
padding: 5px;
}
h2 {
margin: .1em 0 .2em .5em;
border-bottom: 1px solid #b0b0b0;
color: #b0b0b0;
font-weight: normal;
font-size: 150%;
}
h3 {
margin: .1em 0 .2em .5em;
color: #b0b0b0;
font-weight: normal;
font-size: 120%;
}
#footer {
text-align: center;
font-size: 80%;
color: #a9a9a9;
}
#footer a {
color: #9999ff;
}
textarea {
border: 1px solid #b0b0b0;
font-size: 90%;
color: #333;
margin-left: 20px;
}
select, input {
margin-left: 20px;
}
p {
font-size: 90%;
margin-left: .5em;
}
-->
</style>
</head>
<body>
<h2>GeSHi Example Script</h2>
<p>To use this script, make sure that <strong>geshi.php</strong> is in the parent directory or in your
include_path, and that the language files are in a subdirectory of GeSHi's directory called <strong>geshi/</strong>.</p>
<p>Enter your source and a language to highlight the source in and submit, or just choose a language to
have that language file highlighted in PHP.</p>
<?php
if ( isset($_POST['submit']) )
{
// The fun part :)
echo $geshi->parse_code();
echo '<hr />';
}
?>
<form action="example.php" method="post">
<h3>Source to highlight</h3>
<textarea rows="10" cols="60" name="source"></textarea>
<h3>Choose a language</h3>
<select name="language">
<?php
if (!($dir = @opendir(dirname(__FILE__) . '/geshi'))) {
if (!($dir = @opendir(dirname(__FILE__) . '/../geshi'))) {
echo '<option>No languages available!</option>';
}
}
$languages = array();
while ( $file = readdir($dir) )
{
if ( $file == '..' || $file == '.' || !stristr($file, '.') || $file == 'css-gen.cfg' ) continue;
$lang = substr($file, 0, strpos($file, '.'));
$languages[] = $lang;
}
closedir($dir);
sort($languages);
foreach ($languages as $lang) {
echo '<option value="' . $lang . '">' . $lang . "</option>\n";
}
?>
</select><br />
<input type="submit" name="submit" value="Highlight Source">
</form>
<div id="footer">GeSHi &copy; Nigel McNie, 2004, released under the GNU GPL<br />
For a better demonstration, check out the <a href="http://qbnz.com/highlighter/demo.php">online demo</a>
</body>
</html>

View File

@ -0,0 +1 @@
api

View File

@ -0,0 +1,31 @@
BUGS - list of known bugs in GeSHi
Version 1.0.7.20
- Putting a > inside an HTML comment will close the comment abruptly. There's nothing that
can be done about this (at least in the 1.0.X series of GeSHi), but version 1.2 will fix
this bug. Likewise for putting ?> inside a PHP string when in strict mode.
- Number highlighting is quite poor [possibly better now]
- I'm not happy with URLS - there still could be extra bugs, and it's rather unflexible
(see TODO for a possible fix)
- "Important" sections for some reason seem to have their spans added after every
newline up until the next lexic, instead of stopping at the <END GeSHi> part. In fact,
context sensitiveness is quite poor...
- Using the extra line number highlighting feature without actually using line numbers
will result in malformed XHTML (not sure about this one though...)
- Slow!!! Especially for source with lots of strings in it. GeSHi will work acceptably
for sourcecode under 5K (for simple language files like SQL, a 100K file can be
highlighted in just 6 seconds), but above about 25K things get a little slow... If
you're using this as part of some larger software, you may want to think about
making some sort of "cache" effect to speed things up and reduce server load.
- The result is built by string replacement instead of by building another string based
on the source, that would be much safer. The focus of releases beyond 1.0.7 will be on
changing this behaviour, which may well fix some of the other bugs mentioned above.
- As of 1.0.7.1, dots (.) are allowed before keywords. This may change highlighting of some
things slightly, if you notice anything odd about the highlighting then please report
it to me.
- Perl/Javascript /.../ regex syntax isn't supported.
- The <pre> header output is not XHTML compliant. Please use the <div> header instead.
Send any bug reports to nigel@geshi.org, or submit them via the bug tracker at
sourceforge (http://sourceforge.net/tracker/?group_id=114997&atid=670231)

View File

@ -0,0 +1,370 @@
CHANGES - Changelog for GeSHi (geshi.php only)
Changes to the code are listed under the version they occured in, with who suggested
it by each one (if there's nobody listed as suggesting it I dreamed it up :)). Users
who suggested an idea often also provided the code that was used as a basis for the
changes - thanks to all who suggested these ideas and gave me the code to show me how!
Language files listed under each version were made by the author beside them, and then
modified by me for consistency/bug fixing.
Please send any bug reports to nigel@geshi.org, or use the bug report tracker
at sourceforge (http://sourceforge.net/tracker/?group_id=114997&atid=670231)
Version 1.0.7.20
- Added language files
* Genero (logic) and Per (forms) (FOURJ's Genero 4GL) (Lars Gersmann)
* Haskell (Dagit)
* ABAP (Andres Picazo)
* Motorola 68k Assembler (for MC68HC908GP32 Microcontroller) (BenBE)
* Dot (Adrien Friggeri)
- Fixed java documentation search for keywords to actually go to the
documentation (spaze)
- Applied fix for bug 1688864 (bad regexes) (Tim Starling)
- Fixed comment CSS rule in visualfoxpro
- ThinBASIC language update (Eros Olmi)
- mIRC language update (BenBE)
- Fixed outdated documentation URL of Perl language file (RuralMoon by BenBE)
- Fixed tab replacement code not generating the correct number of spaces in
some cases (Guillermo Calvo)
- Fixed two typos in Z80 language file
- Applied fix for bug 1730168 (Daniel Naber)
- Applied fix for bug 1705482 (Jason Frame)
* Configurable line endings (Replace \n by custom string)
* per-language tab-widths (Adjustable for width>=1)
* Included defaults for ASM (x86, m68k, z80), C, C (Mac), C++, C++ (QT), C#,
Delphi, CSS,, HTML, PHP, PHP (Brief), QBasic, Ruby, XML
- Added a possibility to force generation of a surrounding tag around
the highlighted source
- Applied fix for additional keywords for the bash language
(cf. http://bash.thefreebizhost.com/bash_geshi.php, BenBE / Jan G)
- Fix bad colour definition in GML language (Andreas Gohr)
- Fixed phpdoc comments not being indented one space if they should be (Andy
Hassall)
Version 1.0.7.19
- Added language files
* X++ (Simon Butcher)
* Rails (Moises Deniz)
- Fixed invalid HTML being generated and doctypes not being highlighted over
multiple lines properly when line numbers are on (Validome)
- Improved the ruby syntax highlighting by basing it off the Rails file
- Changed some regular expressions to possibly help with badly performing
regex support in PHP (Tim Starling)
- Allow {TIME}, {LANGUAGE} and {VERSION} to be used in the header as well as
the normal <TIME>/<LANGUAGE>/<VERSION> (AthanD)
- Changed comment regex in bash to prevent malformed XHTML (rv1971)
Version 1.0.7.18
- Added language files
* ZiLOG Z80 Assembly (BenBE)
- Fixed incorrect highlighting when the starter of a multiline comment is
longer than the ender (Robert Anthony).
- Fixed "</span" generated if a multiline comment is the last thing in the
source (related to the above).
- Added #cs => #ce comment markers to AutoIT (Robert Anthony)
- Fixed spelling mistake for keyword in Python (wd3)
- Added a method to enable/disable keyword linking (Ian McKellar)
- Improved empty line detection for HTML output (BenBE)
- Changed code style of geshi.php, and removed tabs
Version 1.0.7.17
- Fixed up ends of files having too many newlines (binarygroop)
- Removed background colour on keyword group in eiffel (Julian Tschannen)
- Removed GESHI_DIR_SEPARATOR constant usage, it's unnecessary (Aleksey Zapparov)
- Added /* ... */ comments to coldfusion (Jeff Howden)
Version 1.0.7.16
- Added language files
* C++/QT (Iulian M)
* PL/SQL (Victor Engmark)
- Fixed up my e-mail address everywhere
- Fixed notice with "error" property (IZIU Zielona Góra)
- Added some entries to the get_language_name_from_extension table
(Stebastian Schuberth)
Version 1.0.7.15
- Added language files
* BNF (Rowan Rodrik van der Molen)
* IO (me, thanks to Johnathan Wright)
* mIRC (Alberto de Areba Sánchez)
- Fixed use of colon in XML (Grigory Rubtsov)
- Fixed notices in text.php, reg.php and latex.php when $this is not
available (Clemens Weiß)
- Made third parameter of geshi_highlight optional (Gaetano Giunta)
- Fix incorrect highlighting of the $# variable in bash (Michael Knight)
- Fixed single line comment mistake in thinbasic.php (Eros Olmi)
Version 1.0.7.14
- Added language files
* thinBasic (Eros Olmi)
* LaTeX (Matthais Pospiech)
- Removed extra newlines at the end of some files
- Fixed SF bug 1556404 - check before using $this in language files
(Clemens Weiß)
Version 1.0.7.13
- Added language files
* Uno IDL (Cedric Bosdonnat)
- Fixed add_ids causing odd XHTML (RyanJ)
- Fixed extra newline being added to end of result (Andreas Gohr)
Version 1.0.7.12
- Fixed lines being collapsed when they contain just a space (artlover)
- Allowed matching for regexes using start/end matchers at the start/end
of the code (Sheri)
- Added (dubious) fix for google "I'm feeling lucky" search for java keywords
(dubious in that it doesn't work for me)
- mysql - Made the symbols into their own keyword group as the symbol group
isn't used. Added a style for multiline comments.
- Added a couple of php5 keywords to the php language files.
- Allow XML tags to have dashes.
- Changed LANG_NAME for many languages to be more sensible/correct case
(Matthias Mohr)
- Added case-sensitivity indices to python
Version 1.0.7.11
- Added language files
* Smalltalk (Bananeweizen)
- Minor style improvements to matlab
- Moved a couple of functions to the correct group in smarty (arwan)
Version 1.0.7.10
- Added language files
* TCL (Reid van Melle)
* Winbatch (Craig Storey)
* Groovy (Ivan F. Villanueva B.)
* Text (SmokingRope)
* Reg (SmokingRope)
- Removed \ as an escape character in T-SQL (Dave Jackson)
- Reset extra lines to highlight if source is changed (Diogo Resende)
- Allow setting of lexic permissions in language files (SmokingRope)
- Allow regexes to set a CSS class name (SmokingRope)
- Added URL support to DOS language (mastrboy)
Version 1.0.7.9
- Added language files
* Fortran (Cedric Arrabie)
* SAS (Galen Johnson)
* CFDG (John Horigan)
- Fixed & in URL in java5 (Clemens Weiß)
- Added MD5 and SHA1 to mysql keywords (polarina)
- Fixes for highlight_lines_extra with line numbers (ithcy)
- Fixed backslash characters being removed (ArTourter)
Version 1.0.7.8
- Fixed blank at start of MySQL file (W. Tasin)
- Fixed smarty functions being broken (ultrabob)
- Changed keyword and regexp detection and parsing
slightly to allow more "meta characters" (like #) in
keywords
- Minor fixes for XML and GML
Version 1.0.7.7
- Added language files
* T-SQL (Duncan Lock)
* Robots.txt (Christian Lescuyer)
* AutoIT (mastrboy)
* Java 5 (Clemens Bruckmann)
* ColdFusion (Diego)
- A few keyword changes in java, removed :: object splitter (amphi)
- Now using a simpler regular expression for numbers (Brice Bernard)
- Fixed ah, bh etc. regs being highlighted as numbers (Unknown)
Version 1.0.7.6
- Fix backtick-string highlighting in ruby (Juan J. Mart�nez)
- Add =begin multiline comments in ruby (Juan J. Mart�nez)
- Added support for :keywords and ::access in lisp (Denis Mashkevich)
- Prevented number highlighting if they are just after underscores (Joce)
- Removed escape characters for strings in XML and HTML (floele)
- Added instanceof keyword to java (jgottschling)
- Fixed comments in ASP (SBD)
- Removed unnecessary keyword style index from ini
- Added support for " strings in ini
- Removed unnecessary regex style index from blitzbasic
- Keyword case of URL-ed keywords should be defined by language file (Benny Baumann)
- Added "Hardquote" feature, provides more accurate string highlighting (Cliff Stanford)
- Used hardquote support for @"..." strings in C# (Cliff Stanford)
- Used hardquote support for ' strings in perl (Cliff Stanford)
- Fixed setting of language path (Cliff Stanford)
- Display source correctly formatted with line numbers (if requested) if an error
has occured (several people)
- Having no source to highlight is not an error condition anymore
- Delphi language updated to include more keywords and types (BenBE)
- Updated NSIS to version 2.11 (deguix)
Version 1.0.7.5
- Fix for using escape characters to escape newlines breaking XHTML compliance (Yves Goergen)
- Fixed method highlighting in VB (Matt Beale)
- Fixed multiline comment highlighting in SQL (MrBaseball34)
- Fixed two ">" symbols being outputted when using a footer but not CSS classes (MrBaseball34)
- Marked important block stuff as deprecated
- Some documentation tidyup
- Updated GML language file (Jos� Jorge Enr�quez Rodr�guez)
- THANKS file tidied up
- Fixed double </a> for elements in HTML (Yves Goergen)
- Added some keywords for ASM (Dreuzzo)
Version 1.0.7.4
- Added language files
* MySQL (Carl F�rstenberg)
* BlitzBasic (P�draig O`Connel)
- Fixed up geshi_highlight function: it now correctly uses <code> instead of <div> (Remi Faure)
- When using GESHI_HEADER_NONE, remove the <ol> if line numbering is not enabled
- Commented example.php so people can use it as a guide better
- Fixed extra newline being generated if a comment is at the end
of the source (many people, including Yves Goergen)
- Fixed up some documentation issues
- Some minor language file fixes (C++, Lua) (Lua fixes by chromix)
- Fixed up no </span> in XML and other strict languages (regression from 1.0.7.3 fix: removed
unnecessary </span> when using strict mode) (Daniel Ecer, drskrud),
Version 1.0.7.3
- Added language files
* Scheme (Jon Raphaelson)
* Ocaml and Ocaml-brief (Flaie)
* Ruby (Amit Gupta)
- Make urls generated for java highlighting XHTML compliant (Tim Van Wassenhove)
- Removed unnecessary </span> when using strict mode (Tim Van Wassenhove)
- Fixed warning in dos.php about undefined constant (Tim Van Wassenhove)
- Fixed security hole in contrib/example.php - able to view any file if source
not set and language is set to wierd value (Maksymilian Arciemowicz)
Version 1.0.7.2
- Added language files
* Inno (Thomas Klinger)
* Ini (Deguix)
* DOS (Batchfile) (Alessandro Staltali)
* Applescript (Stephan Klimek)
* Freebasic (Roberto Rossi)
* SDLBasic (Roberto Rossi)
* ActionScript (links to French documentation) (NikO)
- NSIS language file updated (deguix)
- Lua language file updated (Roberto Rossi)
- Bugfix: Styles incorrectly overriding default styles instead of being merged
in set_*_styles methods (Stebastian Werner)
- Added GESHI_HEADER_NONE as valid header type. This still allows header content.
Version 1.0.7.1
- Added language files:
* Div (Gabriel Lorenzo)
* GML (Jos� Jorge Enr�quez Rodr�guez)
* Eiffel (Zoran Simic)
- Minor change to rules regarding when keywords can appear - now dots (.) are
allowed before keywords. (NikO)
- Bugfix: the line style for non-fancy lines when fancy highlighting is enabled
is now applied (Amit Gupta)
Version 1.0.7
- Added language files:
* Diff (Conny Brunnkvist)
* VHDL (Alexander Krause)
* D (Thomas Kuehne)
* Matlab (Florian Knorn)
- Python highlighting improved (thither, Federico Quagliata)
- Changed file comments to use phpdoc syntax, and changed code style to be more
like PEAR
- Fixed bug in set_code_style: Second parameter is now optional
- The $_GESHI_ERRORS array is gone, error messages are internal to the GeSHi class
- Changed name of XML language to XML from HTML
- Removed min and max tab width checks
- Backported GeSHi 1.1.X's automatic language file path detection so you no longer
need to use the third parameter of the constructor or set_language_path except for
special circumstances.
- Source is checked to make sure it is not empty else an error occurs
- Removed excess characters after ?> in ada.php, apache.php and cpp.php that caused
http headers to be sent (psichron)
- Removed second "foreach" keyword for smarty language file that was causing
duplication (Iss)
- Added underscore to allowed characters in match for XML tags (anonymous)
- Added some missing java keywords like "abstract" and "transient"
- Added "list" and "continue" PHP keywords
- set_language resets error status and strict mode (Andrew Black)
- Removed margin:0 declaration from cssgen.php (Andrzej Kubaszek)
- Fixed multiline comment selector in cssgen.php (Andrzej Kubaszek)
Version 1.0.6
- Added support for smart tabs - tabs that behave just like normal tabs when in
GESHI_HEADER_DIV mode.
- Partial patch for UTF-8 encoding applied (doesn't quite work however...)
Version 1.0.5
- Added language files:
* MPASM (Bakalex)
* Oracle 8 (Guy Wicks)
- Fixed bug where not using an encoding type would sometime result in warnings (although
there still seems to be issues with encoding in general that I'm trying to gather more
data on) (Alexander Spennemann)
- Removed "margin: 0" from <ol> in an attempt to make line numbers visible in IE again
by default (untested, but I don't really care if it works... get firefox! ;))
- Added note on php5 support (Karim Scheik)
- Added two new methods: load_from_file and get_language_name_from_extension, that can
help automate file highlighting (though the extension array at this time is quite bare)
(David Gartner, Brian Cheesman)
Version 1.0.4
- Fixed many version-reporting bugs (Jack Lloyd)
- Fixed bug where methods were not having the correct CSS generated for them
by get_stylesheet() (Jack Lloyd)
- Added new keywords to C and C++ files (Jack Lloyd)
- Added section on case sensitivity to documentation that wasn't in the other versions
Version 1.0.3
- Added language files:
* Smarty (Alan Juden)
* C# (Alan Juden)
* VB.NET (Alan Juden)
* C for Macs (M. Uli Kusterer)
* Objective C (M. Uli Kusterer)
- Links can have a target attribute (Andreas Gohr)
- Fixed multiline string bug if not using classes
- Added method set_encoding that allows you to set the character
set used by calls to htmlentities() in GeSHi
- You can now specify an array of object splitters, and each
type of method separated by each object splitter can be highlighted
differently
- If a language uses a case sensitive keyword group and that group
has a URL associated with it, the keyword will not be lowercased
in the URL (M. Uli Kusterer)
Version 1.0.2
- Added language files:
* Actionscript (Steffen Krause)
* ASP (Amit Gupta)
* Bash (Andreas Gohr)
* CADDCL (Roberto Rossi)
* CadLisp (Roberto Rossi)
* C++ (Dennis Bayer)
* Delphi (J�rja Norbert)
* Javascript (Ben Keen)
* Lisp (Roberto Rossi)
* OpenOffice.org BASIC (Roberto Rossi)
* Perl (Andreas Gohr and Ben Keen)
* Python (Roberto Rossi)
* VisualFoxPro (Roberto Armellin)
* XML (Nigel McNie, from an idea/file by Christian Weiske)
- Added contrib/ directory with script to create one external stylesheet
from many languages(base script by Andreas Gohr, modified by Nigel McNie),
and an example script (needs lotsa work...)
- Code lines can have their own unique ID (for use with javascript)
(suggested by Andreas von Oettingen)
- Certain rows can be specified to be highlighted differently (suggested by
Andreas von Oettingen)
- Getter available for human-readable language name (suggested by Simon Patterson)
- Line numbers aren't highlighted when a user selects the code
- Contextual highlighting with <BEGIN GeSHi> ... <END GeSHi> in the code (which
can be disabled)
- Functions can be made into URLs to appropriate documentation (suggested
by cybot_tm). Also thanks to Marcin Gryszkalis for the links for C, Java
and Perl.
- Code can have a header and footer
- Time taken to parse the code is recorded and made available with the get_time()
method
- error() now returns a human-readable error message
- Function geshi_highlight added to make it even easier to highlight on the fly
- Advanced regular expression handling
- Bug fixes to lexic_permission handling
Version 1.0.1
- Added methods set_symbols_style() and set_symbols_highlighting(). These should be used
instead of set_brackets_style and set_brackets_highlighting respectively.
- Added a new field - language_path - that can be set either when the constructor is
called, or by the new method set_language_path(), that specifies a path to the directory
containing the language files (bug reported by bbspliff)
- Added a new method set_case_keywords(), that allows the auto-casing feature to be
changed on the fly instead of simply being specified in the language file
- If there is an error the source that is outputted is now handled much better
- Lines are broken in the source only by \n now, not by \r\n (to save on output source)
- Indentation moved into its own method
- Method header() modified to allow the user to choose whether the code is surrounded in
a <div> or a <pre> (see documentation for benefits of both). Method footer() likewise
modified.
- Method get_stylesheet() modified so that a smaller comment is outputted in economy mode,
and bugs with when line number classes are outputted in economy mode have been fixed
- Bug where spans had two quotes at the end of the attributes fixed (ie. <span style=".."">)
- Added language files:
* Ada (Tux)
* Apache log file (Tux)
* ASM (Tux)
* NSIS (Tux)
* Pascal (Tux)
Version 1.0.0
- Initial Release

View File

@ -0,0 +1,340 @@
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software--to make sure the software is free for all its users. This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it. (Some other Free Software Foundation software is covered by
the GNU Library General Public License instead.) You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have. You must make sure that they, too, receive or can get the
source code. And you must show them these terms so they know their
rights.
We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software. If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.
Finally, any free program is threatened constantly by software
patents. We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary. To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and
modification follow.
GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License applies to any program or other work which contains
a notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License. The "Program", below,
refers to any such program or work, and a "work based on the Program"
means either the Program or any derivative work under copyright law:
that is to say, a work containing the Program or a portion of it,
either verbatim or with modifications and/or translated into another
language. (Hereinafter, translation is included without limitation in
the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.
1. You may copy and distribute verbatim copies of the Program's
source code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty;
and give any other recipients of the Program a copy of this License
along with the Program.
You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.
2. You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) You must cause the modified files to carry prominent notices
stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Program or any
part thereof, to be licensed as a whole at no charge to all third
parties under the terms of this License.
c) If the modified program normally reads commands interactively
when run, you must cause it, when started running for such
interactive use in the most ordinary way, to print or display an
announcement including an appropriate copyright notice and a
notice that there is no warranty (or else, saying that you provide
a warranty) and that users may redistribute the program under
these conditions, and telling the user how to view a copy of this
License. (Exception: if the Program itself is interactive but
does not normally print such an announcement, your work based on
the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Program.
In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable
source code, which must be distributed under the terms of Sections
1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three
years, to give any third party, for a charge no more than your
cost of physically performing source distribution, a complete
machine-readable copy of the corresponding source code, to be
distributed under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer
to distribute corresponding source code. (This alternative is
allowed only for noncommercial distribution and only if you
received the program in object code or executable form with such
an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for
making modifications to it. For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable. However, as a
special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component
itself accompanies the executable.
If distribution of executable or object code is made by offering
access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.
4. You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
void, and will automatically terminate your rights under this License.
However, parties who have received copies, or rights, from you under
this License will not have their licenses terminated so long as such
parties remain in full compliance.
5. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Program or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Program (or any work based on the
Program), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Program or works based on it.
6. Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject to
these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.
7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Program at all. For example, if a patent
license would not permit royalty-free redistribution of the Program by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under
any particular circumstance, the balance of the section is intended to
apply and the section as a whole is intended to apply in other
circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system, which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
8. If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program under this License
may add an explicit geographical distribution limitation excluding
those countries, so that distribution is permitted only in or among
countries not thus excluded. In such case, this License incorporates
the limitation as if written in the body of this License.
9. The Free Software Foundation may publish revised and/or new versions
of the General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the Program
specifies a version number of this License which applies to it and "any
later version", you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation. If the Program does not specify a version number of
this License, you may choose any version ever published by the Free Software
Foundation.
10. If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the author
to ask for permission. For software which is copyrighted by the Free
Software Foundation, write to the Free Software Foundation; we sometimes
make exceptions for this. Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.
NO WARRANTY
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
REPAIR OR CORRECTION.
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this
when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) year name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, the commands you use may
be called something other than `show w' and `show c'; they could even be
mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the program, if
necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
`Gnomovision' (which makes passes at compilers) written by James Hacker.
<signature of Ty Coon>, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into
proprietary programs. If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
library. If this is what you want to do, use the GNU Library General
Public License instead of this License.

View File

@ -0,0 +1,33 @@
GeSHi - GEneric Syntax HIlighter
--------------------------------
Version 1.0.7.20
Author: Nigel McNie
Email: nigel@geshi.org
GeSHi Website: http://qbnz.com/highlighter
GeSHi is a generic syntax highlighter, written in PHP. You simply
input the source code you wish to highlight with the language you
wish to use, and the output will be a file syntax highlighted to
XHTML standards.
For more information on how to use GeSHi, please consult the
documentation. If you got this readme from a GeSHi package, then
the documentation is available in the docs/ directory. Documentation
is also available at http://qbnz.com/highlighter/documentation.php
If you think you've found a bug in GeSHi, contact me with a bug
report at nigel@geshi.org, or submit it to the bug tracker at
http://sourceforge.net/tracker/?group_id=114997&atid=670231. Be
aware that minor highlighting errors may well just be incorrect
language files, but if you do find something major please contact me.
And if you're using GeSHi as a plugin/mod for some other software,
please tell me about it! It's worth a link to you, and I can give
you specialist help if you need it.
GeSHi is free software, released under the GNU GPL. Please see the
COPYING file for more information. If you do modify this program,
please tell me about it! Perhaps you've made a good improvement that
I can learn from :)

View File

@ -0,0 +1,116 @@
THANKS - List of credits for GeSHi
I owe these people/groups my thanks for help with GeSHi. Thanks, guys!
- Amit Gupta - Thanks for all that constructive criticism - it's
a great help for making GeSHi even better. And
thanks for the Wordpress plugin! (Anyone who is
interested in the plugin can visit:
http://blog.igeek.info/still-fresh/category/wp-plugins/igsyntax-hiliter/)
- Andreas Gohr - Thanks for language files and for using GeSHi for DokuWiki
(http://www.splitbrain.org/dokuwiki/wiki:dokuwiki). And thanks
for all your criticisms and for that stylesheet-maker code :).
Also, thanks for the UTF-8 patch.
- Andreas von Oettingen - Thanks for those great ideas! :)
- bbspliff - Thanks for pointing out that bug (pity I already
found it though ;))
- Benny Baumann - Thanks for your innumerable suggestions for improvements, and your
work on Delphi support :)
- Ben Keen - Thanks for the language files and pointing out some
ideas for future releases. Lookin' forward to seeing that
software soon! ;)
- Brian Cheesman - Thanks for using GeSHi in phpCvsView, and for the suggestion about
extension => language lookup
- Christian Weiske - Thanks for the inspiration for creating advanced regexp
highlighting :D
- Cliff Stanford - Thanks for the hardquote support for C# and Perl (can be used elsewhere
I'm sure)
- David Gartner - Thanks for using GeSHi in net2ftp, and for the idea about a load_from_file
method
- forum.qbasicnews.com - Thanks for putting up with the crappy versions
that I "forced" on you guys before ;)
- Jack Lloyd - Thanks for pointing out the versioning and method CSS bugs, and giving
me the extra C/C++ keywords
- Karim Scheik - Thanks for the php5 support report
- Marcin Gryszkalis - Thanks for those links for C, Java, Perl
- M. Uli Kusterer - Thanks for the idea about URL case conversion
- Roberto Armellin - Thanks for pointing out some flaws in GeSHi (that will be solved
in 1.2 guaranteed)
- Sterling Christensen - Thanks for those links to language specs
- Tux - Thanks for making all those language files :D
- zbw - Thanks for proving a phpBB port was possible
PEOPE WHO MADE LANGUAGE FILES
- ABAP Andres Picazo
- Actionscript Steffen Krause (french translation by NikO)
- Ada Tux
- Apache Tux
- Applescript Stephan Klimek
- ASM Tux
- ASP Amit Gupta
- AutoIT mastrboy
- Bash Andreas Gohr
- BlitzBasic P<>draig O`Connel
- BNF Rowan Rodrik van der Molen
- C++ Dennis Bayer, M. Uli Kusterer
- C++/QT Iulian M
- C# Alan Juden
- C for Macs M. Uli Kusterer
- CADDCL Roberto Rossi
- CadLisp Roberto Rossi
- CDFG John Horigan
- ColdFusion Diego
- Delphi J<>rja Norbert
- Div Gabriel Lorenzo
- DOS Alessandro Staltari
- Eiffel Zoran Simic
- FreeBasic Roberto Rossi
- Fortran Cedric Arrabie
- GML Jos<6F> Jorge Enr<6E>quez Rodr<64>guez
- Groovy Ivan F. Villanueva B.
- Haskell Dagit
- Ini Deguix
- Inno Thomas Klinger
- Java 5 Clemens Bruckmann
- Javascript Ben Keen
- LaTeX Matthais Pospiech
- Lisp Roberto Rossi
- Lua Roberto Rossi
- m86k Benny Baumann
- mIRC Alberto de Areba Sánchez
- MPASM Bakalex
- MySQL Carl F<>rstenberg
- NSIS Tux (updated by Deguix)
- Objective C M. Uli Kusterer
- Ocaml Flaie
- Ocaml-brief Flaie
- OpenOffice.org BASIC Roberto Rossi
- Oracle 8 Guy Wicks
- Pascal Tux
- Perl Andreas Gohr, Ben Keen
- PL/SQL Victor Engmark
- Python Roberto Rossi
- Rails Moises Deniz
- Reg SmokingRope
- Robots Christian Lescuyer
- Ruby Amit Gupta, Moises Deniz
- SAS Galen Johnson
- SDLBasic Roberto Rossi
- Scheme Jon Raphaelson
- Smalltalk Bananeweizen
- Smarty Alan Juden
- T-SQL Duncan Lock
- Text SmokingRope
- TCL Reid van Melle
- thinBasic Eros Olmi
- Uno IDL Cedric Bosdonnat
- VB.NET Alan Juden
- VisualFoxPro Roberto Armellin
- Winbatch Craig Storey
- X++ Simon Butcher
- Z80 Assembler Benny Baumann
Do you want your name in here? Help me out! Make a language file, or suggest a new
feature, or make a plugin for GeSHi for some other software, then tell me about it!

View File

@ -0,0 +1,66 @@
TODO - List of things to do as of 2005/01/29
Suggestions for things to add are welcome, if you have a feature request you
can either post it to the forums:
http://qbnz.com/highlighter/forum.php
Or to the feature request tracker:
http://sourceforge.net/tracker/?group_id=114997&atid=670234
TODO for version 1.0.8
- Rewrite parse_code method and parse_non_string_part method to use build
rather than replace method of highlighting. This should speed things up
while making highlighting much "safer"
- Rework the load_from_file method and the one for getting a file extension,
as documented in the source.
- Add option for "standards compliant" or "default" modes, where standards
compliance generates the <pre> tags within the <li>s and non compliant mode
does what happens currently.
TODO for version 1.2.0
- Rewrite engine to use remove/replace method (will hopefully almost
eliminate the need for regular expressions except for numbers/methods
etc). This will also assist for making different output formats [DONE]
- "Intelligent" output format - eg if the user doesn't want lines to
wrap and wants line numbers don't use <ol>, use the <table> method
instead. (This saves on output)
- Clear split between "public" and "private" methods [DONE]
- PHP5 version
- "Themes" for styles - basically pre-made stylesheets that can be used
to highlight code of any language in a similar manner [DONE]
- "Dialects" for languages - eg php4, php5. One master language definition
file, and a bunch of "specialised" dialect files for each language
Ability to specify a "specialised" dialect as default? [DONE]
- Look at load/memory usage and try to reduce
- Make tabs into tab-stops like a normal editor [DONE]
- Ability to add more than one multiline comment or string [DONE]
- Ability to specify that strings cannot be multiline [DONE]
- Create a "wrapper" class for ultra-easy use
- Code written in a style that conforms to a phpdoc utility [DONE, PEAR]
- Dig functions/methods out of code and where they are called make an internal
link back to their definition
TODO for version 2.0.0
- Support for multiple output formats (XHTML, XML, PDF, RTF etc) [DONE IN 1.2]
- Support for auto-indent/code "beautifing"
- Option for "Lite" highlighting - aims for speed and low server load
- "Intelligent" highlighting inside comments, and ability to highlight
source in multiple languages at once (eg PHP+HTML) [DONE IN 1.2]
- Perhaps a script on the GeSHi site that would map urls to appropriate
definitions and relocate the user? (eg, java documentation is
structured in such a way that urls are not able to be used with GeSHi.
Instead the URL could become:
http://qbnz.com/highlighter/redirect.php?lang=java&kw=KeyWord
and that script would redirect to the correct location.
[BETTER FIX IN 1.2]
$Id: TODO 706 2006-05-19 11:40:16Z oracleshinoda $

View File

@ -0,0 +1,13 @@
<html>
<head>
<title>GeSHi</title>
<link rel="stylesheet" href="media/stylesheet.css" />
<meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
</head>
<body>
<div align="center"><h1>GeSHi</h1></div>
<b>Welcome to geshi!</b><br />
<br />
This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.3.0</a><br />
</body>
</html>

View File

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title></title>
<link rel="stylesheet" href="media/stylesheet.css" />
<meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
</head>
<body>
<!-- Start of Class Data -->
<H2>
</H2>
<h2>Root class GeSHi</h2>
<ul>
<li><a href="geshi/core/GeSHi.html">GeSHi</a></li></ul>
<p class="notes" id="credit">
Documentation generated on Sun, 25 Feb 2007 21:29:33 +1300 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.3.0</a>
</p>
</body>
</html>

View File

@ -0,0 +1,785 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title></title>
<link rel="stylesheet" href="media/stylesheet.css" />
<meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
</head>
<body>
<a name="top"></a>
<h2>Full index</h2>
<h3>Package indexes</h3>
<ul>
<li><a href="elementindex_geshi.html">geshi</a></li>
</ul>
<br />
<div class="index-letter-menu">
<a class="index-letter" href="elementindex.html#a">a</a>
<a class="index-letter" href="elementindex.html#d">d</a>
<a class="index-letter" href="elementindex.html#e">e</a>
<a class="index-letter" href="elementindex.html#g">g</a>
<a class="index-letter" href="elementindex.html#h">h</a>
<a class="index-letter" href="elementindex.html#l">l</a>
<a class="index-letter" href="elementindex.html#p">p</a>
<a class="index-letter" href="elementindex.html#r">r</a>
<a class="index-letter" href="elementindex.html#s">s</a>
</div>
<a name="a"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">a</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">add_keyword</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodadd_keyword">GeSHi::add_keyword()</a> in geshi.php</div>
<div class="index-item-description">Adds a keyword to a keyword group for highlighting</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">add_keyword_group</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodadd_keyword_group">GeSHi::add_keyword_group()</a> in geshi.php</div>
<div class="index-item-description">Creates a new keyword group</div>
</dd>
</dl>
<a name="d"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">d</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">disable_highlighting</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methoddisable_highlighting">GeSHi::disable_highlighting()</a> in geshi.php</div>
<div class="index-item-description">Disables all highlighting</div>
</dd>
</dl>
<a name="e"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">e</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">enable_classes</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodenable_classes">GeSHi::enable_classes()</a> in geshi.php</div>
<div class="index-item-description">Sets whether CSS classes should be used to highlight the source. Default is off, calling this method with no arguments will turn it on</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">enable_highlighting</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodenable_highlighting">GeSHi::enable_highlighting()</a> in geshi.php</div>
<div class="index-item-description">Enables all highlighting</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">enable_ids</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodenable_ids">GeSHi::enable_ids()</a> in geshi.php</div>
<div class="index-item-description">Whether CSS IDs should be added to each line</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">enable_important_blocks</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodenable_important_blocks">GeSHi::enable_important_blocks()</a> in geshi.php</div>
<div class="index-item-description">Sets whether context-important blocks are highlighted</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">enable_keyword_links</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodenable_keyword_links">GeSHi::enable_keyword_links()</a> in geshi.php</div>
<div class="index-item-description">Turns linking of keywords on or off.</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">enable_line_numbers</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodenable_line_numbers">GeSHi::enable_line_numbers()</a> in geshi.php</div>
<div class="index-item-description">Sets whether line numbers should be displayed.</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">enable_strict_mode</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodenable_strict_mode">GeSHi::enable_strict_mode()</a> in geshi.php</div>
<div class="index-item-description">Enables/disables strict highlighting. Default is off, calling this method without parameters will turn it on. See documentation for more details on strict mode and where to use it.</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">error</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methoderror">GeSHi::error()</a> in geshi.php</div>
<div class="index-item-description">Returns an error message associated with the last GeSHi operation, or false if no error has occured</div>
</dd>
</dl>
<a name="g"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">g</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<img src="media/images/Class.png" alt="Class" title="Class" /></title>
GeSHi
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html">GeSHi</a> in geshi.php</div>
<div class="index-item-description">The GeSHi Class.</div>
</dd>
<dt class="field">
<img src="media/images/Constructor.png" alt="Method" title="Method" /></title>
<span class="method-title">GeSHi</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodGeSHi">GeSHi::GeSHi()</a> in geshi.php</div>
<div class="index-item-description">Creates a new GeSHi object, with source and language</div>
</dd>
<dt class="field">
<img src="media/images/Page.png" alt="Page" title="Page" /></title>
<span class="include-title">geshi.php</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html">geshi.php</a> in geshi.php</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_ACTIVE</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_ACTIVE">GESHI_ACTIVE</a> in geshi.php</div>
<div class="index-item-description">Links in the source in the :active state</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_CAPS_LOWER</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_CAPS_LOWER">GESHI_CAPS_LOWER</a> in geshi.php</div>
<div class="index-item-description">Leave keywords found as the case that they are</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_CAPS_NO_CHANGE</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_CAPS_NO_CHANGE">GESHI_CAPS_NO_CHANGE</a> in geshi.php</div>
<div class="index-item-description">Lowercase keywords found</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_CAPS_UPPER</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_CAPS_UPPER">GESHI_CAPS_UPPER</a> in geshi.php</div>
<div class="index-item-description">Uppercase keywords found</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_END_IMPORTANT</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_END_IMPORTANT">GESHI_END_IMPORTANT</a> in geshi.php</div>
<div class="index-item-description">The ender for important parts of the source</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_FANCY_LINE_NUMBERS</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_FANCY_LINE_NUMBERS">GESHI_FANCY_LINE_NUMBERS</a> in geshi.php</div>
<div class="index-item-description">Use fancy line numbers when building the result</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_HEADER_DIV</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_HEADER_DIV">GESHI_HEADER_DIV</a> in geshi.php</div>
<div class="index-item-description">Use a &quot;div&quot; to surround the source</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_HEADER_NONE</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_HEADER_NONE">GESHI_HEADER_NONE</a> in geshi.php</div>
<div class="index-item-description">Use nothing to surround the source</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_HEADER_PRE</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_HEADER_PRE">GESHI_HEADER_PRE</a> in geshi.php</div>
<div class="index-item-description">Use a &quot;pre&quot; to surround the source</div>
</dd>
<dt class="field">
<img src="media/images/Function.png" alt="Function" title="Function" /></title>
<span class="method-title">geshi_highlight</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#functiongeshi_highlight">geshi_highlight()</a> in geshi.php</div>
<div class="index-item-description">Easy way to highlight stuff. Behaves just like highlight_string</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_HOVER</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_HOVER">GESHI_HOVER</a> in geshi.php</div>
<div class="index-item-description">Links in the source in the :hover state</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_LANG_ROOT</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_LANG_ROOT">GESHI_LANG_ROOT</a> in geshi.php</div>
<div class="index-item-description">The language file directory for GeSHi</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_LINK</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_LINK">GESHI_LINK</a> in geshi.php</div>
<div class="index-item-description">Links in the source in the :link state</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_NORMAL_LINE_NUMBERS</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_NORMAL_LINE_NUMBERS">GESHI_NORMAL_LINE_NUMBERS</a> in geshi.php</div>
<div class="index-item-description">Use normal line numbers when building the result</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_NO_LINE_NUMBERS</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_NO_LINE_NUMBERS">GESHI_NO_LINE_NUMBERS</a> in geshi.php</div>
<div class="index-item-description">Use no line numbers when building the result</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_ROOT</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_ROOT">GESHI_ROOT</a> in geshi.php</div>
<div class="index-item-description">The root directory for GeSHi</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_START_IMPORTANT</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_START_IMPORTANT">GESHI_START_IMPORTANT</a> in geshi.php</div>
<div class="index-item-description">The starter for important parts of the source</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_VERSION</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_VERSION">GESHI_VERSION</a> in geshi.php</div>
<div class="index-item-description">The version of this GeSHi file</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_VISITED</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_VISITED">GESHI_VISITED</a> in geshi.php</div>
<div class="index-item-description">Links in the source in the :visited state</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">get_language_name</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodget_language_name">GeSHi::get_language_name()</a> in geshi.php</div>
<div class="index-item-description">Gets a human-readable language name (thanks to Simon Patterson for the idea :))</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">get_language_name_from_extension</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodget_language_name_from_extension">GeSHi::get_language_name_from_extension()</a> in geshi.php</div>
<div class="index-item-description">Given a file extension, this method returns either a valid geshi language name, or the empty string if it couldn't be found</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">get_stylesheet</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodget_stylesheet">GeSHi::get_stylesheet()</a> in geshi.php</div>
<div class="index-item-description">Returns a stylesheet for the highlighted code. If $economy mode is true, we only return the stylesheet declarations that matter for this code block instead of the whole thing</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">get_time</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodget_time">GeSHi::get_time()</a> in geshi.php</div>
<div class="index-item-description">Gets the time taken to parse the code</div>
</dd>
</dl>
<a name="h"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">h</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">highlight_lines_extra</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodhighlight_lines_extra">GeSHi::highlight_lines_extra()</a> in geshi.php</div>
<div class="index-item-description">Specifies which lines to highlight extra</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">hsc</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodhsc">GeSHi::hsc()</a> in geshi.php</div>
<div class="index-item-description">Secure replacement for PHP built-in function htmlspecialchars().</div>
</dd>
</dl>
<a name="l"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">l</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">load_from_file</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodload_from_file">GeSHi::load_from_file()</a> in geshi.php</div>
<div class="index-item-description">Given a file name, this method loads its contents in, and attempts</div>
</dd>
</dl>
<a name="p"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">p</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">parse_code</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodparse_code">GeSHi::parse_code()</a> in geshi.php</div>
<div class="index-item-description">Returns the code in $this-&gt;source, highlighted and surrounded by the nessecary HTML.</div>
</dd>
</dl>
<a name="r"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">r</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">remove_keyword</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodremove_keyword">GeSHi::remove_keyword()</a> in geshi.php</div>
<div class="index-item-description">Removes a keyword from a keyword group</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">remove_keyword_group</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodremove_keyword_group">GeSHi::remove_keyword_group()</a> in geshi.php</div>
<div class="index-item-description">Removes a keyword group</div>
</dd>
</dl>
<a name="s"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">s</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_brackets_highlighting</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_brackets_highlighting">GeSHi::set_brackets_highlighting()</a> in geshi.php</div>
<div class="index-item-description">Turns highlighting on/off for brackets</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_brackets_style</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_brackets_style">GeSHi::set_brackets_style()</a> in geshi.php</div>
<div class="index-item-description">Sets the styles for brackets. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_case_keywords</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_case_keywords">GeSHi::set_case_keywords()</a> in geshi.php</div>
<div class="index-item-description">Sets the case that keywords should use when found. Use the constants:</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_case_sensitivity</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_case_sensitivity">GeSHi::set_case_sensitivity()</a> in geshi.php</div>
<div class="index-item-description">Sets whether a set of keywords are checked for in a case sensitive manner</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_code_style</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_code_style">GeSHi::set_code_style()</a> in geshi.php</div>
<div class="index-item-description">Sets the style for the actual code. This should be a string</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_comments_highlighting</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_comments_highlighting">GeSHi::set_comments_highlighting()</a> in geshi.php</div>
<div class="index-item-description">Turns highlighting on/off for comment groups</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_comments_style</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_comments_style">GeSHi::set_comments_style()</a> in geshi.php</div>
<div class="index-item-description">Sets the styles for comment groups. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_encoding</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_encoding">GeSHi::set_encoding()</a> in geshi.php</div>
<div class="index-item-description">Sets the encoding used for htmlspecialchars(), for international support.</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_escape_characters_highlighting</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_escape_characters_highlighting">GeSHi::set_escape_characters_highlighting()</a> in geshi.php</div>
<div class="index-item-description">Turns highlighting on/off for escaped characters</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_escape_characters_style</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_escape_characters_style">GeSHi::set_escape_characters_style()</a> in geshi.php</div>
<div class="index-item-description">Sets the styles for escaped characters. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_footer_content</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_footer_content">GeSHi::set_footer_content()</a> in geshi.php</div>
<div class="index-item-description">Sets the content of the footer block</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_footer_content_style</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_footer_content_style">GeSHi::set_footer_content_style()</a> in geshi.php</div>
<div class="index-item-description">Sets the style for the footer content</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_header_content</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_header_content">GeSHi::set_header_content()</a> in geshi.php</div>
<div class="index-item-description">Sets the content of the header block</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_header_content_style</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_header_content_style">GeSHi::set_header_content_style()</a> in geshi.php</div>
<div class="index-item-description">Sets the style for the header content</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_header_type</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_header_type">GeSHi::set_header_type()</a> in geshi.php</div>
<div class="index-item-description">Sets the type of header to be used.</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_highlight_lines_extra_style</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_highlight_lines_extra_style">GeSHi::set_highlight_lines_extra_style()</a> in geshi.php</div>
<div class="index-item-description">Sets the style for extra-highlighted lines</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_important_styles</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_important_styles">GeSHi::set_important_styles()</a> in geshi.php</div>
<div class="index-item-description">Sets styles for important parts of the code</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_keyword_group_highlighting</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_keyword_group_highlighting">GeSHi::set_keyword_group_highlighting()</a> in geshi.php</div>
<div class="index-item-description">Turns highlighting on/off for a keyword group</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_keyword_group_style</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_keyword_group_style">GeSHi::set_keyword_group_style()</a> in geshi.php</div>
<div class="index-item-description">Sets the style for a keyword group. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_language</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_language">GeSHi::set_language()</a> in geshi.php</div>
<div class="index-item-description">Sets the language for this object</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_language_path</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_language_path">GeSHi::set_language_path()</a> in geshi.php</div>
<div class="index-item-description">Sets the path to the directory containing the language files. Note that this path is relative to the directory of the script that included geshi.php, NOT geshi.php itself.</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_line_style</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_line_style">GeSHi::set_line_style()</a> in geshi.php</div>
<div class="index-item-description">Sets the styles for the line numbers.</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_link_styles</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_link_styles">GeSHi::set_link_styles()</a> in geshi.php</div>
<div class="index-item-description">Sets styles for links in code</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_link_target</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_link_target">GeSHi::set_link_target()</a> in geshi.php</div>
<div class="index-item-description">Sets the target for links in code</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_methods_highlighting</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_methods_highlighting">GeSHi::set_methods_highlighting()</a> in geshi.php</div>
<div class="index-item-description">Turns highlighting on/off for methods</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_methods_style</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_methods_style">GeSHi::set_methods_style()</a> in geshi.php</div>
<div class="index-item-description">Sets the styles for methods. $key is a number that references the</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_numbers_highlighting</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_numbers_highlighting">GeSHi::set_numbers_highlighting()</a> in geshi.php</div>
<div class="index-item-description">Turns highlighting on/off for numbers</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_numbers_style</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_numbers_style">GeSHi::set_numbers_style()</a> in geshi.php</div>
<div class="index-item-description">Sets the styles for numbers. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_overall_class</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_overall_class">GeSHi::set_overall_class()</a> in geshi.php</div>
<div class="index-item-description">Sets the overall classname for this block of code. This class can then be used in a stylesheet to style this object's output</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_overall_id</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_overall_id">GeSHi::set_overall_id()</a> in geshi.php</div>
<div class="index-item-description">Sets the overall id for this block of code. This id can then be used in a stylesheet to style this object's output</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_overall_style</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_overall_style">GeSHi::set_overall_style()</a> in geshi.php</div>
<div class="index-item-description">Sets the styles for the code that will be outputted when this object is parsed. The style should be a string of valid stylesheet declarations</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_regexps_highlighting</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_regexps_highlighting">GeSHi::set_regexps_highlighting()</a> in geshi.php</div>
<div class="index-item-description">Turns highlighting on/off for regexps</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_regexps_style</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_regexps_style">GeSHi::set_regexps_style()</a> in geshi.php</div>
<div class="index-item-description">Sets the styles for regexps. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_source</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_source">GeSHi::set_source()</a> in geshi.php</div>
<div class="index-item-description">Sets the source code for this object</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_strings_highlighting</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_strings_highlighting">GeSHi::set_strings_highlighting()</a> in geshi.php</div>
<div class="index-item-description">Turns highlighting on/off for strings</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_strings_style</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_strings_style">GeSHi::set_strings_style()</a> in geshi.php</div>
<div class="index-item-description">Sets the styles for strings. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_symbols_highlighting</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_symbols_highlighting">GeSHi::set_symbols_highlighting()</a> in geshi.php</div>
<div class="index-item-description">Turns highlighting on/off for symbols</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_symbols_style</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_symbols_style">GeSHi::set_symbols_style()</a> in geshi.php</div>
<div class="index-item-description">Sets the styles for symbols. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_tab_width</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_tab_width">GeSHi::set_tab_width()</a> in geshi.php</div>
<div class="index-item-description">Sets how many spaces a tab is substituted for</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_url_for_keyword_group</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_url_for_keyword_group">GeSHi::set_url_for_keyword_group()</a> in geshi.php</div>
<div class="index-item-description">Sets the base URL to be used for keywords</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">start_line_numbers_at</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodstart_line_numbers_at">GeSHi::start_line_numbers_at()</a> in geshi.php</div>
<div class="index-item-description">Sets what number line numbers should start at. Should be a positive integer, and will be converted to one.</div>
</dd>
</dl>
<div class="index-letter-menu">
<a class="index-letter" href="elementindex.html#a">a</a>
<a class="index-letter" href="elementindex.html#d">d</a>
<a class="index-letter" href="elementindex.html#e">e</a>
<a class="index-letter" href="elementindex.html#g">g</a>
<a class="index-letter" href="elementindex.html#h">h</a>
<a class="index-letter" href="elementindex.html#l">l</a>
<a class="index-letter" href="elementindex.html#p">p</a>
<a class="index-letter" href="elementindex.html#r">r</a>
<a class="index-letter" href="elementindex.html#s">s</a>
</div> </body>
</html>

View File

@ -0,0 +1,782 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title></title>
<link rel="stylesheet" href="media/stylesheet.css" />
<meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
</head>
<body>
<a name="top"></a>
<h2>[geshi] element index</h2>
<a href="elementindex.html">All elements</a>
<br />
<div class="index-letter-menu">
<a class="index-letter" href="elementindex_geshi.html#a">a</a>
<a class="index-letter" href="elementindex_geshi.html#d">d</a>
<a class="index-letter" href="elementindex_geshi.html#e">e</a>
<a class="index-letter" href="elementindex_geshi.html#g">g</a>
<a class="index-letter" href="elementindex_geshi.html#h">h</a>
<a class="index-letter" href="elementindex_geshi.html#l">l</a>
<a class="index-letter" href="elementindex_geshi.html#p">p</a>
<a class="index-letter" href="elementindex_geshi.html#r">r</a>
<a class="index-letter" href="elementindex_geshi.html#s">s</a>
</div>
<a name="a"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">a</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">add_keyword</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodadd_keyword">GeSHi::add_keyword()</a> in geshi.php</div>
<div class="index-item-description">Adds a keyword to a keyword group for highlighting</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">add_keyword_group</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodadd_keyword_group">GeSHi::add_keyword_group()</a> in geshi.php</div>
<div class="index-item-description">Creates a new keyword group</div>
</dd>
</dl>
<a name="d"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">d</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">disable_highlighting</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methoddisable_highlighting">GeSHi::disable_highlighting()</a> in geshi.php</div>
<div class="index-item-description">Disables all highlighting</div>
</dd>
</dl>
<a name="e"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">e</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">enable_classes</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodenable_classes">GeSHi::enable_classes()</a> in geshi.php</div>
<div class="index-item-description">Sets whether CSS classes should be used to highlight the source. Default is off, calling this method with no arguments will turn it on</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">enable_highlighting</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodenable_highlighting">GeSHi::enable_highlighting()</a> in geshi.php</div>
<div class="index-item-description">Enables all highlighting</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">enable_ids</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodenable_ids">GeSHi::enable_ids()</a> in geshi.php</div>
<div class="index-item-description">Whether CSS IDs should be added to each line</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">enable_important_blocks</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodenable_important_blocks">GeSHi::enable_important_blocks()</a> in geshi.php</div>
<div class="index-item-description">Sets whether context-important blocks are highlighted</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">enable_keyword_links</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodenable_keyword_links">GeSHi::enable_keyword_links()</a> in geshi.php</div>
<div class="index-item-description">Turns linking of keywords on or off.</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">enable_line_numbers</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodenable_line_numbers">GeSHi::enable_line_numbers()</a> in geshi.php</div>
<div class="index-item-description">Sets whether line numbers should be displayed.</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">enable_strict_mode</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodenable_strict_mode">GeSHi::enable_strict_mode()</a> in geshi.php</div>
<div class="index-item-description">Enables/disables strict highlighting. Default is off, calling this method without parameters will turn it on. See documentation for more details on strict mode and where to use it.</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">error</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methoderror">GeSHi::error()</a> in geshi.php</div>
<div class="index-item-description">Returns an error message associated with the last GeSHi operation, or false if no error has occured</div>
</dd>
</dl>
<a name="g"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">g</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<img src="media/images/Class.png" alt="Class" title="Class" /></title>
GeSHi
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html">GeSHi</a> in geshi.php</div>
<div class="index-item-description">The GeSHi Class.</div>
</dd>
<dt class="field">
<img src="media/images/Constructor.png" alt="Method" title="Method" /></title>
<span class="method-title">GeSHi</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodGeSHi">GeSHi::GeSHi()</a> in geshi.php</div>
<div class="index-item-description">Creates a new GeSHi object, with source and language</div>
</dd>
<dt class="field">
<img src="media/images/Page.png" alt="Page" title="Page" /></title>
<span class="include-title">geshi.php</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html">geshi.php</a> in geshi.php</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_ACTIVE</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_ACTIVE">GESHI_ACTIVE</a> in geshi.php</div>
<div class="index-item-description">Links in the source in the :active state</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_CAPS_LOWER</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_CAPS_LOWER">GESHI_CAPS_LOWER</a> in geshi.php</div>
<div class="index-item-description">Leave keywords found as the case that they are</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_CAPS_NO_CHANGE</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_CAPS_NO_CHANGE">GESHI_CAPS_NO_CHANGE</a> in geshi.php</div>
<div class="index-item-description">Lowercase keywords found</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_CAPS_UPPER</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_CAPS_UPPER">GESHI_CAPS_UPPER</a> in geshi.php</div>
<div class="index-item-description">Uppercase keywords found</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_END_IMPORTANT</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_END_IMPORTANT">GESHI_END_IMPORTANT</a> in geshi.php</div>
<div class="index-item-description">The ender for important parts of the source</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_FANCY_LINE_NUMBERS</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_FANCY_LINE_NUMBERS">GESHI_FANCY_LINE_NUMBERS</a> in geshi.php</div>
<div class="index-item-description">Use fancy line numbers when building the result</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_HEADER_DIV</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_HEADER_DIV">GESHI_HEADER_DIV</a> in geshi.php</div>
<div class="index-item-description">Use a &quot;div&quot; to surround the source</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_HEADER_NONE</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_HEADER_NONE">GESHI_HEADER_NONE</a> in geshi.php</div>
<div class="index-item-description">Use nothing to surround the source</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_HEADER_PRE</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_HEADER_PRE">GESHI_HEADER_PRE</a> in geshi.php</div>
<div class="index-item-description">Use a &quot;pre&quot; to surround the source</div>
</dd>
<dt class="field">
<img src="media/images/Function.png" alt="Function" title="Function" /></title>
<span class="method-title">geshi_highlight</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#functiongeshi_highlight">geshi_highlight()</a> in geshi.php</div>
<div class="index-item-description">Easy way to highlight stuff. Behaves just like highlight_string</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_HOVER</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_HOVER">GESHI_HOVER</a> in geshi.php</div>
<div class="index-item-description">Links in the source in the :hover state</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_LANG_ROOT</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_LANG_ROOT">GESHI_LANG_ROOT</a> in geshi.php</div>
<div class="index-item-description">The language file directory for GeSHi</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_LINK</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_LINK">GESHI_LINK</a> in geshi.php</div>
<div class="index-item-description">Links in the source in the :link state</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_NORMAL_LINE_NUMBERS</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_NORMAL_LINE_NUMBERS">GESHI_NORMAL_LINE_NUMBERS</a> in geshi.php</div>
<div class="index-item-description">Use normal line numbers when building the result</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_NO_LINE_NUMBERS</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_NO_LINE_NUMBERS">GESHI_NO_LINE_NUMBERS</a> in geshi.php</div>
<div class="index-item-description">Use no line numbers when building the result</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_ROOT</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_ROOT">GESHI_ROOT</a> in geshi.php</div>
<div class="index-item-description">The root directory for GeSHi</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_START_IMPORTANT</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_START_IMPORTANT">GESHI_START_IMPORTANT</a> in geshi.php</div>
<div class="index-item-description">The starter for important parts of the source</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_VERSION</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_VERSION">GESHI_VERSION</a> in geshi.php</div>
<div class="index-item-description">The version of this GeSHi file</div>
</dd>
<dt class="field">
<img src="media/images/Constant.png" alt="Constant" title="Constant" /></title>
<span class="const-title">GESHI_VISITED</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/_geshi.php.html#defineGESHI_VISITED">GESHI_VISITED</a> in geshi.php</div>
<div class="index-item-description">Links in the source in the :visited state</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">get_language_name</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodget_language_name">GeSHi::get_language_name()</a> in geshi.php</div>
<div class="index-item-description">Gets a human-readable language name (thanks to Simon Patterson for the idea :))</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">get_language_name_from_extension</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodget_language_name_from_extension">GeSHi::get_language_name_from_extension()</a> in geshi.php</div>
<div class="index-item-description">Given a file extension, this method returns either a valid geshi language name, or the empty string if it couldn't be found</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">get_stylesheet</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodget_stylesheet">GeSHi::get_stylesheet()</a> in geshi.php</div>
<div class="index-item-description">Returns a stylesheet for the highlighted code. If $economy mode is true, we only return the stylesheet declarations that matter for this code block instead of the whole thing</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">get_time</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodget_time">GeSHi::get_time()</a> in geshi.php</div>
<div class="index-item-description">Gets the time taken to parse the code</div>
</dd>
</dl>
<a name="h"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">h</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">highlight_lines_extra</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodhighlight_lines_extra">GeSHi::highlight_lines_extra()</a> in geshi.php</div>
<div class="index-item-description">Specifies which lines to highlight extra</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">hsc</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodhsc">GeSHi::hsc()</a> in geshi.php</div>
<div class="index-item-description">Secure replacement for PHP built-in function htmlspecialchars().</div>
</dd>
</dl>
<a name="l"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">l</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">load_from_file</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodload_from_file">GeSHi::load_from_file()</a> in geshi.php</div>
<div class="index-item-description">Given a file name, this method loads its contents in, and attempts</div>
</dd>
</dl>
<a name="p"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">p</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">parse_code</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodparse_code">GeSHi::parse_code()</a> in geshi.php</div>
<div class="index-item-description">Returns the code in $this-&gt;source, highlighted and surrounded by the nessecary HTML.</div>
</dd>
</dl>
<a name="r"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">r</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">remove_keyword</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodremove_keyword">GeSHi::remove_keyword()</a> in geshi.php</div>
<div class="index-item-description">Removes a keyword from a keyword group</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">remove_keyword_group</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodremove_keyword_group">GeSHi::remove_keyword_group()</a> in geshi.php</div>
<div class="index-item-description">Removes a keyword group</div>
</dd>
</dl>
<a name="s"></a>
<div class="index-letter-section">
<div style="float: left" class="index-letter-title">s</div>
<div style="float: right"><a href="#top">top</a></div>
<div style="clear: both"></div>
</div>
<dl>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_brackets_highlighting</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_brackets_highlighting">GeSHi::set_brackets_highlighting()</a> in geshi.php</div>
<div class="index-item-description">Turns highlighting on/off for brackets</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_brackets_style</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_brackets_style">GeSHi::set_brackets_style()</a> in geshi.php</div>
<div class="index-item-description">Sets the styles for brackets. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_case_keywords</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_case_keywords">GeSHi::set_case_keywords()</a> in geshi.php</div>
<div class="index-item-description">Sets the case that keywords should use when found. Use the constants:</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_case_sensitivity</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_case_sensitivity">GeSHi::set_case_sensitivity()</a> in geshi.php</div>
<div class="index-item-description">Sets whether a set of keywords are checked for in a case sensitive manner</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_code_style</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_code_style">GeSHi::set_code_style()</a> in geshi.php</div>
<div class="index-item-description">Sets the style for the actual code. This should be a string</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_comments_highlighting</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_comments_highlighting">GeSHi::set_comments_highlighting()</a> in geshi.php</div>
<div class="index-item-description">Turns highlighting on/off for comment groups</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_comments_style</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_comments_style">GeSHi::set_comments_style()</a> in geshi.php</div>
<div class="index-item-description">Sets the styles for comment groups. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_encoding</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_encoding">GeSHi::set_encoding()</a> in geshi.php</div>
<div class="index-item-description">Sets the encoding used for htmlspecialchars(), for international support.</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_escape_characters_highlighting</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_escape_characters_highlighting">GeSHi::set_escape_characters_highlighting()</a> in geshi.php</div>
<div class="index-item-description">Turns highlighting on/off for escaped characters</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_escape_characters_style</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_escape_characters_style">GeSHi::set_escape_characters_style()</a> in geshi.php</div>
<div class="index-item-description">Sets the styles for escaped characters. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_footer_content</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_footer_content">GeSHi::set_footer_content()</a> in geshi.php</div>
<div class="index-item-description">Sets the content of the footer block</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_footer_content_style</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_footer_content_style">GeSHi::set_footer_content_style()</a> in geshi.php</div>
<div class="index-item-description">Sets the style for the footer content</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_header_content</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_header_content">GeSHi::set_header_content()</a> in geshi.php</div>
<div class="index-item-description">Sets the content of the header block</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_header_content_style</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_header_content_style">GeSHi::set_header_content_style()</a> in geshi.php</div>
<div class="index-item-description">Sets the style for the header content</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_header_type</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_header_type">GeSHi::set_header_type()</a> in geshi.php</div>
<div class="index-item-description">Sets the type of header to be used.</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_highlight_lines_extra_style</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_highlight_lines_extra_style">GeSHi::set_highlight_lines_extra_style()</a> in geshi.php</div>
<div class="index-item-description">Sets the style for extra-highlighted lines</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_important_styles</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_important_styles">GeSHi::set_important_styles()</a> in geshi.php</div>
<div class="index-item-description">Sets styles for important parts of the code</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_keyword_group_highlighting</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_keyword_group_highlighting">GeSHi::set_keyword_group_highlighting()</a> in geshi.php</div>
<div class="index-item-description">Turns highlighting on/off for a keyword group</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_keyword_group_style</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_keyword_group_style">GeSHi::set_keyword_group_style()</a> in geshi.php</div>
<div class="index-item-description">Sets the style for a keyword group. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_language</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_language">GeSHi::set_language()</a> in geshi.php</div>
<div class="index-item-description">Sets the language for this object</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_language_path</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_language_path">GeSHi::set_language_path()</a> in geshi.php</div>
<div class="index-item-description">Sets the path to the directory containing the language files. Note that this path is relative to the directory of the script that included geshi.php, NOT geshi.php itself.</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_line_style</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_line_style">GeSHi::set_line_style()</a> in geshi.php</div>
<div class="index-item-description">Sets the styles for the line numbers.</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_link_styles</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_link_styles">GeSHi::set_link_styles()</a> in geshi.php</div>
<div class="index-item-description">Sets styles for links in code</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_link_target</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_link_target">GeSHi::set_link_target()</a> in geshi.php</div>
<div class="index-item-description">Sets the target for links in code</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_methods_highlighting</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_methods_highlighting">GeSHi::set_methods_highlighting()</a> in geshi.php</div>
<div class="index-item-description">Turns highlighting on/off for methods</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_methods_style</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_methods_style">GeSHi::set_methods_style()</a> in geshi.php</div>
<div class="index-item-description">Sets the styles for methods. $key is a number that references the</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_numbers_highlighting</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_numbers_highlighting">GeSHi::set_numbers_highlighting()</a> in geshi.php</div>
<div class="index-item-description">Turns highlighting on/off for numbers</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_numbers_style</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_numbers_style">GeSHi::set_numbers_style()</a> in geshi.php</div>
<div class="index-item-description">Sets the styles for numbers. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_overall_class</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_overall_class">GeSHi::set_overall_class()</a> in geshi.php</div>
<div class="index-item-description">Sets the overall classname for this block of code. This class can then be used in a stylesheet to style this object's output</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_overall_id</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_overall_id">GeSHi::set_overall_id()</a> in geshi.php</div>
<div class="index-item-description">Sets the overall id for this block of code. This id can then be used in a stylesheet to style this object's output</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_overall_style</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_overall_style">GeSHi::set_overall_style()</a> in geshi.php</div>
<div class="index-item-description">Sets the styles for the code that will be outputted when this object is parsed. The style should be a string of valid stylesheet declarations</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_regexps_highlighting</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_regexps_highlighting">GeSHi::set_regexps_highlighting()</a> in geshi.php</div>
<div class="index-item-description">Turns highlighting on/off for regexps</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_regexps_style</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_regexps_style">GeSHi::set_regexps_style()</a> in geshi.php</div>
<div class="index-item-description">Sets the styles for regexps. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_source</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_source">GeSHi::set_source()</a> in geshi.php</div>
<div class="index-item-description">Sets the source code for this object</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_strings_highlighting</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_strings_highlighting">GeSHi::set_strings_highlighting()</a> in geshi.php</div>
<div class="index-item-description">Turns highlighting on/off for strings</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_strings_style</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_strings_style">GeSHi::set_strings_style()</a> in geshi.php</div>
<div class="index-item-description">Sets the styles for strings. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_symbols_highlighting</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_symbols_highlighting">GeSHi::set_symbols_highlighting()</a> in geshi.php</div>
<div class="index-item-description">Turns highlighting on/off for symbols</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_symbols_style</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_symbols_style">GeSHi::set_symbols_style()</a> in geshi.php</div>
<div class="index-item-description">Sets the styles for symbols. If $preserve_defaults is true, then styles are merged with the default styles, with the user defined styles having priority</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_tab_width</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_tab_width">GeSHi::set_tab_width()</a> in geshi.php</div>
<div class="index-item-description">Sets how many spaces a tab is substituted for</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">set_url_for_keyword_group</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodset_url_for_keyword_group">GeSHi::set_url_for_keyword_group()</a> in geshi.php</div>
<div class="index-item-description">Sets the base URL to be used for keywords</div>
</dd>
<dt class="field">
<img src="media/images/Method.png" alt="Method" title="Method" /></title>
<span class="method-title">start_line_numbers_at</span>
</dt>
<dd class="index-item-body">
<div class="index-item-details"><a href="geshi/core/GeSHi.html#methodstart_line_numbers_at">GeSHi::start_line_numbers_at()</a> in geshi.php</div>
<div class="index-item-description">Sets what number line numbers should start at. Should be a positive integer, and will be converted to one.</div>
</dd>
</dl>
<div class="index-letter-menu">
<a class="index-letter" href="elementindex_geshi.html#a">a</a>
<a class="index-letter" href="elementindex_geshi.html#d">d</a>
<a class="index-letter" href="elementindex_geshi.html#e">e</a>
<a class="index-letter" href="elementindex_geshi.html#g">g</a>
<a class="index-letter" href="elementindex_geshi.html#h">h</a>
<a class="index-letter" href="elementindex_geshi.html#l">l</a>
<a class="index-letter" href="elementindex_geshi.html#p">p</a>
<a class="index-letter" href="elementindex_geshi.html#r">r</a>
<a class="index-letter" href="elementindex_geshi.html#s">s</a>
</div> </body>
</html>

View File

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>phpDocumentor Parser Errors and Warnings</title>
<link rel="stylesheet" href="media/stylesheet.css" />
<meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
</head>
<body>
<a href="#Post-parsing">Post-parsing</a><br>
<p class="notes" id="credit">
Documentation generated on Sun, 25 Feb 2007 21:29:34 +1300 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.3.0</a>
</p>
</body>
</html>

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,425 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>Docs for page geshi.php</title>
<link rel="stylesheet" href="../../media/stylesheet.css" />
<meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
</head>
<body>
<div class="page-body">
<h2 class="file-name"><img src="../../media/images/Page_logo.png" alt="File" style="vertical-align: middle">/geshi.php</h2>
<a name="sec-description"></a>
<div class="info-box">
<div class="info-box-title">Description</div>
<div class="nav-bar">
<span class="disabled">Description</span> |
<a href="#sec-classes">Classes</a>
| <a href="#sec-constants">Constants</a>
| <a href="#sec-functions">Functions</a>
</div>
<div class="info-box-body">
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">GeSHi - Generic Syntax Highlighter</p>
<p class="description"><p>The GeSHi class for Generic Syntax Highlighting. Please refer to the documentation at http://qbnz.com/highlighter/documentation.php for more information about how to use this class.</p><p>For changes, release notes, TODOs etc, see the relevant files in the docs/ directory.</p><p>This file is part of GeSHi.</p><p>GeSHi is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.</p><p>GeSHi is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.</p><p>You should have received a copy of the GNU General Public License along with GeSHi; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA</p></p>
<ul class="tags">
<li><span class="field">license:</span> <a href="http://gnu.org/copyleft/gpl.html">GNU GPL</a></li>
<li><span class="field">copyright:</span> (C) 2004 - 2007 Nigel McNie</li>
<li><span class="field">author:</span> Nigel McNie &lt;<a href="mailto:nigel@geshi.org">nigel@geshi.org</a>&gt;</li>
</ul>
</div>
</div>
<a name="sec-classes"></a>
<div class="info-box">
<div class="info-box-title">Classes</div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<span class="disabled">Classes</span>
| <a href="#sec-constants">Constants</a>
| <a href="#sec-functions">Functions</a>
</div>
<div class="info-box-body">
<table cellpadding="2" cellspacing="0" class="class-table">
<tr>
<th class="class-table-header">Class</th>
<th class="class-table-header">Description</th>
</tr>
<tr>
<td style="padding-right: 2em; vertical-align: top; white-space: nowrap">
<img src="../../media/images/Class.png"
alt=" class"
title=" class"/>
<a href="../../geshi/core/GeSHi.html">GeSHi</a>
</td>
<td>
The GeSHi Class.
</td>
</tr>
</table>
</div>
</div>
<a name="sec-constants"></a>
<div class="info-box">
<div class="info-box-title">Constants</div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<a href="#sec-classes">Classes</a>
| <span class="disabled">Constants</span>
| <a href="#sec-functions">Functions</a>
</div>
<div class="info-box-body">
<a name="defineGESHI_ACTIVE"><!-- --></a>
<div class="oddrow">
<div>
<img src="../../media/images/Constant.png" />
<span class="const-title">
<span class="const-name">GESHI_ACTIVE</span> = 2
(line <span class="line-number">86</span>)
</span>
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Links in the source in the :active state</p>
</div>
<a name="defineGESHI_CAPS_LOWER"><!-- --></a>
<div class="evenrow">
<div>
<img src="../../media/images/Constant.png" />
<span class="const-title">
<span class="const-name">GESHI_CAPS_LOWER</span> = 2
(line <span class="line-number">78</span>)
</span>
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Leave keywords found as the case that they are</p>
</div>
<a name="defineGESHI_CAPS_NO_CHANGE"><!-- --></a>
<div class="oddrow">
<div>
<img src="../../media/images/Constant.png" />
<span class="const-title">
<span class="const-name">GESHI_CAPS_NO_CHANGE</span> = 0
(line <span class="line-number">74</span>)
</span>
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Lowercase keywords found</p>
</div>
<a name="defineGESHI_CAPS_UPPER"><!-- --></a>
<div class="evenrow">
<div>
<img src="../../media/images/Constant.png" />
<span class="const-title">
<span class="const-name">GESHI_CAPS_UPPER</span> = 1
(line <span class="line-number">76</span>)
</span>
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Uppercase keywords found</p>
</div>
<a name="defineGESHI_END_IMPORTANT"><!-- --></a>
<div class="oddrow">
<div>
<img src="../../media/images/Constant.png" />
<span class="const-title">
<span class="const-name">GESHI_END_IMPORTANT</span> = '&lt;END GeSHi&gt;'
(line <span class="line-number">96</span>)
</span>
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">The ender for important parts of the source</p>
</div>
<a name="defineGESHI_FANCY_LINE_NUMBERS"><!-- --></a>
<div class="evenrow">
<div>
<img src="../../media/images/Constant.png" />
<span class="const-title">
<span class="const-name">GESHI_FANCY_LINE_NUMBERS</span> = 2
(line <span class="line-number">62</span>)
</span>
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Use fancy line numbers when building the result</p>
</div>
<a name="defineGESHI_HEADER_DIV"><!-- --></a>
<div class="oddrow">
<div>
<img src="../../media/images/Constant.png" />
<span class="const-title">
<span class="const-name">GESHI_HEADER_DIV</span> = 1
(line <span class="line-number">68</span>)
</span>
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Use a &quot;div&quot; to surround the source</p>
</div>
<a name="defineGESHI_HEADER_NONE"><!-- --></a>
<div class="evenrow">
<div>
<img src="../../media/images/Constant.png" />
<span class="const-title">
<span class="const-name">GESHI_HEADER_NONE</span> = 0
(line <span class="line-number">66</span>)
</span>
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Use nothing to surround the source</p>
</div>
<a name="defineGESHI_HEADER_PRE"><!-- --></a>
<div class="oddrow">
<div>
<img src="../../media/images/Constant.png" />
<span class="const-title">
<span class="const-name">GESHI_HEADER_PRE</span> = 2
(line <span class="line-number">70</span>)
</span>
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Use a &quot;pre&quot; to surround the source</p>
</div>
<a name="defineGESHI_HOVER"><!-- --></a>
<div class="evenrow">
<div>
<img src="../../media/images/Constant.png" />
<span class="const-title">
<span class="const-name">GESHI_HOVER</span> = 1
(line <span class="line-number">84</span>)
</span>
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Links in the source in the :hover state</p>
</div>
<a name="defineGESHI_LANG_ROOT"><!-- --></a>
<div class="oddrow">
<div>
<img src="../../media/images/Constant.png" />
<span class="const-title">
<span class="const-name">GESHI_LANG_ROOT</span> = GESHI_ROOT.'geshi'.DIRECTORY_SEPARATOR
(line <span class="line-number">53</span>)
</span>
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">The language file directory for GeSHi</p>
</div>
<a name="defineGESHI_LINK"><!-- --></a>
<div class="evenrow">
<div>
<img src="../../media/images/Constant.png" />
<span class="const-title">
<span class="const-name">GESHI_LINK</span> = 0
(line <span class="line-number">82</span>)
</span>
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Links in the source in the :link state</p>
</div>
<a name="defineGESHI_NORMAL_LINE_NUMBERS"><!-- --></a>
<div class="oddrow">
<div>
<img src="../../media/images/Constant.png" />
<span class="const-title">
<span class="const-name">GESHI_NORMAL_LINE_NUMBERS</span> = 1
(line <span class="line-number">60</span>)
</span>
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Use normal line numbers when building the result</p>
</div>
<a name="defineGESHI_NO_LINE_NUMBERS"><!-- --></a>
<div class="evenrow">
<div>
<img src="../../media/images/Constant.png" />
<span class="const-title">
<span class="const-name">GESHI_NO_LINE_NUMBERS</span> = 0
(line <span class="line-number">58</span>)
</span>
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Use no line numbers when building the result</p>
</div>
<a name="defineGESHI_ROOT"><!-- --></a>
<div class="oddrow">
<div>
<img src="../../media/images/Constant.png" />
<span class="const-title">
<span class="const-name">GESHI_ROOT</span> = dirname(__FILE__).DIRECTORY_SEPARATOR
(line <span class="line-number">49</span>)
</span>
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">The root directory for GeSHi</p>
</div>
<a name="defineGESHI_START_IMPORTANT"><!-- --></a>
<div class="evenrow">
<div>
<img src="../../media/images/Constant.png" />
<span class="const-title">
<span class="const-name">GESHI_START_IMPORTANT</span> = '&lt;BEGIN GeSHi&gt;'
(line <span class="line-number">94</span>)
</span>
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">The starter for important parts of the source</p>
</div>
<a name="defineGESHI_VERSION"><!-- --></a>
<div class="oddrow">
<div>
<img src="../../media/images/Constant.png" />
<span class="const-title">
<span class="const-name">GESHI_VERSION</span> = '1.0.7.18'
(line <span class="line-number">44</span>)
</span>
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">The version of this GeSHi file</p>
</div>
<a name="defineGESHI_VISITED"><!-- --></a>
<div class="evenrow">
<div>
<img src="../../media/images/Constant.png" />
<span class="const-title">
<span class="const-name">GESHI_VISITED</span> = 3
(line <span class="line-number">88</span>)
</span>
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Links in the source in the :visited state</p>
</div>
</div>
</div>
<a name="sec-functions"></a>
<div class="info-box">
<div class="info-box-title">Functions</div>
<div class="nav-bar">
<a href="#sec-description">Description</a> |
<a href="#sec-classes">Classes</a>
| <a href="#sec-constants">Constants</a>
| <span class="disabled">Functions</span>
</div>
<div class="info-box-body">
<a name="functiongeshi_highlight" id="functiongeshi_highlight"><!-- --></a>
<div class="oddrow">
<div>
<img src="../../media/images/Function.png" />
<span class="method-title">geshi_highlight</span> (line <span class="line-number">2809</span>)
</div>
<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Easy way to highlight stuff. Behaves just like highlight_string</p>
<ul class="tags">
<li><span class="field">return:</span> The code highlighted (if $return is true)</li>
<li><span class="field">since:</span> 1.0.2</li>
</ul>
<div class="method-signature">
<span class="method-result">string</span>
<span class="method-name">
geshi_highlight
</span>
(<span class="var-type">string</span>&nbsp;<span class="var-name">$string</span>, <span class="var-type">string</span>&nbsp;<span class="var-name">$language</span>, [<span class="var-type">string</span>&nbsp;<span class="var-name">$path</span> = <span class="var-default">null</span>], [<span class="var-type">boolean</span>&nbsp;<span class="var-name">$return</span> = <span class="var-default">false</span>])
</div>
<ul class="parameters">
<li>
<span class="var-type">string</span>
<span class="var-name">$string</span><span class="var-description">: The code to highlight</span> </li>
<li>
<span class="var-type">string</span>
<span class="var-name">$language</span><span class="var-description">: The language to highlight the code in</span> </li>
<li>
<span class="var-type">string</span>
<span class="var-name">$path</span><span class="var-description">: The path to the language files. You can leave this blank if you need as from version 1.0.7 the path should be automatically detected</span> </li>
<li>
<span class="var-type">boolean</span>
<span class="var-name">$return</span><span class="var-description">: Whether to return the result or to echo</span> </li>
</ul>
</div>
</div>
</div>
<p class="notes" id="credit">
Documentation generated on Sun, 25 Feb 2007 21:29:33 +1300 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.3.0</a>
</p>
</div></body>
</html>

View File

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//FR"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- Generated by phpDocumentor on Sun, 25 Feb 2007 21:29:33 +1300 -->
<title>GeSHi</title>
<meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
</head>
<FRAMESET rows='120,*'>
<FRAME src='packages.html' name='left_top' frameborder="1" bordercolor="#999999">
<FRAMESET cols='25%,*'>
<FRAME src='li_geshi.html' name='left_bottom' frameborder="1" bordercolor="#999999">
<FRAME src='blank.html' name='right' frameborder="1" bordercolor="#999999">
</FRAMESET>
<NOFRAMES>
<H2>Frame Alert</H2>
<P>This document is designed to be viewed using the frames feature.
If you see this message, you are using a non-frame-capable web client.</P>
</NOFRAMES>
</FRAMESET>
</HTML>

View File

@ -0,0 +1,46 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title></title>
<link rel="stylesheet" href="media/stylesheet.css" />
<meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
</head>
<body>
<div class="package-title">geshi</div>
<div class="package-details">
<dl class="tree">
<dt class="folder-title">Description</dt>
<dd>
<a href='classtrees_geshi.html' target='right'>Class trees</a><br />
<a href='elementindex_geshi.html' target='right'>Index of elements</a><br />
<a href="todolist.html" target="right">Todo List</a><br />
</dd>
<dt class="sub-package"><img class="tree-icon" src="media/images/package.png" alt="Sub-package">core</dt>
<dd>
<dl class="tree">
<dt class="folder-title"><img class="tree-icon" src="media/images/class_folder.png" alt=" ">Classes</dt>
<dd><img class="tree-icon" src="media/images/Class.png" alt="Class"><a href='geshi/core/GeSHi.html' target='right'>GeSHi</a></dd>
<dt class="folder-title"><img class="tree-icon" src="media/images/function_folder.png" alt=" ">Functions</dt>
<dd><img class="tree-icon" src="media/images/Function.png" alt="Function"><a href='geshi/core/_geshi.php.html#functiongeshi_highlight' target='right'>geshi_highlight</a></dd>
<dt class="folder-title"><img class="tree-icon" src="media/images/folder.png" alt=" ">Files</dt>
<dd><img class="tree-icon" src="media/images/Page.png" alt="File"><a href='geshi/core/_geshi.php.html' target='right'>geshi.php</a></dd>
</dl>
</dd>
</dl>
</div>
<p class="notes"><a href="http://www.phpdoc.org" target="_blank">phpDocumentor v <span class="field">1.3.0</span></a></p>
</BODY>
</HTML>

View File

@ -0,0 +1,33 @@
body
{
background-color: #EEEEEE;
margin: 0px;
padding: 0px;
}
/* Banner (top bar) classes */
.banner { }
.banner-menu
{
text-align: right;
clear: both;
padding: .5em;
border-top: 2px solid #AAAAAA;
}
.banner-title
{
text-align: right;
font-size: 20pt;
font-weight: bold;
margin: .2em;
}
.package-selector
{
background-color: #DDDDDD;
border: 1px solid #AAAAAA;
color: #000090;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 620 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 696 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 848 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 874 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 570 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 752 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 865 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 956 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 596 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 712 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 148 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 584 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 153 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 219 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 224 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 661 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 592 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 790 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 918 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 772 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 661 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 688 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 152 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 207 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 222 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 688 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 144 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 633 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 90 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 462 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 492 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 605 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 657 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 543 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 668 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 564 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 644 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 541 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 431 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 572 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 668 B

View File

@ -0,0 +1,146 @@
a { color: #000090; text-decoration: none; }
a:hover, a:active, a:focus { color: highlighttext; background-color: highlight; text-decoration: none; }
body { background: #FFFFFF; }
body, table { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10pt; }
a img { border: 0px; }
/* Page layout/boxes */
.info-box { }
.info-box-title { margin: 1em 0em 0em 0em; font-weight: normal; font-size: 14pt; color: #999999; border-bottom: 2px solid #999999; }
.info-box-body { border: 1px solid #999999; padding: .5em; }
.nav-bar { font-size: 8pt; white-space: nowrap; text-align: right; padding: .2em; margin: 0em 0em 1em 0em; }
.oddrow { background-color: #F8F8F8; border: 1px solid #AAAAAA; padding: .5em; margin-bottom: 1em}
.evenrow { border: 1px solid #AAAAAA; padding: .5em; margin-bottom: 1em}
.page-body { max-width: 800px; margin: auto; }
.tree { white-space: nowrap; font: icon }
.tree dd { margin-left: 19px }
.tree dl { margin: 0px }
.tree-icon { vertical-align: middle; border: 0px; margin-right: 3px }
/* Index formatting classes */
.index-item-body { margin-top: .5em; margin-bottom: .5em}
.index-item-description { margin-top: .25em }
.index-item-details { font-weight: normal; font-style: italic; font-size: 8pt }
.index-letter-section { background-color: #EEEEEE; border: 1px dotted #999999; padding: .5em; margin-bottom: 1em}
.index-letter-title { font-size: 12pt; font-weight: bold }
.index-letter-menu { text-align: center; margin: 1em }
.index-letter { font-size: 12pt }
/* Docbook classes */
.description {}
.short-description { font-weight: bold; color: #666666; }
.tags { padding-left: 0em; margin-left: 3em; color: #666666; list-style-type: square; }
.parameters { padding-left: 0em; margin-left: 3em; color: #014fbe; list-style-type: square; }
.redefinitions { font-size: 8pt; padding-left: 0em; margin-left: 2em; }
.package { font-weight: bold; }
.package-title { font-weight: bold; font-size: 14pt; border-bottom: 1px solid black }
.package-details { font-size: 85%; }
.sub-package { font-weight: bold; }
.tutorial { border-width: thin; border-color: #0066ff; }
.tutorial-nav-box { width: 100%; border: 1px solid #999999; background-color: #F8F8F8; }
.folder-title { font-style: italic; font-family: Verdana, Arial, Helvetica, sans-serif }
/* Generic formatting */
.field { font-weight: bold; }
.detail { font-size: 8pt; }
.notes { font-style: italic; font-size: 8pt; }
.separator { background-color: #999999; height: 2px; }
.warning { color: #FF6600; }
.disabled { font-style: italic; color: #999999; }
/* Code elements */
.line-number { }
.class-table { width: 100%; }
.class-table-header { border-bottom: 1px dotted #666666; text-align: left}
.class-name { color: #0000AA; font-weight: bold; }
.method-summary { color: #009000; padding-left: 1em; font-size: 8pt; }
.method-header { }
.method-definition { margin-bottom: .2em }
.method-title { color: #009000; font-weight: bold; }
.method-name { font-weight: bold; }
.method-signature { font-size: 85%; color: #666666; margin: .5em 0em }
.method-result { font-style: italic; }
.var-summary { padding-left: 1em; font-size: 8pt; }
.var-header { }
.var-title { color: #014fbe; margin-bottom: .3em }
.var-type { font-style: italic; }
.var-name { font-weight: bold; }
.var-default {}
.var-description { font-weight: normal; color: #000000; }
.include-title { color: #014fbe;}
.include-type { font-style: italic; }
.include-name { font-weight: bold; }
.const-title { color: #FF6600; }
.const-name { font-weight: bold; }
/* Syntax highlighting */
.src-code { font-family: 'Courier New', Courier, monospace; font-weight: normal; }
.src-line { font-family: 'Courier New', Courier, monospace; font-weight: normal; }
.src-code a:link { padding: 1px; text-decoration: underline; color: #0000DD; }
.src-code a:visited { text-decoration: underline; color: #0000DD; }
.src-code a:active { background-color: #FFFF66; color: #008000; }
.src-code a:hover { background-color: #FFFF66; text-decoration: overline underline; color: #008000; }
.src-comm { color: #666666; }
.src-id { color: #FF6600; font-style: italic; }
.src-inc { color: #0000AA; font-weight: bold; }
.src-key { color: #0000AA; font-weight: bold; }
.src-num { color: #CC0000; }
.src-str { color: #CC0000; }
.src-sym { }
.src-var { }
.src-php { font-weight: bold; }
.src-doc { color: #666666; }
.src-doc-close-template { color: #666666 }
.src-doc-coretag { color: #008000; }
.src-doc-inlinetag {}
.src-doc-internal {}
.src-doc-tag { color: #0080CC; }
.src-doc-template { color: #666666 }
.src-doc-type { font-style: italic; color: #444444 }
.src-doc-var { color: #444444 }
.tute-tag { color: #009999 }
.tute-attribute-name { color: #0000FF }
.tute-attribute-value { color: #0099FF }
.tute-entity { font-weight: bold; }
.tute-comment { font-style: italic }
.tute-inline-tag { color: #636311; font-weight: bold }
/* tutorial */
.authors { }
.author { font-style: italic; font-weight: bold }
.author-blurb { margin: .5em 0em .5em 2em; font-size: 85%; font-weight: normal; font-style: normal }
.example { border: 1px dashed #999999; background-color: #EEEEEE; padding: .5em; }
*[class="example"] { line-height : 0.5em; }
.listing { border: 1px dashed #999999; background-color: #EEEEEE; padding: .5em; white-space: nowrap; }
*[class="listing"] { line-height : 0.5em; }
.release-info { font-size: 85%; font-style: italic; margin: 1em 0em }
.ref-title-box { }
.ref-title { }
.ref-purpose { font-style: italic; color: #666666 }
.ref-synopsis { }
.title { font-weight: bold; border-bottom: 1px solid #999999; color: #999999; }
.cmd-synopsis { margin: 1em 0em }
.cmd-title { font-weight: bold }
.toc { margin-left: 2em; padding-left: 0em }

View File

@ -0,0 +1,29 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title></title>
<link rel="stylesheet" href="media/stylesheet.css" />
<link rel="stylesheet" href="media/banner.css" />
<meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
</head>
<body>
<div class="banner">
<div class="banner-title">geshi</div>
<div class="banner-menu">
<form>
<table cellpadding="0" cellspacing="0" style="width: 100%">
<tr>
<td>
</td>
<td style="width: 2em">&nbsp;</td>
<td style="text-align: right">
</td>
</tr>
</table>
</form>
</div>
</div>
</body>
</html>

View File

@ -0,0 +1,46 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!-- template designed by Marco Von Ballmoos -->
<title>Todo List</title>
<link rel="stylesheet" href="media/stylesheet.css" />
<meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
</head>
<body>
<div align="center"><h1>Todo List</h1></div>
<h2>geshi</h2>
<h3><a href="geshi/core/GeSHi.html#methoddisable_highlighting">GeSHi::disable_highlighting()</a></h3>
<ul>
<li>Rewrite with an array traversal</li>
</ul>
<h3><a href="geshi/core/GeSHi.html#methodenable_highlighting">GeSHi::enable_highlighting()</a></h3>
<ul>
<li>Rewrite with array traversal</li>
</ul>
<h3><a href="geshi/core/GeSHi.html#methodenable_important_blocks">GeSHi::enable_important_blocks()</a></h3>
<ul>
<li>REMOVE THIS SHIZ FROM GESHI!</li>
</ul>
<h3><a href="geshi/core/GeSHi.html#methodget_language_name_from_extension">GeSHi::get_language_name_from_extension()</a></h3>
<ul>
<li>Re-think about how this method works (maybe make it private and/or make it a extension-&gt;lang lookup?)</li>
<li>static?</li>
</ul>
<h3><a href="geshi/core/GeSHi.html#methodhighlight_lines_extra">GeSHi::highlight_lines_extra()</a></h3>
<ul>
<li>Some data replication here that could be cut down on</li>
</ul>
<h3><a href="geshi/core/GeSHi.html#methodload_from_file">GeSHi::load_from_file()</a></h3>
<ul>
<li>Complete rethink of this and above method</li>
</ul>
<h3><a href="geshi/core/GeSHi.html#methodset_case_keywords">GeSHi::set_case_keywords()</a></h3>
<ul>
<li>Error check the passed value</li>
</ul>
<p class="notes" id="credit">
Documentation generated on Sun, 25 Feb 2007 21:29:34 +1300 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.3.0</a>
</p>
</body>
</html>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

Binary file not shown.

View File

@ -0,0 +1,138 @@
<?php
/*************************************************************************************
* abap.php
* --------
* Author: Andres Picazo (andres@andrespicazo.com)
* Copyright: (c) 2007 Andres Picazo
* Release Version: 1.0.7.20
* CVS Revision Version: $Revision: 1.6 $
* Date Started: 2004/06/04
* Last Modified: $Date: 2005/11/20 07:47:40 $
*
* ABAP language file for GeSHi.
*
* CHANGES
* -------
* 2007/06/27 (1.0.0)
* - First Release
*
* TODO
* ----
*
*************************************************************************************
*
* This file is part of GeSHi.
*
* GeSHi is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* GeSHi is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with GeSHi; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
************************************************************************************/
$language_data = array (
'LANG_NAME' => 'ABAP',
'COMMENT_SINGLE' => array(1 => '"', 2 => '*'),
'CASE_KEYWORDS' => 0,
'QUOTEMARKS' => array("'"),
'ESCAPE_CHAR' => '',
'KEYWORDS' => array(
1 => array(
'if', 'return', 'while', 'case', 'default',
'do', 'else', 'for', 'endif', 'elseif', 'eq',
'not', 'and'
),
2 => array(
'data', 'types', 'seletion-screen', 'parameters', 'field-symbols', 'extern', 'inline'
),
3 => array(
'report', 'write', 'append', 'select', 'endselect', 'call method', 'call function',
'loop', 'endloop', 'raise', 'read table', 'concatenate', 'split', 'shift',
'condense', 'describe', 'clear', 'endfunction', 'assign', 'create data', 'translate',
'continue', 'start-of-selection', 'at selection-screen', 'modify', 'call screen',
'create object', 'perform', 'form', 'endform',
'reuse_alv_block_list_init', 'zbcialv', 'include'
),
4 => array(
'type ref to', 'type', 'begin of', 'end of', 'like', 'into',
'from', 'where', 'order by', 'with key', 'into', 'string', 'separated by',
'exporting', 'importing', 'to upper case', 'to', 'exceptions', 'tables',
'using', 'changing'
),
),
'SYMBOLS' => array(
'(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%', '^', '&', ':'
),
'CASE_SENSITIVE' => array(
GESHI_COMMENTS => true,
1 => false,
2 => false,
3 => false,
4 => false,
),
'STYLES' => array(
'KEYWORDS' => array(
1 => 'color: #b1b100;',
2 => 'color: #000000; font-weight: bold;',
3 => 'color: #000066;',
4 => 'color: #993333;'
),
'COMMENTS' => array(
1 => 'color: #808080; font-style: italic;',
2 => 'color: #339933;',
'MULTI' => 'color: #808080; font-style: italic;'
),
'ESCAPE_CHAR' => array(
0 => 'color: #000099; font-weight: bold;'
),
'BRACKETS' => array(
0 => 'color: #66cc66;'
),
'STRINGS' => array(
0 => 'color: #ff0000;'
),
'NUMBERS' => array(
0 => 'color: #cc66cc;'
),
'METHODS' => array(
1 => 'color: #202020;',
2 => 'color: #202020;'
),
'SYMBOLS' => array(
0 => 'color: #66cc66;'
),
'REGEXPS' => array(
),
'SCRIPT' => array(
)
),
'URLS' => array(
1 => '',
2 => '',
3 => 'http://sap4.com/wiki/index.php?title={FNAME}',
4 => ''
),
'OOLANG' => true,
'OBJECT_SPLITTERS' => array(
1 => '.',
2 => '::'
),
'REGEXPS' => array(
),
'STRICT_MODE_APPLIES' => GESHI_NEVER,
'SCRIPT_DELIMITERS' => array(
),
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
?>

View File

@ -0,0 +1,197 @@
<?php
/*************************************************************************************
* actionscript.php
* ----------------
* Author: Steffen Krause (Steffen.krause@muse.de)
* Copyright: (c) 2004 Steffen Krause, Nigel McNie (http://qbnz.com/highlighter)
* Release Version: 1.0.7.20
* Date Started: 2004/06/20
*
* Actionscript language file for GeSHi.
*
* CHANGES
* -------
* 2004/11/27 (1.0.1)
* - Added support for multiple object splitters
* 2004/10/27 (1.0.0)
* - First Release
*
* TODO (updated 2004/11/27)
* -------------------------
*
*************************************************************************************
*
* This file is part of GeSHi.
*
* GeSHi is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* GeSHi is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with GeSHi; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
************************************************************************************/
$language_data = array (
'LANG_NAME' => 'ActionScript',
'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),
'COMMENT_MULTI' => array('/*' => '*/'),
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
'QUOTEMARKS' => array("'", '"'),
'ESCAPE_CHAR' => '\\',
'KEYWORDS' => array(
1 => array(
'#include', 'for', 'foreach', 'if', 'elseif', 'else', 'while', 'do', 'dowhile',
'endwhile', 'endif', 'switch', 'case', 'endswitch', 'return', 'break', 'continue', 'in'
),
2 => array(
'null', 'false', 'true', 'var',
'default', 'function', 'class',
'new', '_global'
),
3 => array(
'#endinitclip', '#initclip', '__proto__', '_accProps', '_alpha', '_currentframe',
'_droptarget', '_focusrect', '_framesloaded', '_height', '_highquality', '_lockroot',
'_name', '_parent', '_quality', '_root', '_rotation', '_soundbuftime', '_target', '_totalframes',
'_url', '_visible', '_width', '_x', '_xmouse', '_xscale', '_y', '_ymouse', '_yscale', 'abs',
'Accessibility', 'acos', 'activityLevel', 'add', 'addListener', 'addPage', 'addProperty',
'addRequestHeader', 'align', 'allowDomain', 'allowInsecureDomain', 'and', 'appendChild',
'apply', 'Arguments', 'Array', 'asfunction', 'asin', 'atan', 'atan2', 'attachAudio', 'attachMovie',
'attachSound', 'attachVideo', 'attributes', 'autosize', 'avHardwareDisable', 'background',
'backgroundColor', 'BACKSPACE', 'bandwidth', 'beginFill', 'beginGradientFill', 'blockIndent',
'bold', 'Boolean', 'border', 'borderColor', 'bottomScroll', 'bufferLength', 'bufferTime',
'builtInItems', 'bullet', 'Button', 'bytesLoaded', 'bytesTotal', 'call', 'callee', 'caller',
'Camera', 'capabilities', 'CAPSLOCK', 'caption', 'catch', 'ceil', 'charAt', 'charCodeAt',
'childNodes', 'chr', 'clear', 'clearInterval', 'cloneNode', 'close', 'Color', 'concat',
'connect', 'condenseWhite', 'constructor', 'contentType', 'ContextMenu', 'ContextMenuItem',
'CONTROL', 'copy', 'cos', 'createElement', 'createEmptyMovieClip', 'createTextField',
'createTextNode', 'currentFps', 'curveTo', 'CustomActions', 'customItems', 'data', 'Date',
'deblocking', 'delete', 'DELETEKEY', 'docTypeDecl', 'domain', 'DOWN',
'duplicateMovieClip', 'duration', 'dynamic', 'E', 'embedFonts', 'enabled',
'END', 'endFill', 'ENTER', 'eq', 'Error', 'ESCAPE(Konstante)', 'escape(Funktion)', 'eval',
'exactSettings', 'exp', 'extends', 'finally', 'findText', 'firstChild', 'floor',
'flush', 'focusEnabled', 'font', 'fps', 'fromCharCode', 'fscommand',
'gain', 'ge', 'get', 'getAscii', 'getBeginIndex', 'getBounds', 'getBytesLoaded', 'getBytesTotal',
'getCaretIndex', 'getCode', 'getCount', 'getDate', 'getDay', 'getDepth', 'getEndIndex', 'getFocus',
'getFontList', 'getFullYear', 'getHours', 'getInstanceAtDepth', 'getLocal', 'getMilliseconds',
'getMinutes', 'getMonth', 'getNewTextFormat', 'getNextHighestDepth', 'getPan', 'getProgress',
'getProperty', 'getRGB', 'getSeconds', 'getSelected', 'getSelectedText', 'getSize', 'getStyle',
'getStyleNames', 'getSWFVersion', 'getText', 'getTextExtent', 'getTextFormat', 'getTextSnapshot',
'getTime', 'getTimer', 'getTimezoneOffset', 'getTransform', 'getURL', 'getUTCDate', 'getUTCDay',
'getUTCFullYear', 'getUTCHours', 'getUTCMilliseconds', 'getUTCMinutes', 'getUTCMonth', 'getUTCSeconds',
'getVersion', 'getVolume', 'getYear', 'globalToLocal', 'goto', 'gotoAndPlay', 'gotoAndStop',
'hasAccessibility', 'hasAudio', 'hasAudioEncoder', 'hasChildNodes', 'hasEmbeddedVideo', 'hasMP3',
'hasPrinting', 'hasScreenBroadcast', 'hasScreenPlayback', 'hasStreamingAudio', 'hasStreamingVideo',
'hasVideoEncoder', 'height', 'hide', 'hideBuiltInItems', 'hitArea', 'hitTest', 'hitTestTextNearPos',
'HOME', 'hscroll', 'html', 'htmlText', 'ID3', 'ifFrameLoaded', 'ignoreWhite', 'implements',
'import', 'indent', 'index', 'indexOf', 'Infinity', '-Infinity', 'INSERT', 'insertBefore', 'install',
'instanceof', 'int', 'interface', 'isActive', 'isDebugger', 'isDown', 'isFinite', 'isNaN', 'isToggled',
'italic', 'join', 'Key', 'language', 'lastChild', 'lastIndexOf', 'le', 'leading', 'LEFT', 'leftMargin',
'length', 'level', 'lineStyle', 'lineTo', 'list', 'LN10', 'LN2', 'load', 'loadClip', 'loaded', 'loadMovie',
'loadMovieNum', 'loadSound', 'loadVariables', 'loadVariablesNum', 'LoadVars', 'LocalConnection',
'localFileReadDisable', 'localToGlobal', 'log', 'LOG10E', 'LOG2E', 'manufacturer', 'Math', 'max',
'MAX_VALUE', 'maxChars', 'maxhscroll', 'maxscroll', 'mbchr', 'mblength', 'mbord', 'mbsubstring', 'menu',
'message', 'Microphone', 'min', 'MIN_VALUE', 'MMExecute', 'motionLevel', 'motionTimeOut', 'Mouse',
'mouseWheelEnabled', 'moveTo', 'Movieclip', 'MovieClipLoader', 'multiline', 'muted', 'name', 'names', 'NaN',
'ne', 'NEGATIVE_INFINITY', 'NetConnection', 'NetStream', 'newline', 'nextFrame',
'nextScene', 'nextSibling', 'nodeName', 'nodeType', 'nodeValue', 'not', 'Number', 'Object',
'on', 'onActivity', 'onChanged', 'onClipEvent', 'onClose', 'onConnect', 'onData', 'onDragOut',
'onDragOver', 'onEnterFrame', 'onID3', 'onKeyDown', 'onKeyUp', 'onKillFocus', 'onLoad', 'onLoadComplete',
'onLoadError', 'onLoadInit', 'onLoadProgress', 'onLoadStart', 'onMouseDown', 'onMouseMove', 'onMouseUp',
'onMouseWheel', 'onPress', 'onRelease', 'onReleaseOutside', 'onResize', 'onRollOut', 'onRollOver',
'onScroller', 'onSelect', 'onSetFocus', 'onSoundComplete', 'onStatus', 'onUnload', 'onUpdate', 'onXML',
'or(logischesOR)', 'ord', 'os', 'parentNode', 'parseCSS', 'parseFloat', 'parseInt', 'parseXML', 'password',
'pause', 'PGDN', 'PGUP', 'PI', 'pixelAspectRatio', 'play', 'playerType', 'pop', 'position',
'POSITIVE_INFINITY', 'pow', 'prevFrame', 'previousSibling', 'prevScene', 'print', 'printAsBitmap',
'printAsBitmapNum', 'PrintJob', 'printNum', 'private', 'prototype', 'public', 'push', 'quality',
'random', 'rate', 'registerClass', 'removeListener', 'removeMovieClip', 'removeNode', 'removeTextField',
'replaceSel', 'replaceText', 'resolutionX', 'resolutionY', 'restrict', 'reverse', 'RIGHT',
'rightMargin', 'round', 'scaleMode', 'screenColor', 'screenDPI', 'screenResolutionX', 'screenResolutionY',
'scroll', 'seek', 'selectable', 'Selection', 'send', 'sendAndLoad', 'separatorBefore', 'serverString',
'set', 'setvariable', 'setBufferTime', 'setClipboard', 'setDate', 'setFocus', 'setFullYear', 'setGain',
'setHours', 'setInterval', 'setMask', 'setMilliseconds', 'setMinutes', 'setMode', 'setMonth',
'setMotionLevel', 'setNewTextFormat', 'setPan', 'setProperty', 'setQuality', 'setRate', 'setRGB',
'setSeconds', 'setSelectColor', 'setSelected', 'setSelection', 'setSilenceLevel', 'setStyle',
'setTextFormat', 'setTime', 'setTransform', 'setUseEchoSuppression', 'setUTCDate', 'setUTCFullYear',
'setUTCHours', 'setUTCMilliseconds', 'setUTCMinutes', 'setUTCMonth', 'setUTCSeconds', 'setVolume',
'setYear', 'SharedObject', 'SHIFT(Konstante)', 'shift(Methode)', 'show', 'showMenu', 'showSettings',
'silenceLevel', 'silenceTimeout', 'sin', 'size', 'slice', 'smoothing', 'sort', 'sortOn', 'Sound', 'SPACE',
'splice', 'split', 'sqrt', 'SQRT1_2', 'SQRT2', 'Stage', 'start', 'startDrag', 'static', 'status', 'stop',
'stopAllSounds', 'stopDrag', 'String', 'StyleSheet(Klasse)', 'styleSheet(Eigenschaft)', 'substr',
'substring', 'super', 'swapDepths', 'System', 'TAB', 'tabChildren', 'tabEnabled', 'tabIndex',
'tabStops', 'tan', 'target', 'targetPath', 'tellTarget', 'text', 'textColor', 'TextField', 'TextFormat',
'textHeight', 'TextSnapshot', 'textWidth', 'this', 'throw', 'time', 'toggleHighQuality', 'toLowerCase',
'toString', 'toUpperCase', 'trace', 'trackAsMenu', 'try', 'type', 'typeof', 'undefined',
'underline', 'unescape', 'uninstall', 'unloadClip', 'unloadMovie', 'unLoadMovieNum', 'unshift', 'unwatch',
'UP', 'updateAfterEvent', 'updateProperties', 'url', 'useCodePage', 'useEchoSuppression', 'useHandCursor',
'UTC', 'valueOf', 'variable', 'version', 'Video', 'visible', 'void', 'watch', 'width',
'with', 'wordwrap', 'XML', 'xmlDecl', 'XMLNode', 'XMLSocket'
)
),
'SYMBOLS' => array(
'(', ')', '[', ']', '{', '}', '!', '@', '%', '&', '*', '|', '/', '<', '>'
),
'CASE_SENSITIVE' => array(
GESHI_COMMENTS => false,
1 => false,
2 => false,
3 => false,
),
'STYLES' => array(
'KEYWORDS' => array(
1 => 'color: #b1b100;',
2 => 'color: #000000; font-weight: bold;',
3 => 'color: #0066CC;'
),
'COMMENTS' => array(
1 => 'color: #808080; font-style: italic;',
2 => 'color: #808080; font-style: italic;',
'MULTI' => 'color: #808080; font-style: italic;'
),
'ESCAPE_CHAR' => array(
0 => 'color: #000099; font-weight: bold;'
),
'BRACKETS' => array(
0 => 'color: #66cc66;'
),
'STRINGS' => array(
0 => 'color: #ff0000;'
),
'NUMBERS' => array(
0 => 'color: #cc66cc;'
),
'METHODS' => array(
1 => 'color: #006600;'
),
'SYMBOLS' => array(
0 => 'color: #66cc66;'
),
'REGEXPS' => array(
),
'SCRIPT' => array(
)
),
'URLS' => array(
1 => '',
2 => '',
3 => ''
),
'OOLANG' => true,
'OBJECT_SPLITTERS' => array(
1 => '.'
),
'REGEXPS' => array(
),
'STRICT_MODE_APPLIES' => GESHI_NEVER,
'SCRIPT_DELIMITERS' => array(),
'HIGHLIGHT_STRICT_BLOCK' => array()
);
?>

View File

@ -0,0 +1,133 @@
<?php
/*************************************************************************************
* ada.php
* -------
* Author: Tux (tux@inmail.cz)
* Copyright: (c) 2004 Tux (http://tux.a4.cz/), Nigel McNie (http://qbnz.com/highlighter)
* Release Version: 1.0.7.20
* Date Started: 2004/07/29
*
* Ada language file for GeSHi.
* Words are from SciTe configuration file
*
* CHANGES
* -------
* 2004/11/27 (1.0.2)
* - Added support for multiple object splitters
* 2004/10/27 (1.0.1)
* - Removed apostrophe as string delimiter
* - Added URL support
* 2004/08/05 (1.0.0)
* - First Release
*
* TODO (updated 2004/11/27)
* -------------------------
*
*************************************************************************************
*
* This file is part of GeSHi.
*
* GeSHi is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* GeSHi is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with GeSHi; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
************************************************************************************/
$language_data = array (
'LANG_NAME' => 'Ada',
'COMMENT_SINGLE' => array(1 => '--'),
'COMMENT_MULTI' => array('/*' => '*/'),
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
'QUOTEMARKS' => array('"'),
'ESCAPE_CHAR' => '\\',
'KEYWORDS' => array(
1 => array(
'begin', 'declare', 'do', 'else', 'elsif', 'exception', 'for', 'if',
'is', 'loop', 'while', 'then', 'is', 'end', 'select', 'case', 'while', 'until',
'goto', 'return'
),
2 => array(
'abs', 'and', 'mod', 'not', 'or', 'rem', 'xor'
),
3 => array(
'abort', 'abstract', 'accept', 'access', 'aliased', 'all', 'array', 'at', 'body',
'constant', 'delay', 'delta', 'digits', 'entry', 'exit',
'function', 'generic', 'in', 'limited', 'new', 'null', 'of', 'others', 'out', 'package', 'pragma',
'private', 'procedure', 'protected', 'raise', 'range', 'record', 'renames', 'requeue', 'reverse',
'separate', 'subtype', 'tagged', 'task', 'terminate', 'type', 'use', 'when', 'with'
)
),
'SYMBOLS' => array(
'(', ')'
),
'CASE_SENSITIVE' => array(
GESHI_COMMENTS => true,
1 => false,
2 => false,
3 => false,
),
'STYLES' => array(
'KEYWORDS' => array(
1 => 'color: #00007f;',
2 => 'color: #0000ff;',
3 => 'color: #46aa03; font-weight:bold;',
),
'BRACKETS' => array(
0 => 'color: #66cc66;'
),
'COMMENTS' => array(
1 => 'color: #adadad; font-style: italic;',
'MULTI' => 'color: #808080; font-style: italic;'
),
'ESCAPE_CHAR' => array(
0 => 'color: #000099; font-weight: bold;'
),
'BRACKETS' => array(
0 => 'color: #66cc66;'
),
'STRINGS' => array(
0 => 'color: #7f007f;'
),
'NUMBERS' => array(
0 => 'color: #ff0000;'
),
'METHODS' => array(
1 => 'color: #202020;'
),
'SYMBOLS' => array(
0 => 'color: #66cc66;'
),
'REGEXPS' => array(
),
'SCRIPT' => array(
)
),
'URLS' => array(
1 => '',
2 => '',
3 => ''
),
'OOLANG' => true,
'OBJECT_SPLITTERS' => array(
1 => '.'
),
'REGEXPS' => array(
),
'STRICT_MODE_APPLIES' => GESHI_NEVER,
'SCRIPT_DELIMITERS' => array(
),
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
?>

View File

@ -0,0 +1,171 @@
<?php
/*************************************************************************************
* apache.php
* ----------
* Author: Tux (tux@inmail.cz)
* Copyright: (c) 2004 Tux (http://tux.a4.cz/), Nigel McNie (http://qbnz.com/highlighter)
* Release Version: 1.0.7.20
* Date Started: 2004/29/07
*
* Apache language file for GeSHi.
* Words are from SciTe configuration file
*
* CHANGES
* -------
* 2004/11/27 (1.0.2)
* - Added support for multiple object splitters
* 2004/10/27 (1.0.1)
* - Added support for URLs
* 2004/08/05 (1.0.0)
* - First Release
*
* TODO (updated 2004/07/29)
* -------------------------
*
*************************************************************************************
*
* This file is part of GeSHi.
*
* GeSHi is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* GeSHi is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with GeSHi; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
************************************************************************************/
$language_data = array (
'LANG_NAME' => 'Apache Log',
'COMMENT_SINGLE' => array(1 => '#'),
'COMMENT_MULTI' => array(),
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
'QUOTEMARKS' => array("'", '"'),
'ESCAPE_CHAR' => '\\',
'KEYWORDS' => array(
/*keywords*/
1 => array(
'accessconfig','accessfilename','action','addalt',
'addaltbyencoding','addaltbytype','addcharset',
'adddefaultcharset','adddescription',
'addencoding','addhandler','addicon','addiconbyencoding',
'addiconbytype','addlanguage','addmodule','addmoduleinfo',
'addtype','agentlog','alias','aliasmatch',
'allow','allowconnect','allowoverride','anonymous',
'anonymous_authoritative','anonymous_logemail','anonymous_mustgiveemail',
'anonymous_nouserid','anonymous_verifyemail','authauthoritative',
'authdbauthoritative','authdbgroupfile','authdbmauthoritative',
'authdbmgroupfile','authdbmgroupfile','authdbuserfile','authdbmuserfile',
'authdigestfile','authgroupfile','authname','authtype',
'authuserfile','bindaddress','browsermatch','browsermatchnocase',
'bs2000account','cachedefaultexpire','cachedirlength','cachedirlevels',
'cacheforcecompletion','cachegcinterval','cachelastmodifiedfactor','cachemaxexpire',
'cachenegotiateddocs','cacheroot','cachesize','checkspelling',
'clearmodulelist','contentdigest','cookieexpires','cookielog',
'cookielog','cookietracking','coredumpdirectory','customlog',
'defaulticon','defaultlanguage','defaulttype','define',
'deny','directory','directorymatch','directoryindex',
'documentroot','errordocument','errorlog','example',
'expiresactive','expiresbytype','expiresdefault','extendedstatus',
'fancyindexing','files','filesmatch','forcetype',
'group','header','headername','hostnamelookups',
'identitycheck','ifdefine','ifmodule','imapbase',
'imapdefault','imapmenu','include','indexignore',
'indexoptions','keepalive','keepalivetimeout','languagepriority',
'limit','limitexcept','limitrequestbody','limitrequestfields',
'limitrequestfieldsize','limitrequestline','listen','listenbacklog',
'loadfile','loadmodule','location','locationmatch',
'lockfile','logformat','loglevel','maxclients',
'maxkeepaliverequests','maxrequestsperchild','maxspareservers','metadir',
'metafiles','metasuffix','mimemagicfile','minspareservers',
'mmapfile','namevirtualhost','nocache','options','order',
'passenv','pidfile','port','proxyblock','proxydomain',
'proxypass','proxypassreverse','proxyreceivebuffersize','proxyremote',
'proxyrequests','proxyvia','qsc','readmename',
'redirect','redirectmatch','redirectpermanent','redirecttemp',
'refererignore','refererlog','removehandler','require',
'resourceconfig','rewritebase','rewritecond','rewriteengine',
'rewritelock','rewritelog','rewriteloglevel','rewritemap',
'rewriteoptions','rewriterule','rlimitcpu','rlimitmem',
'rlimitnproc','satisfy','scoreboardfile','script',
'scriptalias','scriptaliasmatch','scriptinterpretersource','scriptlog',
'scriptlogbuffer','scriptloglength','sendbuffersize',
'serveradmin','serveralias','servername','serverpath',
'serverroot','serversignature','servertokens','servertype',
'setenv','setenvif','setenvifnocase','sethandler',
'singlelisten','startservers','threadsperchild','timeout',
'transferlog','typesconfig','unsetenv','usecanonicalname',
'user','userdir','virtualhost','virtualdocumentroot',
'virtualdocumentrootip','virtualscriptalias','virtualscriptaliasip',
'xbithack','from','all'
),
/*keyords 2*/
2 => array(
'on','off','standalone','inetd',
'force-response-1.0','downgrade-1.0','nokeepalive',
'ndexes','includes','followsymlinks','none',
'x-compress','x-gzip'
)
),
'SYMBOLS' => array(
'(', ')'
),
'CASE_SENSITIVE' => array(
GESHI_COMMENTS => true,
1 => false,
2 => false,
),
'STYLES' => array(
'KEYWORDS' => array(
1 => 'color: #00007f;',
2 => 'color: #0000ff;',
),
'COMMENTS' => array(
1 => 'color: #adadad; font-style: italic;',
),
'ESCAPE_CHAR' => array(
0 => 'color: #000099; font-weight: bold;'
),
'BRACKETS' => array(
0 => 'color: #66cc66;'
),
'STRINGS' => array(
0 => 'color: #7f007f;'
),
'NUMBERS' => array(
0 => 'color: #ff0000;'
),
'METHODS' => array(
),
'SYMBOLS' => array(
0 => 'color: #66cc66;'
),
'REGEXPS' => array(
),
'SCRIPT' => array(
)
),
'URLS' => array(
1 => '',
2 => ''
),
'OOLANG' => false,
'OBJECT_SPLITTERS' => array(
),
'REGEXPS' => array(
),
'STRICT_MODE_APPLIES' => GESHI_NEVER,
'SCRIPT_DELIMITERS' => array(
),
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
?>

View File

@ -0,0 +1,134 @@
<?php
/*************************************************************************************
* applescript.php
* --------
* Author: Stephan Klimek (http://www.initware.org)
* Copyright: Stephan Klimek (http://www.initware.org)
* Release Version: 1.0.7.20
* Date Started: 2005/07/20
*
* AppleScript language file for GeSHi.
*
* CHANGES
* -------
*
* TODO
* -------------------------
* URL settings to references
*
**************************************************************************************
*
* This file is part of GeSHi.
*
* GeSHi is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* GeSHi is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with GeSHi; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
************************************************************************************/
$language_data = array (
'LANG_NAME' => 'AppleScript',
'COMMENT_SINGLE' => array(1 => '--'),
'COMMENT_MULTI' => array( '(*' => '*)'),
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
'QUOTEMARKS' => array('"',"'"),
'ESCAPE_CHAR' => '\\',
'KEYWORDS' => array(
1 => array(
'script','property','prop','end','copy','to','set','global','local','on','to','of',
'in','given','with','without','return','continue','tell','if','then','else','repeat',
'times','while','until','from','exit','try','error','considering','ignoring','timeout',
'transaction','my','get','put','into','is'
),
2 => array(
'each','some','every','whose','where','id','index','first','second','third','fourth',
'fifth','sixth','seventh','eighth','ninth','tenth','last','front','back','st','nd',
'rd','th','middle','named','through','thru','before','after','beginning','the'
),
3 => array(
'close','copy','count','delete','duplicate','exists','launch','make','move','open',
'print','quit','reopen','run','save','saving',
'it','me','version','pi','result','space','tab','anything','case','diacriticals','expansion',
'hyphens','punctuation','bold','condensed','expanded','hidden','italic','outline','plain',
'shadow','strikethrough','subscript','superscript','underline','ask','no','yes','false',
'true','weekday','monday','mon','tuesday','tue','wednesday','wed','thursday','thu','friday',
'fri','saturday','sat','sunday','sun','month','january','jan','february','feb','march',
'mar','april','apr','may','june','jun','july','jul','august','aug','september',
'sep','october','oct','november','nov','december','dec','minutes','hours',
'days','weeks','div','mod','and','not','or','as','contains','equal','equals','isnt'
)
),
'SYMBOLS' => array(
')','+','-','^','*','/','&','<','>=','<','<=','=','<27>'
),
'CASE_SENSITIVE' => array(
GESHI_COMMENTS => true,
1 => false,
2 => false,
3 => false,
),
'STYLES' => array(
'KEYWORDS' => array(
1 => 'color: #b1b100;',
2 => 'color: #000000; font-weight: bold;',
3 => 'color: #000066;'
),
'COMMENTS' => array(
1 => 'color: #808080; font-style: italic;',
'MULTI' => 'color: #808080; font-style: italic;'
),
'ESCAPE_CHAR' => array(
0 => 'color: #000099; font-weight: bold;'
),
'BRACKETS' => array(
0 => 'color: #66cc66;'
),
'STRINGS' => array(
0 => 'color: #ff0000;'
),
'NUMBERS' => array(
0 => 'color: #cc66cc;'
),
'METHODS' => array(
1 => 'color: #006600;',
2 => 'color: #006600;'
),
'SYMBOLS' => array(
0 => 'color: #66cc66;'
),
'REGEXPS' => array(
0 => 'color: #0000ff;',
4 => 'color: #009999;',
),
'SCRIPT' => array(
)
),
'URLS' => array(
3 => ''
),
'OOLANG' => true,
'OBJECT_SPLITTERS' => array(
1 => ',+-=&lt;&gt;/?^&amp;*'
),
'REGEXPS' => array(
0 => '[\\$%@]+[a-zA-Z_][a-zA-Z0-9_]*',
4 => '&lt;[a-zA-Z_][a-zA-Z0-9_]*&gt;',
),
'STRICT_MODE_APPLIES' => GESHI_NEVER,
'SCRIPT_DELIMITERS' => array(
),
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
?>

View File

@ -0,0 +1,199 @@
<?php
/*************************************************************************************
* asm.php
* -------
* Author: Tux (tux@inmail.cz)
* Copyright: (c) 2004 Tux (http://tux.a4.cz/), Nigel McNie (http://qbnz.com/highlighter)
* Release Version: 1.0.7.20
* Date Started: 2004/07/27
*
* x86 Assembler language file for GeSHi.
* Words are from SciTe configuration file (based on NASM syntax)
*
* CHANGES
* -------
* 2004/11/27 (1.0.2)
* - Added support for multiple object splitters
* 2004/10/27 (1.0.1)
* - Added support for URLs
* - Added binary and hexadecimal regexps
* 2004/08/05 (1.0.0)
* - First Release
*
* TODO (updated 2004/11/27)
* -------------------------
*
*************************************************************************************
*
* This file is part of GeSHi.
*
* GeSHi is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* GeSHi is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with GeSHi; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
************************************************************************************/
$language_data = array (
'LANG_NAME' => 'ASM',
'COMMENT_SINGLE' => array(1 => ';'),
'COMMENT_MULTI' => array(),
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
'QUOTEMARKS' => array("'", '"'),
'ESCAPE_CHAR' => '',
'KEYWORDS' => array(
/*CPU*/
1 => array(
'aaa','aad','aam','aas','adc','add','and','call','cbw','clc','cld','cli','cmc','cmp',
'cmps','cmpsb','cmpsw','cwd','daa','das','dec','div','esc','hlt','idiv','imul','in','inc',
'int','into','iret','ja','jae','jb','jbe','jc','jcxz','je','jg','jge','jl','jle','jmp',
'jna','jnae','jnb','jnbe','jnc','jne','jng','jnge','jnl','jnle','jno','jnp','jns','jnz',
'jo','jp','jpe','jpo','js','jz','lahf','lds','lea','les','lods','lodsb','lodsw','loop',
'loope','loopew','loopne','loopnew','loopnz','loopnzw','loopw','loopz','loopzw','mov',
'movs','movsb','movsw','mul','neg','nop','not','or','out','pop','popf','push','pushf',
'rcl','rcr','ret','retf','retn','rol','ror','sahf','sal','sar','sbb','scas','scasb','scasw',
'shl','shr','stc','std','sti','stos','stosb','stosw','sub','test','wait','xchg','xlat',
'xlatb','xor','bound','enter','ins','insb','insw','leave','outs','outsb','outsw','popa','pusha','pushw',
'arpl','lar','lsl','sgdt','sidt','sldt','smsw','str','verr','verw','clts','lgdt','lidt','lldt','lmsw','ltr',
'bsf','bsr','bt','btc','btr','bts','cdq','cmpsd','cwde','insd','iretd','iretdf','iretf',
'jecxz','lfs','lgs','lodsd','loopd','looped','loopned','loopnzd','loopzd','lss','movsd',
'movsx','movzx','outsd','popad','popfd','pushad','pushd','pushfd','scasd','seta','setae',
'setb','setbe','setc','sete','setg','setge','setl','setle','setna','setnae','setnb','setnbe',
'setnc','setne','setng','setnge','setnl','setnle','setno','setnp','setns','setnz','seto','setp',
'setpe','setpo','sets','setz','shld','shrd','stosd','bswap','cmpxchg','invd','invlpg','wbinvd','xadd','lock',
'rep','repe','repne','repnz','repz'
),
/*FPU*/
2 => array(
'f2xm1','fabs','fadd','faddp','fbld','fbstp','fchs','fclex','fcom','fcomp','fcompp','fdecstp',
'fdisi','fdiv','fdivp','fdivr','fdivrp','feni','ffree','fiadd','ficom','ficomp','fidiv',
'fidivr','fild','fimul','fincstp','finit','fist','fistp','fisub','fisubr','fld','fld1',
'fldcw','fldenv','fldenvw','fldl2e','fldl2t','fldlg2','fldln2','fldpi','fldz','fmul',
'fmulp','fnclex','fndisi','fneni','fninit','fnop','fnsave','fnsavew','fnstcw','fnstenv',
'fnstenvw','fnstsw','fpatan','fprem','fptan','frndint','frstor','frstorw','fsave',
'fsavew','fscale','fsqrt','fst','fstcw','fstenv','fstenvw','fstp','fstsw','fsub','fsubp',
'fsubr','fsubrp','ftst','fwait','fxam','fxch','fxtract','fyl2x','fyl2xp1',
'fsetpm','fcos','fldenvd','fnsaved','fnstenvd','fprem1','frstord','fsaved','fsin','fsincos',
'fstenvd','fucom','fucomp','fucompp'
),
/*registers*/
3 => array(
'ah','al','ax','bh','bl','bp','bx','ch','cl','cr0','cr2','cr3','cs','cx','dh','di','dl',
'dr0','dr1','dr2','dr3','dr6','dr7','ds','dx','eax','ebp','ebx','ecx','edi','edx',
'es','esi','esp','fs','gs','si','sp','ss','st','tr3','tr4','tr5','tr6','tr7', 'ah', 'bh', 'ch', 'dh'
),
/*Directive*/
4 => array(
'186','286','286c','286p','287','386','386c','386p','387','486','486p',
'8086','8087','alpha','break','code','const','continue','cref','data','data?',
'dosseg','else','elseif','endif','endw','err','err1','err2','errb',
'errdef','errdif','errdifi','erre','erridn','erridni','errnb','errndef',
'errnz','exit','fardata','fardata?','if','lall','lfcond','list','listall',
'listif','listmacro','listmacroall',' model','no87','nocref','nolist',
'nolistif','nolistmacro','radix','repeat','sall','seq','sfcond','stack',
'startup','tfcond','type','until','untilcxz','while','xall','xcref',
'xlist','alias','align','assume','catstr','comm','comment','db','dd','df','dosseg','dq',
'dt','dup','dw','echo','else','elseif','elseif1','elseif2','elseifb','elseifdef','elseifdif',
'elseifdifi','elseife','elseifidn','elseifidni','elseifnb','elseifndef','end',
'endif','endm','endp','ends','eq',' equ','even','exitm','extern','externdef','extrn','for',
'forc','ge','goto','group','high','highword','if','if1','if2','ifb','ifdef','ifdif',
'ifdifi','ife',' ifidn','ifidni','ifnb','ifndef','include','includelib','instr','invoke',
'irp','irpc','label','le','length','lengthof','local','low','lowword','lroffset',
'macro','mask','mod','msfloat','name','ne','offset','opattr','option','org','%out',
'page','popcontext','proc','proto','ptr','public','purge','pushcontext','record',
'repeat','rept','seg','segment','short','size','sizeof','sizestr','struc','struct',
'substr','subtitle','subttl','textequ','this','title','type','typedef','union','while','width',
'.model', '.stack', '.code', '.data'
),
/*Operands*/
5 => array(
'@b','@f','addr','basic','byte','c','carry?','dword',
'far','far16','fortran','fword','near','near16','overflow?','parity?','pascal','qword',
'real4',' real8','real10','sbyte','sdword','sign?','stdcall','sword','syscall','tbyte',
'vararg','word','zero?','flat','near32','far32',
'abs','all','assumes','at','casemap','common','compact',
'cpu','dotname','emulator','epilogue','error','export','expr16','expr32','farstack','flat',
'forceframe','huge','language','large','listing','ljmp','loadds','m510','medium','memory',
'nearstack','nodotname','noemulator','nokeyword','noljmp','nom510','none','nonunique',
'nooldmacros','nooldstructs','noreadonly','noscoped','nosignextend','nothing',
'notpublic','oldmacros','oldstructs','os_dos','para','private','prologue','radix',
'readonly','req','scoped','setif2','smallstack','tiny','use16','use32','uses'
)
),
'SYMBOLS' => array(
'[', ']', '(', ')'
),
'CASE_SENSITIVE' => array(
GESHI_COMMENTS => true,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false
),
'STYLES' => array(
'KEYWORDS' => array(
1 => 'color: #00007f;',
2 => 'color: #0000ff;',
3 => 'color: #46aa03; font-weight:bold;',
4 => 'color: #0000ff;',
5 => 'color: #0000ff;'
),
'COMMENTS' => array(
1 => 'color: #adadad; font-style: italic;',
),
'ESCAPE_CHAR' => array(
0 => 'color: #000099; font-weight: bold;'
),
'BRACKETS' => array(
0 => 'color: #66cc66;'
),
'STRINGS' => array(
0 => 'color: #7f007f;'
),
'NUMBERS' => array(
0 => 'color: #ff0000;'
),
'METHODS' => array(
),
'SYMBOLS' => array(
0 => 'color: #66cc66;'
),
'REGEXPS' => array(
0 => 'color: #ff0000;',
1 => 'color: #ff0000;'
),
'SCRIPT' => array(
)
),
'URLS' => array(
1 => '',
2 => ''
),
'OOLANG' => false,
'OBJECT_SPLITTERS' => array(
),
'REGEXPS' => array(
0 => '0[0-9a-fA-F]{1,32}[hH]',
1 => '[01]{1,64}[bB]'
),
'STRICT_MODE_APPLIES' => GESHI_NEVER,
'SCRIPT_DELIMITERS' => array(
),
'HIGHLIGHT_STRICT_BLOCK' => array(
),
'TAB_WIDTH' => 8
);
?>

View File

@ -0,0 +1,153 @@
<?php
/*************************************************************************************
* asp.php
* --------
* Author: Amit Gupta (http://blog.igeek.info/)
* Copyright: (c) 2004 Amit Gupta (http://blog.igeek.info/), Nigel McNie (http://qbnz.com/highlighter)
* Release Version: 1.0.7.20
* Date Started: 2004/08/13
*
* ASP language file for GeSHi.
*
* CHANGES
* -------
* 2005/12/30 (1.0.3)
* - Strings only delimited by ", comments by '
* 2004/11/27 (1.0.2)
* - Added support for multiple object splitters
* 2004/10/27 (1.0.1)
* - Added support for URLs
* 2004/08/13 (1.0.0)
* - First Release
*
* TODO (updated 2004/11/27)
* -------------------------
* * Include all the functions, keywords etc that I have missed
*
*************************************************************************************
*
* This file is part of GeSHi.
*
* GeSHi is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* GeSHi is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with GeSHi; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
************************************************************************************/
$language_data = array (
'LANG_NAME' => 'ASP',
'COMMENT_SINGLE' => array(1 => "'", 2 => '//'),
'COMMENT_MULTI' => array('/*' => '*/'),
'CASE_KEYWORDS' => 0,
'QUOTEMARKS' => array('"'),
'ESCAPE_CHAR' => '\\',
'KEYWORDS' => array(
1 => array(
'include', 'file', 'Dim', 'Option', 'Explicit', 'Implicit', 'Set', 'Select', 'ReDim', 'Preserve',
'ByVal', 'ByRef', 'End', 'Private', 'Public', 'If', 'Then', 'Else', 'ElseIf', 'Case', 'With', 'NOT',
'While', 'Wend', 'For', 'Loop', 'Do', 'Request', 'Response', 'Server', 'ADODB', 'Session', 'Application',
'Each', 'In', 'Get', 'Next', 'INT', 'CINT', 'CBOOL', 'CDATE', 'CBYTE', 'CCUR', 'CDBL', 'CLNG', 'CSNG',
'CSTR', 'Fix', 'Is', 'Sgn', 'String', 'Boolean', 'Currency', 'Me', 'Single', 'Long', 'Integer', 'Byte',
'Variant', 'Double', 'To', 'Let', 'Xor', 'Resume', 'On', 'Error', 'Imp', 'GoTo', 'Call', 'Global'
),
2 => array(
'Null', 'Nothing', 'And',
'False', '&lt;%', '%&gt;',
'&lt;script language=', '&lt;/script&gt;',
'True', 'var', 'Or', 'BOF', 'EOF',
'Function', 'Class', 'New', 'Sub'
),
3 => array(
'CreateObject', 'Write', 'Redirect', 'Cookies', 'BinaryRead', 'ClientCertificate', 'Form', 'QueryString',
'ServerVariables', 'TotalBytes', 'AddHeader', 'AppendToLog', 'BinaryWrite', 'Buffer', 'CacheControl',
'Charset', 'Clear', 'ContentType', 'End()', 'Expires', 'ExpiresAbsolute', 'Flush()', 'IsClientConnected',
'PICS', 'Status', 'Connection', 'Recordset', 'Execute', 'Abandon', 'Lock', 'UnLock', 'Command', 'Fields',
'Properties', 'Property', 'Send', 'Replace', 'InStr', 'TRIM', 'NOW', 'Day', 'Month', 'Hour', 'Minute', 'Second',
'Year', 'MonthName', 'LCase', 'UCase', 'Abs', 'Array', 'As', 'LEN', 'MoveFirst', 'MoveLast', 'MovePrevious',
'MoveNext', 'LBound', 'UBound', 'Transfer', 'Open', 'Close', 'MapPath', 'FileExists', 'OpenTextFile', 'ReadAll'
)
),
'CASE_SENSITIVE' => array(
GESHI_COMMENTS => false,
1 => false,
2 => false,
3 => false,
),
'STYLES' => array(
'KEYWORDS' => array(
1 => 'color: #990099; font-weight: bold;',
2 => 'color: #0000ff; font-weight: bold;',
3 => 'color: #330066;'
),
'COMMENTS' => array(
1 => 'color: #008000;',
2 => 'color: #ff6600;',
'MULTI' => 'color: #008000;'
),
'ESCAPE_CHAR' => array(
0 => 'color: #000099; font-weight: bold;'
),
'BRACKETS' => array(
0 => 'color: #006600; font-weight:bold'
),
'STRINGS' => array(
0 => 'color: #cc0000;'
),
'NUMBERS' => array(
0 => 'color: #800000;'
),
'METHODS' => array(
1 => 'color: #9900cc;'
),
'SYMBOLS' => array(
0 => 'color: #006600; font-weight: bold'
),
'REGEXPS' => array(
),
'SCRIPT' => array(
0 => '',
1 => '',
2 => '',
)
),
'URLS' => array(
1 => '',
2 => '',
3 => ''
),
'OOLANG' => true,
'OBJECT_SPLITTERS' => array(
1 => '.'
),
'REGEXPS' => array(
),
'STRICT_MODE_APPLIES' => GESHI_MAYBE,
'SCRIPT_DELIMITERS' => array(
0 => array(
'<%' => '%>'
),
1 => array(
'<script language="vbscript" runat="server">' => '</script>'
),
2 => array(
'<script language="javascript" runat="server">' => '</script>'
)
),
'HIGHLIGHT_STRICT_BLOCK' => array(
0 => true,
1 => true,
2 => true,
)
);
?>

View File

@ -0,0 +1,453 @@
<?php
/*************************************************************************************
* autoit.php
* --------
* Author: big_daddy (robert.i.anthony@gmail.com)
* Copyright: (c) 2006 and to GESHi ;)
* Release Version: 1.0.7.20
* Date Started: 26.01.2006
*
* Current bugs & todo:
* ----------
* - dosn't highlight symbols (Please note that in 1.0.X these are not used. Hopefully they will be used in 1.2.X.)
* - not sure how to get sendkeys to work " {!}, {SPACE} etc... "
* - jut copyied the regexp for variable from php so this HAVE to be checked and fixed to a better one ;)
*
* Reference: http://www.autoitscript.com/autoit3/docs/
*************************************************************************************
*
* This file is part of GeSHi.
*
* GeSHi is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* GeSHi is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with GeSHi; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
************************************************************************************/
$language_data = array (
'LANG_NAME' => 'AutoIt',
'COMMENT_SINGLE' => array(';'),
'COMMENT_MULTI' => array('#comments-start' => '#comments-end', '#cs' => '#ce'),
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
'QUOTEMARKS' => array("'", '"'),
'ESCAPE_CHAR' => '',
'KEYWORDS' => array(
1 => array(
'false', 'and', 'byref', 'case', 'const',
'continuecase', 'continueloop', 'default', 'dim', 'do',
'else', 'elseif', 'endfunc', 'endif', 'endselect',
'endswitch', 'endwith', 'enum', 'exit', 'exitloop',
'for', 'func', 'global', 'if', 'in',
'local', 'next', 'not', 'or', 'redim',
'return', 'select', 'step', 'switch', 'then',
'to', 'true', 'until', 'wend', 'while',
'with'
),
2 => array(
'@appdatacommondir', '@appdatadir', '@autoitexe', '@autoitpid',
'@autoitversion', '@com_eventobj', '@commonfilesdir', '@compiled',
'@computername', '@comspec', '@cr', '@crlf', '@desktopcommondir',
'@desktopdepth', '@desktopdir', '@desktopheight',
'@desktoprefresh', '@desktopwidth', '@documentscommondir',
'@error', '@exitcode', '@exitmethod', '@extended',
'@favoritescommondir', '@favoritesdir', '@gui_ctrlhandle',
'@gui_ctrlid', '@gui_dragfile', '@gui_dragid', '@gui_dropid',
'@gui_winhandle', '@homedrive', '@homepath', '@homeshare',
'@hotkeypressed', '@hour', '@inetgetactive', '@inetgetbytesread',
'@ipaddress1', '@ipaddress2', '@ipaddress3', '@ipaddress4',
'@kblayout', '@lf', '@logondnsdomain', '@logondomain',
'@logonserver', '@mday', '@min', '@mon', '@mydocumentsdir',
'@numparams', '@osbuild', '@oslang', '@osservicepack', '@ostype',
'@osversion', '@processorarch', '@programfilesdir',
'@programscommondir', '@programsdir', '@scriptdir',
'@scriptfullpath', '@scriptlinenumber', '@scriptname', '@sec',
'@startmenucommondir', '@startmenudir', '@startupcommondir',
'@startupdir', '@sw_disable', '@sw_enable', '@sw_hide', '@sw_lock',
'@sw_maximize', '@sw_minimize', '@sw_restore', '@sw_show',
'@sw_showdefault', '@sw_showmaximized', '@sw_showminimized',
'@sw_showminnoactive', '@sw_showna', '@sw_shownoactivate',
'@sw_shownormal', '@sw_unlock', '@systemdir', '@tab', '@tempdir',
'@tray_id', '@trayiconflashing', '@trayiconvisible', '@username',
'@userprofiledir', '@wday', '@windowsdir', '@workingdir', '@yday',
'@year'
),
3 => array(
'abs', 'acos', 'adlibdisable', 'adlibenable', 'asc', 'asin',
'assign', 'atan', 'autoitsetoption', 'autoitwingettitle',
'autoitwinsettitle', 'beep', 'binarystring', 'bitand', 'bitnot',
'bitor', 'bitrotate', 'bitshift', 'bitxor', 'blockinput', 'break',
'call', 'cdtray', 'ceiling', 'chr', 'clipget', 'clipput',
'consoleread', 'consolewrite', 'consolewriteerror', 'controlclick',
'controlcommand', 'controldisable', 'controlenable',
'controlfocus', 'controlgetfocus', 'controlgethandle',
'controlgetpos', 'controlgettext', 'controlhide',
'controllistview', 'controlmove', 'controlsend', 'controlsettext',
'controlshow', 'cos', 'dec', 'dircopy', 'dircreate', 'dirgetsize',
'dirmove', 'dirremove', 'dllcall', 'dllclose', 'dllopen',
'dllstructcreate', 'dllstructgetdata', 'dllstructgetptr',
'dllstructgetsize', 'dllstructsetdata', 'drivegetdrive',
'drivegetfilesystem', 'drivegetlabel', 'drivegetserial',
'drivegettype', 'drivemapadd', 'drivemapdel', 'drivemapget',
'drivesetlabel', 'drivespacefree', 'drivespacetotal',
'drivestatus', 'envget', 'envset', 'envupdate', 'eval', 'execute',
'exp', 'filechangedir', 'fileclose', 'filecopy',
'filecreatentfslink', 'filecreateshortcut', 'filedelete',
'fileexists', 'filefindfirstfile', 'filefindnextfile',
'filegetattrib', 'filegetlongname', 'filegetshortcut',
'filegetshortname', 'filegetsize', 'filegettime', 'filegetversion',
'fileinstall', 'filemove', 'fileopen', 'fileopendialog',
'fileread', 'filereadline', 'filerecycle', 'filerecycleempty',
'filesavedialog', 'fileselectfolder', 'filesetattrib',
'filesettime', 'filewrite', 'filewriteline', 'floor',
'ftpsetproxy', 'guicreate', 'guictrlcreateavi',
'guictrlcreatebutton', 'guictrlcreatecheckbox',
'guictrlcreatecombo', 'guictrlcreatecontextmenu',
'guictrlcreatedate', 'guictrlcreatedummy', 'guictrlcreateedit',
'guictrlcreategraphic', 'guictrlcreategroup', 'guictrlcreateicon',
'guictrlcreateinput', 'guictrlcreatelabel', 'guictrlcreatelist',
'guictrlcreatelistview', 'guictrlcreatelistviewitem',
'guictrlcreatemenu', 'guictrlcreatemenuitem',
'guictrlcreatemonthcal', 'guictrlcreateobj', 'guictrlcreatepic',
'guictrlcreateprogress', 'guictrlcreateradio',
'guictrlcreateslider', 'guictrlcreatetab', 'guictrlcreatetabitem',
'guictrlcreatetreeview', 'guictrlcreatetreeviewitem',
'guictrlcreateupdown', 'guictrldelete', 'guictrlgethandle',
'guictrlgetstate', 'guictrlread', 'guictrlrecvmsg',
'guictrlregisterlistviewsort', 'guictrlsendmsg',
'guictrlsendtodummy', 'guictrlsetbkcolor', 'guictrlsetcolor',
'guictrlsetcursor', 'guictrlsetdata', 'guictrlsetfont',
'guictrlsetgraphic', 'guictrlsetimage', 'guictrlsetlimit',
'guictrlsetonevent', 'guictrlsetpos', 'guictrlsetresizing',
'guictrlsetstate', 'guictrlsetstyle', 'guictrlsettip', 'guidelete',
'guigetcursorinfo', 'guigetmsg', 'guiregistermsg', 'guisetbkcolor',
'guisetcoord', 'guisetcursor', 'guisetfont', 'guisethelp',
'guiseticon', 'guisetonevent', 'guisetstate', 'guistartgroup',
'guiswitch', 'hex', 'hotkeyset', 'httpsetproxy', 'hwnd', 'inetget',
'inetgetsize', 'inidelete', 'iniread', 'inireadsection',
'inireadsectionnames', 'inirenamesection', 'iniwrite',
'iniwritesection', 'inputbox', 'int', 'isadmin', 'isarray',
'isbinarystring', 'isbool', 'isdeclared', 'isdllstruct', 'isfloat',
'ishwnd', 'isint', 'iskeyword', 'isnumber', 'isobj', 'isstring',
'log', 'memgetstats', 'mod', 'mouseclick', 'mouseclickdrag',
'mousedown', 'mousegetcursor', 'mousegetpos', 'mousemove',
'mouseup', 'mousewheel', 'msgbox', 'number', 'objcreate',
'objevent', 'objget', 'objname', 'opt', 'ping', 'pixelchecksum',
'pixelgetcolor', 'pixelsearch', 'pluginclose', 'pluginopen',
'processclose', 'processexists', 'processlist',
'processsetpriority', 'processwait', 'processwaitclose',
'progressoff', 'progresson', 'progressset', 'random', 'regdelete',
'regenumkey', 'regenumval', 'regread', 'regwrite', 'round', 'run',
'runasset', 'runwait', 'send', 'seterror', 'setextended',
'shellexecute', 'shellexecutewait', 'shutdown', 'sin', 'sleep',
'soundplay', 'soundsetwavevolume', 'splashimageon', 'splashoff',
'splashtexton', 'sqrt', 'srandom', 'statusbargettext',
'stderrread', 'stdinwrite', 'stdoutread', 'string', 'stringaddcr',
'stringformat', 'stringinstr', 'stringisalnum', 'stringisalpha',
'stringisascii', 'stringisdigit', 'stringisfloat', 'stringisint',
'stringislower', 'stringisspace', 'stringisupper',
'stringisxdigit', 'stringleft', 'stringlen', 'stringlower',
'stringmid', 'stringregexp', 'stringregexpreplace',
'stringreplace', 'stringright', 'stringsplit', 'stringstripcr',
'stringstripws', 'stringtrimleft', 'stringtrimright',
'stringupper', 'tan', 'tcpaccept', 'tcpclosesocket', 'tcpconnect',
'tcplisten', 'tcpnametoip', 'tcprecv', 'tcpsend', 'tcpshutdown',
'tcpstartup', 'timerdiff', 'timerinit', 'timerstart', 'timerstop',
'tooltip', 'traycreateitem', 'traycreatemenu', 'traygetmsg',
'trayitemdelete', 'trayitemgethandle', 'trayitemgetstate',
'trayitemgettext', 'trayitemsetonevent', 'trayitemsetstate',
'trayitemsettext', 'traysetclick', 'trayseticon', 'traysetonevent',
'traysetpauseicon', 'traysetstate', 'traysettooltip', 'traytip',
'ubound', 'udpbind', 'udpclosesocket', 'udpopen', 'udprecv',
'udpsend', 'winactivate', 'winactive', 'winclose', 'winexists',
'winflash', 'wingetcaretpos', 'wingetclasslist',
'wingetclientsize', 'wingethandle', 'wingetpos', 'wingetprocess',
'wingetstate', 'wingettext', 'wingettitle', 'winkill', 'winlist',
'winmenuselectitem', 'winminimizeall', 'winminimizeallundo',
'winmove', 'winsetontop', 'winsetstate', 'winsettitle',
'winsettrans', 'winshow', 'winwait', 'winwaitactive',
'winwaitclose', 'winwaitnotactive'
),
4 => array(
'_arrayadd', '_arraybinarysearch', '_arraycreate', '_arraydelete',
'_arraydisplay', '_arrayinsert', '_arraymax', '_arraymaxindex',
'_arraymin', '_arrayminindex', '_arraypop', '_arraypush',
'_arrayreverse', '_arraysearch', '_arraysort', '_arrayswap',
'_arraytoclip', '_arraytostring', '_arraytrim', '_colorgetblue',
'_colorgetgreen', '_colorgetred', '_dateadd', '_datedayofweek',
'_datedaysinmonth', '_datediff', '_dateisleapyear', '_dateisvalid',
'_datetimeformat', '_datetimesplit', '_datetodayofweek',
'_datetodayofweekiso', '_datetodayvalue', '_dayvaluetodate',
'_now', '_nowcalc', '_nowcalcdate', '_nowdate', '_nowtime',
'_setdate', '_settime', '_tickstotime', '_timetoticks',
'_weeknumberiso', '_filecountlines', '_filecreate',
'_filelisttoarray', '_fileprint', '_filereadtoarray',
'_filewritefromarray', '_filewritelog', '_filewritetoline',
'_pathfull', '_pathmake', '_pathsplit', '_replacestringinfile',
'_tempfile', '_guictrlcomboadddir', '_guictrlcomboaddstring',
'_guictrlcomboautocomplete', '_guictrlcombodeletestring',
'_guictrlcombofindstring', '_guictrlcombogetcount',
'_guictrlcombogetcursel', '_guictrlcombogetdroppedcontrolrect',
'_guictrlcombogetdroppedstate', '_guictrlcombogetdroppedwidth',
'_guictrlcombogeteditsel', '_guictrlcombogetextendedui',
'_guictrlcombogethorizontalextent', '_guictrlcombogetitemheight',
'_guictrlcombogetlbtext', '_guictrlcombogetlbtextlen',
'_guictrlcombogetlist', '_guictrlcombogetlocale',
'_guictrlcombogetminvisible', '_guictrlcombogettopindex',
'_guictrlcomboinitstorage', '_guictrlcomboinsertstring',
'_guictrlcombolimittext', '_guictrlcomboresetcontent',
'_guictrlcomboselectstring', '_guictrlcombosetcursel',
'_guictrlcombosetdroppedwidth', '_guictrlcomboseteditsel',
'_guictrlcombosetextendedui', '_guictrlcombosethorizontalextent',
'_guictrlcombosetitemheight', '_guictrlcombosetminvisible',
'_guictrlcombosettopindex', '_guictrlcomboshowdropdown',
'_guictrleditcanundo', '_guictrleditemptyundobuffer',
'_guictrleditfind', '_guictrleditgetfirstvisibleline',
'_guictrleditgetline', '_guictrleditgetlinecount',
'_guictrleditgetmodify', '_guictrleditgetrect',
'_guictrleditgetsel', '_guictrleditlinefromchar',
'_guictrleditlineindex', '_guictrleditlinelength',
'_guictrleditlinescroll', '_guictrleditreplacesel',
'_guictrleditscroll', '_guictrleditsetmodify',
'_guictrleditsetrect', '_guictrleditsetsel', '_guictrleditundo',
'_guictrlipaddressclear', '_guictrlipaddresscreate',
'_guictrlipaddressdelete', '_guictrlipaddressget',
'_guictrlipaddressisblank', '_guictrlipaddressset',
'_guictrlipaddresssetfocus', '_guictrlipaddresssetfont',
'_guictrlipaddresssetrange', '_guictrlipaddressshowhide',
'_guictrllistadddir', '_guictrllistadditem', '_guictrllistclear',
'_guictrllistcount', '_guictrllistdeleteitem',
'_guictrllistfindstring', '_guictrllistgetanchorindex',
'_guictrllistgetcaretindex', '_guictrllistgethorizontalextent',
'_guictrllistgetinfo', '_guictrllistgetitemrect',
'_guictrllistgetlocale', '_guictrllistgetselcount',
'_guictrllistgetselitems', '_guictrllistgetselitemstext',
'_guictrllistgetselstate', '_guictrllistgettext',
'_guictrllistgettextlen', '_guictrllistgettopindex',
'_guictrllistinsertitem', '_guictrllistreplacestring',
'_guictrllistselectedindex', '_guictrllistselectindex',
'_guictrllistselectstring', '_guictrllistselitemrange',
'_guictrllistselitemrangeex', '_guictrllistsetanchorindex',
'_guictrllistsetcaretindex', '_guictrllistsethorizontalextent',
'_guictrllistsetlocale', '_guictrllistsetsel',
'_guictrllistsettopindex', '_guictrllistsort',
'_guictrllistswapstring', '_guictrllistviewcopyitems',
'_guictrllistviewdeleteallitems', '_guictrllistviewdeletecolumn',
'_guictrllistviewdeleteitem',
'_guictrllistviewdeleteitemsselected',
'_guictrllistviewensurevisible', '_guictrllistviewfinditem',
'_guictrllistviewgetbackcolor', '_guictrllistviewgetcallbackmask',
'_guictrllistviewgetcheckedstate',
'_guictrllistviewgetcolumnorder', '_guictrllistviewgetcolumnwidth',
'_guictrllistviewgetcounterpage', '_guictrllistviewgetcursel',
'_guictrllistviewgetextendedlistviewstyle',
'_guictrllistviewgetheader', '_guictrllistviewgethotcursor',
'_guictrllistviewgethotitem', '_guictrllistviewgethovertime',
'_guictrllistviewgetitemcount', '_guictrllistviewgetitemtext',
'_guictrllistviewgetitemtextarray', '_guictrllistviewgetnextitem',
'_guictrllistviewgetselectedcount',
'_guictrllistviewgetselectedindices',
'_guictrllistviewgetsubitemscount', '_guictrllistviewgettopindex',
'_guictrllistviewgetunicodeformat', '_guictrllistviewhidecolumn',
'_guictrllistviewinsertcolumn', '_guictrllistviewinsertitem',
'_guictrllistviewjustifycolumn', '_guictrllistviewscroll',
'_guictrllistviewsetcheckstate',
'_guictrllistviewsetcolumnheadertext',
'_guictrllistviewsetcolumnorder', '_guictrllistviewsetcolumnwidth',
'_guictrllistviewsethotitem', '_guictrllistviewsethovertime',
'_guictrllistviewsetitemcount', '_guictrllistviewsetitemselstate',
'_guictrllistviewsetitemtext', '_guictrllistviewsort',
'_guictrlmonthcalget1stdow', '_guictrlmonthcalgetcolor',
'_guictrlmonthcalgetdelta', '_guictrlmonthcalgetmaxselcount',
'_guictrlmonthcalgetmaxtodaywidth',
'_guictrlmonthcalgetminreqrect', '_guictrlmonthcalset1stdow',
'_guictrlmonthcalsetcolor', '_guictrlmonthcalsetdelta',
'_guictrlmonthcalsetmaxselcount', '_guictrlslidercleartics',
'_guictrlslidergetlinesize', '_guictrlslidergetnumtics',
'_guictrlslidergetpagesize', '_guictrlslidergetpos',
'_guictrlslidergetrangemax', '_guictrlslidergetrangemin',
'_guictrlslidersetlinesize', '_guictrlslidersetpagesize',
'_guictrlslidersetpos', '_guictrlslidersetticfreq',
'_guictrlstatusbarcreate', '_guictrlstatusbarcreateprogress',
'_guictrlstatusbardelete', '_guictrlstatusbargetborders',
'_guictrlstatusbargeticon', '_guictrlstatusbargetparts',
'_guictrlstatusbargetrect', '_guictrlstatusbargettext',
'_guictrlstatusbargettextlength', '_guictrlstatusbargettip',
'_guictrlstatusbargetunicode', '_guictrlstatusbarissimple',
'_guictrlstatusbarresize', '_guictrlstatusbarsetbkcolor',
'_guictrlstatusbarseticon', '_guictrlstatusbarsetminheight',
'_guictrlstatusbarsetparts', '_guictrlstatusbarsetsimple',
'_guictrlstatusbarsettext', '_guictrlstatusbarsettip',
'_guictrlstatusbarsetunicode', '_guictrlstatusbarshowhide',
'_guictrltabdeleteallitems', '_guictrltabdeleteitem',
'_guictrltabdeselectall', '_guictrltabgetcurfocus',
'_guictrltabgetcursel', '_guictrltabgetextendedstyle',
'_guictrltabgetitemcount', '_guictrltabgetitemrect',
'_guictrltabgetrowcount', '_guictrltabgetunicodeformat',
'_guictrltabhighlightitem', '_guictrltabsetcurfocus',
'_guictrltabsetcursel', '_guictrltabsetmintabwidth',
'_guictrltabsetunicodeformat', '_guictrltreeviewdeleteallitems',
'_guictrltreeviewdeleteitem', '_guictrltreeviewexpand',
'_guictrltreeviewgetbkcolor', '_guictrltreeviewgetcount',
'_guictrltreeviewgetindent', '_guictrltreeviewgetlinecolor',
'_guictrltreeviewgetparenthandle', '_guictrltreeviewgetparentid',
'_guictrltreeviewgetstate', '_guictrltreeviewgettext',
'_guictrltreeviewgettextcolor', '_guictrltreeviewgettree',
'_guictrltreeviewinsertitem', '_guictrltreeviewsetbkcolor',
'_guictrltreeviewseticon', '_guictrltreeviewsetindent',
'_guictrltreeviewsetlinecolor', '_guictrltreeviewsetstate',
'_guictrltreeviewsettext', '_guictrltreeviewsettextcolor',
'_guictrltreeviewsort', '_ie_example', '_ie_introduction',
'_ie_versioninfo', '_ieaction', '_ieattach', '_iebodyreadhtml',
'_iebodyreadtext', '_iebodywritehtml', '_iecreate',
'_iecreateembedded', '_iedocgetobj', '_iedocinserthtml',
'_iedocinserttext', '_iedocreadhtml', '_iedocwritehtml',
'_ieerrorhandlerderegister', '_ieerrorhandlerregister',
'_ieerrornotify', '_ieformelementcheckboxselect',
'_ieformelementgetcollection', '_ieformelementgetobjbyname',
'_ieformelementgetvalue', '_ieformelementoptionselect',
'_ieformelementradioselect', '_ieformelementsetvalue',
'_ieformgetcollection', '_ieformgetobjbyname', '_ieformimageclick',
'_ieformreset', '_ieformsubmit', '_ieframegetcollection',
'_ieframegetobjbyname', '_iegetobjbyname',
'_ieheadinserteventscript', '_ieimgclick', '_ieimggetcollection',
'_ieisframeset', '_ielinkclickbyindex', '_ielinkclickbytext',
'_ielinkgetcollection', '_ieloadwait', '_ieloadwaittimeout',
'_ienavigate', '_iepropertyget', '_iepropertyset', '_iequit',
'_ietablegetcollection', '_ietablewritetoarray',
'_ietagnameallgetcollection', '_ietagnamegetcollection', '_getip',
'_inetexplorercapable', '_inetgetsource', '_inetmail',
'_inetsmtpmail', '_tcpiptoname', '_degree', '_mathcheckdiv',
'_max', '_min', '_radian', '_choosecolor', '_choosefont',
'_clipputfile', '_iif', '_ispressed', '_mousetrap', '_singleton',
'_processgetname', '_processgetpriority', '_rundos',
'_sendmessage', '_soundclose', '_soundlength', '_soundopen',
'_soundpause', '_soundplay', '_soundpos', '_soundresume',
'_soundseek', '_soundstatus', '_soundstop', '_sqlite_changes',
'_sqlite_close', '_sqlite_display2dresult', '_sqlite_encode',
'_sqlite_errcode', '_sqlite_errmsg', '_sqlite_escape',
'_sqlite_exec', '_sqlite_fetchdata', '_sqlite_fetchnames',
'_sqlite_gettable', '_sqlite_gettable2d',
'_sqlite_lastinsertrowid', '_sqlite_libversion', '_sqlite_open',
'_sqlite_query', '_sqlite_queryfinalize', '_sqlite_queryreset',
'_sqlite_querysinglerow', '_sqlite_savemode', '_sqlite_settimeout',
'_sqlite_shutdown', '_sqlite_sqliteexe', '_sqlite_startup',
'_sqlite_totalchanges', '_hextostring', '_stringaddcomma',
'_stringbetween', '_stringencrypt', '_stringinsert',
'_stringproper', '_stringrepeat', '_stringreverse', '_stringtohex',
'_viclose', '_viexeccommand', '_vifindgpib', '_vigpibbusreset',
'_vigtl', '_viopen', '_visetattribute', '_visettimeout'
),
5 => array(
'#include', '#include-once', '#notrayicon'
),
6 => array(
'#forceref', '#compiler_allow_decompile', '#compiler_au3check_dat',
'#compiler_au3check_parameters',
'#compiler_au3check_stop_onwarning', '#compiler_aut2exe',
'#compiler_autoit3', '#compiler_compression', '#compiler_icon',
'#compiler_outfile', '#compiler_outfile_type',
'#compiler_passphrase', '#compiler_plugin_funcs',
'#compiler_prompt', '#compiler_res_comment',
'#compiler_res_description', '#compiler_res_field',
'#compiler_res_field1name', '#compiler_res_field1value',
'#compiler_res_field2name', '#compiler_res_field2value',
'#compiler_res_fileversion',
'#compiler_res_fileversion_autoincrement',
'#compiler_res_legalcopyright', '#compiler_run_after',
'#compiler_run_au3check', '#compiler_run_before',
'#compiler_run_cvswrapper', '#compiler_run_tidy',
'#compiler_tidy_stop_onerror', '#compiler_useupx', '#endregion',
'#region', '#run_debug_mode', '#tidy_parameters'
)
),
'SYMBOLS' => array(
'(', ')', '[', ']', '&', '*', '/', '<', '>', '+', '-', '^', '=', '.'
),
'CASE_SENSITIVE' => array(
GESHI_COMMENTS => false,
1 => false,
2 => false,
3 => false,
4 => false,
5 => false,
6 => false
),
'STYLES' => array(
'KEYWORDS' => array(
1 => 'color: #0000FF; font-weight: bold;',
2 => 'color: #800000; font-weight: bold;',
3 => 'color: #000080; font-style: italic; font-weight: bold;',
4 => 'color: #0080FF; font-style: italic; font-weight: bold;',
5 => 'color: #F000FF; font-style: italic;',
6 => 'color: #A00FF0; font-style: italic;'
),
'COMMENTS' => array(
0 => 'font-style: italic; color: #009933;',
'MULTI' => 'font-style: italic; color: #669900;'
),
'ESCAPE_CHAR' => array(
0 => ''
),
'BRACKETS' => array(
0 => 'color: #FF0000; font-weight: bold;'
),
'STRINGS' => array(
0 => 'font-weight: bold; color: #008080;'
),
'NUMBERS' => array(
0 => 'color: #AC00A9; font-style: italic; font-weight: bold;'
),
'METHODS' => array(
1 => 'color: #0000FF; font-style: italic; font-weight: bold;'
),
'SYMBOLS' => array(
0 => 'color: #FF0000; font-weight: bold;'
),
'REGEXPS' => array(
0 => 'font-weight: bold; color: #AA0000;'
),
'SCRIPT' => array(
0 => '',
1 => '',
2 => '',
3 => '',
4 => '',
5 => '',
6 => ''
)
),
'URLS' => array(
1 => 'http://www.autoitscript.com/autoit3/docs/keywords.htm',
2 => 'http://www.autoitscript.com/autoit3/docs/macros.htm',
3 => 'http://www.autoitscript.com/autoit3/docs/functions/{FNAME}.htm',
4 => ''
),
'OOLANG' => true,
'OBJECT_SPLITTERS' => array(
1 => '.'
),
'REGEXPS' => array(
0 => '[\\$%@]+[a-zA-Z_][a-zA-Z0-9_]*'
),
'STRICT_MODE_APPLIES' => GESHI_MAYBE,
'SCRIPT_DELIMITERS' => array(
),
'HIGHLIGHT_STRICT_BLOCK' => array(
0 => true,
1 => true,
2 => true,
3 => true
)
);
?>

View File

@ -0,0 +1,198 @@
<?php
/*************************************************************************************
* bash.php
* --------
* Author: Andreas Gohr (andi@splitbrain.org)
* Copyright: (c) 2004 Andreas Gohr, Nigel McNie (http://qbnz.com/highlighter)
* Release Version: 1.0.7.20
* Date Started: 2004/08/20
*
* BASH language file for GeSHi.
*
* CHANGES
* -------
* 2007/06/11 (1.0.7.20)
* - Added a lot of keywords (BenBE / Jan G)
* 2004/11/27 (1.0.2)
* - Added support for multiple object splitters
* 2004/10/27 (1.0.1)
* - Added support for URLs
* 2004/08/20 (1.0.0)
* - First Release
*
* TODO (updated 2004/11/27)
* -------------------------
* * Get symbols working
* * Highlight builtin vars
*
*************************************************************************************
*
* This file is part of GeSHi.
*
* GeSHi is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* GeSHi is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with GeSHi; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
************************************************************************************/
$language_data = array (
'LANG_NAME' => 'Bash',
// Bash DOES have single line comments with # markers. But bash also has
// the $# variable, so comments need special handling (see sf.net
// 1564839)
'COMMENT_SINGLE' => array(),
'COMMENT_MULTI' => array(),
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
'QUOTEMARKS' => array("'", '"'),
'ESCAPE_CHAR' => '\\',
'KEYWORDS' => array(
1 => array(
'case', 'do', 'done', 'elif', 'else', 'esac', 'fi', 'for', 'function',
'if', 'in', 'select', 'set', 'then', 'until', 'while', 'time'
),
2 => array(
'aclocal', 'aconnect', 'aplay', 'apm', 'apmsleep', 'apropos',
'ar', 'arch', 'arecord', 'as', 'as86', 'autoconf', 'autoheader',
'automake', 'awk',
'basename', 'bc', 'bison', 'bunzip2', 'bzip2', 'bzcat',
'bzcmp', 'bzdiff', 'bzegrep', 'bzegrep', 'bzfgrep', 'bzgrep',
'bzip2', 'bzip2recover', 'bzless', 'bzmore',
'c++', 'cal', 'cat', 'chattr', 'cc', 'cdda2wav', 'cdparanoia',
'cdrdao', 'cd-read', 'cdrecord', 'chfn', 'chgrp', 'chmod',
'chown', 'chroot', 'chsh', 'chvt', 'clear', 'cmp', 'comm', 'co',
'col', 'cp', 'cpio', 'cpp', 'cut',
'date', 'dd', 'dc', 'dcop', 'deallocvt', 'df', 'diff', 'diff3', 'dir',
'dircolors', 'directomatic', 'dirname', 'dmesg',
'dnsdomainname', 'domainname', 'du', 'dumpkeys',
'ed', 'egrep', 'env', 'expr',
'false', 'fbset', 'fgconsole','fgrep', 'find', 'file', 'flex', 'flex++',
'fmt', 'free', 'ftp', 'funzip', 'fuser',
'g++', 'gawk', 'gc','gcc', 'gdb', 'getent', 'getkeycodes',
'getopt', 'gettext', 'gettextize', 'gimp', 'gimp-remote',
'gimptool', 'gmake', 'gocr', 'grep', 'groups', 'gs', 'gunzip',
'gzexe', 'gzip',
'head', 'hexdump', 'hostname',
'id', 'igawk', 'install',
'join',
'kbd_mode','kbdrate', 'kdialog', 'kfile', 'kill', 'killall',
'last', 'lastb', 'ld', 'ld86', 'ldd', 'less', 'lex', 'link', 'ln', 'loadkeys',
'loadunimap', 'locate', 'lockfile', 'login', 'logname',
'lp', 'lpr', 'ls', 'lsattr', 'lsmod', 'lsmod.old', 'lynx',
'm4', 'make', 'man', 'mapscrn', 'mesg', 'mkdir', 'mkfifo',
'mknod', 'mktemp', 'more', 'mount', 'msgfmt', 'mv',
'namei', 'nano', 'nasm', 'nawk', 'netstat', 'nice',
'nisdomainname', 'nl', 'nm', 'nm86', 'nmap', 'nohup', 'nop',
'od', 'openvt',
'passwd', 'patch', 'pcregrep', 'pcretest', 'perl', 'perror',
'pgawk', 'pidof', 'ping', 'pr', 'procmail', 'prune', 'ps', 'pstree',
'ps2ascii', 'ps2epsi', 'ps2frag', 'ps2pdf', 'ps2ps', 'psbook',
'psmerge', 'psnup', 'psresize', 'psselect', 'pstops',
'rbash', 'rcs', 'read', 'readlink', 'red', 'resizecons', 'rev', 'rm',
'rmdir', 'run-parts',
'sash', 'sed', 'setfont', 'setkeycodes', 'setleds',
'setmetamode', 'setserial', 'scp', 'seq', 'setterm', 'sh',
'showkey', 'shred', 'size', 'size86', 'skill', 'sleep', 'slogin',
'snice', 'sort', 'sox', 'split', 'ssed', 'ssh', 'ssh-add',
'ssh-agent', 'ssh-keygen', 'ssh-keyscan', 'stat', 'strings',
'strip', 'stty', 'su', 'sudo', 'suidperl', 'sum', 'sync',
'tac', 'tail', 'tar', 'tee', 'tempfile', 'touch', 'tr', 'true',
'umount', 'uname', 'unicode_start', 'unicode_stop', 'uniq',
'unlink', 'unzip', 'updatedb', 'updmap', 'uptime', 'users',
'utmpdump', 'uuidgen',
'vdir', 'vmstat',
'w', 'wall', 'wc', 'wget', 'whatis', 'whereis', 'which', 'who',
'whoami', 'write',
'xargs', 'xhost', 'xmodmap', 'xset',
'yacc', 'yes', 'ypdomainname',
'zcat', 'zcmp', 'zdiff', 'zegrep', 'zfgrep', 'zforce', 'zgrep',
'zip', 'zless', 'zmore', 'znew', 'zsh', ' zsoelim'
),
3 => array(
'alias', 'bg', 'bind', 'break', 'builtin', 'cd', 'command',
'compgen', 'complete', 'continue', 'declare', 'dirs', 'disown',
'echo', 'enable', 'eval', 'exec', 'exit', 'export', 'fc',
'fg', 'getopts', 'hash', 'help', 'history', 'jobs', 'kill', 'let',
'local', 'logout', 'popd', 'printf', 'pushd', 'pwd', 'readonly',
'return', 'shift', 'shopt', 'source', 'suspend', 'test', 'times',
'trap', 'type', 'typeset', 'ulimit', 'umask', 'unalias', 'unset',
'wait'
)
),
'SYMBOLS' => array(
'(', ')', '[', ']', '!', '@', '%', '&', '*', '|', '/', '<', '>', ';;'
),
'CASE_SENSITIVE' => array(
GESHI_COMMENTS => false,
1 => true,
2 => true,
3 => true
),
'STYLES' => array(
'KEYWORDS' => array(
1 => 'color: #000000; font-weight: bold;',
2 => 'color: #c20cb9; font-weight: bold;',
3 => 'color: #7a0874; font-weight: bold;'
),
'COMMENTS' => array(
1 => 'color: #808080; font-style: italic;'
),
'ESCAPE_CHAR' => array(
0 => 'color: #000099; font-weight: bold;'
),
'BRACKETS' => array(
0 => 'color: #7a0874; font-weight: bold;'
),
'STRINGS' => array(
0 => 'color: #ff0000;'
),
'NUMBERS' => array(
0 => 'color: #000000;'
),
'METHODS' => array(
),
'SYMBOLS' => array(
0 => 'color: #000000; font-weight: bold;'
),
'REGEXPS' => array(
0 => 'color: #007800;',
1 => 'color: #007800;',
2 => 'color: #007800;',
3 => 'color: #808080; font-style: italic;',
4 => 'color: #007800;'
),
'SCRIPT' => array(
)
),
'URLS' => array(
1 => '',
2 => '',
3 => ''
),
'OOLANG' => false,
'OBJECT_SPLITTERS' => array(
),
'REGEXPS' => array(
0 => "\\$\\{[a-zA-Z_][a-zA-Z0-9_]*?\\}",
1 => "\\$[a-zA-Z_][a-zA-Z0-9_]*",
2 => "([a-zA-Z_][a-zA-Z0-9_]*)=",
3 => "(?<!\\$)#[^\n]*",
4 => "\\$#"
),
'STRICT_MODE_APPLIES' => GESHI_NEVER,
'SCRIPT_DELIMITERS' => array(
),
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
?>

View File

@ -0,0 +1,185 @@
<?php
/*************************************************************************************
* blitzbasic.php
* --------------
* Author: P<EFBFBD>draig O`Connel (info@moonsword.info)
* Copyright: (c) 2005 P<EFBFBD>draig O`Connel (http://moonsword.info)
* Release Version: 1.0.7.20
* Date Started: 16.10.2005
*
* BlitzBasic language file for GeSHi.
*
* It is a simple Basic dialect. Released for Games and Network Connections.
* In this Language File are all functions included (2D BB and 3D BB)
*
*
* CHANGES
* -------
* 2005/12/28 (1.0.1)
* - Remove unnecessary style index for regexps
* 2005/10/22 (1.0.0)
* - First Release
*
* TODO (updated 2005/10/22)
* -------------------------
* * Sort out the Basic commands for splitting up.
* * To set up the right colors.
* (the colors are ok, but not the correct ones)
* * Split to BlitzBasic 2D and BlitzBasic 3D.
*
*************************************************************************************
*
* This file is part of GeSHi.
*
* GeSHi is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* GeSHi is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with GeSHi; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
************************************************************************************/
$language_data = array (
'LANG_NAME' => 'BlitzBasic',
'COMMENT_SINGLE' => array(1 => ';'),
'COMMENT_MULTI' => array(),
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
'QUOTEMARKS' => array('"'),
'ESCAPE_CHAR' => '',
'KEYWORDS' => array(
1 => array(
'If','EndIf','ElseIf','Else If','Else','While','Wend','Return','Next','Include','End Type','End Select','End If','End Function','End','Select',
'Type','Forever','For','Or','And','AppTitle','Case','Goto','Gosub','Step','Stop','Int','Last','False','Then','To','True','Until','Float',
'String','Before','Not'
),
2 => array(
// All Functions - 2D BB and 3D BB
'Xor','WriteString','WriteShort','WritePixelFast','WritePixel','WriteLine','WriteInt','WriteFloat','WriteFile','WriteBytes',
'WriteByte','Write','WaitTimer','WaitMouse','WaitKey','WaitJoy','VWait','Viewport',
'Upper','UpdateGamma','UnlockBuffer','UDPTimeouts','UDPStreamPort','UDPStreamIP','UDPMsgPort','UDPMsgIP',
'Trim','TotalVidMem','TileImage','TileBlock','TFormImage','TFormFilter','Text',
'TCPTimeouts','TCPStreamPort','TCPStreamIP','Tan','SystemProperty','StringWidth','StringHeight','Str','StopNetGame',
'StopChannel','StartNetGame','Sqr','SoundVolume','SoundPitch','SoundPan','Sin','Shr',
'ShowPointer','Shl','Sgn','SetGfxDriver','SetGamma','SetFont','SetEnv','SetBuffer','SendUDPMsg','SendNetMsg',
'SeekFile','SeedRnd','ScanLine','ScaleImage','SaveImage','SaveBuffer','Sar','RuntimeError','RSet',
'RotateImage','RndSeed','Rnd','Right','ResumeChannel','Restore','ResizeImage','ResizeBank','Replace',
'Repeat','RecvUDPMsg','RecvNetMsg','RectsOverlap','Rect','ReadString','ReadShort','ReadPixelFast','ReadPixel','ReadLine',
'ReadInt','ReadFloat','ReadFile','ReadDir','ReadBytes','ReadByte','ReadAvail','Read','Rand','Print',
'PokeShort','PokeInt','PokeFloat','PokeByte','Plot','PlaySound','PlayMusic','PlayCDTrack','Pi','PeekShort',
'PeekInt','PeekFloat','PeekByte','PauseChannel','Oval','Origin','OpenTCPStream','OpenMovie','OpenFile',
'Null','NextFile','New','NetPlayerName','NetPlayerLocal','NetMsgType','NetMsgTo','NetMsgFrom',
'NetMsgData','MovieWidth','MoviePlaying','MovieHeight','MoveMouse','MouseZSpeed','MouseZ','MouseYSpeed','MouseY','MouseXSpeed',
'MouseX','MouseHit','MouseDown','Mod','Millisecs','MidHandle','Mid','MaskImage','LSet','Lower',
'LoopSound','Log10','Log','LockBuffer','Locate','Local','LoadSound','LoadImage','LoadFont','LoadBuffer',
'LoadAnimImage','Line','Len','Left','KeyHit','KeyDown','JoyZDir','JoyZ','JoyYDir',
'JoyYaw','JoyY','JoyXDir','JoyX','JoyVDir','JoyV','JoyUDir','JoyU','JoyType','JoyRoll',
'JoyPitch','JoyHit','JoyHat','JoyDown','JoinNetGame','Instr','Insert','Input',
'ImageYHandle','ImageXHandle','ImageWidth','ImagesOverlap','ImagesCollide','ImageRectOverlap','ImageRectCollide','ImageHeight','ImageBuffer','If',
'HostNetGame','HostIP','HidePointer','Hex','HandleImage','GraphicsWidth','GraphicsHeight','GraphicsDepth','GraphicsBuffer','Graphics',
'GrabImage','Global','GFXModeWidth','GFXModeHeight','GfxModeExists','GFXModeDepth','GfxDriverName','GetMouse',
'GetKey','GetJoy','GetEnv','GetColor','GammaRed','GammaGreen','GammaBlue','Function','FrontBuffer','FreeTimer',
'FreeSound','FreeImage','FreeFont','FreeBank','FontWidth','FontHeight','FlushMouse','FlushKeys',
'FlushJoy','Floor','Flip','First','FileType','FileSize','FilePos','Field',
'Exp','Exit','ExecFile','Eof','EndGraphics','Each','DrawMovie','DrawImageRect','DrawImage','DrawBlockRect','DrawBlock',
'DottedIP','Dim','DeleteNetPlayer','DeleteFile','DeleteDir','Delete','Delay','Default','DebugLog','Data',
'CurrentTime','CurrentDir','CurrentDate','CreateUDPStream','CreateTimer','CreateTCPServer','CreateNetPlayer','CreateImage','CreateDir','CreateBank',
'CountHostIPs','CountGFXModes','CountGfxDrivers','Cos','CopyStream','CopyRect','CopyPixelFast','CopyPixel','CopyImage','CopyFile',
'CopyBank','Const','CommandLine','ColorRed','ColorGreen','ColorBlue','Color','ClsColor','Cls','CloseUDPStream',
'CloseTCPStream','CloseTCPServer','CloseMovie','CloseFile','CloseDir','Chr','ChannelVolume','ChannelPlaying','ChannelPitch','ChannelPan',
'ChangeDir','Ceil','CallDLL','Bin','BankSize','BackBuffer','AvailVidMem','AutoMidHandle',
'ATan2','ATan','ASin','Asc','After','ACos','AcceptTCPStream','Abs',
// 3D Commands
'Wireframe','Windowed3D','WBuffer','VertexZ','VertexY',
'VertexX','VertexW','VertexV','VertexU','VertexTexCoords','VertexRed','VertexNZ','VertexNY','VertexNX','VertexNormal',
'VertexGreen','VertexCoords','VertexColor','VertexBlue','VertexAlpha','VectorYaw','VectorPitch','UpdateWorld','UpdateNormals','TurnEntity',
'TrisRendered','TriangleVertex','TranslateEntity','TFormVector','TFormPoint','TFormNormal','TFormedZ','TFormedY','TFormedX','TextureWidth',
'TextureName','TextureHeight','TextureFilter','TextureCoords','TextureBuffer','TextureBlend','TerrainZ','TerrainY','TerrainX','TerrainSize',
'TerrainShading','TerrainHeight','TerrainDetail','SpriteViewMode','ShowEntity','SetCubeFace','SetAnimTime','SetAnimKey','ScaleTexture','ScaleSprite',
'ScaleMesh','ScaleEntity','RotateTexture','RotateSprite','RotateMesh','RotateEntity','ResetEntity','RenderWorld','ProjectedZ','ProjectedY',
'ProjectedX','PositionTexture','PositionMesh','PositionEntity','PointEntity','PickedZ','PickedY','PickedX','PickedTriangle','PickedTime',
'PickedSurface','PickedNZ','PickedNY','PickedNX','PickedEntity','PaintSurface','PaintMesh','PaintEntity','NameEntity','MoveEntity',
'ModifyTerrain','MeshWidth','MeshHeight','MeshesIntersect','MeshDepth','MD2AnimTime','MD2AnimLength','MD2Animating','LoadTexture','LoadTerrain',
'LoadSprite','LoadMesh','LoadMD2','LoaderMatrix','LoadBSP','LoadBrush','LoadAnimTexture','LoadAnimSeq','LoadAnimMesh','Load3DSound',
'LinePick','LightRange','LightMesh','LightConeAngles','LightColor','HWMultiTex','HideEntity','HandleSprite','Graphics3D','GfxMode3DExists',
'GfxMode3D','GfxDriverCaps3D','GfxDriver3D','GetSurfaceBrush','GetSurface','GetParent','GetMatElement','GetEntityType','GetEntityBrush','GetChild',
'GetBrushTexture','FreeTexture','FreeEntity','FreeBrush','FlipMesh','FitMesh','FindSurface','FindChild','ExtractAnimSeq','EntityZ',
'EntityYaw','EntityY','EntityX','EntityVisible','EntityType','EntityTexture','EntityShininess','EntityRoll','EntityRadius','EntityPitch',
'EntityPickMode','EntityPick','EntityParent','EntityOrder','EntityName','EntityInView','EntityFX','EntityDistance','EntityColor','EntityCollided',
'EntityBox','EntityBlend','EntityAutoFade','EntityAlpha','EmitSound','Dither','DeltaYaw','DeltaPitch','CreateTexture','CreateTerrain',
'CreateSurface','CreateSprite','CreateSphere','CreatePlane','CreatePivot','CreateMirror','CreateMesh','CreateListener','CreateLight','CreateCylinder',
'CreateCube','CreateCone','CreateCamera','CreateBrush','CountVertices','CountTriangles','CountSurfaces','CountGfxModes3D','CountCollisions','CountChildren',
'CopyMesh','CopyEntity','CollisionZ','CollisionY','CollisionX','CollisionTriangle','CollisionTime','CollisionSurface','Collisions','CollisionNZ',
'CollisionNY','CollisionNX','CollisionEntity','ClearWorld','ClearTextureFilters','ClearSurface','ClearCollisions','CaptureWorld','CameraZoom','CameraViewport',
'CameraRange','CameraProjMode','CameraProject','CameraPick','CameraFogRange','CameraFogMode','CameraFogColor','CameraClsMode','CameraClsColor','BSPLighting',
'BSPAmbientLight','BrushTexture','BrushShininess','BrushFX','BrushColor','BrushBlend','BrushAlpha','AntiAlias','AnimTime','AnimSeq',
'AnimLength','Animating','AnimateMD2','Animate','AmbientLight','AlignToVector','AddVertex','AddTriangle','AddMesh','AddAnimSeq',
)
),
'SYMBOLS' => array(
'(',')'
),
'CASE_SENSITIVE' => array(
GESHI_COMMENTS => false,
1 => false,
2 => false,
),
'STYLES' => array(
'KEYWORDS' => array(
1 => 'color: #000066; font-weight: bold;',
2 => 'color: #0000ff;'
),
'COMMENTS' => array(
1 => 'color: #D9D100; font-style: italic;',
),
'ESCAPE_CHAR' => array(
0 => 'color: #000099; font-weight: bold;'
),
'BRACKETS' => array(
0 => 'color: #000066;'
),
'STRINGS' => array(
0 => 'color: #009900;'
),
'NUMBERS' => array(
0 => 'color: #CC0000;'
),
'METHODS' => array(
1 => 'color: #006600;'
),
'SYMBOLS' => array(
0 => 'color: #000066;'
),
'REGEXPS' => array(
),
'SCRIPT' => array(
0 => '',
1 => '',
)
),
'URLS' => array(
1 => ''
),
'OOLANG' => false,
'OBJECT_SPLITTERS' => array(
1 => '\\'
),
'REGEXPS' => array(
),
'STRICT_MODE_APPLIES' => GESHI_NEVER,
'SCRIPT_DELIMITERS' => array(),
'HIGHLIGHT_STRICT_BLOCK' => array(
0 => false,
1 => false
)
);
?>

View File

@ -0,0 +1,130 @@
<?php
/*************************************************************************************
* bnf.php
* --------
* Author: Rowan Rodrik van der Molen (rowan@bigsmoke.us)
* Copyright: (c) 2006 Rowan Rodrik van der Molen (http://www.bigsmoke.us/)
* Release Version: 1.0.7.20
* Date Started: 2006/09/28
*
* BNF (Backus-Naur form) language file for GeSHi.
*
* See http://en.wikipedia.org/wiki/Backus-Naur_form for more info on BNF.
*
* CHANGES
* -------
* 2006/09/18 (1.0.0)
* - First Release
*
* TODO (updated 2006/09/18)
* -------------------------
* * Nothing I can think of
*
*************************************************************************************
*
* This file is part of GeSHi.
*
* GeSHi is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* GeSHi is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with GeSHi; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
************************************************************************************/
$language_data = array (
'LANG_NAME' => 'bnf',
'COMMENT_SINGLE' => array(),
'COMMENT_MULTI' => array(),
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
'QUOTEMARKS' => array('"', "'"),
'ESCAPE_CHAR' => '',
'KEYWORDS' => array(),
'SYMBOLS' => array(
'<', '>', '::=', '|'
),
'CASE_SENSITIVE' => array(
//GESHI_COMMENTS => false
),
'STYLES' => array(
'KEYWORDS' => array(),
'COMMENTS' => array(
),
'ESCAPE_CHAR' => array(
0 => ''
),
'BRACKETS' => array(
0 => ''
),
'STRINGS' => array(
0 => 'color: #a00;',
1 => 'color: #a00;'
),
'NUMBERS' => array(
0 => ''
),
'METHODS' => array(
0 => ''
),
'SYMBOLS' => array(
0 => 'color: #000066; font-weight: bold;', // Unused
),
'REGEXPS' => array(
0 => 'color: #007;',
1 => 'color: #099;',
2 => 'color: #060;',
3 => 'color: #909;'
),
'SCRIPT' => array(
0 => ''
)
),
'URLS' => array(),
'OOLANG' => false,
'OBJECT_SPLITTERS' => array(),
'REGEXPS' => array(
0 => array(
GESHI_SEARCH => '(&lt;)([^&]+?)(&gt;)',
GESHI_REPLACE => '\\2',
GESHI_MODIFIERS => '',
GESHI_BEFORE => '\\1',
GESHI_AFTER => '\\3'
),
1 => array(
GESHI_SEARCH => '(&lt;|&gt;)',
GESHI_REPLACE => '\\1',
GESHI_MODIFIERS => '',
GESHI_BEFORE => '',
GESHI_AFTER => ''
),
2 => array(
GESHI_SEARCH => '(::=)',
GESHI_REPLACE => '\\1',
GESHI_MODIFIERS => '',
GESHI_BEFORE => '',
GESHI_AFTER => ''
),
3 => array(
GESHI_SEARCH => '([()])',
GESHI_REPLACE => '\\1',
GESHI_MODIFIERS => '',
GESHI_BEFORE => '',
GESHI_AFTER => ''
),
),
'STRICT_MODE_APPLIES' => GESHI_NEVER,
'SCRIPT_DELIMITERS' => array(
),
'HIGHLIGHT_STRICT_BLOCK' => array(
)
);
?>

View File

@ -0,0 +1,143 @@
<?php
/*************************************************************************************
* c.php
* -----
* Author: Nigel McNie (nigel@geshi.org)
* Contributors:
* - Jack Lloyd (lloyd@randombit.net)
* Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
* Release Version: 1.0.7.20
* Date Started: 2004/06/04
*
* C language file for GeSHi.
*
* CHANGES
* -------
* 2004/XX/XX (1.0.4)
* - Added a couple of new keywords (Jack Lloyd)
* 2004/11/27 (1.0.3)
* - Added support for multiple object splitters
* 2004/10/27 (1.0.2)
* - Added support for URLs
* 2004/08/05 (1.0.1)
* - Added support for symbols
* 2004/07/14 (1.0.0)
* - First Release
*
* TODO (updated 2004/11/27)
* -------------------------
* - Get a list of inbuilt functions to add (and explore C more
* to complete this rather bare language file
*
*************************************************************************************
*
* This file is part of GeSHi.
*
* GeSHi is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* GeSHi is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with GeSHi; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
************************************************************************************/
$language_data = array (
'LANG_NAME' => 'C',
'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),
'COMMENT_MULTI' => array('/*' => '*/'),
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
'QUOTEMARKS' => array("'", '"'),
'ESCAPE_CHAR' => '\\',
'KEYWORDS' => array(
1 => array(
'if', 'return', 'while', 'case', 'continue', 'default',
'do', 'else', 'for', 'switch', 'goto'
),
2 => array(
'null', 'false', 'break', 'true', 'function', 'enum', 'extern', 'inline'
),
3 => array(
'printf', 'cout'
),
4 => array(
'auto', 'char', 'const', 'double', 'float', 'int', 'long',
'register', 'short', 'signed', 'sizeof', 'static', 'string', 'struct',
'typedef', 'union', 'unsigned', 'void', 'volatile', 'wchar_t'
),
),
'SYMBOLS' => array(
'(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%', '^', '&', ':'
),
'CASE_SENSITIVE' => array(
GESHI_COMMENTS => true,
1 => false,
2 => false,
3 => false,
4 => false,
),
'STYLES' => array(
'KEYWORDS' => array(
1 => 'color: #b1b100;',
2 => 'color: #000000; font-weight: bold;',
3 => 'color: #000066;',
4 => 'color: #993333;'
),
'COMMENTS' => array(
1 => 'color: #808080; font-style: italic;',
2 => 'color: #339933;',
'MULTI' => 'color: #808080; font-style: italic;'
),
'ESCAPE_CHAR' => array(
0 => 'color: #000099; font-weight: bold;'
),
'BRACKETS' => array(
0 => 'color: #66cc66;'
),
'STRINGS' => array(
0 => 'color: #ff0000;'
),
'NUMBERS' => array(
0 => 'color: #cc66cc;'
),
'METHODS' => array(
1 => 'color: #202020;',
2 => 'color: #202020;'
),
'SYMBOLS' => array(
0 => 'color: #66cc66;'
),
'REGEXPS' => array(
),
'SCRIPT' => array(
)
),
'URLS' => array(
1 => '',
2 => '',
3 => 'http://www.opengroup.org/onlinepubs/009695399/functions/{FNAME}.html',
4 => ''
),
'OOLANG' => true,
'OBJECT_SPLITTERS' => array(
1 => '.',
2 => '::'
),
'REGEXPS' => array(
),
'STRICT_MODE_APPLIES' => GESHI_NEVER,
'SCRIPT_DELIMITERS' => array(
),
'HIGHLIGHT_STRICT_BLOCK' => array(
),
'TAB_WIDTH' => 4
);
?>

Some files were not shown because too many files have changed in this diff Show More