Copying geshi 1.0.7.5 to viewsvn/includes/geshi
[viewsvn.git] / includes / geshi / geshi / ruby.php
1 <?php
2 /*************************************************************************************
3 * ruby.php
4 * --------
5 * Author: Amit Gupta (http://blog.igeek.info/)
6 * Copyright: (c) 2005 Amit Gupta (http://blog.igeek.info/)
7 * Release Version: 1.0.7.5
8 * CVS Revision Version: $Revision: 1.3 $
9 * Date Started: 2005/09/05
10 * Last Modified: $Date: 2005/10/22 07:52:59 $
11 *
12 * Ruby language file for GeSHi
13 *
14 * CHANGES
15 * -------
16 * 2005/09/05 (1.0.0)
17 * - First Release
18 *
19 * TODO (updated 2005/09/05)
20 * -------------------------
21 * * Add the remaining keywords, methods, classes as per
22 * v1.8.2(as listed in the online manual)
23 *
24 *************************************************************************************
25 *
26 * This file is part of GeSHi.
27 *
28 * GeSHi is free software; you can redistribute it and/or modify
29 * it under the terms of the GNU General Public License as published by
30 * the Free Software Foundation; either version 2 of the License, or
31 * (at your option) any later version.
32 *
33 * GeSHi is distributed in the hope that it will be useful,
34 * but WITHOUT ANY WARRANTY; without even the implied warranty of
35 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
36 * GNU General Public License for more details.
37 *
38 * You should have received a copy of the GNU General Public License
39 * along with GeSHi; if not, write to the Free Software
40 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
41 *
42 ************************************************************************************/
43
44 $language_data = array (
45 'LANG_NAME' => 'Ruby',
46 'COMMENT_SINGLE' => array(1 => "#"),
47 'COMMENT_MULTI' => array(),
48 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
49 'QUOTEMARKS' => array('"'),
50 'ESCAPE_CHAR' => '\\',
51 'KEYWORDS' => array(
52 1 => array(
53 'alias', 'and', 'begin', 'break', 'case', 'class',
54 'def', 'defined', 'do', 'else', 'elsif', 'end',
55 'ensure', 'for', 'if', 'in', 'module', 'while',
56 'next', 'not', 'or', 'redo', 'rescue', 'yield',
57 'retry', 'super', 'then', 'undef', 'unless',
58 'until', 'when', 'BEGIN', 'END', 'include'
59
60 ),
61 2 => array(
62 '__FILE__', '__LINE__', 'false', 'nil', 'self', 'true', 'return'
63 ),
64 3 => array(
65 'Array', 'Float', 'Integer', 'String', 'at_exit',
66 'autoload', 'binding', 'caller', 'catch', 'chop', 'chop!',
67 'chomp', 'chomp!', 'eval', 'exec', 'exit', 'exit!', 'fail',
68 'fork', 'format', 'gets', 'global_variables', 'gsub', 'gsub!',
69 'iterator?', 'lambda', 'load', 'local_variables', 'loop', 'open',
70 'p', 'print', 'printf', 'proc', 'putc', 'puts', 'raise',
71 'rand', 'readline', 'readlines', 'require', 'select', 'sleep',
72 'split', 'sprintf', 'srand', 'sub', 'sub!', 'syscall',
73 'system', 'test', 'trace_var', 'trap', 'untrace_var'
74 )
75 ),
76 'SYMBOLS' => array(
77 '(', ')', '[', ']', '{', '}', '@', '%', '&', '*', '|', '/', '<', '>',
78 '+', '-', '=&gt;', '=>'
79 ),
80 'CASE_SENSITIVE' => array(
81 GESHI_COMMENTS => false,
82 1 => false,
83 2 => false,
84 3 => false,
85 ),
86 'STYLES' => array(
87 'KEYWORDS' => array(
88 1 => 'color:#9966CC; font-weight:bold;',
89 2 => 'color:#0000FF; font-weight:bold;',
90 3 => 'color:#CC0066; font-weight:bold;'
91 ),
92 'COMMENTS' => array(
93 1 => 'color:#008000; font-style:italic;'
94 ),
95 'ESCAPE_CHAR' => array(
96 0 => 'color:#000099;'
97 ),
98 'BRACKETS' => array(
99 0 => 'color:#006600; font-weight:bold;'
100 ),
101 'STRINGS' => array(
102 0 => 'color:#996600;'
103 ),
104 'NUMBERS' => array(
105 0 => 'color:#006666;'
106 ),
107 'METHODS' => array(
108 1 => 'color:#9900CC;'
109 ),
110 'SYMBOLS' => array(
111 0 => 'color:#006600; font-weight:bold;'
112 ),
113 'REGEXPS' => array(
114 ),
115 'SCRIPT' => array(
116 0 => '',
117 1 => '',
118 2 => '',
119 )
120 ),
121 'URLS' => array(
122 1 => '',
123 2 => '',
124 3 => ''
125 ),
126 'OOLANG' => true,
127 'OBJECT_SPLITTERS' => array(
128 1 => '.'
129 ),
130 'REGEXPS' => array(
131 ),
132 'STRICT_MODE_APPLIES' => GESHI_MAYBE,
133 'SCRIPT_DELIMITERS' => array(
134 0 => array(
135 '<%' => '%>'
136 )
137 ),
138 'HIGHLIGHT_STRICT_BLOCK' => array(
139 0 => true,
140 1 => true,
141 2 => true,
142 )
143 );
144
145 ?>