2 /*************************************************************************************
5 * Author: Nigel McNie (nigel@geshi.org)
7 * - Jack Lloyd (lloyd@randombit.net)
8 * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
9 * Release Version: 1.0.7.19
10 * Date Started: 2004/06/04
12 * C language file for GeSHi.
17 * - Added a couple of new keywords (Jack Lloyd)
19 * - Added support for multiple object splitters
21 * - Added support for URLs
23 * - Added support for symbols
27 * TODO (updated 2004/11/27)
28 * -------------------------
29 * - Get a list of inbuilt functions to add (and explore C more
30 * to complete this rather bare language file
32 *************************************************************************************
34 * This file is part of GeSHi.
36 * GeSHi is free software; you can redistribute it and/or modify
37 * it under the terms of the GNU General Public License as published by
38 * the Free Software Foundation; either version 2 of the License, or
39 * (at your option) any later version.
41 * GeSHi is distributed in the hope that it will be useful,
42 * but WITHOUT ANY WARRANTY; without even the implied warranty of
43 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
44 * GNU General Public License for more details.
46 * You should have received a copy of the GNU General Public License
47 * along with GeSHi; if not, write to the Free Software
48 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
50 ************************************************************************************/
52 $language_data = array (
54 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),
55 'COMMENT_MULTI' => array('/*' => '*/'),
56 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE
,
57 'QUOTEMARKS' => array("'", '"'),
58 'ESCAPE_CHAR' => '\\',
61 'if', 'return', 'while', 'case', 'continue', 'default',
62 'do', 'else', 'for', 'switch', 'goto'
65 'null', 'false', 'break', 'true', 'function', 'enum', 'extern', 'inline'
71 'auto', 'char', 'const', 'double', 'float', 'int', 'long',
72 'register', 'short', 'signed', 'sizeof', 'static', 'string', 'struct',
73 'typedef', 'union', 'unsigned', 'void', 'volatile', 'wchar_t'
77 '(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%', '^', '&', ':'
79 'CASE_SENSITIVE' => array(
80 GESHI_COMMENTS
=> true
,
88 1 => 'color: #b1b100;',
89 2 => 'color: #000000; font-weight: bold;',
90 3 => 'color: #000066;',
91 4 => 'color: #993333;'
94 1 => 'color: #808080; font-style: italic;',
95 2 => 'color: #339933;',
96 'MULTI' => 'color: #808080; font-style: italic;'
98 'ESCAPE_CHAR' => array(
99 0 => 'color: #000099; font-weight: bold;'
102 0 => 'color: #66cc66;'
105 0 => 'color: #ff0000;'
108 0 => 'color: #cc66cc;'
111 1 => 'color: #202020;',
112 2 => 'color: #202020;'
115 0 => 'color: #66cc66;'
125 3 => 'http://www.opengroup.org/onlinepubs/009695399/functions/{FNAME}.html',
129 'OBJECT_SPLITTERS' => array(
135 'STRICT_MODE_APPLIES' => GESHI_NEVER
,
136 'SCRIPT_DELIMITERS' => array(
138 'HIGHLIGHT_STRICT_BLOCK' => array(