Updating GeSHi to latest version, 1.0.7.6
[viewsvn.git] / includes / geshi / geshi / c.php
1 <?php
2 /*************************************************************************************
3 * c.php
4 * -----
5 * Author: Nigel McNie (oracle.shinoda@gmail.com)
6 * Contributors:
7 * - Jack Lloyd (lloyd@randombit.net)
8 * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
9 * Release Version: 1.0.7.6
10 * CVS Revision Version: $Revision: 1.6 $
11 * Date Started: 2004/06/04
12 * Last Modified: $Date: 2005/11/20 07:47:40 $
13 *
14 * C language file for GeSHi.
15 *
16 * CHANGES
17 * -------
18 * 2004/XX/XX (1.0.4)
19 * - Added a couple of new keywords (Jack Lloyd)
20 * 2004/11/27 (1.0.3)
21 * - Added support for multiple object splitters
22 * 2004/10/27 (1.0.2)
23 * - Added support for URLs
24 * 2004/08/05 (1.0.1)
25 * - Added support for symbols
26 * 2004/07/14 (1.0.0)
27 * - First Release
28 *
29 * TODO (updated 2004/11/27)
30 * -------------------------
31 * - Get a list of inbuilt functions to add (and explore C more
32 * to complete this rather bare language file
33 *
34 *************************************************************************************
35 *
36 * This file is part of GeSHi.
37 *
38 * GeSHi is free software; you can redistribute it and/or modify
39 * it under the terms of the GNU General Public License as published by
40 * the Free Software Foundation; either version 2 of the License, or
41 * (at your option) any later version.
42 *
43 * GeSHi is distributed in the hope that it will be useful,
44 * but WITHOUT ANY WARRANTY; without even the implied warranty of
45 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
46 * GNU General Public License for more details.
47 *
48 * You should have received a copy of the GNU General Public License
49 * along with GeSHi; if not, write to the Free Software
50 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
51 *
52 ************************************************************************************/
53
54 $language_data = array (
55 'LANG_NAME' => 'C',
56 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),
57 'COMMENT_MULTI' => array('/*' => '*/'),
58 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
59 'QUOTEMARKS' => array("'", '"'),
60 'ESCAPE_CHAR' => '\\',
61 'KEYWORDS' => array(
62 1 => array(
63 'if', 'return', 'while', 'case', 'continue', 'default',
64 'do', 'else', 'for', 'switch', 'goto'
65 ),
66 2 => array(
67 'null', 'false', 'break', 'true', 'function', 'enum', 'extern', 'inline'
68 ),
69 3 => array(
70 'printf', 'cout'
71 ),
72 4 => array(
73 'auto', 'char', 'const', 'double', 'float', 'int', 'long',
74 'register', 'short', 'signed', 'sizeof', 'static', 'string', 'struct',
75 'typedef', 'union', 'unsigned', 'void', 'volatile', 'wchar_t'
76 ),
77 ),
78 'SYMBOLS' => array(
79 '(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%', '^', '&', ':'
80 ),
81 'CASE_SENSITIVE' => array(
82 GESHI_COMMENTS => true,
83 1 => false,
84 2 => false,
85 3 => false,
86 4 => false,
87 ),
88 'STYLES' => array(
89 'KEYWORDS' => array(
90 1 => 'color: #b1b100;',
91 2 => 'color: #000000; font-weight: bold;',
92 3 => 'color: #000066;',
93 4 => 'color: #993333;'
94 ),
95 'COMMENTS' => array(
96 1 => 'color: #808080; font-style: italic;',
97 2 => 'color: #339933;',
98 'MULTI' => 'color: #808080; font-style: italic;'
99 ),
100 'ESCAPE_CHAR' => array(
101 0 => 'color: #000099; font-weight: bold;'
102 ),
103 'BRACKETS' => array(
104 0 => 'color: #66cc66;'
105 ),
106 'STRINGS' => array(
107 0 => 'color: #ff0000;'
108 ),
109 'NUMBERS' => array(
110 0 => 'color: #cc66cc;'
111 ),
112 'METHODS' => array(
113 1 => 'color: #202020;',
114 2 => 'color: #202020;'
115 ),
116 'SYMBOLS' => array(
117 0 => 'color: #66cc66;'
118 ),
119 'REGEXPS' => array(
120 ),
121 'SCRIPT' => array(
122 )
123 ),
124 'URLS' => array(
125 1 => '',
126 2 => '',
127 3 => 'http://www.opengroup.org/onlinepubs/009695399/functions/{FNAME}.html',
128 4 => ''
129 ),
130 'OOLANG' => true,
131 'OBJECT_SPLITTERS' => array(
132 1 => '.',
133 2 => '::'
134 ),
135 'REGEXPS' => array(
136 ),
137 'STRICT_MODE_APPLIES' => GESHI_NEVER,
138 'SCRIPT_DELIMITERS' => array(
139 ),
140 'HIGHLIGHT_STRICT_BLOCK' => array(
141 )
142 );
143
144 ?>