[ Index ] |
|
Code source de DokuWiki 2006-11-06 |
1 <?php 2 /************************************************************************************* 3 * smalltalk.php 4 * -------- 5 * Author: Bananeweizen (Bananeweizen@gmx.de) 6 * Copyright: (c) 2005 Bananeweizen (www.bananeweizen.de) 7 * Release Version: 1.0.7.15 8 * CVS Revision Version: $Revision: 1.1.2.5 $ 9 * Date Started: 2005/03/27 10 * Last Modified: $Date: 2006/09/23 02:05:48 $ 11 * 12 * Smalltalk language file for GeSHi. 13 * 14 * CHANGES 15 * ------- 16 * 2006-05-24 (1.0.0) 17 * - First Release 18 * 19 * TODO 20 * ------------------------- 21 * * recognize nested array symbols correctly 22 * 23 ************************************************************************************* 24 * 25 * This file is part of GeSHi. 26 * 27 * GeSHi is free software; you can redistribute it and/or modify 28 * it under the terms of the GNU General Public License as published by 29 * the Free Software Foundation; either version 2 of the License, or 30 * (at your option) any later version. 31 * 32 * GeSHi is distributed in the hope that it will be useful, 33 * but WITHOUT ANY WARRANTY; without even the implied warranty of 34 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 35 * GNU General Public License for more details. 36 * 37 * You should have received a copy of the GNU General Public License 38 * along with GeSHi; if not, write to the Free Software 39 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 40 * 41 ************************************************************************************/ 42 43 $language_data = array ( 44 'LANG_NAME' => 'Smalltalk', 45 'COMMENT_SINGLE' => array(), 46 'COMMENT_MULTI' => array('"' => '"'), 47 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 48 'QUOTEMARKS' => array("'"), 49 'ESCAPE_CHAR' => '', 50 'KEYWORDS' => array( 51 1 => array('self','super','true','false','nil') 52 ), 53 'SYMBOLS' => array( 54 '[', ']', '=' , ':=', '(', ')', '#' 55 ), 56 'CASE_SENSITIVE' => array( 57 GESHI_COMMENTS => false, 58 1 => true 59 ), 60 'STYLES' => array( 61 'KEYWORDS' => array( 62 1 => 'color: #7f007f;' 63 ), 64 'COMMENTS' => array( 65 'MULTI' => 'color: #007f00; font-style: italic;' 66 ), 67 'ESCAPE_CHAR' => array( 68 0 => '' 69 ), 70 'BRACKETS' => array( 71 0 => '' 72 ), 73 'STRINGS' => array( 74 0 => 'color: #7f0000;' 75 ), 76 'NUMBERS' => array( 77 0 => 'color: #7f0000;' 78 ), 79 'METHODS' => array( 80 0 => '' 81 ), 82 'SYMBOLS' => array( 83 0 => 'color: #000066; font-weight:bold;' 84 ), 85 'REGEXPS' => array( 86 0 => 'color: #0000ff;', 87 1 => 'color: #7f0000;', 88 2 => 'color: #7f0000;', 89 3 => 'color: #00007f;', 90 4 => 'color: #7f007f;', 91 5 => 'color: #00007f;', 92 6 => 'color: #00007f;' 93 ), 94 'SCRIPT' => array( 95 0 => '' 96 ) 97 ), 98 'URLS' => array( 99 ), 100 'OOLANG' => false, 101 'OBJECT_SPLITTERS' => array( 102 ), 103 'REGEXPS' => array( 104 0 => array( 105 GESHI_SEARCH => '([^a-zA-Z0-9_#])([A-Z]+[a-zA-Z0-9_]*)', //class names 106 GESHI_REPLACE => '\\2', 107 GESHI_MODIFIERS => '', 108 GESHI_BEFORE => '\\1', 109 GESHI_AFTER => '' 110 ), 111 1 => array( 112 GESHI_SEARCH => '(#+)([a-zA-Z0-9_]+)', //symbols 113 GESHI_REPLACE => '\\1\\2', 114 GESHI_MODIFIERS => '', 115 GESHI_BEFORE => '', 116 GESHI_AFTER => '' 117 ), 118 2 => array( 119 GESHI_SEARCH => '(#\s*\([^)]*\))', //array symbols 120 GESHI_REPLACE => '\\1', 121 GESHI_MODIFIERS => '', 122 GESHI_BEFORE => '', 123 GESHI_AFTER => '' 124 ), 125 3 => array( 126 GESHI_SEARCH => '\|([a-zA-Z0-9_\s]+)\|', //temporary variables 127 GESHI_REPLACE => '\\1', 128 GESHI_MODIFIERS => '', 129 GESHI_BEFORE => '|', 130 GESHI_AFTER => '|' 131 ), 132 4 => array( 133 GESHI_SEARCH => '(self|super|true|false|nil)', //keywords again (to avoid matching in next regexp) 134 GESHI_REPLACE => '\\1', 135 GESHI_MODIFIERS => '', 136 GESHI_BEFORE => '', 137 GESHI_AFTER => '' 138 ), 139 5 => array( 140 GESHI_SEARCH => '([:(,=[.*/+-]\s*)([a-zA-Z0-9_]+)', //message parameters, message receivers 141 GESHI_REPLACE => '\\2', 142 GESHI_MODIFIERS => 's', 143 GESHI_BEFORE => '\\1', 144 GESHI_AFTER => '' 145 ), 146 6 => array( 147 GESHI_SEARCH => '([a-zA-Z0-9_]+)(\s*:=)', //assignment targets 148 GESHI_REPLACE => '\\1', 149 GESHI_MODIFIERS => '', 150 GESHI_BEFORE => '', 151 GESHI_AFTER => '\\2' 152 ) 153 ), 154 'STRICT_MODE_APPLIES' => GESHI_NEVER, 155 'SCRIPT_DELIMITERS' => array( 156 ), 157 'HIGHLIGHT_STRICT_BLOCK' => array( 158 ) 159 ); 160 161 ?>
titre
Description
Corps
titre
Description
Corps
titre
Description
Corps
titre
Corps
Généré le : Tue Apr 3 20:47:31 2007 | par Balluche grâce à PHPXref 0.7 |