1<?php 2/************************************************************************************* 3 * euphoria.php 4 * --------------------------------- 5 * Author: Nicholas Koceja (nerketur@hotmail.com) 6 * Copyright: (c) 2010 Nicholas Koceja 7 * Release Version: 1.0.9.1 8 * Date Started: 11/24/2010 9 * 10 * Euphoria language file for GeSHi. 11 * 12 * Author's note: The colors are based off of the Euphoria Editor (ed.ex) colors. 13 * Also, I added comments in places so I could remember a few things about Euphoria. 14 * 15 * 16 * CHANGES 17 * ------- 18 * <date-of-release> (1.0.8.9) 19 * - First Release 20 * 21 * TODO (updated <date-of-release>) 22 * ------------------------- 23 * seperate the funtions from the procedures, and have a slight color change for each. 24 * 25 ************************************************************************************* 26 * 27 * This file is part of GeSHi. 28 * 29 * GeSHi is free software; you can redistribute it and/or modify 30 * it under the terms of the GNU General Public License as published by 31 * the Free Software Foundation; either version 2 of the License, or 32 * (at your option) any later version. 33 * 34 * GeSHi is distributed in the hope that it will be useful, 35 * but WITHOUT ANY WARRANTY; without even the implied warranty of 36 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 37 * GNU General Public License for more details. 38 * 39 * You should have received a copy of the GNU General Public License 40 * along with GeSHi; if not, write to the Free Software 41 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 42 * 43 ************************************************************************************/ 44 45$language_data = array ( 46 'LANG_NAME' => 'Euphoria', 47 'COMMENT_SINGLE' => array(1 => '--'), 48 'COMMENT_MULTI' => array(), //Euphoria doesn't support multi-line comments 49 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 50 'QUOTEMARKS' => array("'", '"'), 51 'ESCAPE_CHAR' => '\\', 52 'KEYWORDS' => array( 53 1 => array( // keywords 54 'and', 'by', 'constant', 'do', 'else', 'elsif', 'end', 'exit', 55 'for', 'function', 'global', 'if', 'include', 'not', 'or', 56 'procedure', 'return', 'then', 'to', 'type', 'while', 'with', 57 'without', 'xor' 58 ), 59 2 => array( // built-ins 60 'abort', 'and_bits', 'append', 'arctan', 'atom', 'c_func', 'call', 61 'c_proc', 'call_func', 'call_proc', 'clear_screen', 'close', 'compare', 62 'command_line', 'cos', 'date', 'equal', 'find', 'find_from', 'floor', 63 'getc', 'getenv', 'gets', 'get_key', 'get_pixel', 'integer', 'length', 64 'log', 'machine_func', 'machine_proc', 'match', 'match_from', 65 'mem_copy', 'mem_set', 'not_bits', 'object', 'open', 'or_bits', 'peek', 66 'peek4s', 'peek4u', 'pixel', 'platform', 'poke', 'poke4', 'position', 67 'power', 'prepend', 'print', 'printf', 'profile', 'puts', 'rand', 68 'remainder', 'repeat', 'routine_id', 'sequence', 'sin', 'sprintf', 69 'sqrt', 'system', 'system_exec', 'tan', 'task_clock_stop', 70 'task_clock_start', 'task_create', 'task_list', 'task_schedule', 71 'task_self', 'task_status', 'task_suspend', 'task_yield', 'time', 72 'trace', 'xor_bits' 73 ), 74 ), 75 'SYMBOLS' => array( 76 0 => array( 77 '(', ')', '{', '}', '[', ']' 78 ), 79 1 => array( 80 '+', '-', '*', '/', '=', '&', '^' 81 ), 82 2 => array( 83 '&', '?', ',' 84 ) 85 ), 86 'CASE_SENSITIVE' => array( 87 GESHI_COMMENTS => false, 88 1 => true, 89 2 => true, 90 ), 91 'STYLES' => array( 92 'KEYWORDS' => array( 93 1 => 'color: #0000ff; font-weight: bold;', // keywords 94 2 => 'color: #cc33ff; font-weight: bold;', // builtins 95 ), 96 'COMMENTS' => array( 97 1 => 'color: #ff0000; font-style: italic;', 98 'MULTI' => '' // doesn't exist 99 ), 100 'ESCAPE_CHAR' => array( 101 0 => 'color: #009900; font-weight: bold;' 102 ), 103 'BRACKETS' => array( 104 0 => 'color: #999900; font-weight: bold;' 105 ), 106 'STRINGS' => array( 107 0 => 'color: #00cc00;' 108 ), 109 'NUMBERS' => array( 110 0 => 'color: #cc33cc; font-style: italic' 111 ), 112 'METHODS' => array( // Doesn't exist in Euphoria. Everything is a function =) 113 0 => '' 114 ), 115 'SYMBOLS' => array( 116 0 => 'color: #999900;', // brackets 117 1 => 'color: #333333;', // operators 118 2 => 'color: #333333; font-style: bold' // print+concat 119 ), 120 'REGEXPS' => array( 121 ), 122 'SCRIPT' => array( // Never included in scripts. 123 ) 124 ), 125 'REGEXPS' => array( 126 ), 127 'URLS' => array( 128 1 => '', 129 2 => '' 130 ), 131 'OOLANG' => false, 132 'OBJECT_SPLITTERS' => array(), 133 'STRICT_MODE_APPLIES' => GESHI_NEVER, 134 'SCRIPT_DELIMITERS' => array( 135 ), 136 'HIGHLIGHT_STRICT_BLOCK' => array( 137 ) 138); 139