1 |
2
|
Manuela
|
editAreaLoader.load_syntax["php"] = {
|
2 |
|
|
'DISPLAY_NAME' : 'Php'
|
3 |
|
|
,'COMMENT_SINGLE' : {1 : '//', 2 : '#'}
|
4 |
|
|
,'COMMENT_MULTI' : {'/*' : '*/'}
|
5 |
|
|
,'QUOTEMARKS' : {1: "'", 2: '"'}
|
6 |
|
|
,'KEYWORD_CASE_SENSITIVE' : false
|
7 |
|
|
,'KEYWORDS' : {
|
8 |
|
|
'statements' : [
|
9 |
|
|
'include', 'require', 'include_once', 'require_once',
|
10 |
|
|
'for', 'foreach', 'as', 'if', 'elseif', 'else', 'while', 'do', 'endwhile',
|
11 |
|
|
'endif', 'switch', 'case', 'endswitch',
|
12 |
|
|
'return', 'break', 'continue'
|
13 |
|
|
]
|
14 |
|
|
,'reserved' : [
|
15 |
|
|
'_GET', '_POST', '_SESSION', '_SERVER', '_FILES', '_ENV', '_COOKIE', '_REQUEST',
|
16 |
|
|
'null', '__LINE__', '__FILE__',
|
17 |
|
|
'false', '<?php', '?>', '<?',
|
18 |
|
|
'<script language', '</script>',
|
19 |
|
|
'true', 'var', 'default',
|
20 |
|
|
'function', 'class', 'new', '&new', 'this',
|
21 |
|
|
'__FUNCTION__', '__CLASS__', '__METHOD__', 'PHP_VERSION',
|
22 |
|
|
'PHP_OS', 'DEFAULT_INCLUDE_PATH', 'PEAR_INSTALL_DIR', 'PEAR_EXTENSION_DIR',
|
23 |
|
|
'PHP_EXTENSION_DIR', 'PHP_BINDIR', 'PHP_LIBDIR', 'PHP_DATADIR', 'PHP_SYSCONFDIR',
|
24 |
|
|
'PHP_LOCALSTATEDIR', 'PHP_CONFIG_FILE_PATH', 'PHP_OUTPUT_HANDLER_START', 'PHP_OUTPUT_HANDLER_CONT',
|
25 |
|
|
'PHP_OUTPUT_HANDLER_END', 'E_ERROR', 'E_WARNING', 'E_PARSE', 'E_NOTICE',
|
26 |
|
|
'E_CORE_ERROR', 'E_CORE_WARNING', 'E_COMPILE_ERROR', 'E_COMPILE_WARNING', 'E_USER_ERROR',
|
27 |
|
|
'E_USER_WARNING', 'E_USER_NOTICE', 'E_ALL'
|
28 |
|
|
|
29 |
|
|
]
|
30 |
|
|
,'functions' : [
|
31 |
|
|
'func_num_args', 'func_get_arg', 'func_get_args', 'strlen', 'strcmp', 'strncmp', 'strcasecmp', 'strncasecmp', 'each', 'error_reporting', 'define', 'defined',
|
32 |
|
|
'trigger_error', 'user_error', 'set_error_handler', 'restore_error_handler', 'get_declared_classes', 'get_loaded_extensions',
|
33 |
|
|
'extension_loaded', 'get_extension_funcs', 'debug_backtrace',
|
34 |
|
|
'constant', 'bin2hex', 'sleep', 'usleep', 'time', 'mktime', 'gmmktime', 'strftime', 'gmstrftime', 'strtotime', 'date', 'gmdate', 'getdate', 'localtime', 'checkdate', 'flush', 'wordwrap', 'htmlspecialchars', 'htmlentities', 'html_entity_decode', 'md5', 'md5_file', 'crc32', 'getimagesize', 'image_type_to_mime_type', 'phpinfo', 'phpversion', 'phpcredits', 'strnatcmp', 'strnatcasecmp', 'substr_count', 'strspn', 'strcspn', 'strtok', 'strtoupper', 'strtolower', 'strpos', 'strrpos', 'strrev', 'hebrev', 'hebrevc', 'nl2br', 'basename', 'dirname', 'pathinfo', 'stripslashes', 'stripcslashes', 'strstr', 'stristr', 'strrchr', 'str_shuffle', 'str_word_count', 'strcoll', 'substr', 'substr_replace', 'quotemeta', 'ucfirst', 'ucwords', 'strtr', 'addslashes', 'addcslashes', 'rtrim', 'str_replace', 'str_repeat', 'count_chars', 'chunk_split', 'trim', 'ltrim', 'strip_tags', 'similar_text', 'explode', 'implode', 'setlocale', 'localeconv',
|
35 |
|
|
'parse_str', 'str_pad', 'chop', 'strchr', 'sprintf', 'printf', 'vprintf', 'vsprintf', 'sscanf', 'fscanf', 'parse_url', 'urlencode', 'urldecode', 'rawurlencode', 'rawurldecode', 'readlink', 'linkinfo', 'link', 'unlink', 'exec', 'system', 'escapeshellcmd', 'escapeshellarg', 'passthru', 'shell_exec', 'proc_open', 'proc_close', 'rand', 'srand', 'getrandmax', 'mt_rand', 'mt_srand', 'mt_getrandmax', 'base64_decode', 'base64_encode', 'abs', 'ceil', 'floor', 'round', 'is_finite', 'is_nan', 'is_infinite', 'bindec', 'hexdec', 'octdec', 'decbin', 'decoct', 'dechex', 'base_convert', 'number_format', 'fmod', 'ip2long', 'long2ip', 'getenv', 'putenv', 'getopt', 'microtime', 'gettimeofday', 'getrusage', 'uniqid', 'quoted_printable_decode', 'set_time_limit', 'get_cfg_var', 'magic_quotes_runtime', 'set_magic_quotes_runtime', 'get_magic_quotes_gpc', 'get_magic_quotes_runtime',
|
36 |
|
|
'import_request_variables', 'error_log', 'serialize', 'unserialize', 'memory_get_usage', 'var_dump', 'var_export', 'debug_zval_dump', 'print_r','highlight_file', 'show_source', 'highlight_string', 'ini_get', 'ini_get_all', 'ini_set', 'ini_alter', 'ini_restore', 'get_include_path', 'set_include_path', 'restore_include_path', 'setcookie', 'header', 'headers_sent', 'connection_aborted', 'connection_status', 'ignore_user_abort', 'parse_ini_file', 'is_uploaded_file', 'move_uploaded_file', 'intval', 'floatval', 'doubleval', 'strval', 'gettype', 'settype', 'is_null', 'is_resource', 'is_bool', 'is_long', 'is_float', 'is_int', 'is_integer', 'is_double', 'is_real', 'is_numeric', 'is_string', 'is_array', 'is_object', 'is_scalar',
|
37 |
|
|
'ereg', 'ereg_replace', 'eregi', 'eregi_replace', 'split', 'spliti', 'join', 'sql_regcase', 'dl', 'pclose', 'popen', 'readfile', 'rewind', 'rmdir', 'umask', 'fclose', 'feof', 'fgetc', 'fgets', 'fgetss', 'fread', 'fopen', 'fpassthru', 'ftruncate', 'fstat', 'fseek', 'ftell', 'fflush', 'fwrite', 'fputs', 'mkdir', 'rename', 'copy', 'tempnam', 'tmpfile', 'file', 'file_get_contents', 'stream_select', 'stream_context_create', 'stream_context_set_params', 'stream_context_set_option', 'stream_context_get_options', 'stream_filter_prepend', 'stream_filter_append', 'fgetcsv', 'flock', 'get_meta_tags', 'stream_set_write_buffer', 'set_file_buffer', 'set_socket_blocking', 'stream_set_blocking', 'socket_set_blocking', 'stream_get_meta_data', 'stream_register_wrapper', 'stream_wrapper_register', 'stream_set_timeout', 'socket_set_timeout', 'socket_get_status', 'realpath', 'fnmatch', 'fsockopen', 'pfsockopen', 'pack', 'unpack', 'get_browser', 'crypt', 'opendir', 'closedir', 'chdir', 'getcwd', 'rewinddir', 'readdir', 'dir', 'glob', 'fileatime', 'filectime', 'filegroup', 'fileinode', 'filemtime', 'fileowner', 'fileperms', 'filesize', 'filetype', 'file_exists', 'is_writable', 'is_writeable', 'is_readable', 'is_executable', 'is_file', 'is_dir', 'is_link', 'stat', 'lstat', 'chown',
|
38 |
|
|
'touch', 'clearstatcache', 'mail', 'ob_start', 'ob_flush', 'ob_clean', 'ob_end_flush', 'ob_end_clean', 'ob_get_flush', 'ob_get_clean', 'ob_get_length', 'ob_get_level', 'ob_get_status', 'ob_get_contents', 'ob_implicit_flush', 'ob_list_handlers', 'ksort', 'krsort', 'natsort', 'natcasesort', 'asort', 'arsort', 'sort', 'rsort', 'usort', 'uasort', 'uksort', 'shuffle', 'array_walk', 'count', 'end', 'prev', 'next', 'reset', 'current', 'key', 'min', 'max', 'in_array', 'array_search', 'extract', 'compact', 'array_fill', 'range', 'array_multisort', 'array_push', 'array_pop', 'array_shift', 'array_unshift', 'array_splice', 'array_slice', 'array_merge', 'array_merge_recursive', 'array_keys', 'array_values', 'array_count_values', 'array_reverse', 'array_reduce', 'array_pad', 'array_flip', 'array_change_key_case', 'array_rand', 'array_unique', 'array_intersect', 'array_intersect_assoc', 'array_diff', 'array_diff_assoc', 'array_sum', 'array_filter', 'array_map', 'array_chunk', 'array_key_exists', 'pos', 'sizeof', 'key_exists', 'assert', 'assert_options', 'version_compare', 'ftok', 'str_rot13', 'aggregate',
|
39 |
|
|
'session_name', 'session_module_name', 'session_save_path', 'session_id', 'session_regenerate_id', 'session_decode', 'session_register', 'session_unregister', 'session_is_registered', 'session_encode',
|
40 |
|
|
'session_start', 'session_destroy', 'session_unset', 'session_set_save_handler', 'session_cache_limiter', 'session_cache_expire', 'session_set_cookie_params', 'session_get_cookie_params', 'session_write_close', 'preg_match', 'preg_match_all', 'preg_replace', 'preg_replace_callback', 'preg_split', 'preg_quote', 'preg_grep', 'overload', 'ctype_alnum', 'ctype_alpha', 'ctype_cntrl', 'ctype_digit', 'ctype_lower', 'ctype_graph', 'ctype_print', 'ctype_punct', 'ctype_space', 'ctype_upper', 'ctype_xdigit', 'virtual', 'apache_request_headers', 'apache_note', 'apache_lookup_uri', 'apache_child_terminate', 'apache_setenv', 'apache_response_headers', 'apache_get_version', 'getallheaders', 'mysql_connect', 'mysql_pconnect', 'mysql_close', 'mysql_select_db', 'mysql_create_db', 'mysql_drop_db', 'mysql_query', 'mysql_unbuffered_query', 'mysql_db_query', 'mysql_list_dbs', 'mysql_list_tables', 'mysql_list_fields', 'mysql_list_processes', 'mysql_error', 'mysql_errno', 'mysql_affected_rows', 'mysql_insert_id', 'mysql_result', 'mysql_num_rows', 'mysql_num_fields', 'mysql_fetch_row', 'mysql_fetch_array', 'mysql_fetch_assoc', 'mysql_fetch_object', 'mysql_data_seek', 'mysql_fetch_lengths', 'mysql_fetch_field', 'mysql_field_seek', 'mysql_free_result', 'mysql_field_name', 'mysql_field_table', 'mysql_field_len', 'mysql_field_type', 'mysql_field_flags', 'mysql_escape_string', 'mysql_real_escape_string', 'mysql_stat',
|
41 |
|
|
'mysql_thread_id', 'mysql_client_encoding', 'mysql_get_client_info', 'mysql_get_host_info', 'mysql_get_proto_info', 'mysql_get_server_info', 'mysql_info', 'mysql', 'mysql_fieldname', 'mysql_fieldtable', 'mysql_fieldlen', 'mysql_fieldtype', 'mysql_fieldflags', 'mysql_selectdb', 'mysql_createdb', 'mysql_dropdb', 'mysql_freeresult', 'mysql_numfields', 'mysql_numrows', 'mysql_listdbs', 'mysql_listtables', 'mysql_listfields', 'mysql_db_name', 'mysql_dbname', 'mysql_tablename', 'mysql_table_name', 'pg_connect', 'pg_pconnect', 'pg_close', 'pg_connection_status', 'pg_connection_busy', 'pg_connection_reset', 'pg_host', 'pg_dbname', 'pg_port', 'pg_tty', 'pg_options', 'pg_ping', 'pg_query', 'pg_send_query', 'pg_cancel_query', 'pg_fetch_result', 'pg_fetch_row', 'pg_fetch_assoc', 'pg_fetch_array', 'pg_fetch_object', 'pg_fetch_all', 'pg_affected_rows', 'pg_get_result', 'pg_result_seek', 'pg_result_status', 'pg_free_result', 'pg_last_oid', 'pg_num_rows', 'pg_num_fields', 'pg_field_name', 'pg_field_num', 'pg_field_size', 'pg_field_type', 'pg_field_prtlen', 'pg_field_is_null', 'pg_get_notify', 'pg_get_pid', 'pg_result_error', 'pg_last_error', 'pg_last_notice', 'pg_put_line', 'pg_end_copy', 'pg_copy_to', 'pg_copy_from',
|
42 |
|
|
'pg_trace', 'pg_untrace', 'pg_lo_create', 'pg_lo_unlink', 'pg_lo_open', 'pg_lo_close', 'pg_lo_read', 'pg_lo_write', 'pg_lo_read_all', 'pg_lo_import', 'pg_lo_export', 'pg_lo_seek', 'pg_lo_tell', 'pg_escape_string', 'pg_escape_bytea', 'pg_unescape_bytea', 'pg_client_encoding', 'pg_set_client_encoding', 'pg_meta_data', 'pg_convert', 'pg_insert', 'pg_update', 'pg_delete', 'pg_select', 'pg_exec', 'pg_getlastoid', 'pg_cmdtuples', 'pg_errormessage', 'pg_numrows', 'pg_numfields', 'pg_fieldname', 'pg_fieldsize', 'pg_fieldtype', 'pg_fieldnum', 'pg_fieldprtlen', 'pg_fieldisnull', 'pg_freeresult', 'pg_result', 'pg_loreadall', 'pg_locreate', 'pg_lounlink', 'pg_loopen', 'pg_loclose', 'pg_loread', 'pg_lowrite', 'pg_loimport', 'pg_loexport',
|
43 |
|
|
'echo', 'print', 'global', 'static', 'exit', 'array', 'empty', 'eval', 'isset', 'unset', 'die'
|
44 |
|
|
|
45 |
|
|
]
|
46 |
|
|
}
|
47 |
|
|
,'OPERATORS' :[
|
48 |
|
|
'+', '-', '/', '*', '=', '<', '>', '%', '!', '&&', '||'
|
49 |
|
|
]
|
50 |
|
|
,'DELIMITERS' :[
|
51 |
|
|
'(', ')', '[', ']', '{', '}'
|
52 |
|
|
]
|
53 |
|
|
,'REGEXPS' : {
|
54 |
|
|
// highlight all variables ($...)
|
55 |
|
|
'variables' : {
|
56 |
|
|
'search' : '()(\\$\\w+)()'
|
57 |
|
|
,'class' : 'variables'
|
58 |
|
|
,'modifiers' : 'g'
|
59 |
|
|
,'execute' : 'before' // before or after
|
60 |
|
|
}
|
61 |
|
|
}
|
62 |
|
|
,'STYLES' : {
|
63 |
|
|
'COMMENTS': 'color: #AAAAAA;'
|
64 |
|
|
,'QUOTESMARKS': 'color: #879EFA;'
|
65 |
|
|
,'KEYWORDS' : {
|
66 |
|
|
'reserved' : 'color: #48BDDF;'
|
67 |
|
|
,'functions' : 'color: #0040FD;'
|
68 |
|
|
,'statements' : 'color: #60CA00;'
|
69 |
|
|
}
|
70 |
|
|
,'OPERATORS' : 'color: #FF00FF;'
|
71 |
|
|
,'DELIMITERS' : 'color: #2B60FF;'
|
72 |
|
|
,'REGEXPS' : {
|
73 |
|
|
'variables' : 'color: #E0BD54;'
|
74 |
|
|
}
|
75 |
|
|
}
|
76 |
|
|
,'AUTO_COMPLETION' : {
|
77 |
|
|
"default": { // the name of this definition group. It's posisble to have different rules inside the same definition file
|
78 |
|
|
"REGEXP": { "before_word": "[^a-zA-Z0-9_]|^" // \\s|\\.|
|
79 |
|
|
,"possible_words_letters": "[a-zA-Z0-9_\$]+"
|
80 |
|
|
,"letter_after_word_must_match": "[^a-zA-Z0-9_]|$"
|
81 |
|
|
,"prefix_separator": "\\-\\>|\\:\\:"
|
82 |
|
|
}
|
83 |
|
|
,"CASE_SENSITIVE": true
|
84 |
|
|
,"MAX_TEXT_LENGTH": 100 // the maximum length of the text being analyzed before the cursor position
|
85 |
|
|
,"KEYWORDS": {
|
86 |
|
|
'': [ // the prefix of thoses items
|
87 |
|
|
/**
|
88 |
|
|
* 0 : the keyword the user is typing
|
89 |
|
|
* 1 : (optionnal) the string inserted in code ("{@}" being the new position of the cursor, "§" beeing the equivalent to the value the typed string indicated if the previous )
|
90 |
|
|
* If empty the keyword will be displayed
|
91 |
|
|
* 2 : (optionnal) the text that appear in the suggestion box (if empty, the string to insert will be displayed)
|
92 |
|
|
*/
|
93 |
|
|
['$_POST']
|
94 |
|
|
,['$_GET']
|
95 |
|
|
,['$_SESSION']
|
96 |
|
|
,['$_SERVER']
|
97 |
|
|
,['$_FILES']
|
98 |
|
|
,['$_ENV']
|
99 |
|
|
,['$_COOKIE']
|
100 |
|
|
,['$_REQUEST']
|
101 |
|
|
// magic methods
|
102 |
|
|
,['__construct', '§( {@} )']
|
103 |
|
|
,['__destruct', '§( {@} )']
|
104 |
|
|
,['__sleep', '§( {@} )']
|
105 |
|
|
,['__wakeup', '§( {@} )']
|
106 |
|
|
,['__toString', '§( {@} )']
|
107 |
|
|
// include
|
108 |
|
|
,['include', '§ "{@}";']
|
109 |
|
|
,['include_once', '§ "{@}";']
|
110 |
|
|
,['require', '§ "{@}";']
|
111 |
|
|
,['require_once', '§ "{@}";']
|
112 |
|
|
// statements
|
113 |
|
|
,['for', '§( {@} )']
|
114 |
|
|
,['foreach', '§( {@} )']
|
115 |
|
|
,['if', '§( {@} )']
|
116 |
|
|
,['elseif', '§( {@} )']
|
117 |
|
|
,['while', '§( {@} )']
|
118 |
|
|
,['switch', '§( {@} )']
|
119 |
|
|
,['break']
|
120 |
|
|
,['case']
|
121 |
|
|
,['continue']
|
122 |
|
|
,['do']
|
123 |
|
|
,['else']
|
124 |
|
|
,['endif']
|
125 |
|
|
,['endswitch']
|
126 |
|
|
,['endwhile']
|
127 |
|
|
,['return']
|
128 |
|
|
// function
|
129 |
|
|
,['unset', '§( {@} )']
|
130 |
|
|
]
|
131 |
|
|
}
|
132 |
|
|
}
|
133 |
|
|
,"live": {
|
134 |
|
|
|
135 |
|
|
// class NAME: /class\W+([a-z]+)\W+/gi
|
136 |
|
|
// method: /^(public|private|protected)?\s*function\s+([a-z][a-z0-9\_]*)\s*(\([^\{]*\))/gmi
|
137 |
|
|
// static: /^(public|private|protected)?\s+static\s+(public|private|protected)?\s*function\s+([a-z][a-z0-9\_]*)\s*(\([^\{]*\))/gmi
|
138 |
|
|
// attributes: /(\$this\-\>|(?:var|public|protected|private)\W+\$)([a-z0-9\_]+)(?!\()\b/gi
|
139 |
|
|
// v1 : /(\$this\-\>|var\W+|public\W+|protected\W+|private\W+)([a-z0-9\_]+)\W*(=|;)/gi
|
140 |
|
|
// var type: /(\$(this\-\>)?[a-z0-9\_]+)\s*\=\s*new\s+([a-z0-9\_])+/gi
|
141 |
|
|
|
142 |
|
|
|
143 |
|
|
"REGEXP": { "before_word": "[^a-zA-Z0-9_]|^" // \\s|\\.|
|
144 |
|
|
,"possible_words_letters": "[a-zA-Z0-9_\$]+"
|
145 |
|
|
,"letter_after_word_must_match": "[^a-zA-Z0-9_]|$"
|
146 |
|
|
,"prefix_separator": "\\-\\>"
|
147 |
|
|
}
|
148 |
|
|
,"CASE_SENSITIVE": true
|
149 |
|
|
,"MAX_TEXT_LENGTH": 100 // the maximum length of the text being analyzed before the cursor position
|
150 |
|
|
,"KEYWORDS": {
|
151 |
|
|
'$this': [ // the prefix of thoses items
|
152 |
|
|
['test']
|
153 |
|
|
]
|
154 |
|
|
}
|
155 |
|
|
}
|
156 |
|
|
}
|
157 |
|
|
};
|