Rev 1 |
|
Rev 3 |
Line 3... |
|
Line 3... |
* c.php |
|
* c.php |
* ----- |
|
* ----- |
* Author: Nigel McNie (nigel@geshi.org) |
|
* Author: Nigel McNie (nigel@geshi.org) |
* Contributors: |
|
* Contributors: |
* - Jack Lloyd (lloyd@randombit.net) |
|
* - Jack Lloyd (lloyd@randombit.net) |
|
|
* - Michael Mol (mikemol@gmail.com) |
* Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/) |
|
* Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/) |
* Release Version: 1.0.8.1 |
|
* Release Version: 1.0.8.3 |
* Date Started: 2004/06/04 |
|
* Date Started: 2004/06/04 |
* |
|
* |
* C language file for GeSHi. |
|
* C language file for GeSHi. |
* |
|
* |
* CHANGES |
|
* CHANGES |
* ------- |
|
* ------- |
|
|
* 2009/01/22 (1.0.8.3) |
|
|
* - Made keywords case-sensitive. |
* 2008/05/23 (1.0.7.22) |
|
* 2008/05/23 (1.0.7.22) |
* - Added description of extra language features (SF#1970248) |
|
* - Added description of extra language features (SF#1970248) |
* 2004/XX/XX (1.0.4) |
|
* 2004/XX/XX (1.0.4) |
* - Added a couple of new keywords (Jack Lloyd) |
|
* - Added a couple of new keywords (Jack Lloyd) |
* 2004/11/27 (1.0.3) |
|
* 2004/11/27 (1.0.3) |
Line 24... |
|
Line 27... |
* 2004/08/05 (1.0.1) |
|
* 2004/08/05 (1.0.1) |
* - Added support for symbols |
|
* - Added support for symbols |
* 2004/07/14 (1.0.0) |
|
* 2004/07/14 (1.0.0) |
* - First Release |
|
* - First Release |
* |
|
* |
* TODO (updated 2004/11/27) |
|
* TODO (updated 2009/02/08) |
* ------------------------- |
|
* ------------------------- |
* - Get a list of inbuilt functions to add (and explore C more |
|
* - Get a list of inbuilt functions to add (and explore C more |
* to complete this rather bare language file |
|
* to complete this rather bare language file |
* |
|
* |
************************************************************************************* |
|
************************************************************************************* |
Line 51... |
|
Line 54... |
* |
|
* |
************************************************************************************/ |
|
************************************************************************************/ |
|
|
|
$language_data = array ( |
|
$language_data = array ( |
'LANG_NAME' => 'C', |
|
'LANG_NAME' => 'C', |
'COMMENT_SINGLE' => array(2 => '#'), |
|
'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), |
'COMMENT_MULTI' => array('/*' => '*/'), |
|
'COMMENT_MULTI' => array('/*' => '*/'), |
//Multiline-continued single-line comments |
|
'COMMENT_REGEXP' => array( |
'COMMENT_REGEXP' => array(1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m'), |
|
//Multiline-continued single-line comments |
|
|
1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m', |
|
|
//Multiline-continued preprocessor define |
|
|
2 => '/#(?:\\\\\\\\|\\\\\\n|.)*$/m' |
|
|
), |
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, |
|
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, |
'QUOTEMARKS' => array("'", '"'), |
|
'QUOTEMARKS' => array("'", '"'), |
'ESCAPE_CHAR' => '\\', |
|
'ESCAPE_CHAR' => '', |
|
|
'ESCAPE_REGEXP' => array( |
|
|
//Simple Single Char Escapes |
|
|
1 => "#\\\\[abfnrtv\\'\"?\n]#i", |
|
|
//Hexadecimal Char Specs |
|
|
2 => "#\\\\x[\da-fA-F]{2}#", |
|
|
//Hexadecimal Char Specs |
|
|
3 => "#\\\\u[\da-fA-F]{4}#", |
|
|
//Hexadecimal Char Specs |
|
|
4 => "#\\\\U[\da-fA-F]{8}#", |
|
|
//Octal Char Specs |
|
|
5 => "#\\\\[0-7]{1,3}#" |
|
|
), |
'NUMBERS' => |
|
'NUMBERS' => |
GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE | GESHI_NUMBER_BIN_PREFIX_0B | |
|
GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE | GESHI_NUMBER_BIN_PREFIX_0B | |
GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_NONSCI | |
|
GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_NONSCI | |
GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO, |
|
GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO, |
'KEYWORDS' => array( |
|
'KEYWORDS' => array( |
Line 89... |
|
Line 108... |
'?', ':', |
|
'?', ':', |
';', ',' |
|
';', ',' |
), |
|
), |
'CASE_SENSITIVE' => array( |
|
'CASE_SENSITIVE' => array( |
GESHI_COMMENTS => false, |
|
GESHI_COMMENTS => false, |
1 => false, |
|
1 => true, |
2 => false, |
|
2 => true, |
3 => false, |
|
3 => true, |
4 => false, |
|
4 => true, |
), |
|
), |
'STYLES' => array( |
|
'STYLES' => array( |
'KEYWORDS' => array( |
|
'KEYWORDS' => array( |
1 => 'color: #b1b100;', |
|
1 => 'color: #b1b100;', |
2 => 'color: #000000; font-weight: bold;', |
|
2 => 'color: #000000; font-weight: bold;', |
Line 107... |
|
Line 126... |
1 => 'color: #666666; font-style: italic;', |
|
1 => 'color: #666666; font-style: italic;', |
2 => 'color: #339933;', |
|
2 => 'color: #339933;', |
'MULTI' => 'color: #808080; font-style: italic;' |
|
'MULTI' => 'color: #808080; font-style: italic;' |
), |
|
), |
'ESCAPE_CHAR' => array( |
|
'ESCAPE_CHAR' => array( |
0 => 'color: #000099; font-weight: bold;' |
|
0 => 'color: #000099; font-weight: bold;', |
|
|
1 => 'color: #000099; font-weight: bold;', |
|
|
2 => 'color: #660099; font-weight: bold;', |
|
|
3 => 'color: #660099; font-weight: bold;', |
|
|
4 => 'color: #660099; font-weight: bold;', |
|
|
5 => 'color: #006699; font-weight: bold;', |
|
|
'HARD' => '', |
), |
|
), |
'BRACKETS' => array( |
|
'BRACKETS' => array( |
0 => 'color: #009900;' |
|
0 => 'color: #009900;' |
), |
|
), |
'STRINGS' => array( |
|
'STRINGS' => array( |