"" "
pygments.lexers.phix
~~~~~~~~~~~~~~~~~~~~
Lexers
for Phix.
:copyright: Copyright 2006-2024 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE
for details.
"" "
import re
from pygments.lexer
import RegexLexer, words
from pygments.token
import Text, Comment, Operator, Keyword, Name, String, \
Whitespace
__all__ = [
'PhixLexer' ]
class PhixLexer(RegexLexer):
"" "
Pygments Lexer
for Phix files (.exw).
See
http://phix.x10.mx
"" "
name =
'Phix'
url =
'http://phix.x10.mx '
aliases = [
'phix' ]
filenames = [
'*.exw' ]
mimetypes = [
'text/x-phix' ]
version_added =
'2.14'
flags = re.MULTILINE
# nb: **NOT** re.DOTALL! (totally spanners comment handling)
preproc = (
'ifdef' ,
'elsifdef' ,
'elsedef'
)
# Note these lists are auto-generated by pwa/p2js.exw, when pwa\src\p2js_keywords.e (etc)
# change, though of course subsequent copy/commit/pull requests are all manual steps.
types = (
'string' ,
'nullable_string' ,
'atom_string' ,
'atom' ,
'bool' ,
'boolean' ,
'cdCanvan' ,
'cdCanvas' ,
'complex' ,
'CURLcode' ,
'dictionary' ,
'int' ,
'integer' ,
'Ihandle' ,
'Ihandles' ,
'Ihandln' ,
'mpfr' ,
'mpq' ,
'mpz' ,
'mpz_or_string' ,
'number' ,
'rid_string' ,
'seq' ,
'sequence' ,
'timedate' ,
'object'
)
keywords = (
'abstract' ,
'class' ,
'continue' ,
'export' ,
'extends' ,
'nullable' ,
'private' ,
'public' ,
'static' ,
'struct' ,
'trace' ,
'and' ,
'break' ,
'by' ,
'case' ,
'catch' ,
'const' ,
'constant' ,
'debug' ,
'default' ,
'do' ,
'else' ,
'elsif' ,
'end' ,
'enum' ,
'exit' ,
'fallthru' ,
'fallthrough' ,
'for' ,
'forward' ,
'function' ,
'global' ,
'if' ,
'in' ,
'include' ,
'js' ,
'javascript' ,
'javascript_semantics' ,
'let' ,
'not' ,
'or' ,
'procedure' ,
'profile' ,
'profile_time' ,
'return' ,
'safe_mode' ,
'switch' ,
'then' ,
'to' ,
'try' ,
'type' ,
'type_check' ,
'until' ,
'warning' ,
'while' ,
'with' ,
'without' ,
'xor'
)
routines = (
'abort' ,
'abs' ,
'adjust_timedate' ,
'and_bits' ,
'and_bitsu' ,
'apply' ,
'append' ,
'arccos' ,
'arcsin' ,
'arctan' ,
'assert' ,
'atan2' ,
'atom_to_float32' ,
'atom_to_float64' ,
'bankers_rounding' ,
'beep' ,
'begins' ,
'binary_search' ,
'bits_to_int' ,
'bk_color' ,
'bytes_to_int' ,
'call_func' ,
'call_proc' ,
'cdCanvasActivate' ,
'cdCanvasArc' ,
'cdCanvasBegin' ,
'cdCanvasBox' ,
'cdCanvasChord' ,
'cdCanvasCircle' ,
'cdCanvasClear' ,
'cdCanvasEnd' ,
'cdCanvasFlush' ,
'cdCanvasFont' ,
'cdCanvasGetImageRGB' ,
'cdCanvasGetSize' ,
'cdCanvasGetTextAlignment' ,
'cdCanvasGetTextSize' ,
'cdCanvasLine' ,
'cdCanvasMark' ,
'cdCanvasMarkSize' ,
'cdCanvasMultiLineVectorText' ,
'cdCanvasPixel' ,
'cdCanvasRect' ,
'cdCanvasRoundedBox' ,
'cdCanvasRoundedRect' ,
'cdCanvasSector' ,
'cdCanvasSetAttribute' ,
'cdCanvasSetBackground' ,
'cdCanvasSetFillMode' ,
'cdCanvasSetForeground' ,
'cdCanvasSetInteriorStyle' ,
'cdCanvasSetLineStyle' ,
'cdCanvasSetLineWidth' ,
'cdCanvasSetTextAlignment' ,
'cdCanvasText' ,
'cdCanvasSetTextOrientation' ,
'cdCanvasGetTextOrientation' ,
'cdCanvasVectorText' ,
'cdCanvasVectorTextDirection' ,
'cdCanvasVectorTextSize' ,
'cdCanvasVertex' ,
'cdCreateCanvas' ,
'cdDecodeAlpha' ,
'cdDecodeColor' ,
'cdDecodeColorAlpha' ,
'cdEncodeAlpha' ,
'cdEncodeColor' ,
'cdEncodeColorAlpha' ,
'cdKillCanvas' ,
'cdVersion' ,
'cdVersionDate' ,
'ceil' ,
'change_timezone' ,
'choose' ,
'clear_screen' ,
'columnize' ,
'command_line' ,
'compare' ,
'complex_abs' ,
'complex_add' ,
'complex_arg' ,
'complex_conjugate' ,
'complex_cos' ,
'complex_cosh' ,
'complex_div' ,
'complex_exp' ,
'complex_imag' ,
'complex_inv' ,
'complex_log' ,
'complex_mul' ,
'complex_neg' ,
'complex_new' ,
'complex_norm' ,
'complex_power' ,
'complex_rho' ,
'complex_real' ,
'complex_round' ,
'complex_sin' ,
'complex_sinh' ,
'complex_sprint' ,
'complex_sqrt' ,
'complex_sub' ,
'complex_theta' ,
'concat' ,
'cos' ,
'crash' ,
'custom_sort' ,
'date' ,
'day_of_week' ,
'day_of_year' ,
'days_in_month' ,
'decode_base64' ,
'decode_flags' ,
'deep_copy' ,
'deld' ,
'deserialize' ,
'destroy_dict' ,
'destroy_queue' ,
'destroy_stack' ,
'dict_name' ,
'dict_size' ,
'elapsed' ,
'elapsed_short' ,
'encode_base64' ,
'equal' ,
'even' ,
'exp' ,
'extract' ,
'factorial' ,
'factors' ,
'file_size_k' ,
'find' ,
'find_all' ,
'find_any' ,
'find_replace' ,
'filter' ,
'flatten' ,
'float32_to_atom' ,
'float64_to_atom' ,
'floor' ,
'format_timedate' ,
'free_console' ,
'from_polar' ,
'gcd' ,
'get_file_base' ,
'get_file_extension' ,
'get_file_name' ,
'get_file_name_and_path' ,
'get_file_path' ,
'get_file_path_and_name' ,
'get_maxprime' ,
'get_prime' ,
'get_primes' ,
'get_primes_le' ,
'get_proper_dir' ,
'get_proper_path' ,
'get_rand' ,
'get_routine_info' ,
'get_test_abort' ,
'get_test_logfile' ,
'get_test_pause' ,
'get_test_verbosity' ,
'get_tzid' ,
'getd' ,
'getdd' ,
'getd_all_keys' ,
'getd_by_index' ,
'getd_index' ,
'getd_partial_key' ,
'glAttachShader' ,
'glBindBuffer' ,
'glBindTexture' ,
'glBufferData' ,
'glCanvasSpecialText' ,
'glClear' ,
'glClearColor' ,
'glColor' ,
'glCompileShader' ,
'glCreateBuffer' ,
'glCreateProgram' ,
'glCreateShader' ,
'glCreateTexture' ,
'glDeleteProgram' ,
'glDeleteShader' ,
'glDrawArrays' ,
'glEnable' ,
'glEnableVertexAttribArray' ,
'glFloat32Array' ,
'glInt32Array' ,
'glFlush' ,
'glGetAttribLocation' ,
'glGetError' ,
'glGetProgramInfoLog' ,
'glGetProgramParameter' ,
'glGetShaderInfoLog' ,
'glGetShaderParameter' ,
'glGetUniformLocation' ,
'glLinkProgram' ,
'glLoadIdentity' ,
'glMatrixMode' ,
'glOrtho' ,
'glRotatef' ,
'glShadeModel' ,
'glShaderSource' ,
'glSimpleA7texcoords' ,
'glTexImage2Dc' ,
'glTexParameteri' ,
'glTranslate' ,
'glUniform1f' ,
'glUniform1i' ,
'glUniformMatrix4fv' ,
'glUseProgram' ,
'glVertex' ,
'glVertexAttribPointer' ,
'glViewport' ,
'head' ,
'hsv_to_rgb' ,
'iff' ,
'iif' ,
'include_file' ,
'incl0de_file' ,
'insert' ,
'instance' ,
'int_to_bits' ,
'int_to_bytes' ,
'is_dict' ,
'is_integer' ,
's_leap_year' ,
'is_prime' ,
'is_prime2' ,
'islower' ,
'isupper' ,
'Icallback' ,
'iup_isdouble' ,
'iup_isprint' ,
'iup_XkeyBase' ,
'IupAppend' ,
'IupAlarm' ,
'IupBackgroundBox' ,
'IupButton' ,
'IupCalendar' ,
'IupCanvas' ,
'IupClipboard' ,
'IupClose' ,
'IupCloseOnEscape' ,
'IupControlsOpen' ,
'IupDatePick' ,
'IupDestroy' ,
'IupDialog' ,
'IupDrawArc' ,
'IupDrawBegin' ,
'IupDrawEnd' ,
'IupDrawGetSize' ,
'IupDrawGetTextSize' ,
'IupDrawLine' ,
'IupDrawRectangle' ,
'IupDrawText' ,
'IupExpander' ,
'IupFill' ,
'IupFlatLabel' ,
'IupFlatList' ,
'IupFlatTree' ,
'IupFlush' ,
'IupFrame' ,
'IupGetAttribute' ,
'IupGetAttributeId' ,
'IupGetAttributePtr' ,
'IupGetBrother' ,
'IupGetChild' ,
'IupGetChildCount' ,
'IupGetClassName' ,
'IupGetDialog' ,
'IupGetDialogChild' ,
'IupGetDouble' ,
'IupGetFocus' ,
'IupGetGlobal' ,
'IupGetGlobalInt' ,
'IupGetGlobalIntInt' ,
'IupGetInt' ,
'IupGetInt2' ,
'IupGetIntId' ,
'IupGetIntInt' ,
'IupGetParent' ,
'IupGLCanvas' ,
'IupGLCanvasOpen' ,
'IupGLMakeCurrent' ,
'IupGraph' ,
'IupHbox' ,
'IupHide' ,
'IupImage' ,
'IupImageRGBA' ,
'IupItem' ,
'iupKeyCodeToName' ,
'IupLabel' ,
'IupLink' ,
'IupList' ,
'IupMap' ,
'IupMenu' ,
'IupMenuItem' ,
'IupMessage' ,
'IupMessageDlg' ,
'IupMultiBox' ,
'IupMultiLine' ,
'IupNextField' ,
'IupNormaliser' ,
'IupOpen' ,
'IupPlayInput' ,
'IupPopup' ,
'IupPreviousField' ,
'IupProgressBar' ,
'IupRadio' ,
'IupRecordInput' ,
'IupRedraw' ,
'IupRefresh' ,
'IupRefreshChildren' ,
'IupSeparator' ,
'IupSetAttribute' ,
'IupSetAttributes' ,
'IupSetAttributeHandle' ,
'IupSetAttributeId' ,
'IupSetAttributePtr' ,
'IupSetCallback' ,
'IupSetCallbacks' ,
'IupSetDouble' ,
'IupSetFocus' ,
'IupSetGlobal' ,
'IupSetGlobalInt' ,
'IupSetGlobalFunction' ,
'IupSetHandle' ,
'IupSetInt' ,
'IupSetStrAttribute' ,
'IupSetStrGlobal' ,
'IupShow' ,
'IupShowXY' ,
'IupSplit' ,
'IupStoreAttribute' ,
'IupSubmenu' ,
'IupTable' ,
'IupTableClearSelected' ,
'IupTableClick_cb' ,
'IupTableGetSelected' ,
'IupTableResize_cb' ,
'IupTableSetData' ,
'IupTabs' ,
'IupText' ,
'IupTimer' ,
'IupToggle' ,
'IupTreeAddNodes' ,
'IupTreeView' ,
'IupUpdate' ,
'IupValuator' ,
'IupVbox' ,
'join' ,
'join_by' ,
'join_path' ,
'k_perm' ,
'largest' ,
'lcm' ,
'length' ,
'log' ,
'log10' ,
'log2' ,
'lower' ,
'm4_crossProduct' ,
'm4_inverse' ,
'm4_lookAt' ,
'm4_multiply' ,
'm4_normalize' ,
'm4_perspective' ,
'm4_subtractVectors' ,
'm4_xRotate' ,
'm4_yRotate' ,
'machine_bits' ,
'machine_word' ,
'match' ,
'match_all' ,
'match_replace' ,
'max' ,
'maxsq' ,
'min' ,
'minsq' ,
'mod' ,
'mpfr_add' ,
'mpfr_ceil' ,
'mpfr_cmp' ,
'mpfr_cmp_si' ,
'mpfr_const_pi' ,
'mpfr_div' ,
'mpfr_div_si' ,
'mpfr_div_z' ,
'mpfr_floor' ,
'mpfr_free' ,
'mpfr_get_d' ,
'mpfr_get_default_precision' ,
'mpfr_get_default_rounding_mode' ,
'mpfr_get_fixed' ,
'mpfr_get_precision' ,
'mpfr_get_si' ,
'mpfr_init' ,
'mpfr_inits' ,
'mpfr_init_set' ,
'mpfr_init_set_q' ,
'mpfr_init_set_z' ,
'mpfr_mul' ,
'mpfr_mul_si' ,
'mpfr_pow_si' ,
'mpfr_set' ,
'mpfr_set_d' ,
'mpfr_set_default_precision' ,
'mpfr_set_default_rounding_mode' ,
'mpfr_set_precision' ,
'mpfr_set_q' ,
'mpfr_set_si' ,
'mpfr_set_str' ,
'mpfr_set_z' ,
'mpfr_si_div' ,
'mpfr_si_sub' ,
'mpfr_sqrt' ,
'mpfr_sub' ,
'mpfr_sub_si' ,
'mpq_abs' ,
'mpq_add' ,
'mpq_add_si' ,
'mpq_canonicalize' ,
'mpq_cmp' ,
'mpq_cmp_si' ,
'mpq_div' ,
'mpq_div_2exp' ,
'mpq_free' ,
'mpq_get_den' ,
'mpq_get_num' ,
'mpq_get_str' ,
'mpq_init' ,
'mpq_init_set' ,
'mpq_init_set_si' ,
'mpq_init_set_str' ,
'mpq_init_set_z' ,
'mpq_inits' ,
'mpq_inv' ,
'mpq_mul' ,
'mpq_neg' ,
'mpq_set' ,
'mpq_set_si' ,
'mpq_set_str' ,
'mpq_set_z' ,
'mpq_sub' ,
'mpz_abs' ,
'mpz_add' ,
'mpz_addmul' ,
'mpz_addmul_ui' ,
'mpz_addmul_si' ,
'mpz_add_si' ,
'mpz_add_ui' ,
'mpz_and' ,
'mpz_bin_uiui' ,
'mpz_cdiv_q' ,
'mpz_cmp' ,
'mpz_cmp_si' ,
'mpz_divexact' ,
'mpz_divexact_ui' ,
'mpz_divisible_p' ,
'mpz_divisible_ui_p' ,
'mpz_even' ,
'mpz_fac_ui' ,
'mpz_factorstring' ,
'mpz_fdiv_q' ,
'mpz_fdiv_q_2exp' ,
'mpz_fdiv_q_ui' ,
'mpz_fdiv_qr' ,
'mpz_fdiv_r' ,
'mpz_fdiv_ui' ,
'mpz_fib_ui' ,
'mpz_fib2_ui' ,
'mpz_fits_atom' ,
'mpz_fits_integer' ,
'mpz_free' ,
'mpz_gcd' ,
'mpz_gcd_ui' ,
'mpz_get_atom' ,
'mpz_get_integer' ,
'mpz_get_short_str' ,
'mpz_get_str' ,
'mpz_init' ,
'mpz_init_set' ,
'mpz_inits' ,
'mpz_invert' ,
'mpz_lcm' ,
'mpz_lcm_ui' ,
'mpz_max' ,
'mpz_min' ,
'mpz_mod' ,
'mpz_mod_ui' ,
'mpz_mul' ,
'mpz_mul_2exp' ,
'mpz_mul_d' ,
'mpz_mul_si' ,
'mpz_neg' ,
'mpz_nthroot' ,
'mpz_odd' ,
'mpz_pollard_rho' ,
'mpz_pow_ui' ,
'mpz_powm' ,
'mpz_powm_ui' ,
'mpz_prime' ,
'mpz_prime_factors' ,
'mpz_prime_mr' ,
'mpz_rand' ,
'mpz_rand_ui' ,
'mpz_re_compose' ,
'mpz_remove' ,
'mpz_scan0' ,
'mpz_scan1' ,
'mpz_set' ,
'mpz_set_d' ,
'mpz_set_si' ,
'mpz_set_str' ,
'mpz_set_v' ,
'mpz_sign' ,
'mpz_sizeinbase' ,
'mpz_sqrt' ,
'mpz_sub' ,
'mpz_sub_si' ,
'mpz_sub_ui' ,
'mpz_si_sub' ,
'mpz_tdiv_q_2exp' ,
'mpz_tdiv_r_2exp' ,
'mpz_tstbit' ,
'mpz_ui_pow_ui' ,
'mpz_xor' ,
'named_dict' ,
'new_dict' ,
'new_queue' ,
'new_stack' ,
'not_bits' ,
'not_bitsu' ,
'odd' ,
'or_all' ,
'or_allu' ,
'or_bits' ,
'or_bitsu' ,
'ord' ,
'ordinal' ,
'ordinant' ,
'override_timezone' ,
'pad' ,
'pad_head' ,
'pad_tail' ,
'parse_date_string' ,
'papply' ,
'peep' ,
'peepn' ,
'peep_dict' ,
'permute' ,
'permutes' ,
'platform' ,
'pop' ,
'popn' ,
'pop_dict' ,
'power' ,
'pp' ,
'ppEx' ,
'ppExf' ,
'ppf' ,
'ppOpt' ,
'pq_add' ,
'pq_destroy' ,
'pq_empty' ,
'pq_new' ,
'pq_peek' ,
'pq_pop' ,
'pq_pop_data' ,
'pq_size' ,
'prepend' ,
'prime_factors' ,
'printf' ,
'product' ,
'proper' ,
'push' ,
'pushn' ,
'putd' ,
'puts' ,
'queue_empty' ,
'queue_size' ,
'rand' ,
'rand_range' ,
'reinstate' ,
'remainder' ,
'remove' ,
'remove_all' ,
'repeat' ,
'repeatch' ,
'replace' ,
'requires' ,
'reverse' ,
'rfind' ,
'rgb' ,
'rmatch' ,
'rmdr' ,
'rnd' ,
'round' ,
'routine_id' ,
'scanf' ,
'serialize' ,
'series' ,
'set_rand' ,
'set_test_abort' ,
'set_test_logfile' ,
'set_test_module' ,
'set_test_pause' ,
'set_test_verbosity' ,
'set_timedate_formats' ,
'set_timezone' ,
'setd' ,
'setd_default' ,
'shorten' ,
'sha256' ,
'shift_bits' ,
'shuffle' ,
'sign' ,
'sin' ,
'smallest' ,
'sort' ,
'sort_columns' ,
'speak' ,
'splice' ,
'split' ,
'split_any' ,
'split_by' ,
'sprint' ,
'sprintf' ,
'sq_abs' ,
'sq_add' ,
'sq_and' ,
'sq_and_bits' ,
'sq_arccos' ,
'sq_arcsin' ,
'sq_arctan' ,
'sq_atom' ,
'sq_ceil' ,
'sq_cmp' ,
'sq_cos' ,
'sq_div' ,
'sq_even' ,
'sq_eq' ,
'sq_floor' ,
'sq_floor_div' ,
'sq_ge' ,
'sq_gt' ,
'sq_int' ,
'sq_le' ,
'sq_log' ,
'sq_log10' ,
'sq_log2' ,
'sq_lt' ,
'sq_max' ,
'sq_min' ,
'sq_mod' ,
'sq_mul' ,
'sq_ne' ,
'sq_not' ,
'sq_not_bits' ,
'sq_odd' ,
'sq_or' ,
'sq_or_bits' ,
'sq_power' ,
'sq_rand' ,
'sq_remainder' ,
'sq_rmdr' ,
'sq_rnd' ,
'sq_round' ,
'sq_seq' ,
'sq_sign' ,
'sq_sin' ,
'sq_sqrt' ,
'sq_str' ,
'sq_sub' ,
'sq_tan' ,
'sq_trunc' ,
'sq_uminus' ,
'sq_xor' ,
'sq_xor_bits' ,
'sqrt' ,
'square_free' ,
'stack_empty' ,
'stack_size' ,
'substitute' ,
'substitute_all' ,
'sum' ,
'tail' ,
'tan' ,
'test_equal' ,
'test_fail' ,
'test_false' ,
'test_not_equal' ,
'test_pass' ,
'test_summary' ,
'test_true' ,
'text_color' ,
'throw' ,
'time' ,
'timedate_diff' ,
'timedelta' ,
'to_integer' ,
'to_number' ,
'to_rgb' ,
'to_string' ,
'traverse_dict' ,
'traverse_dict_partial_key' ,
'trim' ,
'trim_head' ,
'trim_tail' ,
'trunc' ,
'tagset' ,
'tagstart' ,
'typeof' ,
'unique' ,
'unix_dict' ,
'upper' ,
'utf8_to_utf32' ,
'utf32_to_utf8' ,
'version' ,
'vlookup' ,
'vslice' ,
'wglGetProcAddress' ,
'wildcard_file' ,
'wildcard_match' ,
'with_rho' ,
'with_theta' ,
'xml_new_doc' ,
'xml_new_element' ,
'xml_set_attribute' ,
'xml_sprint' ,
'xor_bits' ,
'xor_bitsu' ,
'accept' ,
'allocate' ,
'allocate_string' ,
'allow_break' ,
'ARM' ,
'atom_to_float80' ,
'c_func' ,
'c_proc' ,
'call_back' ,
'chdir' ,
'check_break' ,
'clearDib' ,
'close' ,
'closesocket' ,
'console' ,
'copy_file' ,
'create' ,
'create_directory' ,
'create_thread' ,
'curl_easy_cleanup' ,
'curl_easy_get_file' ,
'curl_easy_init' ,
'curl_easy_perform' ,
'curl_easy_perform_ex' ,
'curl_easy_setopt' ,
'curl_easy_strerror' ,
'curl_global_cleanup' ,
'curl_global_init' ,
'curl_slist_append' ,
'curl_slist_free_all' ,
'current_dir' ,
'cursor' ,
'define_c_func' ,
'define_c_proc' ,
'delete' ,
'delete_cs' ,
'delete_file' ,
'dir' ,
'DLL' ,
'drawDib' ,
'drawShadedPolygonToDib' ,
'ELF32' ,
'ELF64' ,
'enter_cs' ,
'eval' ,
'exit_thread' ,
'free' ,
'file_exists' ,
'final' ,
'float80_to_atom' ,
'format' ,
'get_bytes' ,
'get_file_date' ,
'get_file_size' ,
'get_file_type' ,
'get_interpreter' ,
'get_key' ,
'get_socket_error' ,
'get_text' ,
'get_thread_exitcode' ,
'get_thread_id' ,
'getc' ,
'getenv' ,
'gets' ,
'getsockaddr' ,
'glBegin' ,
'glCallList' ,
'glFrustum' ,
'glGenLists' ,
'glGetString' ,
'glLight' ,
'glMaterial' ,
'glNewList' ,
'glNormal' ,
'glPopMatrix' ,
'glPushMatrix' ,
'glRotate' ,
'glEnd' ,
'glEndList' ,
'glTexImage2D' ,
'goto' ,
'GUI' ,
'icons' ,
'ilASM' ,
'include_files' ,
'include_paths' ,
'init_cs' ,
'ip_to_string' ,
'IupConfig' ,
'IupConfigDialogClosed' ,
'IupConfigDialogShow' ,
'IupConfigGetVariableInt' ,
'IupConfigLoad' ,
'IupConfigSave' ,
'IupConfigSetVariableInt' ,
'IupExitLoop' ,
'IupFileDlg' ,
'IupFileList' ,
'IupGLSwapBuffers' ,
'IupHelp' ,
'IupLoopStep' ,
'IupMainLoop' ,
'IupNormalizer' ,
'IupPlot' ,
'IupPlotAdd' ,
'IupPlotBegin' ,
'IupPlotEnd' ,
'IupPlotInsert' ,
'IupSaveImage' ,
'IupTreeGetUserId' ,
'IupUser' ,
'IupVersion' ,
'IupVersionDate' ,
'IupVersionNumber' ,
'IupVersionShow' ,
'killDib' ,
'leave_cs' ,
'listen' ,
'manifest' ,
'mem_copy' ,
'mem_set' ,
'mpfr_gamma' ,
'mpfr_printf' ,
'mpfr_sprintf' ,
'mpz_export' ,
'mpz_import' ,
'namespace' ,
'new' ,
'newDib' ,
'open' ,
'open_dll' ,
'PE32' ,
'PE64' ,
'peek' ,
'peek_string' ,
'peek1s' ,
'peek1u' ,
'peek2s' ,
'peek2u' ,
'peek4s' ,
'peek4u' ,
'peek8s' ,
'peek8u' ,
'peekNS' ,
'peekns' ,
'peeknu' ,
'poke' ,
'poke2' ,
'poke4' ,
'poke8' ,
'pokeN' ,
'poke_string' ,
'poke_wstring' ,
'position' ,
'progress' ,
'prompt_number' ,
'prompt_string' ,
'read_file' ,
'read_lines' ,
'recv' ,
'resume_thread' ,
'seek' ,
'select' ,
'send' ,
'setHandler' ,
'shutdown' ,
'sleep' ,
'SO' ,
'sockaddr_in' ,
'socket' ,
'split_path' ,
'suspend_thread' ,
'system' ,
'system_exec' ,
'system_open' ,
'system_wait' ,
'task_clock_start' ,
'task_clock_stop' ,
'task_create' ,
'task_delay' ,
'task_list' ,
'task_schedule' ,
'task_self' ,
'task_status' ,
'task_suspend' ,
'task_yield' ,
'thread_safe_string' ,
'try_cs' ,
'utf8_to_utf16' ,
'utf16_to_utf8' ,
'utf16_to_utf32' ,
'utf32_to_utf16' ,
'video_config' ,
'WSACleanup' ,
'wait_thread' ,
'walk_dir' ,
'where' ,
'write_lines' ,
'wait_key'
)
constants = (
'ANY_QUEUE' ,
'ASCENDING' ,
'BLACK' ,
'BLOCK_CURSOR' ,
'BLUE' ,
'BRIGHT_CYAN' ,
'BRIGHT_BLUE' ,
'BRIGHT_GREEN' ,
'BRIGHT_MAGENTA' ,
'BRIGHT_RED' ,
'BRIGHT_WHITE' ,
'BROWN' ,
'C_DWORD' ,
'C_INT' ,
'C_POINTER' ,
'C_USHORT' ,
'C_WORD' ,
'CD_AMBER' ,
'CD_BLACK' ,
'CD_BLUE' ,
'CD_BOLD' ,
'CD_BOLD_ITALIC' ,
'CD_BOX' ,
'CD_CENTER' ,
'CD_CIRCLE' ,
'CD_CLOSED_LINES' ,
'CD_CONTINUOUS' ,
'CD_CUSTOM' ,
'CD_CYAN' ,
'CD_DARK_BLUE' ,
'CD_DARK_CYAN' ,
'CD_DARK_GRAY' ,
'CD_DARK_GREY' ,
'CD_DARK_GREEN' ,
'CD_DARK_MAGENTA' ,
'CD_DARK_RED' ,
'CD_DARK_YELLOW' ,
'CD_DASH_DOT' ,
'CD_DASH_DOT_DOT' ,
'CD_DASHED' ,
'CD_DBUFFER' ,
'CD_DEG2RAD' ,
'CD_DIAMOND' ,
'CD_DOTTED' ,
'CD_EAST' ,
'CD_EVENODD' ,
'CD_FILL' ,
'CD_GL' ,
'CD_GRAY' ,
'CD_GREY' ,
'CD_GREEN' ,
'CD_HATCH' ,
'CD_HOLLOW' ,
'CD_HOLLOW_BOX' ,
'CD_HOLLOW_CIRCLE' ,
'CD_HOLLOW_DIAMOND' ,
'CD_INDIGO' ,
'CD_ITALIC' ,
'CD_IUP' ,
'CD_IUPDBUFFER' ,
'CD_LIGHT_BLUE' ,
'CD_LIGHT_GRAY' ,
'CD_LIGHT_GREY' ,
'CD_LIGHT_GREEN' ,
'CD_LIGHT_PARCHMENT' ,
'CD_MAGENTA' ,
'CD_NAVY' ,
'CD_NORTH' ,
'CD_NORTH_EAST' ,
'CD_NORTH_WEST' ,
'CD_OLIVE' ,
'CD_OPEN_LINES' ,
'CD_ORANGE' ,
'CD_PARCHMENT' ,
'CD_PATTERN' ,
'CD_PRINTER' ,
'CD_PURPLE' ,
'CD_PLAIN' ,
'CD_PLUS' ,
'CD_QUERY' ,
'CD_RAD2DEG' ,
'CD_RED' ,
'CD_SILVER' ,
'CD_SOLID' ,
'CD_SOUTH_EAST' ,
'CD_SOUTH_WEST' ,
'CD_STAR' ,
'CD_STIPPLE' ,
'CD_STRIKEOUT' ,
'CD_UNDERLINE' ,
'CD_WEST' ,
'CD_WHITE' ,
'CD_WINDING' ,
'CD_VIOLET' ,
'CD_X' ,
'CD_YELLOW' ,
'CURLE_OK' ,
'CURLOPT_MAIL_FROM' ,
'CURLOPT_MAIL_RCPT' ,
'CURLOPT_PASSWORD' ,
'CURLOPT_READDATA' ,
'CURLOPT_READFUNCTION' ,
'CURLOPT_SSL_VERIFYPEER' ,
'CURLOPT_SSL_VERIFYHOST' ,
'CURLOPT_UPLOAD' ,
'CURLOPT_URL' ,
'CURLOPT_USE_SSL' ,
'CURLOPT_USERNAME' ,
'CURLOPT_VERBOSE' ,
'CURLOPT_WRITEFUNCTION' ,
'CURLUSESSL_ALL' ,
'CYAN' ,
'D_NAME' ,
'D_ATTRIBUTES' ,
'D_SIZE' ,
'D_YEAR' ,
'D_MONTH' ,
'D_DAY' ,
'D_HOUR' ,
'D_MINUTE' ,
'D_SECOND' ,
'D_CREATION' ,
'D_LASTACCESS' ,
'D_MODIFICATION' ,
'DT_YEAR' ,
'DT_MONTH' ,
'DT_DAY' ,
'DT_HOUR' ,
'DT_MINUTE' ,
'DT_SECOND' ,
'DT_DOW' ,
'DT_MSEC' ,
'DT_DOY' ,
'DT_GMT' ,
'EULER' ,
'E_CODE' ,
'E_ADDR' ,
'E_LINE' ,
'E_RTN' ,
'E_NAME' ,
'E_FILE' ,
'E_PATH' ,
'E_USER' ,
'false' ,
'False' ,
'FALSE' ,
'FIFO_QUEUE' ,
'FILETYPE_DIRECTORY' ,
'FILETYPE_FILE' ,
'GET_EOF' ,
'GET_FAIL' ,
'GET_IGNORE' ,
'GET_SUCCESS' ,
'GL_AMBIENT_AND_DIFFUSE' ,
'GL_ARRAY_BUFFER' ,
'GL_CLAMP' ,
'GL_CLAMP_TO_BORDER' ,
'GL_CLAMP_TO_EDGE' ,
'GL_COLOR_BUFFER_BIT' ,
'GL_COMPILE' ,
'GL_COMPILE_STATUS' ,
'GL_CULL_FACE' ,
'GL_DEPTH_BUFFER_BIT' ,
'GL_DEPTH_TEST' ,
'GL_EXTENSIONS' ,
'GL_FLAT' ,
'GL_FLOAT' ,
'GL_FRAGMENT_SHADER' ,
'GL_FRONT' ,
'GL_LIGHT0' ,
'GL_LIGHTING' ,
'GL_LINEAR' ,
'GL_LINK_STATUS' ,
'GL_MODELVIEW' ,
'GL_NEAREST' ,
'GL_NO_ERROR' ,
'GL_NORMALIZE' ,
'GL_POSITION' ,
'GL_PROJECTION' ,
'GL_QUAD_STRIP' ,
'GL_QUADS' ,
'GL_RENDERER' ,
'GL_REPEAT' ,
'GL_RGB' ,
'GL_RGBA' ,
'GL_SMOOTH' ,
'GL_STATIC_DRAW' ,
'GL_TEXTURE_2D' ,
'GL_TEXTURE_MAG_FILTER' ,
'GL_TEXTURE_MIN_FILTER' ,
'GL_TEXTURE_WRAP_S' ,
'GL_TEXTURE_WRAP_T' ,
'GL_TRIANGLES' ,
'GL_UNSIGNED_BYTE' ,
'GL_VENDOR' ,
'GL_VERSION' ,
'GL_VERTEX_SHADER' ,
'GRAY' ,
'GREEN' ,
'GT_LF_STRIPPED' ,
'GT_WHOLE_FILE' ,
'INVLN10' ,
'IUP_CLOSE' ,
'IUP_CONTINUE' ,
'IUP_DEFAULT' ,
'IUP_BLACK' ,
'IUP_BLUE' ,
'IUP_BUTTON1' ,
'IUP_BUTTON3' ,
'IUP_CENTER' ,
'IUP_CYAN' ,
'IUP_DARK_BLUE' ,
'IUP_DARK_CYAN' ,
'IUP_DARK_GRAY' ,
'IUP_DARK_GREY' ,
'IUP_DARK_GREEN' ,
'IUP_DARK_MAGENTA' ,
'IUP_DARK_RED' ,
'IUP_GRAY' ,
'IUP_GREY' ,
'IUP_GREEN' ,
'IUP_IGNORE' ,
'IUP_INDIGO' ,
'IUP_MAGENTA' ,
'IUP_MASK_INT' ,
'IUP_MASK_UINT' ,
'IUP_MOUSEPOS' ,
'IUP_NAVY' ,
'IUP_OLIVE' ,
'IUP_RECTEXT' ,
'IUP_RED' ,
'IUP_LIGHT_BLUE' ,
'IUP_LIGHT_GRAY' ,
'IUP_LIGHT_GREY' ,
'IUP_LIGHT_GREEN' ,
'IUP_ORANGE' ,
'IUP_PARCHMENT' ,
'IUP_PURPLE' ,
'IUP_SILVER' ,
'IUP_TEAL' ,
'IUP_VIOLET' ,
'IUP_WHITE' ,
'IUP_YELLOW' ,
'K_BS' ,
'K_cA' ,
'K_cC' ,
'K_cD' ,
'K_cF5' ,
'K_cK' ,
'K_cM' ,
'K_cN' ,
'K_cO' ,
'K_cP' ,
'K_cR' ,
'K_cS' ,
'K_cT' ,
'K_cW' ,
'K_CR' ,
'K_DEL' ,
'K_DOWN' ,
'K_END' ,
'K_ESC' ,
'K_F1' ,
'K_F2' ,
'K_F3' ,
'K_F4' ,
'K_F5' ,
'K_F6' ,
'K_F7' ,
'K_F8' ,
'K_F9' ,
'K_F10' ,
'K_F11' ,
'K_F12' ,
'K_HOME' ,
'K_INS' ,
'K_LEFT' ,
'K_MIDDLE' ,
'K_PGDN' ,
'K_PGUP' ,
'K_RIGHT' ,
'K_SP' ,
'K_TAB' ,
'K_UP' ,
'K_h' ,
'K_i' ,
'K_j' ,
'K_p' ,
'K_r' ,
'K_s' ,
'JS' ,
'LIFO_QUEUE' ,
'LINUX' ,
'MAX_HEAP' ,
'MAGENTA' ,
'MIN_HEAP' ,
'Nan' ,
'NO_CURSOR' ,
'null' ,
'NULL' ,
'PI' ,
'pp_Ascii' ,
'pp_Brkt' ,
'pp_Date' ,
'pp_File' ,
'pp_FltFmt' ,
'pp_Indent' ,
'pp_IntCh' ,
'pp_IntFmt' ,
'pp_Maxlen' ,
'pp_Nest' ,
'pp_Pause' ,
'pp_Q22' ,
'pp_StrFmt' ,
'RED' ,
'SEEK_OK' ,
'SLASH' ,
'TEST_ABORT' ,
'TEST_CRASH' ,
'TEST_PAUSE' ,
'TEST_PAUSE_FAIL' ,
'TEST_QUIET' ,
'TEST_SHOW_ALL' ,
'TEST_SHOW_FAILED' ,
'TEST_SUMMARY' ,
'true' ,
'True' ,
'TRUE' ,
'VC_SCRNLINES' ,
'WHITE' ,
'WINDOWS' ,
'YELLOW'
)
tokens = {
'root' : [
(r
"\s+" , Whitespace),
(r
'/\*|--/\*|#\[', Comment.Multiline, 'comment'),
(r
'(?://|--|#!).*$', Comment.Single),
#Alt:
# (r'//.*$|--.*$|#!.*$', Comment.Single),
(r
'"([^"\\]|\\.)*"' , String.Other),
(r
'\' [^\
']*\' ', String.Other),
(r
'`[^`]*`' , String.Other),
(words(types, prefix=r
'\b' , suffix=r
'\b' ), Name.Function),
(words(routines, prefix=r
'\b' , suffix=r
'\b' ), Name.Function),
(words(preproc, prefix=r
'\b' , suffix=r
'\b' ), Keyword.Declaration),
(words(keywords, prefix=r
'\b' , suffix=r
'\b' ), Keyword.Declaration),
(words(constants, prefix=r
'\b' , suffix=r
'\b' ), Name.Constant),
# Aside: Phix only supports/uses the ascii/non-unicode tilde
(r
'!=|==|<<|>>|:=|[-~+/*%=<>&^|\.(){},?:\[\]$\\;#]', Operator),
(r
'[\w-]+' , Text)
],
'comment' : [
(r
'[^*/#]+', Comment.Multiline),
(r
'/\*|#\[', Comment.Multiline, '#push'),
(r
'\*/|#\]', Comment.Multiline, '#pop'),
(r
'[*/#]', Comment.Multiline)
]
}
Messung V0.5 C=88 H=82 G=84
¤ Dauer der Verarbeitung: 0.5 Sekunden
¤
*© Formatika GbR, Deutschland