1<?php 2/************************************************************************************* 3 * xojo.php 4 * -------- 5 * Author: Dr Garry Pettet (contact@garrypettet.com) 6 * Copyright: (c) 2014 Dr Garry Pettet (http://garrypettet.com) 7 * Release Version: 1.0.9.1 8 * Date Started: 2014/10/19 9 * 10 * Xojo language file for GeSHi. 11 * 12 * CHANGES 13 * ------- 14 * 2014/10/19 (1.0.8.13) 15 * - First Release 16 * 17 * TODO (updated 2014/10/19) 18 * ------------------------- 19 * 20 ************************************************************************************* 21 * 22 * This file is part of GeSHi. 23 * 24 * GeSHi is free software; you can redistribute it and/or modify 25 * it under the terms of the GNU General Public License as published by 26 * the Free Software Foundation; either version 2 of the License, or 27 * (at your option) any later version. 28 * 29 * GeSHi is distributed in the hope that it will be useful, 30 * but WITHOUT ANY WARRANTY; without even the implied warranty of 31 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 32 * GNU General Public License for more details. 33 * 34 * You should have received a copy of the GNU General Public License 35 * along with GeSHi; if not, write to the Free Software 36 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 37 * 38 ************************************************************************************/ 39 40$language_data = array( 41 'LANG_NAME' => 'Xojo', 42 'COMMENT_SINGLE' => array(1 => "'", 2 => '//', 3 => 'rem'), 43 'COMMENT_MULTI' => array(), 44 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 45 'QUOTEMARKS' => array('"'), 46 'ESCAPE_CHAR' => '', 47 'NUMBERS' => array( 48 1 => GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE, // integers 49 2 => GESHI_NUMBER_FLT_NONSCI // floating point numbers 50 ), 51 'KEYWORDS' => array( 52 //Keywords 53 1 => array( 54 'AddHandler', 55 'AddressOf', 56 'Aggregates', 57 'And', 58 'Array', 59 'As', 60 'Assigns', 61 'Attributes', 62 'Break', 63 'ByRef', 64 'ByVal', 65 'Call', 66 'Case', 67 'Catch', 68 'Class', 69 'Const', 70 'Continue', 71 'CType', 72 'Declare', 73 'Delegate', 74 'Dim', 75 'Do', 76 'DownTo', 77 'Each', 78 'Else', 79 'Elseif', 80 'End', 81 'Enum', 82 'Event', 83 'Exception', 84 'Exit', 85 'Extends', 86 'False', 87 'Finally', 88 'For', 89 'Function', 90 'Global', 91 'GoTo', 92 'Handles', 93 'If', 94 'Implements', 95 'In', 96 'Inherits', 97 'Inline68K', 98 'Interface', 99 'Is', 100 'IsA', 101 'Lib', 102 'Loop', 103 'Me', 104 'Mod', 105 'Module', 106 'Namespace', 107 'New', 108 'Next', 109 'Nil', 110 'Not', 111 'Object', 112 'Of', 113 'Optional', 114 'Or', 115 'ParamArray', 116 'Private', 117 'Property', 118 'Protected', 119 'Public', 120 'Raise', 121 'RaiseEvent', 122 'Rect', 123 'Redim', 124 'RemoveHandler', 125 'Return', 126 'Select', 127 'Self', 128 'Shared', 129 'Soft', 130 'Static', 131 'Step', 132 'Sub', 133 'Super', 134 'Then', 135 'To', 136 'True', 137 'Try', 138 'Until', 139 'Using', 140 'Wend', 141 'While', 142 'With', 143 'WeakAddressOf', 144 'Xor' 145 ), 146 //Data Types 147 2 => array( 148 'Boolean', 149 'CFStringRef', 150 'CString', 151 'Currency', 152 'Double', 153 'Int8', 154 'Int16', 155 'Int32', 156 'Int64', 157 'Integer', 158 'OSType', 159 'PString', 160 'Ptr', 161 'Short', 162 'Single', 163 'String', 164 'Structure', 165 'UInt8', 166 'UInt16', 167 'UInt32', 168 'UInt64', 169 'UShort', 170 'WindowPtr', 171 'WString', 172 'XMLNodeType' 173 ), 174 //Compiler Directives 175 3 => array( 176 '#Bad', 177 '#Else', 178 '#Endif', 179 '#If', 180 '#Pragma', 181 '#Tag' 182 ), 183 ), 184 'SYMBOLS' => array( 185 '+', 186 '-', 187 '*', 188 '=', 189 '/', 190 '>', 191 '<', 192 '^', 193 '(', 194 ')', 195 '.' 196 ), 197 'CASE_SENSITIVE' => array( 198 GESHI_COMMENTS => false, 199 1 => false, 200 2 => false, 201 3 => false 202 ), 203 'STYLES' => array( 204 'KEYWORDS' => array( 205 1 => 'color: #0000FF;', // keywords 206 2 => 'color: #0000FF;', // primitive data types 207 3 => 'color: #0000FF;', // compiler commands 208 ), 209 'COMMENTS' => array( 210 1 => 'color: #7F0000;', 211 2 => 'color: #7F0000;', 212 3 => 'color: #7F0000;', 213 'MULTI' => 'color: #7F0000;' 214 ), 215 'ESCAPE_CHAR' => array( 216 0 => 'color: #008080;' 217 ), 218 'BRACKETS' => array( 219 0 => 'color: #000000;' 220 ), 221 'STRINGS' => array( 222 0 => 'color: #6500FE;' 223 ), 224 'NUMBERS' => array( 225 1 => 'color: #326598;', // integers 226 2 => 'color: #006532;', // floating point numbers 227 ), 228 'METHODS' => array( 229 1 => 'color: #000000;' 230 ), 231 'SYMBOLS' => array( 232 0 => 'color: #000000;' 233 ), 234 'REGEXPS' => array( 235 1 => 'color: #326598;', // &h hex numbers 236 2 => 'color: #326598;', // &b hex numbers 237 3 => 'color: #326598;', // &o hex numbers 238 ), 239 'SCRIPT' => array() 240 ), 241 'URLS' => array( 242 1 => 'http://docs.xojo.com/index.php/{FNAMEU}', 243 2 => 'http://docs.xojo.com/index.php/{FNAMEU}', 244 3 => '' 245 ), 246 'OOLANG' => true, 247 'OBJECT_SPLITTERS' => array( 248 1 => '.' 249 ), 250 'REGEXPS' => array( 251 1 => array( // &h numbers 252 // search for &h, then any number of letters a-f or numbers 0-9 253 GESHI_SEARCH => '(&h[0-9a-fA-F]*\b)', 254 GESHI_REPLACE => '\\1', 255 GESHI_MODIFIERS => '', 256 GESHI_BEFORE => '', 257 GESHI_AFTER => '' 258 ), 259 2 => array( // &b numbers 260 // search for &b, then any number of 0-1 digits 261 GESHI_SEARCH => '(&b[0-1]*\b)', 262 GESHI_REPLACE => '\\1', 263 GESHI_MODIFIERS => '', 264 GESHI_BEFORE => '', 265 GESHI_AFTER => '' 266 ), 267 3 => array( // &o octal numbers 268 // search for &o, then any number of 0-7 digits 269 GESHI_SEARCH => '(&o[0-7]*\b)', 270 GESHI_REPLACE => '\\1', 271 GESHI_MODIFIERS => '', 272 GESHI_BEFORE => '', 273 GESHI_AFTER => '' 274 ) 275 ), 276 'STRICT_MODE_APPLIES' => GESHI_NEVER, 277 'SCRIPT_DELIMITERS' => array(), 278 'HIGHLIGHT_STRICT_BLOCK' => array() 279); 280