[ Index ] |
|
Code source de DokuWiki 2006-11-06 |
1 <?php 2 /************************************************************************************* 3 * python.php 4 * ---------- 5 * Author: Roberto Rossi (rsoftware@altervista.org) 6 * Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/highlighter) 7 * Release Version: 1.0.7.15 8 * CVS Revision Version: $Revision: 1.14.2.5 $ 9 * Date Started: 2004/08/30 10 * Last Modified: $Date: 2006/09/23 02:05:47 $ 11 * 12 * Python language file for GeSHi. 13 * 14 * CHANGES 15 * ------- 16 * 2005/05/26 17 * - Modifications by Tim (tim@skreak.com): added more keyword categories, tweaked colors 18 * 2004/11/27 (1.0.1) 19 * - Added support for multiple object splitters 20 * 2004/08/30 (1.0.0) 21 * - First Release 22 * 23 * TODO (updated 2004/11/27) 24 * ------------------------- 25 * 26 ************************************************************************************* 27 * 28 * This file is part of GeSHi. 29 * 30 * GeSHi is free software; you can redistribute it and/or modify 31 * it under the terms of the GNU General Public License as published by 32 * the Free Software Foundation; either version 2 of the License, or 33 * (at your option) any later version. 34 * 35 * GeSHi is distributed in the hope that it will be useful, 36 * but WITHOUT ANY WARRANTY; without even the implied warranty of 37 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 38 * GNU General Public License for more details. 39 * 40 * You should have received a copy of the GNU General Public License 41 * along with GeSHi; if not, write to the Free Software 42 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 43 * 44 ************************************************************************************/ 45 46 $language_data = array ( 47 'LANG_NAME' => 'Python', 48 'COMMENT_SINGLE' => array(1 => '#'), 49 'COMMENT_MULTI' => array(), 50 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 51 'QUOTEMARKS' => array('"', "'", '"""'), 52 'ESCAPE_CHAR' => '\\', 53 'KEYWORDS' => array( 54 55 /* 56 ** Set 1: reserved words 57 ** http://python.org/doc/current/ref/keywords.html 58 */ 59 1 => array( 60 'and', 'del', 'for', 'is', 'raise', 'assert', 'elif', 'from', 'lambda', 'return', 'break', 61 'else', 'global', 'not', 'try', 'class', 'except', 'if', 'or', 'while', 'continue', 'exec', 62 'import', 'pass', 'yield', 'def', 'finally', 'in', 'print' 63 ), 64 65 /* 66 ** Set 2: builtins 67 ** http://python.org/doc/current/lib/built-in-funcs.html 68 */ 69 2 => array( 70 '__import__', 'abs', 'basestring', 'bool', 'callable', 'chr', 'classmethod', 'cmp', 71 'compile', 'complex', 'delattr', 'dict', 'dir', 'divmod', 'enumerate', 'eval', 'execfile', 72 'file', 'filter', 'float', 'frozenset', 'getattr', 'globals', 'hasattr', 'hash', 'help', 73 'hex', 'id', 'input', 'int', 'isinstance', 'issubclass', 'iter', 'len', 'list', 'locals', 74 'long', 'map', 'max', 'min', 'object', 'oct', 'open', 'ord', 'pow', 'property', 'range', 75 'raw_input', 'reduce', 'reload', 'repr', 'reversed', 'round', 'set', 'setattr', 'slice', 76 'sorted', 'staticmethod', 'str', 'sum', 'super', 'tuple', 'type', 'unichr', 'unicode', 77 'vars', 'xrange', 'zip', 78 // Built-in constants: http://python.org/doc/current/lib/node35.html 79 'False', 'True', 'None', 'NotImplemented', 'Ellipsis', 80 // Built-in Exceptions: http://python.org/doc/current/lib/module-exceptions.html 81 'Exception', 'StandardError', 'ArithmeticError', 'LookupError', 'EnvironmentError', 82 'AssertionError', 'AttributeError', 'EOFError', 'FloatingPointError', 'IOError', 83 'ImportError', 'IndexError', 'KeyError', 'KeyboardInterrupt', 'MemoryError', 'NameError', 84 'NotImplementedError', 'OSError', 'OverflowError', 'ReferenceError', 'RuntimeError', 85 'StopIteration', 'SyntaxError', 'SystemError', 'SystemExit', 'TypeError', 86 'UnboundlocalError', 'UnicodeError', 'UnicodeEncodeError', 'UnicodeDecodeError', 87 'UnicodeTranslateError', 'ValueError', 'WindowsError', 'ZeroDivisionError', 'Warning', 88 'UserWarning', 'DeprecationWarning', 'PendingDeprecationWarning', 'SyntaxWarning', 89 'RuntimeWarning', 'FutureWarning', 90 // self: this is a common python convention (but not a reserved word) 91 'self' 92 ), 93 94 /* 95 ** Set 3: standard library 96 ** http://python.org/doc/current/lib/modindex.html 97 */ 98 3 => array( 99 '__builtin__', '__future__', '__main__', '_winreg', 'aifc', 'AL', 'al', 'anydbm', 100 'array', 'asynchat', 'asyncore', 'atexit', 'audioop', 'base64', 'BaseHTTPServer', 101 'Bastion', 'binascii', 'binhex', 'bisect', 'bsddb', 'bz2', 'calendar', 'cd', 'cgi', 102 'CGIHTTPServer', 'cgitb', 'chunk', 'cmath', 'cmd', 'code', 'codecs', 'codeop', 103 'collections', 'colorsys', 'commands', 'compileall', 'compiler', 'compiler', 104 'ConfigParser', 'Cookie', 'cookielib', 'copy', 'copy_reg', 'cPickle', 'crypt', 105 'cStringIO', 'csv', 'curses', 'datetime', 'dbhash', 'dbm', 'decimal', 'DEVICE', 106 'difflib', 'dircache', 'dis', 'distutils', 'dl', 'doctest', 'DocXMLRPCServer', 'dumbdbm', 107 'dummy_thread', 'dummy_threading', 'email', 'encodings', 'errno', 'exceptions', 'fcntl', 108 'filecmp', 'fileinput', 'FL', 'fl', 'flp', 'fm', 'fnmatch', 'formatter', 'fpectl', 109 'fpformat', 'ftplib', 'gc', 'gdbm', 'getopt', 'getpass', 'gettext', 'GL', 'gl', 'glob', 110 'gopherlib', 'grp', 'gzip', 'heapq', 'hmac', 'hotshot', 'htmlentitydefs', 'htmllib', 111 'HTMLParser', 'httplib', 'imageop', 'imaplib', 'imgfile', 'imghdr', 'imp', 'inspect', 112 'itertools', 'jpeg', 'keyword', 'linecache', 'locale', 'logging', 'mailbox', 'mailcap', 113 'marshal', 'math', 'md5', 'mhlib', 'mimetools', 'mimetypes', 'MimeWriter', 'mimify', 114 'mmap', 'msvcrt', 'multifile', 'mutex', 'netrc', 'new', 'nis', 'nntplib', 'operator', 115 'optparse', 'os', 'ossaudiodev', 'parser', 'pdb', 'pickle', 'pickletools', 'pipes', 116 'pkgutil', 'platform', 'popen2', 'poplib', 'posix', 'posixfile', 'pprint', 'profile', 117 'pstats', 'pty', 'pwd', 'py_compile', 'pyclbr', 'pydoc', 'Queue', 'quopri', 'random', 118 're', 'readline', 'repr', 'resource', 'rexec', 'rfc822', 'rgbimg', 'rlcompleter', 119 'robotparser', 'sched', 'ScrolledText', 'select', 'sets', 'sgmllib', 'sha', 'shelve', 120 'shlex', 'shutil', 'signal', 'SimpleHTTPServer', 'SimpleXMLRPCServer', 'site', 'smtpd', 121 'smtplib', 'sndhdr', 'socket', 'SocketServer', 'stat', 'statcache', 'statvfs', 'string', 122 'StringIO', 'stringprep', 'struct', 'subprocess', 'sunau', 'SUNAUDIODEV', 'sunaudiodev', 123 'symbol', 'sys', 'syslog', 'tabnanny', 'tarfile', 'telnetlib', 'tempfile', 'termios', 124 'test', 'textwrap', 'thread', 'threading', 'time', 'timeit', 'Tix', 'Tkinter', 'token', 125 'tokenize', 'traceback', 'tty', 'turtle', 'types', 'unicodedata', 'unittest', 'urllib2', 126 'urllib', 'urlparse', 'user', 'UserDict', 'UserList', 'UserString', 'uu', 'warnings', 127 'wave', 'weakref', 'webbrowser', 'whichdb', 'whrandom', 'winsound', 'xdrlib', 'xml', 128 'xmllib', 'xmlrpclib', 'zipfile', 'zipimport', 'zlib' 129 ), 130 131 /* 132 ** Set 4: special methods 133 ** http://python.org/doc/current/ref/specialnames.html 134 */ 135 4 => array( 136 /* 137 // Iterator types: http://python.org/doc/current/lib/typeiter.html 138 '__iter__', 'next', 139 // String types: http://python.org/doc/current/lib/string-methods.html 140 'capitalize', 'center', 'count', 'decode', 'encode', 'endswith', 'expandtabs', 141 'find', 'index', 'isalnum', 'isaplpha', 'isdigit', 'islower', 'isspace', 'istitle', 142 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'replace', 'rfind', 'rindex', 'rjust', 143 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 144 'translate', 'upper', 'zfill', 145 */ 146 // Basic customization: http://python.org/doc/current/ref/customization.html 147 '__new__', '__init__', '__del__', '__repr__', '__str__', 148 '__lt__', '__le__', '__eq__', '__ne__', '__gt__', '__ge__', '__cmp__', '__rcmp__', 149 '__hash__', '__nonzero__', '__unicode__', '__dict__', 150 // Attribute access: http://python.org/doc/current/ref/attribute-access.html 151 '__setattr__', '__delattr__', '__getattr__', '__getattribute__', '__get__', '__set__', 152 '__delete__', '__slots__', 153 // Class creation, callable objects 154 '__metaclass__', '__call__', 155 // Container types: http://python.org/doc/current/ref/sequence-types.html 156 '__len__', '__getitem__', '__setitem__', '__delitem__', '__iter__', '__contains__', 157 '__getslice__', '__setslice__', '__delslice__', 158 // Numeric types: http://python.org/doc/current/ref/numeric-types.html 159 '__abs__','__add__','__and__','__coerce__','__div__','__divmod__','__float__', 160 '__hex__','__iadd__','__isub__','__imod__','__idiv__','__ipow__','__iand__', 161 '__ior__','__ixor__', '__ilshift__','__irshift__','__invert__','__int__', 162 '__long__','__lshift__', 163 '__mod__','__mul__','__neg__','__oct__','__or__','__pos__','__pow__', 164 '__radd__','__rdiv__','__rdivmod__','__rmod__','__rpow__','__rlshift__','__rrshift__', 165 '__rshift__','__rsub__','__rmul__','__repr__','__rand__','__rxor__','__ror__', 166 '__sub__','__xor__' 167 ) 168 169 ), 170 'SYMBOLS' => array( 171 '(', ')', '[', ']', '{', '}', '*', '&', '%', '!', ';', '<', '>', '?', '`' 172 ), 173 'CASE_SENSITIVE' => array( 174 GESHI_COMMENTS => true, 175 1 => true, 176 2 => true, 177 3 => true, 178 4 => true 179 ), 180 'STYLES' => array( 181 'KEYWORDS' => array( 182 1 => 'color: #ff7700;font-weight:bold;', // Reserved 183 2 => 'color: #008000;', // Built-ins + self 184 3 => 'color: #dc143c;', // Standard lib 185 4 => 'color: #0000cd;' // Special methods 186 ), 187 'COMMENTS' => array( 188 1 => 'color: #808080; font-style: italic;', 189 'MULTI' => 'color: #808080; font-style: italic;' 190 ), 191 'ESCAPE_CHAR' => array( 192 0 => 'color: #000099; font-weight: bold;' 193 ), 194 'BRACKETS' => array( 195 0 => 'color: black;' 196 ), 197 'STRINGS' => array( 198 0 => 'color: #483d8b;' 199 ), 200 'NUMBERS' => array( 201 0 => 'color: #ff4500;' 202 ), 203 'METHODS' => array( 204 1 => 'color: black;' 205 ), 206 'SYMBOLS' => array( 207 0 => 'color: #66cc66;' 208 ), 209 'REGEXPS' => array( 210 ), 211 'SCRIPT' => array( 212 ) 213 ), 214 'URLS' => array( 215 ), 216 'OOLANG' => true, 217 'OBJECT_SPLITTERS' => array( 218 1 => '.' 219 ), 220 'REGEXPS' => array( 221 ), 222 'STRICT_MODE_APPLIES' => GESHI_NEVER, 223 'SCRIPT_DELIMITERS' => array( 224 ), 225 'HIGHLIGHT_STRICT_BLOCK' => array( 226 ) 227 ); 228 229 ?>
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 |