diff --git a/runtime/syntax/Dockerfile.micro b/runtime/syntax/Dockerfile.micro index 7d52242e..de534cac 100644 --- a/runtime/syntax/Dockerfile.micro +++ b/runtime/syntax/Dockerfile.micro @@ -2,7 +2,7 @@ syntax "Dockerfile" "Dockerfile[^/]*$" "\.dockerfile$" ## Keywords -color red (i) "^(FROM|MAINTAINER|RUN|CMD|LABEL|EXPOSE|ENV|ADD|COPY|ENTRYPOINT|VOLUME|USER|WORKDIR|ONBUILD)[[:space:]]" +red (i) "^(FROM|MAINTAINER|RUN|CMD|LABEL|EXPOSE|ENV|ADD|COPY|ENTRYPOINT|VOLUME|USER|WORKDIR|ONBUILD)[[:space:]]" ## Brackets & parenthesis color brightgreen "(\(|\)|\[|\])" @@ -11,7 +11,7 @@ color brightgreen "(\(|\)|\[|\])" color brightmagenta "&&" ## Comments -color cyan (i) "^[[:space:]]*#.*$" +cyan (i) "^[[:space:]]*#.*$" ## Blank space at EOL color ,green "[[:space:]]+$" diff --git a/runtime/syntax/arduino.micro b/runtime/syntax/arduino.micro index ada231a2..661790ac 100644 --- a/runtime/syntax/arduino.micro +++ b/runtime/syntax/arduino.micro @@ -29,88 +29,88 @@ syntax "INO" "\.?ino$" ## -color brightred "\b[A-Z_][0-9A-Z_]+\b" +color brightred "\<[A-Z_][0-9A-Z_]+\>" ## -color green "\b((s?size)|((u_?)?int(8|16|32|64|ptr)))_t\b" +color green "\<((s?size)|((u_?)?int(8|16|32|64|ptr)))_t\>" ## Constants -color green (i) "\b(HIGH|LOW|INPUT|OUTPUT)\b" +green (i) "\<(HIGH|LOW|INPUT|OUTPUT)\>" ## Serial Print -color red (i) "\b(DEC|BIN|HEX|OCT|BYTE)\b" +red (i) "\<(DEC|BIN|HEX|OCT|BYTE)\>" ## PI Constants -color green (i) "\b(PI|HALF_PI|TWO_PI)\b" +green (i) "\<(PI|HALF_PI|TWO_PI)\>" ## ShiftOut -color green (i) "\b(LSBFIRST|MSBFIRST)\b" +green (i) "\<(LSBFIRST|MSBFIRST)\>" ## Attach Interrupt -color green (i) "\b(CHANGE|FALLING|RISING)\b" +green (i) "\<(CHANGE|FALLING|RISING)\>" ## Analog Reference -color green (i) "\b(DEFAULT|EXTERNAL|INTERNAL|INTERNAL1V1|INTERNAL2V56)\b" +green (i) "\<(DEFAULT|EXTERNAL|INTERNAL|INTERNAL1V1|INTERNAL2V56)\>" ## === FUNCTIONS === ## ## Data Types -color green "\b(boolean|byte|char|float|int|long|word)\b" +color green "\<(boolean|byte|char|float|int|long|word)\>" ## Control Structions -color brightyellow "\b(case|class|default|do|double|else|false|for|if|new|null|private|protected|public|short|signed|static|String|switch|this|throw|try|true|unsigned|void|while)\b" -color magenta "\b(goto|continue|break|return)\b" +color brightyellow "\<(case|class|default|do|double|else|false|for|if|new|null|private|protected|public|short|signed|static|String|switch|this|throw|try|true|unsigned|void|while)\>" +color magenta "\<(goto|continue|break|return)\>" ## Math -color brightyellow "\b(abs|acos|asin|atan|atan2|ceil|constrain|cos|degrees|exp|floor|log|map|max|min|radians|random|randomSeed|round|sin|sq|sqrt|tan)\b" +color brightyellow "\<(abs|acos|asin|atan|atan2|ceil|constrain|cos|degrees|exp|floor|log|map|max|min|radians|random|randomSeed|round|sin|sq|sqrt|tan)\>" ## Bits & Bytes -color brightyellow "\b(bitRead|bitWrite|bitSet|bitClear|bit|highByte|lowByte)\b" +color brightyellow "\<(bitRead|bitWrite|bitSet|bitClear|bit|highByte|lowByte)\>" ## Analog I/O -color brightyellow "\b(analogReference|analogRead|analogWrite)\b" +color brightyellow "\<(analogReference|analogRead|analogWrite)\>" ## External Interrupts -color brightyellow "\b(attachInterrupt|detachInterrupt)\b" +color brightyellow "\<(attachInterrupt|detachInterrupt)\>" ## Time -color brightyellow "\b(delay|delayMicroseconds|millis|micros)\b" +color brightyellow "\<(delay|delayMicroseconds|millis|micros)\>" ## Digital I/O -color brightyellow "\b(pinMode|digitalWrite|digitalRead)\b" +color brightyellow "\<(pinMode|digitalWrite|digitalRead)\>" ## Interrupts -color brightyellow "\b(interrupts|noInterrupts)\b" +color brightyellow "\<(interrupts|noInterrupts)\>" ## Advanced I/O -color brightyellow "\b(noTone|pulseIn|shiftIn|shiftOut|tone)\b" +color brightyellow "\<(noTone|pulseIn|shiftIn|shiftOut|tone)\>" ## Serial -color magenta "\b(Serial|Serial1|Serial2|Serial3|begin|end|peek|read|print|println|available|flush)\b" +color magenta "\<(Serial|Serial1|Serial2|Serial3|begin|end|peek|read|print|println|available|flush)\>" ## Structure -color brightyellow "\b(setup|loop)\b" +color brightyellow "\<(setup|loop)\>" ## color brightcyan "^[[:space:]]*#[[:space:]]*(define|include(_next)?|(un|ifn?)def|endif|el(if|se)|if|warning|error|pragma)" ## -color brightmagenta "'([^'\\]|(\\["'abfnrtv\\]))'" "'\\(([0-3]?[0-7]{1,2}))'" "'\\x[0-9A-Fa-f]{1,2}'" +color brightmagenta "'([^']|(\\["'abfnrtv\\]))'" "'\\(([0-3]?[0-7]{1,2}))'" "'\\x[0-9A-Fa-f]{1,2}'" ## GCC builtins color cyan "__attribute__[[:space:]]*\(\([^)]*\)\)" "__(aligned|asm|builtin|hidden|inline|packed|restrict|section|typeof|weak)__" -## String highlighting. You will in general want your brightblacks and +## String highlighting. You will in general want your comments and ## strings to come last, because syntax highlighting rules will be ## applied in the order they are read in. color brightyellow "<[^= ]*>" ""(\\.|[^"])*"" ## This string is VERY resource intensive! -color brightyellow (s) ""(\\.|[^"])*\\[[:space:]]*$.*?^(\\.|[^"])*"" +color brightyellow start=""(\\.|[^"])*\\[[:space:]]*$" end="^(\\.|[^"])*"" ## Comments color brightblue "//.*" -color brightblue (s) "/\*.*?\*/" +color brightblue start="/\*" end="\*/" ## Trailing whitespace color ,green "[[:space:]]+$" diff --git a/runtime/syntax/asm.micro b/runtime/syntax/asm.micro index 0505d3bb..75fe98a1 100644 --- a/runtime/syntax/asm.micro +++ b/runtime/syntax/asm.micro @@ -1,18 +1,17 @@ ## Here is an example for assembler. ## syntax "ASM" "\.(S|s|asm)$" -color red "\b[A-Z_]{2,}\b" +color red "\<[A-Z_]{2,}\>" color brightgreen "\.(data|subsection|text)" color green "\.(align|file|globl|global|hidden|section|size|type|weak)" color brightyellow "\.(ascii|asciz|byte|double|float|hword|int|long|short|single|struct|word)" -color brightred (i) "^[[:space:]]*[.0-9A-Z_]*:" +brightred (i) "^[[:space:]]*[.0-9A-Z_]*:" color brightcyan "^[[:space:]]*#[[:space:]]*(define|undef|include|ifn?def|endif|elif|else|if|warning|error)" ## Highlight strings (note: VERY resource intensive) color brightyellow "<[^= ]*>" ""(\\.|[^"])*"" -color brightyellow (s) ""(\\.|[^"])*\\[[:space:]]*$.*?^(\\.|[^"])*"" -## Highlight brightblacks +color brightyellow start=""(\\.|[^"])*\\[[:space:]]*$" end="^(\\.|[^"])*"" +## Highlight comments color brightblue "//.*" -color brightblue (s) "/\*.*?\*/" +color brightblue start="/\*" end="\*/" ## Highlight trailing whitespace color ,green "[[:space:]]+$" - diff --git a/runtime/syntax/awk.micro b/runtime/syntax/awk.micro index 0ab4cf96..122ba101 100644 --- a/runtime/syntax/awk.micro +++ b/runtime/syntax/awk.micro @@ -2,20 +2,20 @@ syntax "AWK" "\.awk$" header "^#!.*bin/(env +)?awk( |$)" color brightyellow "\$[A-Za-z0-9_!@#$*?-]+" -color brightyellow "\b(ARGC|ARGIND|ARGV|BINMODE|CONVFMT|ENVIRON|ERRNO|FIELDWIDTHS)\b" -color brightyellow "\b(FILENAME|FNR|FS|IGNORECASE|LINT|NF|NR|OFMT|OFS|ORS)\b" -color brightyellow "\b(PROCINFO|RS|RT|RSTART|RLENGTH|SUBSEP|TEXTDOMAIN)\b" -color brightblue "\b(function|extension|BEGIN|END)\b" +color brightyellow "\<(ARGC|ARGIND|ARGV|BINMODE|CONVFMT|ENVIRON|ERRNO|FIELDWIDTHS)\>" +color brightyellow "\<(FILENAME|FNR|FS|IGNORECASE|LINT|NF|NR|OFMT|OFS|ORS)\>" +color brightyellow "\<(PROCINFO|RS|RT|RSTART|RLENGTH|SUBSEP|TEXTDOMAIN)\>" +color brightblue "\<(function|extension|BEGIN|END)\>" color red "[-+*/%^|!=&<>?;:]|\\|\[|\]" -color cyan "\b(for|if|while|do|else|in|delete|exit)\b" -color cyan "\b(break|continue|return)\b" -color brightblue "\b(close|getline|next|nextfile|print|printf|system|fflush)\b" -color brightblue "\b(atan2|cos|exp|int|log|rand|sin|sqrt|srand)\b" -color brightblue "\b(asort|asorti|gensub|gsub|index|length|match)\b" -color brightblue "\b(split|sprintf|strtonum|sub|substr|tolower|toupper)\b" -color brightblue "\b(mktime|strftime|systime)\b" -color brightblue "\b(and|compl|lshift|or|rshift|xor)\b" -color brightblue "\b(bindtextdomain|dcgettext|dcngettext)\b" +color cyan "\<(for|if|while|do|else|in|delete|exit)\>" +color cyan "\<(break|continue|return)\>" +color brightblue "\<(close|getline|next|nextfile|print|printf|system|fflush)\>" +color brightblue "\<(atan2|cos|exp|int|log|rand|sin|sqrt|srand)\>" +color brightblue "\<(asort|asorti|gensub|gsub|index|length|match)\>" +color brightblue "\<(split|sprintf|strtonum|sub|substr|tolower|toupper)\>" +color brightblue "\<(mktime|strftime|systime)\>" +color brightblue "\<(and|compl|lshift|or|rshift|xor)\>" +color brightblue "\<(bindtextdomain|dcgettext|dcngettext)\>" color magenta "/.*[^\\]/" color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" color magenta "\\." diff --git a/runtime/syntax/c.micro b/runtime/syntax/c.micro index 54a41737..629ce5a3 100644 --- a/runtime/syntax/c.micro +++ b/runtime/syntax/c.micro @@ -29,11 +29,11 @@ color statement "[.:;,+*|=!\%]" "<" ">" "/" "-" "&" color constant ""(\\.|[^"])*"" ## ## This string is VERY resource intensive! -#color cyan (s) ""(\\.|[^"])*\\[[:space:]]*$.*?^(\\.|[^"])*"" +#color cyan start=""(\\.|[^"])*\\[[:space:]]*$" end="^(\\.|[^"])*"" ## Comment highlighting color comment "//.*" -color comment (s) "/\*.*?\*/" +color comment start="/\*" end="\*/" ## Trailing whitespace #color ,green "[[:space:]]+$" diff --git a/runtime/syntax/cmake.micro b/runtime/syntax/cmake.micro index e3675953..09a74bfc 100644 --- a/runtime/syntax/cmake.micro +++ b/runtime/syntax/cmake.micro @@ -2,23 +2,22 @@ ## syntax "CMake" "(CMakeLists\.txt|\.cmake)$" -color green (i) "^[[:space:]]*[A-Z0-9_]+" -color brightyellow (i) "^[[:space:]]*(include|include_directories|include_external_msproject)\b" +green (i) "^[[:space:]]*[A-Z0-9_]+" +brightyellow (i) "^[[:space:]]*(include|include_directories|include_external_msproject)\>" -color brightgreen (i) "^[[:space:]]*\b((else|end)?if|else|(end)?while|(end)?foreach|break)\b" -color brightgreen "\b(COPY|NOT|COMMAND|PROPERTY|POLICY|TARGET|EXISTS|IS_(DIRECTORY|ABSOLUTE)|DEFINED)\b[[:space:]]" -color brightgreen "[[:space:]]\b(OR|AND|IS_NEWER_THAN|MATCHES|(STR|VERSION_)?(LESS|GREATER|EQUAL))\b[[:space:]]" +brightgreen (i) "^[[:space:]]*\<((else|end)?if|else|(end)?while|(end)?foreach|break)\>" +color brightgreen "\<(COPY|NOT|COMMAND|PROPERTY|POLICY|TARGET|EXISTS|IS_(DIRECTORY|ABSOLUTE)|DEFINED)\>[[:space:]]" +color brightgreen "[[:space:]]\<(OR|AND|IS_NEWER_THAN|MATCHES|(STR|VERSION_)?(LESS|GREATER|EQUAL))\>[[:space:]]" -color brightred (i) "^[[:space:]]*\b((end)?(function|macro)|return)" +brightred (i) "^[[:space:]]*\<((end)?(function|macro)|return)" #String Color color cyan "['][^']*[^\\][']" "[']{3}.*[^\\][']{3}" color cyan "["][^"]*[^\\]["]" "["]{3}.*[^\\]["]{3}" -brightred (is) "\$(\{|ENV\{).*?\}" -color magenta "\b(APPLE|UNIX|WIN32|CYGWIN|BORLAND|MINGW|MSVC(_IDE|60|71|80|90)?)\b" - -color brightblue (i) "^([[:space:]]*)?#.*" -color brightblue (i) "[[:space:]]#.*" +brightred (i) start="\$(\{|ENV\{)" end="\}" +color magenta "\<(APPLE|UNIX|WIN32|CYGWIN|BORLAND|MINGW|MSVC(_IDE|60|71|80|90)?)\>" +brightblue (i) "^([[:space:]]*)?#.*" +brightblue (i) "[[:space:]]#.*" diff --git a/runtime/syntax/coffeescript.micro b/runtime/syntax/coffeescript.micro index 5322e1e1..cf0cc2bc 100644 --- a/runtime/syntax/coffeescript.micro +++ b/runtime/syntax/coffeescript.micro @@ -1,14 +1,14 @@ syntax "CoffeeScript" "\.coffee$" header "^#!.*/(env +)?coffee" -color red "[!&|=/*+-<>]|\b(and|or|is|isnt|not)\b" +color red "[!&|=/*+-<>]|\<(and|or|is|isnt|not)\>" color brightblue "[A-Za-z_][A-Za-z0-9_]*:[[:space:]]*(->|\()" "->" color brightblue "[()]" -color cyan "\b(for|of|continue|break|isnt|null|unless|this|else|if|return)\b" -color cyan "\b(try|catch|finally|throw|new|delete|typeof|in|instanceof)\b" -color cyan "\b(debugger|switch|while|do|class|extends|super)\b" -color cyan "\b(undefined|then|unless|until|loop|of|by|when)\b" -color brightcyan "\b(true|false|yes|no|on|off)\b" +color cyan "\<(for|of|continue|break|isnt|null|unless|this|else|if|return)\>" +color cyan "\<(try|catch|finally|throw|new|delete|typeof|in|instanceof)\>" +color cyan "\<(debugger|switch|while|do|class|extends|super)\>" +color cyan "\<(undefined|then|unless|until|loop|of|by|when)\>" +color brightcyan "\<(true|false|yes|no|on|off)\>" color brightyellow "@[A-Za-z0-9_]*" color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" color brightblack "(^|[[:space:]])#([^{].*)?$" diff --git a/runtime/syntax/colortest.micro b/runtime/syntax/colortest.micro index 978b4643..f2b44f29 100644 --- a/runtime/syntax/colortest.micro +++ b/runtime/syntax/colortest.micro @@ -1,17 +1,17 @@ syntax "colorTest" "ColorTest$" -color black "\bPLAIN\b" +color black "\" -color red "\bred\b" -color green "\bgreen\b" -color yellow "\byellow\b" -color blue "\bblue\b" -color magenta "\bmagenta\b" -color cyan "\bcyan\b" +color red "\" +color green "\" +color yellow "\" +color blue "\" +color magenta "\" +color cyan "\" -color brightred "\bbrightred\b" -color brightgreen "\bbrightgreen\b" -color brightyellow "\bbrightyellow\b" -color brightblue "\bbrightblue\b" -color brightmagenta "\bbrightmagenta\b" -color brightcyan "\bbrightcyan\b" +color brightred "\" +color brightgreen "\" +color brightyellow "\" +color brightblue "\" +color brightmagenta "\" +color brightcyan "\" diff --git a/runtime/syntax/conf.micro b/runtime/syntax/conf.micro index 8b8515bb..9d4487db 100644 --- a/runtime/syntax/conf.micro +++ b/runtime/syntax/conf.micro @@ -3,9 +3,8 @@ syntax "Conf" "\.c[o]?nf$" ## Possible errors and parameters ## Strings -color white (i) ""(\\.|[^"])*"" +white (i) ""(\\.|[^"])*"" ## Comments -color brightblue (i) "^[[:space:]]*#.*$" -color cyan (i) "^[[:space:]]*##.*$" - +brightblue (i) "^[[:space:]]*#.*$" +cyan (i) "^[[:space:]]*##.*$" diff --git a/runtime/syntax/conky.micro b/runtime/syntax/conky.micro index 94959ab5..518938db 100644 --- a/runtime/syntax/conky.micro +++ b/runtime/syntax/conky.micro @@ -5,13 +5,13 @@ syntax "Conky" "(\.*conkyrc.*$|conky.conf)" ## Configuration items -color green "\b(alignment|append_file|background|border_inner_margin|border_outer_margin|border_width|color0|color1|color2|color3|color4|color5|color6|color7|color8|color9|colorN|cpu_avg_samples|default_bar_height|default_bar_width|default_color|default_gauge_height|default_gauge_width|default_graph_height|default_graph_width|default_outline_color|default_shade_color|diskio_avg_samples|display|double_buffer|draw_borders|draw_graph_borders|draw_outline|draw_shades|extra_newline|font|format_human_readable|gap_x|gap_y|http_refresh|if_up_strictness|imap|imlib_cache_flush_interval|imlib_cache_size|lua_draw_hook_post|lua_draw_hook_pre|lua_load|lua_shutdown_hook|lua_startup_hook|mail_spool|max_port_monitor_connections|max_text_width|max_user_text|maximum_width|minimum_height|minimum_width|mpd_host|mpd_password|mpd_port|music_player_interval|mysql_host|mysql_port|mysql_user|mysql_password|mysql_db|net_avg_samples|no_buffers|nvidia_display|out_to_console|out_to_http|out_to_ncurses|out_to_stderr|out_to_x|override_utf8_locale|overwrite_file|own_window|own_window_class|own_window_colour|own_window_hints|own_window_title|own_window_transparent|own_window_type|pad_percents|pop3|sensor_device|short_units|show_graph_range|show_graph_scale|stippled_borders|temperature_unit|template|template0|template1|template2|template3|template4|template5|template6|template7|template8|template9|text|text_buffer_size|times_in_seconds|top_cpu_separate|top_name_width|total_run_times|update_interval|update_interval_on_battery|uppercase|use_spacer|use_xft|xftalpha|xftfont)\b" +color green "\<(alignment|append_file|background|border_inner_margin|border_outer_margin|border_width|color0|color1|color2|color3|color4|color5|color6|color7|color8|color9|colorN|cpu_avg_samples|default_bar_height|default_bar_width|default_color|default_gauge_height|default_gauge_width|default_graph_height|default_graph_width|default_outline_color|default_shade_color|diskio_avg_samples|display|double_buffer|draw_borders|draw_graph_borders|draw_outline|draw_shades|extra_newline|font|format_human_readable|gap_x|gap_y|http_refresh|if_up_strictness|imap|imlib_cache_flush_interval|imlib_cache_size|lua_draw_hook_post|lua_draw_hook_pre|lua_load|lua_shutdown_hook|lua_startup_hook|mail_spool|max_port_monitor_connections|max_text_width|max_user_text|maximum_width|minimum_height|minimum_width|mpd_host|mpd_password|mpd_port|music_player_interval|mysql_host|mysql_port|mysql_user|mysql_password|mysql_db|net_avg_samples|no_buffers|nvidia_display|out_to_console|out_to_http|out_to_ncurses|out_to_stderr|out_to_x|override_utf8_locale|overwrite_file|own_window|own_window_class|own_window_colour|own_window_hints|own_window_title|own_window_transparent|own_window_type|pad_percents|pop3|sensor_device|short_units|show_graph_range|show_graph_scale|stippled_borders|temperature_unit|template|template0|template1|template2|template3|template4|template5|template6|template7|template8|template9|text|text_buffer_size|times_in_seconds|top_cpu_separate|top_name_width|total_run_times|update_interval|update_interval_on_battery|uppercase|use_spacer|use_xft|xftalpha|xftfont)\>" ## Configuration item constants -color yellow "\b(above|below|bottom_left|bottom_right|bottom_middle|desktop|dock|no|none|normal|override|skip_pager|skip_taskbar|sticky|top_left|top_right|top_middle|middle_left|middle_right|middle_middle|undecorated|yes)\b" +color yellow "\<(above|below|bottom_left|bottom_right|bottom_middle|desktop|dock|no|none|normal|override|skip_pager|skip_taskbar|sticky|top_left|top_right|top_middle|middle_left|middle_right|middle_middle|undecorated|yes)\>" ## Variables -color brightblue "\b(acpiacadapter|acpifan|acpitemp|addr|addrs|alignc|alignr|apcupsd|apcupsd_cable|apcupsd_charge|apcupsd_lastxfer|apcupsd_linev|apcupsd_load|apcupsd_loadbar|apcupsd_loadgauge|apcupsd_loadgraph|apcupsd_model|apcupsd_name|apcupsd_status|apcupsd_temp|apcupsd_timeleft|apcupsd_upsmode|apm_adapter|apm_battery_life|apm_battery_time|audacious_bar|audacious_bitrate|audacious_channels|audacious_filename|audacious_frequency|audacious_length|audacious_length_seconds|audacious_main_volume|audacious_playlist_length|audacious_playlist_position|audacious_position|audacious_position_seconds|audacious_status|audacious_title|battery|battery_bar|battery_percent|battery_short|battery_time|blink|bmpx_album|bmpx_artist|bmpx_bitrate|bmpx_title|bmpx_track|bmpx_uri|buffers|cached|cmdline_to_pid|color|color0|color1|color2|color3|color4|color5|color6|color7|color8|color9|combine|conky_build_arch|conky_build_date|conky_version|cpu|cpubar|cpugauge|cpugraph|curl|desktop|desktop_name|desktop_number|disk_protect|diskio|diskio_read|diskio_write|diskiograph|diskiograph_read|diskiograph_write|distribution|downspeed|downspeedf|downspeedgraph|draft_mails|else|endif|entropy_avail|entropy_bar|entropy_perc|entropy_poolsize|eval|eve|exec|execbar|execgauge|execgraph|execi|execibar|execigauge|execigraph|execp|execpi|flagged_mails|font|format_time|forwarded_mails|freq|freq_g|fs_bar|fs_bar_free|fs_free|fs_free_perc|fs_size|fs_type|fs_used|fs_used_perc|goto|gw_iface|gw_ip|hddtemp|head|hr|hwmon|i2c|i8k_ac_status|i8k_bios|i8k_buttons_status|i8k_cpu_temp|i8k_left_fan_rpm|i8k_left_fan_status|i8k_right_fan_rpm|i8k_right_fan_status|i8k_serial|i8k_version|ibm_brightness|ibm_fan|ibm_temps|ibm_volume|ical|iconv_start|iconv_stop|if_empty|if_existing|if_gw|if_match|if_mixer_mute|if_mounted|if_mpd_playing|if_running|if_smapi_bat_installed|if_up|if_updatenr|if_xmms2_connected|image|imap_messages|imap_unseen|ioscheduler|irc|kernel|laptop_mode|lines|loadavg|loadgraph|lua|lua_bar|lua_gauge|lua_graph|lua_parse|machine|mails|mboxscan|mem|memwithbuffers|membar|memwithbuffersbar|memeasyfree|memfree|memgauge|memgraph|memmax|memperc|mixer|mixerbar|mixerl|mixerlbar|mixerr|mixerrbar|moc_album|moc_artist|moc_bitrate|moc_curtime|moc_file|moc_rate|moc_song|moc_state|moc_timeleft|moc_title|moc_totaltime|monitor|monitor_number|mpd_album|mpd_artist|mpd_bar|mpd_bitrate|mpd_elapsed|mpd_file|mpd_length|mpd_name|mpd_percent|mpd_random|mpd_repeat|mpd_smart|mpd_status|mpd_title|mpd_track|mpd_vol|mysql|nameserver|new_mails|nodename|nodename_short|no_update|nvidia|obsd_product|obsd_sensors_fan|obsd_sensors_temp|obsd_sensors_volt|obsd_vendor|offset|outlinecolor|pb_battery|pid_chroot|pid_cmdline|pid_cwd|pid_environ|pid_environ_list|pid_exe|pid_nice|pid_openfiles|pid_parent|pid_priority|pid_state|pid_state_short|pid_stderr|pid_stdin|pid_stdout|pid_threads|pid_thread_list|pid_time_kernelmode|pid_time_usermode|pid_time|pid_uid|pid_euid|pid_suid|pid_fsuid|pid_gid|pid_egid|pid_sgid|pid_fsgid|pid_read|pid_vmpeak|pid_vmsize|pid_vmlck|pid_vmhwm|pid_vmrss|pid_vmdata|pid_vmstk|pid_vmexe|pid_vmlib|pid_vmpte|pid_write|platform|pop3_unseen|pop3_used|processes|read_tcp|read_udp|replied_mails|rss|running_processes|running_threads|scroll|seen_mails|shadecolor|smapi|smapi_bat_bar|smapi_bat_perc|smapi_bat_power|smapi_bat_temp|sony_fanspeed|stippled_hr|stock|swap|swapbar|swapfree|swapmax|swapperc|sysname|tab|tail|tcp_ping|tcp_portmon|template0|template1|template2|template3|template4|template5|template6|template7|template8|template9|texeci|texecpi|threads|time|to_bytes|top|top_io|top_mem|top_time|totaldown|totalup|trashed_mails|tztime|gid_name|uid_name|unflagged_mails|unforwarded_mails|unreplied_mails|unseen_mails|updates|upspeed|upspeedf|upspeedgraph|uptime|uptime_short|user_names|user_number|user_terms|user_times|user_time|utime|voffset|voltage_mv|voltage_v|weather|wireless_ap|wireless_bitrate|wireless_essid|wireless_link_bar|wireless_link_qual|wireless_link_qual_max|wireless_link_qual_perc|wireless_mode|words|xmms2_album|xmms2_artist|xmms2_bar|xmms2_bitrate|xmms2_brightblack|xmms2_date|xmms2_duration|xmms2_elapsed|xmms2_genre|xmms2_id|xmms2_percent|xmms2_playlist|xmms2_size|xmms2_smart|xmms2_status|xmms2_timesplayed|xmms2_title|xmms2_tracknr|xmms2_url)\b" +color brightblue "\<(acpiacadapter|acpifan|acpitemp|addr|addrs|alignc|alignr|apcupsd|apcupsd_cable|apcupsd_charge|apcupsd_lastxfer|apcupsd_linev|apcupsd_load|apcupsd_loadbar|apcupsd_loadgauge|apcupsd_loadgraph|apcupsd_model|apcupsd_name|apcupsd_status|apcupsd_temp|apcupsd_timeleft|apcupsd_upsmode|apm_adapter|apm_battery_life|apm_battery_time|audacious_bar|audacious_bitrate|audacious_channels|audacious_filename|audacious_frequency|audacious_length|audacious_length_seconds|audacious_main_volume|audacious_playlist_length|audacious_playlist_position|audacious_position|audacious_position_seconds|audacious_status|audacious_title|battery|battery_bar|battery_percent|battery_short|battery_time|blink|bmpx_album|bmpx_artist|bmpx_bitrate|bmpx_title|bmpx_track|bmpx_uri|buffers|cached|cmdline_to_pid|color|color0|color1|color2|color3|color4|color5|color6|color7|color8|color9|combine|conky_build_arch|conky_build_date|conky_version|cpu|cpubar|cpugauge|cpugraph|curl|desktop|desktop_name|desktop_number|disk_protect|diskio|diskio_read|diskio_write|diskiograph|diskiograph_read|diskiograph_write|distribution|downspeed|downspeedf|downspeedgraph|draft_mails|else|endif|entropy_avail|entropy_bar|entropy_perc|entropy_poolsize|eval|eve|exec|execbar|execgauge|execgraph|execi|execibar|execigauge|execigraph|execp|execpi|flagged_mails|font|format_time|forwarded_mails|freq|freq_g|fs_bar|fs_bar_free|fs_free|fs_free_perc|fs_size|fs_type|fs_used|fs_used_perc|goto|gw_iface|gw_ip|hddtemp|head|hr|hwmon|i2c|i8k_ac_status|i8k_bios|i8k_buttons_status|i8k_cpu_temp|i8k_left_fan_rpm|i8k_left_fan_status|i8k_right_fan_rpm|i8k_right_fan_status|i8k_serial|i8k_version|ibm_brightness|ibm_fan|ibm_temps|ibm_volume|ical|iconv_start|iconv_stop|if_empty|if_existing|if_gw|if_match|if_mixer_mute|if_mounted|if_mpd_playing|if_running|if_smapi_bat_installed|if_up|if_updatenr|if_xmms2_connected|image|imap_messages|imap_unseen|ioscheduler|irc|kernel|laptop_mode|lines|loadavg|loadgraph|lua|lua_bar|lua_gauge|lua_graph|lua_parse|machine|mails|mboxscan|mem|memwithbuffers|membar|memwithbuffersbar|memeasyfree|memfree|memgauge|memgraph|memmax|memperc|mixer|mixerbar|mixerl|mixerlbar|mixerr|mixerrbar|moc_album|moc_artist|moc_bitrate|moc_curtime|moc_file|moc_rate|moc_song|moc_state|moc_timeleft|moc_title|moc_totaltime|monitor|monitor_number|mpd_album|mpd_artist|mpd_bar|mpd_bitrate|mpd_elapsed|mpd_file|mpd_length|mpd_name|mpd_percent|mpd_random|mpd_repeat|mpd_smart|mpd_status|mpd_title|mpd_track|mpd_vol|mysql|nameserver|new_mails|nodename|nodename_short|no_update|nvidia|obsd_product|obsd_sensors_fan|obsd_sensors_temp|obsd_sensors_volt|obsd_vendor|offset|outlinecolor|pb_battery|pid_chroot|pid_cmdline|pid_cwd|pid_environ|pid_environ_list|pid_exe|pid_nice|pid_openfiles|pid_parent|pid_priority|pid_state|pid_state_short|pid_stderr|pid_stdin|pid_stdout|pid_threads|pid_thread_list|pid_time_kernelmode|pid_time_usermode|pid_time|pid_uid|pid_euid|pid_suid|pid_fsuid|pid_gid|pid_egid|pid_sgid|pid_fsgid|pid_read|pid_vmpeak|pid_vmsize|pid_vmlck|pid_vmhwm|pid_vmrss|pid_vmdata|pid_vmstk|pid_vmexe|pid_vmlib|pid_vmpte|pid_write|platform|pop3_unseen|pop3_used|processes|read_tcp|read_udp|replied_mails|rss|running_processes|running_threads|scroll|seen_mails|shadecolor|smapi|smapi_bat_bar|smapi_bat_perc|smapi_bat_power|smapi_bat_temp|sony_fanspeed|stippled_hr|stock|swap|swapbar|swapfree|swapmax|swapperc|sysname|tab|tail|tcp_ping|tcp_portmon|template0|template1|template2|template3|template4|template5|template6|template7|template8|template9|texeci|texecpi|threads|time|to_bytes|top|top_io|top_mem|top_time|totaldown|totalup|trashed_mails|tztime|gid_name|uid_name|unflagged_mails|unforwarded_mails|unreplied_mails|unseen_mails|updates|upspeed|upspeedf|upspeedgraph|uptime|uptime_short|user_names|user_number|user_terms|user_times|user_time|utime|voffset|voltage_mv|voltage_v|weather|wireless_ap|wireless_bitrate|wireless_essid|wireless_link_bar|wireless_link_qual|wireless_link_qual_max|wireless_link_qual_perc|wireless_mode|words|xmms2_album|xmms2_artist|xmms2_bar|xmms2_bitrate|xmms2_comment|xmms2_date|xmms2_duration|xmms2_elapsed|xmms2_genre|xmms2_id|xmms2_percent|xmms2_playlist|xmms2_size|xmms2_smart|xmms2_status|xmms2_timesplayed|xmms2_title|xmms2_tracknr|xmms2_url)\>" color brightblue "\$\{?[0-9A-Z_!@#$*?-]+\}?" color cyan "(\{|\}|\(|\)|\;|\]|\[|`|\\|\$|<|>|!|=|&|\|)" diff --git a/runtime/syntax/csharp.micro b/runtime/syntax/csharp.micro index 2939e83b..3093e0a5 100644 --- a/runtime/syntax/csharp.micro +++ b/runtime/syntax/csharp.micro @@ -7,20 +7,20 @@ color brightmagenta "class +[A-Za-z0-9]+ *((:) +[A-Za-z0-9.]+)?" color magenta "@[A-Za-z]+" color brightblue "[A-Za-z_][A-Za-z0-9_]*[[:space:]]*[()]" -color green "\b(bool|byte|sbyte|char|decimal|double|float|IntPtr|int|uint|long|ulong|object|short|ushort|string|base|this|var|void)\b" -color cyan "\b(alias|as|case|catch|checked|default|do|dynamic|else|finally|fixed|for|foreach|goto|if|is|lock|new|null|return|switch|throw|try|unchecked|while)\b" -color cyan "\b(abstract|async|class|const|delegate|enum|event|explicit|extern|get|implicit|in|internal|interface|namespace|operator|out|override|params|partial|private|protected|public|readonly|ref|sealed|set|sizeof|stackalloc|static|struct|typeof|unsafe|using|value|virtual|volatile|yield)\b" +color green "\<(bool|byte|sbyte|char|decimal|double|float|IntPtr|int|uint|long|ulong|object|short|ushort|string|base|this|var|void)\>" +color cyan "\<(alias|as|case|catch|checked|default|do|dynamic|else|finally|fixed|for|foreach|goto|if|is|lock|new|null|return|switch|throw|try|unchecked|while)\>" +color cyan "\<(abstract|async|class|const|delegate|enum|event|explicit|extern|get|implicit|in|internal|interface|namespace|operator|out|override|params|partial|private|protected|public|readonly|ref|sealed|set|sizeof|stackalloc|static|struct|typeof|unsafe|using|value|virtual|volatile|yield)\>" # LINQ-only keywords (ones that cannot be used outside of a LINQ query - lots others can) -color cyan "\b(from|where|select|group|info|orderby|join|let|in|on|equals|by|ascending|descending)\b" -color brightred "\b(break|continue)\b" -color brightcyan "\b(true|false)\b" +color cyan "\<(from|where|select|group|info|orderby|join|let|in|on|equals|by|ascending|descending)\>" +color brightred "\<(break|continue)\>" +color brightcyan "\<(true|false)\>" color red "[-+/*=<>?:!~%&|]" -color blue "\b([0-9._]+|0x[A-Fa-f0-9_]+|0b[0-1_]+)[FL]?\b" +color blue "\<([0-9._]+|0x[A-Fa-f0-9_]+|0b[0-1_]+)[FL]?\>" color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" color magenta "\\([btnfr]|'|\"|\\)" color magenta "\\u[A-Fa-f0-9]{4}" color brightblack "(^|[[:space:]])//.*" -color brightblack (s) "/\*.*?\*/" +color brightblack start="/\*" end="\*/" color brightwhite,cyan "TODO:?" color ,green "[[:space:]]+$" color ,red " + +| + +" diff --git a/runtime/syntax/css.micro b/runtime/syntax/css.micro index 4176d524..69c844b8 100644 --- a/runtime/syntax/css.micro +++ b/runtime/syntax/css.micro @@ -3,9 +3,8 @@ syntax "CSS" "\.(css|scss)$" color brightred "." -color brightyellow (s) "\{.*?\}" -color brightwhite (s) ":.*?[;^\{]" +color brightyellow start="\{" end="\}" +color brightwhite start=":" end="[;^\{]" color brightblue ":active|:focus|:hover|:link|:visited|:link|:after|:before|$" -color brightblue (s) "\/\*.*?\*\/" +color brightblue start="\/\*" end="\*\/" color green ";|:|\{|\}" - diff --git a/runtime/syntax/cython.micro b/runtime/syntax/cython.micro index 98771eed..8e3e4d46 100644 --- a/runtime/syntax/cython.micro +++ b/runtime/syntax/cython.micro @@ -1,19 +1,19 @@ ## Cython nanorc, based off of Python nanorc. ## syntax "Cython" "\.pyx$" "\.pxd$" "\.pyi$" -color brightred (i) "def [ 0-9A-Z_]+" -color brightred (i) "cpdef [0-9A-Z_]+\(.*\):" -color brightred (i) "cdef cppclass [ 0-9A-Z_]+\(.*\):" +brightred (i) "def [ 0-9A-Z_]+" +brightred (i) "cpdef [0-9A-Z_]+\(.*\):" +brightred (i) "cdef cppclass [ 0-9A-Z_]+\(.*\):" # Python Keyword Color -color green "\b(and|as|assert|class|def|DEF|del|elif|ELIF|else|ELSE|except|exec|finally|for|from|global|if|IF|import|in|is|lambda|map|not|or|pass|print|raise|try|while|with|yield)\b" -color brightmagenta "\b(continue|break|return)\b" +color green "\<(and|as|assert|class|def|DEF|del|elif|ELIF|else|ELSE|except|exec|finally|for|from|global|if|IF|import|in|is|lambda|map|not|or|pass|print|raise|try|while|with|yield)\>" +color brightmagenta "\<(continue|break|return)\>" # Cython Keyword Color -color green "\b(cdef|cimport|cpdef|cppclass|ctypedef|extern|include|namespace|property|struct)\b" -color red "\b(bint|char|double|int|public|void|unsigned)\b" +color green "\<(cdef|cimport|cpdef|cppclass|ctypedef|extern|include|namespace|property|struct)\>" +color red "\<(bint|char|double|int|public|void|unsigned)\>" #Operator Color color yellow "[.:;,+*|=!\%]" "<" ">" "/" "-" "&" @@ -24,7 +24,7 @@ color magenta "[(){}]" "\[" "\]" #String Color color cyan "['][^']*[^\\][']" "[']{3}.*[^\\][']{3}" color cyan "["][^"]*[^\\]["]" "["]{3}.*[^\\]["]{3}" -color cyan (s) """"[^"].*?"""" (s) "'''[^'].*?'''" +color cyan start=""""[^"]" end=""""" start="'''[^']" end="'''" # Comment Color color brightblue "#.*$" diff --git a/runtime/syntax/d.micro b/runtime/syntax/d.micro index 9853c17f..5cca0ed9 100644 --- a/runtime/syntax/d.micro +++ b/runtime/syntax/d.micro @@ -65,7 +65,7 @@ color constant "\b(__DATE__|__EOF__|__TIME__|__TIMESTAMP__|__VENDOR__|__VERSION_ color constant ""(\\.|[^"])*"" ### WysiwygString -color constant (s) "r".*?"" +color constant start="r"" end=""" color constant "`[^`]*`" ### HexString @@ -76,16 +76,16 @@ color constant "q"\(.*\)"" color constant "q"\{.*\}"" color constant "q"\[.*\]"" color constant "q"<.*>"" -color constant (s) "q"[^({[<"][^"]*$.*?^[^"]+"" +color constant start="q"[^({[<"][^"]*$" end="^[^"]+"" color constant "q"([^({[<"]).*"" ### TokenString ### True token strings require nesting, so, again, they can't be implemented accurately here. ### At the same time, the intended purpose of token strings makes it questionable to highlight them as strings at all. -## color ,magenta (s) "q\{.*?\}" +## color ,magenta start="q\{" end="\}" ## Comments ## NB: true nested brightblacks are impossible to implement with plain regex color comment "//.*" -color comment (s) "/\*.*?\*/" -color comment (s) "/\+.*?\+/" +color comment start="/\*" end="\*/" +color comment start="/\+" end="\+/" diff --git a/runtime/syntax/dot.micro b/runtime/syntax/dot.micro index 4c324878..441a35c4 100644 --- a/runtime/syntax/dot.micro +++ b/runtime/syntax/dot.micro @@ -1,9 +1,8 @@ syntax "DOT" "\.(dot|gv)$" -color cyan "\b(digraph|edge|graph|node|subgraph)\b" -color magenta "\b(arrowhead|arrowsize|arrowtail|bgcolor|center|color|constraint|decorateP|dir|distortion|fillcolor|fontcolor|fontname|fontsize|headclip|headlabel|height|labelangle|labeldistance|labelfontcolor|labelfontname|labelfontsize|label|layers|layer|margin|mclimit|minlen|name|nodesep|nslimit|ordering|orientation|pagedir|page|peripheries|port_label_distance|rankdir|ranksep|rank|ratio|regular|rotate|samehead|sametail|shapefile|shape|sides|size|skew|style|tailclip|taillabel|URL|weight|width)\b" +color cyan "\<(digraph|edge|graph|node|subgraph)\>" +color magenta "\<(arrowhead|arrowsize|arrowtail|bgcolor|center|color|constraint|decorateP|dir|distortion|fillcolor|fontcolor|fontname|fontsize|headclip|headlabel|height|labelangle|labeldistance|labelfontcolor|labelfontname|labelfontsize|label|layers|layer|margin|mclimit|minlen|name|nodesep|nslimit|ordering|orientation|pagedir|page|peripheries|port_label_distance|rankdir|ranksep|rank|ratio|regular|rotate|samehead|sametail|shapefile|shape|sides|size|skew|style|tailclip|taillabel|URL|weight|width)\>" color red "=|->|--" color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" color brightblack "(^|[[:space:]])//.*" -color brightblack (s) "/\*.*?\*/" - +color brightblack start="/\*" end="\*/" diff --git a/runtime/syntax/erb.micro b/runtime/syntax/erb.micro index b8037c50..03b39d0a 100644 --- a/runtime/syntax/erb.micro +++ b/runtime/syntax/erb.micro @@ -5,13 +5,13 @@ ## https://github.com/geomic/ERB-And-More-Code-Highlighting-for-nano syntax "ERB" "\.erb$" "\.rhtml$" -color blue (s) "<.*?>" -color white (s) "<%.*?%>" +color blue start="<" end=">" +color white start="<%" end="%>" color red "&[^;[[:space:]]]*;" -color yellow "\b(BEGIN|END|alias|and|begin|break|case|class|def|defined\?|do|else|elsif|end|ensure|false|for|if|in|module|next|nil|not|or|redo|rescue|retry|return|self|super|then|true|undef|unless|until|when|while|yield)\b" -color brightblue "(\$|@|@@)?\b[A-Z]+[0-9A-Z_a-z]*" -color magenta (i) "([ ]|^):[0-9A-Z_]+\b" -color brightyellow "\b(__FILE__|__LINE__)\b" +color yellow "\<(BEGIN|END|alias|and|begin|break|case|class|def|defined\?|do|else|elsif|end|ensure|false|for|if|in|module|next|nil|not|or|redo|rescue|retry|return|self|super|then|true|undef|unless|until|when|while|yield)\>" +color brightblue "(\$|@|@@)?\<[A-Z]+[0-9A-Z_a-z]*" +magenta (i) "([ ]|^):[0-9A-Z_]+\>" +color brightyellow "\<(__FILE__|__LINE__)\>" color brightmagenta "!/([^/]|(\\/))*/[iomx]*" "%r\{([^}]|(\\}))*\}[iomx]*" color brightblue "`[^`]*`" "%x\{[^}]*\}" color green ""([^"]|(\\"))*"" "%[QW]?\{[^}]*\}" "%[QW]?\([^)]*\)" "%[QW]?<[^>]*>" "%[QW]?\[[^]]*\]" "%[QW]?\$[^$]*\$" "%[QW]?\^[^^]*\^" "%[QW]?![^!]*!" @@ -19,7 +19,6 @@ color brightgreen "#\{[^}]*\}" color green "'([^']|(\\'))*'" "%[qw]\{[^}]*\}" "%[qw]\([^)]*\)" "%[qw]<[^>]*>" "%[qw]\[[^]]*\]" "%[qw]\$[^$]*\$" "%[qw]\^[^^]*\^" "%[qw]![^!]*!" color cyan "#[^{].*$" "#$" color brightcyan "##[^{].*$" "##$" -color green (s) "<<-?'?EOT'?.*?^EOT" +color green start="<<-?'?EOT'?" end="^EOT" color brightcyan "(XXX|TODO|FIXME|\?\?\?)" - diff --git a/runtime/syntax/fish.micro b/runtime/syntax/fish.micro index c24cbc33..560f4498 100644 --- a/runtime/syntax/fish.micro +++ b/runtime/syntax/fish.micro @@ -1,14 +1,14 @@ ## Here is an example for Fish shell scripts. ## syntax "Fish" "\.fish$" -color brightgreen (i) "^[0-9A-Z_]+\(\)" -color green "\b(alias|begin|break|case|continue|contains|else|end|for|function|if|math|return|set|switch|test|while)\b" +brightgreen (i) "^[0-9A-Z_]+\(\)" +color green "\<(alias|begin|break|case|continue|contains|else|end|for|function|if|math|return|set|switch|test|while)\>" color green "(\{|\}|\(|\)|\;|\]|\[|`|\\|\$|<|>|!|=|&|\|)" -color green "\b(and|isatty|not|or|in)\b" +color green "\<(and|isatty|not|or|in)\>" color yellow "--[a-z-]+" color brightmagenta "\ -[a-z]+" -color brightblue "\b(bg|bind|block|breakpoint|builtin|cd|command|commandline|complete|dirh|dirs|echo|emit|eval|exec|exit|fg|fish|fish_config|fish_ident|fish_pager|fish_prompt|fish_right_prompt|fish_update_completions|fishd|funced|funcsave|functions|help|history|jobs|mimedb|nextd|open|popd|prevd|psub|pushd|pwd|random|read|set_color|status|trap|type|ulimit|umask|vared)\b" -color brightred (i) "\$\{?[0-9A-Z_!@#$*?-]+\}?" +color brightblue "\<(bg|bind|block|breakpoint|builtin|cd|command|commandline|complete|dirh|dirs|echo|emit|eval|exec|exit|fg|fish|fish_config|fish_ident|fish_pager|fish_prompt|fish_right_prompt|fish_update_completions|fishd|funced|funcsave|functions|help|history|jobs|mimedb|nextd|open|popd|prevd|psub|pushd|pwd|random|read|set_color|status|trap|type|ulimit|umask|vared)\>" +brightred (i) "\$\{?[0-9A-Z_!@#$*?-]+\}?" color cyan "(^|[[:space:]])#.*$" color brightyellow ""(\\.|[^"])*"" "'(\\.|[^'])*'" color ,green "[[:space:]]+$" diff --git a/runtime/syntax/fortran.micro b/runtime/syntax/fortran.micro index 34501433..020b1582 100644 --- a/runtime/syntax/fortran.micro +++ b/runtime/syntax/fortran.micro @@ -2,36 +2,36 @@ syntax "Fortran" "\.([Ff]|[Ff]90|[Ff]95|[Ff][Oo][Rr])$" -#color red "\b[A-Z_]a[0-9A-Z_]+\b" -color red "\b[0-9]+\b" +#color red "\<[A-Z_]a[0-9A-Z_]+\>" +color red "\<[0-9]+\>" -color green (i) "\b(action|advance|all|allocatable|allocated|any|apostrophe)\b" -color green (i) "\b(append|asis|assign|assignment|associated|character|common)\b" -color green (i) "\b(complex|data|default|delim|dimension|double precision)\b" -color green (i) "\b(elemental|epsilon|external|file|fmt|form|format|huge)\b" -color green (i) "\b(implicit|include|index|inquire|integer|intent|interface)\b" -color green (i) "\b(intrinsic|iostat|kind|logical|module|none|null|only)\b" -color green (i) "\b(operator|optional|pack|parameter|pointer|position|private)\b" -color green (i) "\b(program|public|real|recl|recursive|selected_int_kind)\b" -color green (i) "\b(selected_real_kind|subroutine|status)\b" +green (i) "\<(action|advance|all|allocatable|allocated|any|apostrophe)\>" +green (i) "\<(append|asis|assign|assignment|associated|character|common)\>" +green (i) "\<(complex|data|default|delim|dimension|double precision)\>" +green (i) "\<(elemental|epsilon|external|file|fmt|form|format|huge)\>" +green (i) "\<(implicit|include|index|inquire|integer|intent|interface)\>" +green (i) "\<(intrinsic|iostat|kind|logical|module|none|null|only)\>" +green (i) "\<(operator|optional|pack|parameter|pointer|position|private)\>" +green (i) "\<(program|public|real|recl|recursive|selected_int_kind)\>" +green (i) "\<(selected_real_kind|subroutine|status)\>" -color cyan (i) "\b(abs|achar|adjustl|adjustr|allocate|bit_size|call|char)\b" -color cyan (i) "\b(close|contains|count|cpu_time|cshift|date_and_time)\b" -color cyan (i) "\b(deallocate|digits|dot_product|eor|eoshift|function|iachar)\b" -color cyan (i) "\b(iand|ibclr|ibits|ibset|ichar|ieor|iolength|ior|ishft|ishftc)\b" -color cyan (i) "\b(lbound|len|len_trim|matmul|maxexponent|maxloc|maxval|merge)\b" -color cyan (i) "\b(minexponent|minloc|minval|mvbits|namelist|nearest|nullify)\b" -color cyan (i) "\b(open|pad|present|print|product|pure|quote|radix)\b" -color cyan (i) "\b(random_number|random_seed|range|read|readwrite|replace)\b" -color cyan (i) "\b(reshape|rewind|save|scan|sequence|shape|sign|size|spacing)\b" -color cyan (i) "\b(spread|sum|system_clock|target|transfer|transpose|trim)\b" -color cyan (i) "\b(ubound|unpack|verify|write|tiny|type|use|yes)\b" +cyan (i) "\<(abs|achar|adjustl|adjustr|allocate|bit_size|call|char)\>" +cyan (i) "\<(close|contains|count|cpu_time|cshift|date_and_time)\>" +cyan (i) "\<(deallocate|digits|dot_product|eor|eoshift|function|iachar)\>" +cyan (i) "\<(iand|ibclr|ibits|ibset|ichar|ieor|iolength|ior|ishft|ishftc)\>" +cyan (i) "\<(lbound|len|len_trim|matmul|maxexponent|maxloc|maxval|merge)\>" +cyan (i) "\<(minexponent|minloc|minval|mvbits|namelist|nearest|nullify)\>" +cyan (i) "\<(open|pad|present|print|product|pure|quote|radix)\>" +cyan (i) "\<(random_number|random_seed|range|read|readwrite|replace)\>" +cyan (i) "\<(reshape|rewind|save|scan|sequence|shape|sign|size|spacing)\>" +cyan (i) "\<(spread|sum|system_clock|target|transfer|transpose|trim)\>" +cyan (i) "\<(ubound|unpack|verify|write|tiny|type|use|yes)\>" -color yellow (i) "\b(.and.|case|do|else|else?if|else?where|end|end?do|end?if)\b" -color yellow (i) "\b(end?select|.eqv.|forall|if|lge|lgt|lle|llt|.neqv.|.not.)\b" -color yellow (i) "\b(.or.|repeat|select case|then|where|while)\b" +yellow (i) "\<(.and.|case|do|else|else?if|else?where|end|end?do|end?if)\>" +yellow (i) "\<(end?select|.eqv.|forall|if|lge|lgt|lle|llt|.neqv.|.not.)\>" +yellow (i) "\<(.or.|repeat|select case|then|where|while)\>" -color magenta (i) "\b(continue|cycle|exit|go?to|result|return)\b" +magenta (i) "\<(continue|cycle|exit|go?to|result|return)\>" #Operator Color color yellow "[.:;,+*|=!\%]" "<" ">" "/" "-" "&" @@ -43,10 +43,9 @@ color magenta "[(){}]" "\[" "\]" color brightcyan "^[[:space:]]*#[[:space:]]*(define|include|(un|ifn?)def|endif|el(if|se)|if|warning|error)" ## String highlighting. -color cyan (i) "<[^= ]*>" ""(\\.|[^"])*"" -color cyan (i) "<[^= ]*>" "'(\\.|[^"])*'" +cyan (i) "<[^= ]*>" ""(\\.|[^"])*"" +cyan (i) "<[^= ]*>" "'(\\.|[^"])*'" ## Comment highlighting -color brightred (i) "!.*$" "(^[Cc]| [Cc]) .*$" - +brightred (i) "!.*$" "(^[Cc]| [Cc]) .*$" diff --git a/runtime/syntax/gentoo.micro b/runtime/syntax/gentoo.micro index 49dec1a8..24b54853 100644 --- a/runtime/syntax/gentoo.micro +++ b/runtime/syntax/gentoo.micro @@ -4,25 +4,25 @@ syntax "Ebuild" "\.e(build|class)$" ## All the standard portage functions color brightgreen "^src_(unpack|compile|install|test)" "^pkg_(config|nofetch|setup|(pre|post)(inst|rm))" ## Highlight bash related syntax -color green "\b(case|do|done|elif|else|esac|exit|fi|for|function|if|in|local|read|return|select|shift|then|time|until|while|continue|break)\b" +color green "\<(case|do|done|elif|else|esac|exit|fi|for|function|if|in|local|read|return|select|shift|then|time|until|while|continue|break)\>" color green "(\{|\}|\(|\)|\;|\]|\[|`|\\|\$|<|>|!|=|&|\|)" -color green "-(e|d|f|r|g|u|w|x|L)\b" -color green "-(eq|ne|gt|lt|ge|le|s|n|z)\b" +color green "-(e|d|f|r|g|u|w|x|L)\>" +color green "-(eq|ne|gt|lt|ge|le|s|n|z)\>" ## Highlight variables ... official portage ones in red, all others in bright red color brightred "\$\{?[a-zA-Z_0-9]+\}?" -color red "\b(ARCH|HOMEPAGE|DESCRIPTION|IUSE|SRC_URI|LICENSE|SLOT|KEYWORDS|FILESDIR|WORKDIR|(P|R)?DEPEND|PROVIDE|DISTDIR|RESTRICT|USERLAND)\b" -color red "\b(S|D|T|PV|PF|P|PN|A)\b" "\bC(XX)?FLAGS\b" "\bLDFLAGS\b" "\bC(HOST|TARGET|BUILD)\b" +color red "\<(ARCH|HOMEPAGE|DESCRIPTION|IUSE|SRC_URI|LICENSE|SLOT|KEYWORDS|FILESDIR|WORKDIR|(P|R)?DEPEND|PROVIDE|DISTDIR|RESTRICT|USERLAND)\>" +color red "\<(S|D|T|PV|PF|P|PN|A)\>" "\" "\" "\" ## Highlight portage commands -color magenta "\buse(_(with|enable))?\b [!a-zA-Z0-9_+ -]*" "inherit.*" -color brightblue "\be(begin|end|conf|install|make|warn|infon?|error|log|patch|new(group|user))\b" -color brightblue "\bdie\b" "\buse(_(with|enable))?\b" "\binherit\b" "\bhas\b" "\b(has|best)_version\b" "\bunpack\b" -color brightblue "\b(do|new)(ins|s?bin|doc|lib(\.so|\.a)|man|info|exe|initd|confd|envd|pam|menu|icon)\b" -color brightblue "\bdo(python|sed|dir|hard|sym|html|jar|mo)\b" "\bkeepdir\b" +color magenta "\ [!a-zA-Z0-9_+ -]*" "inherit.*" +color brightblue "\" +color brightblue "\" "\" "\" "\" "\<(has|best)_version\>" "\" +color brightblue "\<(do|new)(ins|s?bin|doc|lib(\.so|\.a)|man|info|exe|initd|confd|envd|pam|menu|icon)\>" +color brightblue "\" "\" color brightblue "prepall(docs|info|man|strip)" "prep(info|lib|lib\.(so|a)|man|strip)" -color brightblue "\b(doc|ins|exe)into\b" "\bf(owners|perms)\b" "\b(exe|ins|dir)opts\b" +color brightblue "\<(doc|ins|exe)into\>" "\" "\<(exe|ins|dir)opts\>" ## Highlight common commands used in ebuilds -color blue "\bmake\b" "\b(cat|cd|chmod|chown|cp|echo|env|export|grep|let|ln|mkdir|mv|rm|sed|set|tar|touch|unset)\b" -## Highlight brightblacks (doesnt work that well) +color blue "\" "\<(cat|cd|chmod|chown|cp|echo|env|export|grep|let|ln|mkdir|mv|rm|sed|set|tar|touch|unset)\>" +## Highlight comments (doesnt work that well) color yellow "#.*$" ## Highlight strings (doesnt work that well) color brightyellow ""(\\.|[^\"])*"" "'(\\.|[^'])*'" @@ -40,7 +40,7 @@ color brightblue "[[:space:]]+-[a-zA-Z0-9_-]+" ## Likely version numbers: color magenta "-[[:digit:]].*([[:space:]]|$)" ## Accepted arches: -color white "[~-]?\b(alpha|amd64|arm|hppa|ia64|mips|ppc|ppc64|s390|sh|sparc|x86|x86-fbsd)\b" +color white "[~-]?\<(alpha|amd64|arm|hppa|ia64|mips|ppc|ppc64|s390|sh|sparc|x86|x86-fbsd)\>" color white "[[:space:]][~-]?\*" ## Categories: color cyan "^[[:space:]]*.*/" diff --git a/runtime/syntax/git.micro b/runtime/syntax/git.micro index 857e0320..264aeaa1 100644 --- a/runtime/syntax/git.micro +++ b/runtime/syntax/git.micro @@ -1,6 +1,6 @@ syntax "git-config" "git(config|modules)$|\.git/config$" -color brightcyan "\b(true|false)\b" +color brightcyan "\<(true|false)\>" color cyan "^[[:space:]]*[^=]*=" color brightmagenta "^[[:space:]]*\[.*\]$" color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" diff --git a/runtime/syntax/glsl.micro b/runtime/syntax/glsl.micro index 6bdd5cf6..1cec6cfa 100644 --- a/runtime/syntax/glsl.micro +++ b/runtime/syntax/glsl.micro @@ -1,15 +1,15 @@ syntax "GLSL" "\.(frag|vert|fp|vp|glsl)$" color brightblue "[A-Za-z_][A-Za-z0-9_]*[[:space:]]*[()]" -color green "\b(void|bool|bvec2|bvec3|bvec4|int|ivec2|ivec3|ivec4|float|vec2|vec3|vec4|mat2|mat3|mat4|struct|sampler1D|sampler2D|sampler3D|samplerCUBE|sampler1DShadow|sampler2DShadow)\b" -color green "\bgl_(DepthRangeParameters|PointParameters|MaterialParameters|LightSourceParameters|LightModelParameters|LightModelProducts|LightProducts|FogParameters)\b" -color cyan "\b(const|attribute|varying|uniform|in|out|inout|if|else|return|discard|while|for|do)\b" -color brightred "\b(break|continue)\b" -color brightcyan "\b(true|false)\b" +color green "\<(void|bool|bvec2|bvec3|bvec4|int|ivec2|ivec3|ivec4|float|vec2|vec3|vec4|mat2|mat3|mat4|struct|sampler1D|sampler2D|sampler3D|samplerCUBE|sampler1DShadow|sampler2DShadow)\>" +color green "\" +color cyan "\<(const|attribute|varying|uniform|in|out|inout|if|else|return|discard|while|for|do)\>" +color brightred "\<(break|continue)\>" +color brightcyan "\<(true|false)\>" color red "[-+/*=<>?:!~%&|^]" -color blue "\b([0-9]+|0x[0-9a-fA-F]*)\b" +color blue "\<([0-9]+|0x[0-9a-fA-F]*)\>" color brightblack "(^|[[:space:]])//.*" -color brightblack (s) "/\*.*?\*/" +color brightblack start="/\*" end="\*/" color brightwhite,cyan "TODO:?" color ,green "[[:space:]]+$" color ,red " + +| + +" diff --git a/runtime/syntax/go.micro b/runtime/syntax/go.micro index 8ca3f1eb..1feff130 100644 --- a/runtime/syntax/go.micro +++ b/runtime/syntax/go.micro @@ -16,5 +16,5 @@ color constant "\\[abfnrtv'\"\\]" color constant "\\([0-7]{3}|x[A-Fa-f0-9]{2}|u[A-Fa-f0-9]{4}|U[A-Fa-f0-9]{8})" color constant "`[^`]*`" color comment "(^|[[:space:]])//.*" -color comment (s) "/\*.*?\*/" +color comment start="/\*" end="\*/" color todo "TODO:?" diff --git a/runtime/syntax/groff.micro b/runtime/syntax/groff.micro index 3b6558c1..6a0ecc7a 100644 --- a/runtime/syntax/groff.micro +++ b/runtime/syntax/groff.micro @@ -9,17 +9,16 @@ color brightmagenta "\\." color brightmagenta "\\f." "\\f\(.." "\\s(\+|\-)?[0-9]" ## Newlines color cyan "(\\|\\\\)n(.|\(..)" -color cyan (s) "(\\|\\\\)n\[.*?]" +color cyan start="(\\|\\\\)n\[" end="]" ## Requests color brightgreen "^\.[[:space:]]*[^[[:space:]]]*" ## Comments color yellow "^\.\\".*$" ## Strings color green "(\\|\\\\)\*(.|\(..)" -color green (s) "(\\|\\\\)\*\[.*?]" +color green start="(\\|\\\\)\*\[" end="]" ## Characters color brightred "\\\(.." -color brightred (s) "\\\[.*?]" +color brightred start="\\\[" end="]" ## Macro arguments color brightcyan "\\\\\$[1-9]" - diff --git a/runtime/syntax/haml.micro b/runtime/syntax/haml.micro index 541fd4f2..107e5c60 100644 --- a/runtime/syntax/haml.micro +++ b/runtime/syntax/haml.micro @@ -2,9 +2,9 @@ syntax "Haml" "\.haml$" color cyan "-|=" color white "->|=>" -color cyan (i) "([ ]|^)%[0-9A-Z_]+\b" -color magenta (i) ":[0-9A-Z_]+\b" -color yellow (i) "\.[A-Z_]+\b" +cyan (i) "([ ]|^)%[0-9A-Z_]+\>" +magenta (i) ":[0-9A-Z_]+\>" +yellow (i) "\.[A-Z_]+\>" ## Double quote & single quote color green ""([^"]|(\\"))*"" "%[QW]?\{[^}]*\}" "%[QW]?\([^)]*\)" "%[QW]?<[^>]*>" "%[QW]?\$[^$]*\$" "%[QW]?\^[^^]*\^" "%[QW]?![^!]*!" color green "'([^']|(\\'))*'" "%[qw]\{[^}]*\}" "%[qw]\([^)]*\)" "%[qw]<[^>]*>" "%[qw]\[[^]]*\]" "%[qw]\$[^$]*\$" "%[qw]\^[^^]*\^" "%[qw]![^!]*!" diff --git a/runtime/syntax/haskell.micro b/runtime/syntax/haskell.micro index 4982b9b5..58e817d2 100644 --- a/runtime/syntax/haskell.micro +++ b/runtime/syntax/haskell.micro @@ -26,7 +26,6 @@ color yellow ""[^\"]*"" ## Comments color green "--.*" -color green (s) "\{-.*?-\}" +color green start="\{-" end="-\}" color brightred "undefined" - diff --git a/runtime/syntax/html.micro b/runtime/syntax/html.micro index 20be4c9f..841a37bf 100644 --- a/runtime/syntax/html.micro +++ b/runtime/syntax/html.micro @@ -1,7 +1,7 @@ ## Here is a short improved example for HTML. ## syntax "HTML" "\.htm[l]?$" -color identifier (s) "<.*?>" +color identifier start="<" end=">" color special "&[^;[[:space:]]]*;" color constant ""[^"]*"|qq\|.*\|" color statement "(alt|bgcolor|height|href|label|longdesc|name|onclick|onfocus|onload|onmouseover|size|span|src|style|target|type|value|width)=" diff --git a/runtime/syntax/ini.micro b/runtime/syntax/ini.micro index d1bba37b..e30825c8 100644 --- a/runtime/syntax/ini.micro +++ b/runtime/syntax/ini.micro @@ -1,7 +1,7 @@ syntax "INI" "\.(ini|desktop|lfl|override)$" "(mimeapps\.list|pinforc|setup\.cfg)$" "weechat/.+\.conf$" header "^\[[A-Za-z]+\]$" -color brightcyan "\b(true|false)\b" +color brightcyan "\<(true|false)\>" color cyan "^[[:space:]]*[^=]*=" color brightmagenta "^[[:space:]]*\[.*\]$" color red "[=;]" diff --git a/runtime/syntax/inputrc.micro b/runtime/syntax/inputrc.micro index 7349adec..c2f6005e 100644 --- a/runtime/syntax/inputrc.micro +++ b/runtime/syntax/inputrc.micro @@ -1,8 +1,8 @@ syntax "Inputrc" "inputrc$" -color red "\b(off|none)\b" -color green "\bon\b" -color brightblue "\bset|\$include\b" +color red "\<(off|none)\>" +color green "\" +color brightblue "\" color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" color magenta "\\.?" color brightblack "(^|[[:space:]])#([^{].*)?$" diff --git a/runtime/syntax/java.micro b/runtime/syntax/java.micro index 0beef6e1..a27e1ad7 100644 --- a/runtime/syntax/java.micro +++ b/runtime/syntax/java.micro @@ -7,5 +7,5 @@ color type "\b(abstract|class|extends|final|implements|import|instanceof|interfa color constant ""[^"]*"" color constant "\b(true|false|null)\b" color comment "//.*" -color comment (s) "/\*.*?\*/" -color comment (s) "/\*\*.*?\*/" +color comment start="/\*" end="\*/" +color comment start="/\*\*" end="\*/" diff --git a/runtime/syntax/json.micro b/runtime/syntax/json.micro index 6515870a..deca0e10 100644 --- a/runtime/syntax/json.micro +++ b/runtime/syntax/json.micro @@ -1,9 +1,9 @@ syntax "JSON" "\.json$" header "^\{$" -color blue "\b[-]?[1-9][0-9]*([Ee][+-]?[0-9]+)?\b" "\b[-]?[0](\.[0-9]+)?\b" -color cyan "\bnull\b" -color brightcyan "\b(true|false)\b" +color blue "\<[-]?[1-9][0-9]*([Ee][+-]?[0-9]+)?\>" "\<[-]?[0](\.[0-9]+)?\>" +color cyan "\" +color brightcyan "\<(true|false)\>" color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" color brightyellow "\"(\\"|[^"])*\"[[:space:]]*:" "'(\'|[^'])*'[[:space:]]*:" color magenta "\\u[0-9a-fA-F]{4}|\\[bfnrt'"/\\]" diff --git a/runtime/syntax/keymap.micro b/runtime/syntax/keymap.micro index dd7fd816..bd49759b 100644 --- a/runtime/syntax/keymap.micro +++ b/runtime/syntax/keymap.micro @@ -1,8 +1,8 @@ syntax "Keymap" "\.(k|key)?map$|Xmodmap$" -color cyan "\b(add|clear|compose|keycode|keymaps|keysym|remove|string)\b" -color cyan "\b(control|alt|shift)\b" -color blue "\b[0-9]+\b" +color cyan "\<(add|clear|compose|keycode|keymaps|keysym|remove|string)\>" +color cyan "\<(control|alt|shift)\>" +color blue "\<[0-9]+\>" color red "=" color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" color brightblack "^!.*$" diff --git a/runtime/syntax/kickstart.micro b/runtime/syntax/kickstart.micro index ecb21bd2..255618fa 100644 --- a/runtime/syntax/kickstart.micro +++ b/runtime/syntax/kickstart.micro @@ -2,8 +2,8 @@ syntax "KickStart" "\.ks$" "\.kickstart$" color brightmagenta "%[a-z]+" color cyan "^[[:space:]]*(install|cdrom|text|graphical|volgroup|logvol|reboot|timezone|lang|keyboard|authconfig|firstboot|rootpw|user|firewall|selinux|repo|part|partition|clearpart|bootloader)" -color cyan "--(name|mirrorlist|baseurl|utc)(=|\b)" -color brightyellow "\$(releasever|basearch)\b" +color cyan "--(name|mirrorlist|baseurl|utc)(=|\>)" +color brightyellow "\$(releasever|basearch)\>" # Packages and groups color brightblack "^@[A-Za-z][A-Za-z-]*" diff --git a/runtime/syntax/lisp.micro b/runtime/syntax/lisp.micro index ab2546cc..a30a3dbb 100644 --- a/runtime/syntax/lisp.micro +++ b/runtime/syntax/lisp.micro @@ -2,9 +2,9 @@ syntax "Lisp" "(emacs|zile)$" "\.(el|li?sp|scm|ss)$" color brightblue "\([a-z-]+" color red "\(([-+*/<>]|<=|>=)|'" -color blue "\b[0-9]+\b" -color cyan (i) "\bnil\b" -color brightcyan "\b[tT]\b" +color blue "\<[0-9]+\>" +cyan (i) "\" +color brightcyan "\<[tT]\>" color yellow "\"(\\.|[^"])*\"" color magenta "'[A-Za-z][A-Za-z0-9_-]+" color magenta "\\.?" diff --git a/runtime/syntax/lua.micro b/runtime/syntax/lua.micro index 2de03ba4..cd2e3c06 100644 --- a/runtime/syntax/lua.micro +++ b/runtime/syntax/lua.micro @@ -55,7 +55,7 @@ color statement "(\(|\)|\[|\]|\{|\})" color constant "\"(\\.|[^\\\"])*\"|'(\\.|[^\\'])*'" # Multiline strings -color constant (s) "\s*\[\[.*?\]\]" +color constant start="\s*\[\[" end="\]\]" # Escapes color special "\\[0-7][0-7][0-7]|\\x[0-9a-fA-F][0-9a-fA-F]|\\[abefnrs]|(\\c|\\C-|\\M-|\\M-\\C-)." @@ -67,5 +67,5 @@ color comment "^#!.*" color comment "\-\-.*$" # Multiline brightblacks -color comment (s) "\s*\-\-\s*\[\[.*?\]\]" +color comment start="\s*\-\-\s*\[\[" end="\]\]" diff --git a/runtime/syntax/makefile.micro b/runtime/syntax/makefile.micro index 19c55bf3..70c63984 100644 --- a/runtime/syntax/makefile.micro +++ b/runtime/syntax/makefile.micro @@ -1,8 +1,8 @@ syntax "Makefile" "([Mm]akefile|\.ma?k)$" header "^#!.*/(env +)?[bg]?make( |$)" -color cyan "\b(ifeq|ifdef|ifneq|ifndef|else|endif)\b" -color cyan "^(export|include|override)\b" +color cyan "\<(ifeq|ifdef|ifneq|ifndef|else|endif)\>" +color cyan "^(export|include|override)\>" color brightmagenta "^[^:= ]+:" color red "[=,%]" "\+=|\?=|:=|&&|\|\|" color brightblue "\$\((abspath|addprefix|addsuffix|and|basename|call|dir)[[:space:]]" diff --git a/runtime/syntax/markdown.micro b/runtime/syntax/markdown.micro index 3015cedb..a43d126e 100644 --- a/runtime/syntax/markdown.micro +++ b/runtime/syntax/markdown.micro @@ -40,6 +40,5 @@ color underlined "https?://[^ )>]+" # code color special "`.*?`|^ {4}[^-+*].*" # code blocks -# color yellow (s) "^```[^$].*?^```$" color special "^```$" diff --git a/runtime/syntax/mpdconf.micro b/runtime/syntax/mpdconf.micro index 2af8fafd..3b4220be 100644 --- a/runtime/syntax/mpdconf.micro +++ b/runtime/syntax/mpdconf.micro @@ -1,7 +1,7 @@ syntax "MPD" "mpd\.conf$" -color cyan "\b(user|group|bind_to_address|host|port|plugin|name|type)\b" -color cyan "\b((music|playlist)_directory|(db|log|state|pid|sticker)_file)\b" +color cyan "\<(user|group|bind_to_address|host|port|plugin|name|type)\>" +color cyan "\<((music|playlist)_directory|(db|log|state|pid|sticker)_file)\>" color brightmagenta "^(input|audio_output|decoder)[[:space:]]*\{|\}" color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" color brightblack "(^|[[:space:]])#([^{].*)?$" diff --git a/runtime/syntax/nanorc.micro b/runtime/syntax/nanorc.micro index c65d3833..1643ffa0 100644 --- a/runtime/syntax/nanorc.micro +++ b/runtime/syntax/nanorc.micro @@ -2,17 +2,16 @@ ## syntax "Nanorc" "\.?nanorc$" ## Possible errors and parameters -color brightwhite (i) "^[[:space:]]*((un)?set|include|syntax|i?color).*$" +brightwhite (i) "^[[:space:]]*((un)?set|include|syntax|i?color).*$" ## Keywords -color brightgreen (i) "^[[:space:]]*(set|unset)[[:space:]]+(autoindent|backup|backupdir|backwards|boldtext|brackets|casesensitive|const|cut|fill|historylog|matchbrackets|morespace|mouse|multibuffer|noconvert|nofollow|nohelp|nonewlines|nowrap|operatingdir|preserve|punct)\b" "^[[:space:]]*(set|unset)[[:space:]]+(quickblank|quotestr|rebinddelete|rebindkeypad|regexp|smarthome|smooth|speller|suspend|tabsize|tabstospaces|tempfile|undo|view|whitespace|wordbounds)\b" -color green (i) "^[[:space:]]*(set|unset|include|syntax|header)\b" +brightgreen (i) "^[[:space:]]*(set|unset)[[:space:]]+(autoindent|backup|backupdir|backwards|boldtext|brackets|casesensitive|const|cut|fill|historylog|matchbrackets|morespace|mouse|multibuffer|noconvert|nofollow|nohelp|nonewlines|nowrap|operatingdir|preserve|punct)\>" "^[[:space:]]*(set|unset)[[:space:]]+(quickblank|quotestr|rebinddelete|rebindkeypad|regexp|smarthome|smooth|speller|suspend|tabsize|tabstospaces|tempfile|undo|view|whitespace|wordbounds)\>" +green (i) "^[[:space:]]*(set|unset|include|syntax|header)\>" ## Colors -color yellow (i) "^[[:space:]]*i?color[[:space:]]*(bright)?(white|black|red|blue|green|yellow|magenta|cyan)?(,(white|black|red|blue|green|yellow|magenta|cyan))?\b" -color magenta (i) "^[[:space:]]*i?color\b" "\b(start|end)=" +yellow (i) "^[[:space:]]*i?color[[:space:]]*(bright)?(white|black|red|blue|green|yellow|magenta|cyan)?(,(white|black|red|blue|green|yellow|magenta|cyan))?\>" +magenta (i) "^[[:space:]]*i?color\>" "\<(start|end)=" ## Strings -color white (i) ""(\\.|[^"])*"" +white (i) ""(\\.|[^"])*"" ## Comments -color brightblue (i) "^[[:space:]]*#.*$" -color cyan (i) "^[[:space:]]*##.*$" - +brightblue (i) "^[[:space:]]*#.*$" +cyan (i) "^[[:space:]]*##.*$" diff --git a/runtime/syntax/nginx.micro b/runtime/syntax/nginx.micro index 82d75990..ca84f801 100644 --- a/runtime/syntax/nginx.micro +++ b/runtime/syntax/nginx.micro @@ -1,13 +1,13 @@ syntax "Nginx" "nginx.*\.conf$" "\.nginx$" header "^(server|upstream)[a-z ]*\{$" -color brightmagenta "\b(events|server|http|location|upstream)[[:space:]]*\{" +color brightmagenta "\<(events|server|http|location|upstream)[[:space:]]*\{" color cyan "(^|[[:space:]{;])(access_log|add_after_body|add_before_body|add_header|addition_types|aio|alias|allow|ancient_browser|ancient_browser_value|auth_basic|auth_basic_user_file|autoindex|autoindex_exact_size|autoindex_localtime|break|charset|charset_map|charset_types|chunked_transfer_encoding|client_body_buffer_size|client_body_in_file_only|client_body_in_single_buffer|client_body_temp_path|client_body_timeout|client_header_buffer_size|client_header_timeout|client_max_body_size|connection_pool_size|create_full_put_path|daemon|dav_access|dav_methods|default_type|deny|directio|directio_alignment|disable_symlinks|empty_gif|env|error_log|error_page|expires|fastcgi_buffer_size|fastcgi_buffers|fastcgi_busy_buffers_size|fastcgi_cache|fastcgi_cache_bypass|fastcgi_cache_key|fastcgi_cache_lock|fastcgi_cache_lock_timeout|fastcgi_cache_min_uses|fastcgi_cache_path|fastcgi_cache_use_stale|fastcgi_cache_valid|fastcgi_connect_timeout|fastcgi_hide_header|fastcgi_ignore_client_abort|fastcgi_ignore_headers|fastcgi_index|fastcgi_intercept_errors|fastcgi_keep_conn|fastcgi_max_temp_file_size|fastcgi_next_upstream|fastcgi_no_cache|fastcgi_param|fastcgi_pass|fastcgi_pass_header|fastcgi_read_timeout|fastcgi_send_timeout|fastcgi_split_path_info|fastcgi_store|fastcgi_store_access|fastcgi_temp_file_write_size|fastcgi_temp_path|flv|geo|geoip_city|geoip_country|gzip|gzip_buffers|gzip_comp_level|gzip_disable|gzip_http_version|gzip_min_length|gzip_proxied|gzip_static|gzip_types|gzip_vary|if|if_modified_since|ignore_invalid_headers|image_filter|image_filter_buffer|image_filter_jpeg_quality|image_filter_sharpen|image_filter_transparency|include|index|internal|ip_hash|keepalive|keepalive_disable|keepalive_requests|keepalive_timeout|large_client_header_buffers|limit_conn|limit_conn_log_level|limit_conn_zone|limit_except|limit_rate|limit_rate_after|limit_req|limit_req_log_level|limit_req_zone|limit_zone|lingering_close|lingering_time|lingering_timeout|listen|location|log_format|log_not_found|log_subrequest|map|map_hash_bucket_size|map_hash_max_size|master_process|max_ranges|memcached_buffer_size|memcached_connect_timeout|memcached_next_upstream|memcached_pass|memcached_read_timeout|memcached_send_timeout|merge_slashes|min_delete_depth|modern_browser|modern_browser_value|mp4|mp4_buffer_size|mp4_max_buffer_size|msie_padding|msie_refresh|open_file_cache|open_file_cache_errors|open_file_cache_min_uses|open_file_cache_valid|open_log_file_cache|optimize_server_names|override_charset|pcre_jit|perl|perl_modules|perl_require|perl_set|pid|port_in_redirect|postpone_output|proxy_buffer_size|proxy_buffering|proxy_buffers|proxy_busy_buffers_size|proxy_cache|proxy_cache_bypass|proxy_cache_key|proxy_cache_lock|proxy_cache_lock_timeout|proxy_cache_min_uses|proxy_cache_path|proxy_cache_use_stale|proxy_cache_valid|proxy_connect_timeout|proxy_cookie_domain|proxy_cookie_path|proxy_hide_header|proxy_http_version|proxy_ignore_client_abort|proxy_ignore_headers|proxy_intercept_errors|proxy_max_temp_file_size|proxy_next_upstream|proxy_no_cache|proxy_pass|proxy_pass_header|proxy_read_timeout|proxy_redirect|proxy_send_timeout|proxy_set_header|proxy_ssl_session_reuse|proxy_store|proxy_store_access|proxy_temp_file_write_size|proxy_temp_path|random_index|read_ahead|real_ip_header|recursive_error_pages|request_pool_size|reset_timedout_connection|resolver|resolver_timeout|return|rewrite|root|satisfy|satisfy_any|secure_link_secret|send_lowat|send_timeout|sendfile|sendfile_max_chunk|server|server|server_name|server_name_in_redirect|server_names_hash_bucket_size|server_names_hash_max_size|server_tokens|set|set_real_ip_from|source_charset|split_clients|ssi|ssi_silent_errors|ssi_types|ssl|ssl_certificate|ssl_certificate_key|ssl_ciphers|ssl_client_certificate|ssl_crl|ssl_dhparam|ssl_engine|ssl_prefer_server_ciphers|ssl_protocols|ssl_session_cache|ssl_session_timeout|ssl_verify_client|ssl_verify_depth|sub_filter|sub_filter_once|sub_filter_types|tcp_nodelay|tcp_nopush|timer_resolution|try_files|types|types_hash_bucket_size|types_hash_max_size|underscores_in_headers|uninitialized_variable_warn|upstream|user|userid|userid_domain|userid_expires|userid_name|userid_p3p|userid_path|userid_service|valid_referers|variables_hash_bucket_size|variables_hash_max_size|worker_priority|worker_processes|worker_rlimit_core|worker_rlimit_nofile|working_directory|xml_entities|xslt_stylesheet|xslt_types)([[:space:]]|$)" -color brightcyan "\b(on|off)\b" +color brightcyan "\<(on|off)\>" color brightyellow "\$[A-Za-z][A-Za-z0-9_]*" color red "[*]" color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" -color yellow (s) "'$.*?';$" +color yellow start="'$" end="';$" color brightblack "(^|[[:space:]])#([^{].*)?$" color ,green "[[:space:]]+$" color ,red " + +| + +" diff --git a/runtime/syntax/ocaml.micro b/runtime/syntax/ocaml.micro index 40a4b89b..49ba151a 100644 --- a/runtime/syntax/ocaml.micro +++ b/runtime/syntax/ocaml.micro @@ -1,26 +1,25 @@ syntax "OCaml" "\.mli?$" #uid -color red "\b[A-Z][0-9a-z_]{2,}\b" +color red "\<[A-Z][0-9a-z_]{2,}\>" #declarations -color green "\b(let|val|method|in|and|rec|private|virtual|constraint)\b" +color green "\<(let|val|method|in|and|rec|private|virtual|constraint)\>" #structure items -color red "\b(type|open|class|module|exception|external)\b" +color red "\<(type|open|class|module|exception|external)\>" #patterns -color blue "\b(fun|function|functor|match|try|with)\b" +color blue "\<(fun|function|functor|match|try|with)\>" #patterns-modifiers -color yellow "\b(as|when|of)\b" +color yellow "\<(as|when|of)\>" #conditions -color cyan "\b(if|then|else)\b" +color cyan "\<(if|then|else)\>" #blocs -color magenta "\b(begin|end|object|struct|sig|for|while|do|done|to|downto)\b" +color magenta "\<(begin|end|object|struct|sig|for|while|do|done|to|downto)\>" #constantes -color green "\b(true|false)\b" +color green "\<(true|false)\>" #modules/classes -color green "\b(include|inherit|initializer)\b" +color green "\<(include|inherit|initializer)\>" #expr modifiers -color yellow "\b(new|ref|mutable|lazy|assert|raise)\b" -#brightblacks -color white (s) "\(\*.*?\*\)" +color yellow "\<(new|ref|mutable|lazy|assert|raise)\>" +#comments +color white start="\(\*" end="\*\)" #strings (no multiline handling yet) color brightblack ""[^\"]*"" - diff --git a/runtime/syntax/perl.micro b/runtime/syntax/perl.micro index 5e3f4984..0e000030 100644 --- a/runtime/syntax/perl.micro +++ b/runtime/syntax/perl.micro @@ -3,12 +3,11 @@ syntax "Perl" "\.p[lm]$" header "^#!.*/(env +)?perl( |$)" -color red "\b(accept|alarm|atan2|bin(d|mode)|c(aller|h(dir|mod|op|own|root)|lose(dir)?|onnect|os|rypt)|d(bm(close|open)|efined|elete|ie|o|ump)|e(ach|of|val|x(ec|ists|it|p))|f(cntl|ileno|lock|ork))\b" "\b(get(c|login|peername|pgrp|ppid|priority|pwnam|(host|net|proto|serv)byname|pwuid|grgid|(host|net)byaddr|protobynumber|servbyport)|([gs]et|end)(pw|gr|host|net|proto|serv)ent|getsock(name|opt)|gmtime|goto|grep|hex|index|int|ioctl|join)\b" "\b(keys|kill|last|length|link|listen|local(time)?|log|lstat|m|mkdir|msg(ctl|get|snd|rcv)|next|oct|open(dir)?|ord|pack|pipe|pop|printf?|push|q|qq|qx|rand|re(ad(dir|link)?|cv|do|name|quire|set|turn|verse|winddir)|rindex|rmdir|s|scalar|seek(dir)?)\b" "\b(se(lect|mctl|mget|mop|nd|tpgrp|tpriority|tsockopt)|shift|shm(ctl|get|read|write)|shutdown|sin|sleep|socket(pair)?|sort|spli(ce|t)|sprintf|sqrt|srand|stat|study|substr|symlink|sys(call|read|tem|write)|tell(dir)?|time|tr(y)?|truncate|umask)\b" "\b(un(def|link|pack|shift)|utime|values|vec|wait(pid)?|wantarray|warn|write)\b" -color magenta "\b(continue|else|elsif|do|for|foreach|if|unless|until|while|eq|ne|lt|gt|le|ge|cmp|x|my|sub|use|package|can|isa)\b" -cyan (is) "[$@%].*?( |[^0-9A-Z_]|-)" +color red "\<(accept|alarm|atan2|bin(d|mode)|c(aller|h(dir|mod|op|own|root)|lose(dir)?|onnect|os|rypt)|d(bm(close|open)|efined|elete|ie|o|ump)|e(ach|of|val|x(ec|ists|it|p))|f(cntl|ileno|lock|ork))\>" "\<(get(c|login|peername|pgrp|ppid|priority|pwnam|(host|net|proto|serv)byname|pwuid|grgid|(host|net)byaddr|protobynumber|servbyport)|([gs]et|end)(pw|gr|host|net|proto|serv)ent|getsock(name|opt)|gmtime|goto|grep|hex|index|int|ioctl|join)\>" "\<(keys|kill|last|length|link|listen|local(time)?|log|lstat|m|mkdir|msg(ctl|get|snd|rcv)|next|oct|open(dir)?|ord|pack|pipe|pop|printf?|push|q|qq|qx|rand|re(ad(dir|link)?|cv|do|name|quire|set|turn|verse|winddir)|rindex|rmdir|s|scalar|seek(dir)?)\>" "\<(se(lect|mctl|mget|mop|nd|tpgrp|tpriority|tsockopt)|shift|shm(ctl|get|read|write)|shutdown|sin|sleep|socket(pair)?|sort|spli(ce|t)|sprintf|sqrt|srand|stat|study|substr|symlink|sys(call|read|tem|write)|tell(dir)?|time|tr(y)?|truncate|umask)\>" "\<(un(def|link|pack|shift)|utime|values|vec|wait(pid)?|wantarray|warn|write)\>" +color magenta "\<(continue|else|elsif|do|for|foreach|if|unless|until|while|eq|ne|lt|gt|le|ge|cmp|x|my|sub|use|package|can|isa)\>" +cyan (i) start="[$@%]" end="( |[^0-9A-Z_]|-)" color yellow "".*"|qq\|.*\|" color white "[sm]/.*/" -color white (s) "(^use| = new).*?;" +color white start="(^use| = new)" end=";" color green "#.*" -color yellow (s) "<< 'STOP'.*?STOP" - +color yellow start="<< 'STOP'" end="STOP" diff --git a/runtime/syntax/perl6.micro b/runtime/syntax/perl6.micro index 92194f50..10d39d3a 100644 --- a/runtime/syntax/perl6.micro +++ b/runtime/syntax/perl6.micro @@ -3,15 +3,14 @@ ### Found in CPAN - http://cpansearch.perl.org/src/NIGE/Goo-0.09/lib/.gooskel/nanorc syntax "Perl6" "\.p6$" -color brightblue "\b(accept|alarm|atan2|bin(d|mode)|c(aller|h(dir|mod|op|own|root)|lose(dir)?|onnect|os|rypt)|d(bm(close|open)|efined|elete|ie|o|ump)|e(ach|of|val|x(ec|ists|it|p))|f(cntl|ileno|lock|ork)|get(c|login|peername|pgrp|ppid|priority|pwnam|(host|net|proto|serv)byname|pwuid|grgid|(host|net)byaddr|protobynumber|servbyport)|([gs]et|end)(pw|gr|host|net|proto|serv)ent|getsock(name|opt)|gmtime|goto|grep|hex|index|int|ioctl|join|keys|kill|last|length|link|listen|local(time)?|log|lstat|m|mkdir|msg(ctl|get|snd|rcv)|next|oct|open(dir)?|ord|pack|pipe|pop|printf?|push|q|qq|qx|rand|re(ad(dir|link)?|cv|do|name|quire|set|turn|verse|winddir)|rindex|rmdir|s|scalar|seek|seekdir|se(lect|mctl|mget|mop|nd|tpgrp|tpriority|tsockopt)|shift|shm(ctl|get|read|write)|shutdown|sin|sleep|socket(pair)?|sort|spli(ce|t)|sprintf|sqrt|srand|stat|study|substr|symlink|sys(call|read|tem|write)|tell(dir)?|time|tr|y|truncate|umask|un(def|link|pack|shift)|utime|values|vec|wait(pid)?|wantarray|warn|write)\b" -color brightblue "\b(continue|else|elsif|do|for|foreach|if|unless|until|while|eq|ne|lt|gt|le|ge|cmp|x|my|sub|use|package|can|isa)\b" +color brightblue "\<(accept|alarm|atan2|bin(d|mode)|c(aller|h(dir|mod|op|own|root)|lose(dir)?|onnect|os|rypt)|d(bm(close|open)|efined|elete|ie|o|ump)|e(ach|of|val|x(ec|ists|it|p))|f(cntl|ileno|lock|ork)|get(c|login|peername|pgrp|ppid|priority|pwnam|(host|net|proto|serv)byname|pwuid|grgid|(host|net)byaddr|protobynumber|servbyport)|([gs]et|end)(pw|gr|host|net|proto|serv)ent|getsock(name|opt)|gmtime|goto|grep|hex|index|int|ioctl|join|keys|kill|last|length|link|listen|local(time)?|log|lstat|m|mkdir|msg(ctl|get|snd|rcv)|next|oct|open(dir)?|ord|pack|pipe|pop|printf?|push|q|qq|qx|rand|re(ad(dir|link)?|cv|do|name|quire|set|turn|verse|winddir)|rindex|rmdir|s|scalar|seek|seekdir|se(lect|mctl|mget|mop|nd|tpgrp|tpriority|tsockopt)|shift|shm(ctl|get|read|write)|shutdown|sin|sleep|socket(pair)?|sort|spli(ce|t)|sprintf|sqrt|srand|stat|study|substr|symlink|sys(call|read|tem|write)|tell(dir)?|time|tr|y|truncate|umask|un(def|link|pack|shift)|utime|values|vec|wait(pid)?|wantarray|warn|write)\>" +color brightblue "\<(continue|else|elsif|do|for|foreach|if|unless|until|while|eq|ne|lt|gt|le|ge|cmp|x|my|sub|use|package|can|isa)\>" # Perl 6 words -color brightcyan "\b(has|is|class|role|given|when|BUILD|multi|returns|method|submethod|slurp|say|sub)\b" -color brightmagenta (s) "[$@%].*?( |\\W|-)" +color brightcyan "\<(has|is|class|role|given|when|BUILD|multi|returns|method|submethod|slurp|say|sub)\>" +color brightmagenta start="[$@%]" end="( |\\W|-)" color brightred "".*"|qq\|.*\|" color white "[sm]/.*/" -color brightblue (s) "(^use| = new).*?;" +color brightblue start="(^use| = new)" end=";" color brightgreen "#.*" -color brightred (s) "<" +color white start="<\?(php|=)?" end="\?>" # Functions color brightblue "([a-zA-Z0-9_-]*)\(" # Constructs @@ -33,9 +33,8 @@ color white "\{\$[^}]*\}" # PHP Tags color red "(<\?(php)?|\?>)" # General HTML -color red (s) "\?>.*?<\?(php|=)?" +color red start="\?>" end="<\?(php|=)?" # trailing whitespace color ,green "[^[:space:]]{1}[[:space:]]+$" -# multi-line brightblacks -color brightyellow (s) "/\*.*?\*/" - +# multi-line comments +color brightyellow start="/\*" end="\*/" diff --git a/runtime/syntax/pkgbuild.micro b/runtime/syntax/pkgbuild.micro index c9f02262..7202ac9a 100644 --- a/runtime/syntax/pkgbuild.micro +++ b/runtime/syntax/pkgbuild.micro @@ -1,23 +1,23 @@ ## Arch PKGBUILD files ## syntax "PKGBUILD" "^.*PKGBUILD$" -color green (s) "^..*?$" +color green start="^." end="$" color cyan "^.*(pkgbase|pkgname|pkgver|pkgrel|pkgdesc|arch|url|license).*=.*$" -color brightcyan "\b(pkgbase|pkgname|pkgver|pkgrel|pkgdesc|arch|url|license)\b" +color brightcyan "\<(pkgbase|pkgname|pkgver|pkgrel|pkgdesc|arch|url|license)\>" color brightcyan "(\$|\$\{|\$\()(pkgbase|pkgname|pkgver|pkgrel|pkgdesc|arch|url|license)(\}|\))" color cyan "^.*(depends|makedepends|optdepends|conflicts|provides|replaces).*=.*$" -color brightcyan "\b(depends|makedepends|optdepends|conflicts|provides|replaces)\b" +color brightcyan "\<(depends|makedepends|optdepends|conflicts|provides|replaces)\>" color brightcyan "(\$|\$\{|\$\()(depends|makedepends|optdepends|conflicts|provides|replaces)(\}|\))" color cyan "^.*(groups|backup|noextract|options).*=.*$" -color brightcyan "\b(groups|backup|noextract|options)\b" +color brightcyan "\<(groups|backup|noextract|options)\>" color brightcyan "(\$|\$\{|\$\()(groups|backup|noextract|options)(\}|\))" color cyan "^.*(install|source|md5sums|sha1sums|sha256sums|sha384sums|sha512sums).*=.*$" -color brightcyan "\b(install|source|md5sums|sha1sums|sha256sums|sha384sums|sha512sums)\b" +color brightcyan "\<(install|source|md5sums|sha1sums|sha256sums|sha384sums|sha512sums)\>" color brightcyan "(\$|\$\{|\$\()(install|source|md5sums|sha1sums|sha256sums|sha384sums|sha512sums)(\}|\))" -color brightcyan "\b(startdir|srcdir|pkgdir)\b" +color brightcyan "\<(startdir|srcdir|pkgdir)\>" color cyan "\.install" color brightwhite "=" "'" "\(" "\)" "\"" "#.*$" "\," "\{" "\}" color brightred "build\(\)" color brightred "package_.*.*$" -color brightred "\b(configure|make|cmake|scons)\b" -color red "\b(DESTDIR|PREFIX|prefix|sysconfdir|datadir|libdir|includedir|mandir|infodir)\b" +color brightred "\<(configure|make|cmake|scons)\>" +color red "\<(DESTDIR|PREFIX|prefix|sysconfdir|datadir|libdir|includedir|mandir|infodir)\>" diff --git a/runtime/syntax/po.micro b/runtime/syntax/po.micro index efeb56e8..d434b2a4 100644 --- a/runtime/syntax/po.micro +++ b/runtime/syntax/po.micro @@ -1,6 +1,6 @@ syntax "PO" "\.pot?$" -color cyan "\b(msgid|msgstr)\b" +color cyan "\<(msgid|msgstr)\>" color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" color magenta "\\.?" color brightblack "(^|[[:space:]])#([^{].*)?$" diff --git a/runtime/syntax/pov.micro b/runtime/syntax/pov.micro index 15fae91a..f8cb8b5a 100644 --- a/runtime/syntax/pov.micro +++ b/runtime/syntax/pov.micro @@ -2,15 +2,14 @@ ## syntax "POV" "\.(pov|POV|povray|POVRAY)$" color brightcyan "^[[:space:]]*#[[:space:]]*(declare)" -color brightyellow "\b(sphere|cylinder|translate|matrix|rotate|scale)\b" -color brightyellow "\b(orthographic|location|up|right|direction|clipped_by)\b" -color brightyellow "\b(fog_type|fog_offset|fog_alt|rgb|distance|transform)\b" -color brightred "^\b(texture)\b" -color brightred "\b(light_source|background)\b" -color brightred "\b(fog|object|camera)\b" +color brightyellow "\<(sphere|cylinder|translate|matrix|rotate|scale)\>" +color brightyellow "\<(orthographic|location|up|right|direction|clipped_by)\>" +color brightyellow "\<(fog_type|fog_offset|fog_alt|rgb|distance|transform)\>" +color brightred "^\<(texture)\>" +color brightred "\<(light_source|background)\>" +color brightred "\<(fog|object|camera)\>" color green "(\{|\}|\(|\)|\;|\]|\[|`|\\|\$|<|>|!|=|&|\|)" -color brightmagenta "\b(union|group|subgroup)\b" +color brightmagenta "\<(union|group|subgroup)\>" ## Comment highlighting color brightblue "//.*" -color brightblue (s) "/\*.*?\*/" - +color brightblue start="/\*" end="\*/" diff --git a/runtime/syntax/puppet.micro b/runtime/syntax/puppet.micro index 1b29e0e9..21875ecf 100644 --- a/runtime/syntax/puppet.micro +++ b/runtime/syntax/puppet.micro @@ -8,14 +8,14 @@ color brightwhite "^[[:space:]]([a-z][a-z0-9_]+)" color brightgreen "\$[a-z:][a-z0-9_:]+" ## List of built in types, also catches defines -color yellow "\b(augeas|computer|cron|exec|file|filebucket|group|host|interface|k5login|macauthorization|mailalias|maillist|mcx|mount|nagios_command|nagios_contact|nagios_contactgroup|nagios_host|nagios_hostdependency|nagios_hostescalation|nagios_hostextinfo|nagios_hostgroup|nagios_service|nagios_servicedependency|nagios_serviceescalation|nagios_serviceextinfo|nagios_servicegroup|nagios_timeperiod|notify|package|resources|router|schedule|scheduled_task|selboolean|selmodule|service|ssh_authorized_key|sshkey|stage|tidy|user|vlan|yumrepo|zfs|zone|zpool|anchor)\b" -color yellow "\b(class|define|if|else|undef|inherits)\b" +color yellow "\<(augeas|computer|cron|exec|file|filebucket|group|host|interface|k5login|macauthorization|mailalias|maillist|mcx|mount|nagios_command|nagios_contact|nagios_contactgroup|nagios_host|nagios_hostdependency|nagios_hostescalation|nagios_hostextinfo|nagios_hostgroup|nagios_service|nagios_servicedependency|nagios_serviceescalation|nagios_serviceextinfo|nagios_servicegroup|nagios_timeperiod|notify|package|resources|router|schedule|scheduled_task|selboolean|selmodule|service|ssh_authorized_key|sshkey|stage|tidy|user|vlan|yumrepo|zfs|zone|zpool|anchor)\>" +color yellow "\<(class|define|if|else|undef|inherits)\>" color red "(=|-|~|>)" ## Constants -color brightblue "(\$|@|@@)?\b[A-Z]+[0-9A-Z_a-z]*" +color brightblue "(\$|@|@@)?\<[A-Z]+[0-9A-Z_a-z]*" ## Ruby "symbols" -color magenta "([ ]|^):[0-9A-Z_]+\b" +color magenta "([ ]|^):[0-9A-Z_]+\>" ## Regular expressions color brightmagenta "/([^/]|(\\/))*/[iomx]*" "%r\{([^}]|(\\}))*\}[iomx]*" ## Shell command expansion is in `backticks` or like %x{this}. These are diff --git a/runtime/syntax/python.micro b/runtime/syntax/python.micro index 87cc23fa..ed810689 100644 --- a/runtime/syntax/python.micro +++ b/runtime/syntax/python.micro @@ -40,10 +40,5 @@ color constant "["][^"]*[^\\]["]" "["]{3}.*[^\\]["]{3}" color comment "#.*$" ## block brightblacks -color comment (s) """"([^"]|$).*?"""" (s) "'''([^']|$).*?'''" -#color cyan (s) """"[^"].*?"""" (s) "'''[^'].*?'''" -#color cyan (s) "([[:space:]]"""|^""").*?"""" (s) "'''[^'].*?'''" -#color cyan (s) """".*?"""" (s) "'''.*?'''" -#color cyan (s) "("""[^"]|[^"]""").*?("""[^"]|[^"]""")" (s) "'''[^'].*?'''" -#color cyan (s) "\"\"\".*?\"\"\"" - +color comment start=""""([^"]|$)" end=""""" +color comment start="'''([^']|$)" end="'''" diff --git a/runtime/syntax/reST.micro b/runtime/syntax/reST.micro index 0677272c..c0152fda 100644 --- a/runtime/syntax/reST.micro +++ b/runtime/syntax/reST.micro @@ -10,7 +10,7 @@ color brightred "::" color blue "`[^`]+`_{1,2}" # code color yellow "``[^`]+``" -# directives or brightblacks +# directives or comments color cyan "^\.\. .*$" # anon link targets color cyan "^__ .*$" diff --git a/runtime/syntax/rpmspec.micro b/runtime/syntax/rpmspec.micro index 878cc6bb..eab8ee5c 100644 --- a/runtime/syntax/rpmspec.micro +++ b/runtime/syntax/rpmspec.micro @@ -1,21 +1,21 @@ syntax "Rpmspec" "\.spec$" "\.rpmspec$" -color cyan "\b(Icon|ExclusiveOs|ExcludeOs):" -color cyan "\b(BuildArch|BuildArchitectures|ExclusiveArch|ExcludeArch):" -color cyan "\b(Conflicts|Obsoletes|Provides|Requires|Requires\(.*\)|Enhances|Suggests|BuildConflicts|BuildRequires|Recommends|PreReq|Supplements):" -color cyan "\b(Epoch|Serial|Nosource|Nopatch):" -color cyan "\b(AutoReq|AutoProv|AutoReqProv):" -color cyan "\b(Copyright|License|Summary|Summary\(.*\)|Distribution|Vendor|Packager|Group|Source[0-9]*|Patch[0-9]*|BuildRoot|Prefix):" -color cyan "\b(Name|Version|Release|Url|URL):" -color cyan (s) "^(Source|Patch).*?:" +color cyan "\<(Icon|ExclusiveOs|ExcludeOs):" +color cyan "\<(BuildArch|BuildArchitectures|ExclusiveArch|ExcludeArch):" +color cyan "\<(Conflicts|Obsoletes|Provides|Requires|Requires\(.*\)|Enhances|Suggests|BuildConflicts|BuildRequires|Recommends|PreReq|Supplements):" +color cyan "\<(Epoch|Serial|Nosource|Nopatch):" +color cyan "\<(AutoReq|AutoProv|AutoReqProv):" +color cyan "\<(Copyright|License|Summary|Summary\(.*\)|Distribution|Vendor|Packager|Group|Source[0-9]*|Patch[0-9]*|BuildRoot|Prefix):" +color cyan "\<(Name|Version|Release|Url|URL):" +color cyan start="^(Source|Patch)" end=":" color cyan "(i386|i486|i586|i686|athlon|ia64|alpha|alphaev5|alphaev56|alphapca56|alphaev6|alphaev67|sparc|sparcv9|sparc64armv3l|armv4b|armv4lm|ips|mipsel|ppc|ppc|iseries|ppcpseries|ppc64|m68k|m68kmint|Sgi|rs6000|i370|s390x|s390|noarch)" color cyan "(ifarch|ifnarch|ifos|ifnos)" color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" color brightyellow "%(if|else|endif|define|global|undefine)" color brightyellow "%_?([A-Z_a-z_0-9_]*)" -color brightyellow (s) "%\{.*?\}" -color brightyellow (s) "%\{__.*?\}" -color brightyellow "\$(RPM_BUILD_ROOT)\b" +color brightyellow start="%\{" end="\}" +color brightyellow start="%\{__" end="\}" +color brightyellow "\$(RPM_BUILD_ROOT)\>" color brightmagenta "^%(build$|changelog|check$|clean$|description)" color brightmagenta "^%(files|install$|package|prep$)" color brightmagenta "^%(pre|preun|pretrans|post|postun|posttrans)" diff --git a/runtime/syntax/ruby.micro b/runtime/syntax/ruby.micro index d95c718a..53947bea 100644 --- a/runtime/syntax/ruby.micro +++ b/runtime/syntax/ruby.micro @@ -27,7 +27,7 @@ color constant "'([^']|(\\'))*'" "%[qw]\{[^}]*\}" "%[qw]\([^)]*\)" "%[qw]<[^>]*> color comment "#[^{].*$" "#$" color comment "##[^{].*$" "##$" ## "Here" docs -color constant (s) "<<-?'?EOT'?.*?^EOT" +color constant start="<<-?'?EOT'?" end="^EOT" ## Some common markers color todo "(XXX|TODO|FIXME|\?\?\?)" diff --git a/runtime/syntax/rust.micro b/runtime/syntax/rust.micro index 38030ec5..1ee1a706 100644 --- a/runtime/syntax/rust.micro +++ b/runtime/syntax/rust.micro @@ -21,16 +21,16 @@ color type "[A-Z][a-z]+" # Strings color constant "\".*\"" -color constant (s) "\".*?\"" +color constant start="\".*\\$" end=".*\"" # NOTE: This isn't accurate but matching "#{0,} for the end of the string is too liberal -color constant (s) "r#+\".*?\"#+" +color green start="r#+\"" end="\"#+" # Comments color comment "//.*" -color comment (s) "/\*.*?\*/" +color comment start="/\*" end="\*/" # Attributes -color special (s) "#!\[.*?\]" +color special start="#!\[" end="\]" # Some common markers color todo "(XXX|TODO|FIXME|\?\?\?)" diff --git a/runtime/syntax/scala.micro b/runtime/syntax/scala.micro index d16fc6e7..d116dc46 100644 --- a/runtime/syntax/scala.micro +++ b/runtime/syntax/scala.micro @@ -1,13 +1,12 @@ ## Here is an example for Scala. ## syntax "Scala" "\.scala$" -color green "\b(boolean|byte|char|double|float|int|long|new|short|this|transient|void)\b" -color red "\b(match|val|var|break|case|catch|continue|default|do|else|finally|for|if|return|switch|throw|try|while)\b" -color cyan "\b(def|object|case|trait|lazy|implicit|abstract|class|extends|final|implements|import|instanceof|interface|native|package|private|protected|public|static|strictfp|super|synchronized|throws|volatile|sealed)\b" +color green "\<(boolean|byte|char|double|float|int|long|new|short|this|transient|void)\>" +color red "\<(match|val|var|break|case|catch|continue|default|do|else|finally|for|if|return|switch|throw|try|while)\>" +color cyan "\<(def|object|case|trait|lazy|implicit|abstract|class|extends|final|implements|import|instanceof|interface|native|package|private|protected|public|static|strictfp|super|synchronized|throws|volatile|sealed)\>" color red ""[^"]*"" -color yellow "\b(true|false|null)\b" +color yellow "\<(true|false|null)\>" color blue "//.*" -color blue (s) "/\*.*?\*/" -color brightblue (s) "/\*\*.*?\*/" +color blue start="/\*" end="\*/" +color brightblue start="/\*\*" end="\*/" color ,green "[[:space:]]+$" - diff --git a/runtime/syntax/sls.micro b/runtime/syntax/sls.micro index 01c9aa0a..bd78d6a5 100644 --- a/runtime/syntax/sls.micro +++ b/runtime/syntax/sls.micro @@ -11,16 +11,16 @@ color white "salt:" # Numbers, etc color red "/*[0-9]/*" -color red "\b(True|False)\b" +color red "\<(True|False)\>" # Anything between two single quotes color green ""(\\.|[^"])*"|'(\\.|[^'])*'" # Matching keywords -color yellow "\b(grain|grains|compound|pcre|grain_pcre|list|pillar)\b" +color yellow "\<(grain|grains|compound|pcre|grain_pcre|list|pillar)\>" # Comments color brightblack "^#.*" # Logic keywords -color magenta "\b(if|elif|else|or|not|and|endif|end)\b" +color magenta "\<(if|elif|else|or|not|and|endif|end)\>" diff --git a/runtime/syntax/sql.micro b/runtime/syntax/sql.micro index 878c83eb..f447683f 100644 --- a/runtime/syntax/sql.micro +++ b/runtime/syntax/sql.micro @@ -1,32 +1,32 @@ syntax "SQL" "\.sql$" "sqliterc$" -color cyan (i) "\b(ALL|ASC|AS|ALTER|AND|ADD|AUTO_INCREMENT)\b" -color cyan (i) "\b(BETWEEN|BINARY|BOTH|BY|BOOLEAN)\b" -color cyan (i) "\b(CHANGE|CHECK|COLUMNS|COLUMN|CROSS|CREATE)\b" -color cyan (i) "\b(DATABASES|DATABASE|DATA|DELAYED|DESCRIBE|DESC|DISTINCT|DELETE|DROP|DEFAULT)\b" -color cyan (i) "\b(ENCLOSED|ESCAPED|EXISTS|EXPLAIN)\b" -color cyan (i) "\b(FIELDS|FIELD|FLUSH|FOR|FOREIGN|FUNCTION|FROM)\b" -color cyan (i) "\b(GROUP|GRANT|HAVING)\b" -color cyan (i) "\b(IGNORE|INDEX|INFILE|INSERT|INNER|INTO|IDENTIFIED|IN|IS|IF)\b" -color cyan (i) "\b(JOIN|KEYS|KILL|KEY)\b" -color cyan (i) "\b(LEADING|LIKE|LIMIT|LINES|LOAD|LOCAL|LOCK|LOW_PRIORITY|LEFT|LANGUAGE)\b" -color cyan (i) "\b(MODIFY|NATURAL|NOT|NULL|NEXTVAL)\b" -color cyan (i) "\b(OPTIMIZE|OPTION|OPTIONALLY|ORDER|OUTFILE|OR|OUTER|ON)\b" -color cyan (i) "\b(PROCEDURE|PROCEDURAL|PRIMARY)\b" -color cyan (i) "\b(READ|REFERENCES|REGEXP|RENAME|REPLACE|RETURN|REVOKE|RLIKE|RIGHT)\b" -color cyan (i) "\b(SHOW|SONAME|STATUS|STRAIGHT_JOIN|SELECT|SETVAL|SET)\b" -color cyan (i) "\b(TABLES|TERMINATED|TO|TRAILING|TRUNCATE|TABLE|TEMPORARY|TRIGGER|TRUSTED)\b" -color cyan (i) "\b(UNIQUE|UNLOCK|USE|USING|UPDATE|VALUES|VARIABLES|VIEW)\b" -color cyan (i) "\b(WITH|WRITE|WHERE|ZEROFILL|TYPE|XOR)\b" -color green "\b(VARCHAR|TINYINT|TEXT|DATE|SMALLINT|MEDIUMINT|INT|INTEGER|BIGINT|FLOAT|DOUBLE|DECIMAL|DATETIME|TIMESTAMP|TIME|YEAR|UNSIGNED|CHAR|TINYBLOB|TINYTEXT|BLOB|MEDIUMBLOB|MEDIUMTEXT|LONGBLOB|LONGTEXT|ENUM|BOOL|BINARY|VARBINARY)\b" +cyan (i) "\<(ALL|ASC|AS|ALTER|AND|ADD|AUTO_INCREMENT)\>" +cyan (i) "\<(BETWEEN|BINARY|BOTH|BY|BOOLEAN)\>" +cyan (i) "\<(CHANGE|CHECK|COLUMNS|COLUMN|CROSS|CREATE)\>" +cyan (i) "\<(DATABASES|DATABASE|DATA|DELAYED|DESCRIBE|DESC|DISTINCT|DELETE|DROP|DEFAULT)\>" +cyan (i) "\<(ENCLOSED|ESCAPED|EXISTS|EXPLAIN)\>" +cyan (i) "\<(FIELDS|FIELD|FLUSH|FOR|FOREIGN|FUNCTION|FROM)\>" +cyan (i) "\<(GROUP|GRANT|HAVING)\>" +cyan (i) "\<(IGNORE|INDEX|INFILE|INSERT|INNER|INTO|IDENTIFIED|IN|IS|IF)\>" +cyan (i) "\<(JOIN|KEYS|KILL|KEY)\>" +cyan (i) "\<(LEADING|LIKE|LIMIT|LINES|LOAD|LOCAL|LOCK|LOW_PRIORITY|LEFT|LANGUAGE)\>" +cyan (i) "\<(MODIFY|NATURAL|NOT|NULL|NEXTVAL)\>" +cyan (i) "\<(OPTIMIZE|OPTION|OPTIONALLY|ORDER|OUTFILE|OR|OUTER|ON)\>" +cyan (i) "\<(PROCEDURE|PROCEDURAL|PRIMARY)\>" +cyan (i) "\<(READ|REFERENCES|REGEXP|RENAME|REPLACE|RETURN|REVOKE|RLIKE|RIGHT)\>" +cyan (i) "\<(SHOW|SONAME|STATUS|STRAIGHT_JOIN|SELECT|SETVAL|SET)\>" +cyan (i) "\<(TABLES|TERMINATED|TO|TRAILING|TRUNCATE|TABLE|TEMPORARY|TRIGGER|TRUSTED)\>" +cyan (i) "\<(UNIQUE|UNLOCK|USE|USING|UPDATE|VALUES|VARIABLES|VIEW)\>" +cyan (i) "\<(WITH|WRITE|WHERE|ZEROFILL|TYPE|XOR)\>" +color green "\<(VARCHAR|TINYINT|TEXT|DATE|SMALLINT|MEDIUMINT|INT|INTEGER|BIGINT|FLOAT|DOUBLE|DECIMAL|DATETIME|TIMESTAMP|TIME|YEAR|UNSIGNED|CHAR|TINYBLOB|TINYTEXT|BLOB|MEDIUMBLOB|MEDIUMTEXT|LONGBLOB|LONGTEXT|ENUM|BOOL|BINARY|VARBINARY)\>" # SQLite meta commands -color cyan (i) "\.\b(databases|dump|echo|exit|explain|header(s)?|help)\b" -color cyan (i) "\.\b(import|indices|mode|nullvalue|output|prompt|quit|read)\b" -color cyan (i) "\.\b(schema|separator|show|tables|timeout|width)\b" -color brightcyan "\b(ON|OFF)\b" +cyan (i) "\.\<(databases|dump|echo|exit|explain|header(s)?|help)\>" +cyan (i) "\.\<(import|indices|mode|nullvalue|output|prompt|quit|read)\>" +cyan (i) "\.\<(schema|separator|show|tables|timeout|width)\>" +color brightcyan "\<(ON|OFF)\>" -color blue "\b([0-9]+)\b" +color blue "\<([0-9]+)\>" color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" color yellow "`(\\.|[^\\`])*`" color brightblack "\-\-.*$" diff --git a/runtime/syntax/swift.micro b/runtime/syntax/swift.micro index d96adf44..66cbff46 100644 --- a/runtime/syntax/swift.micro +++ b/runtime/syntax/swift.micro @@ -30,5 +30,5 @@ color constant ""[^"]*"" # Comments color comment "//.*" color comment "///.*" -color comment (s) "/\*\*.*?\*/" +color comment start="/\*\*" end="\*/" color comment "[/**]" diff --git a/runtime/syntax/systemd.micro b/runtime/syntax/systemd.micro index 75afbb5c..f4b9bf5c 100644 --- a/runtime/syntax/systemd.micro +++ b/runtime/syntax/systemd.micro @@ -2,11 +2,11 @@ syntax "Systemd" "\.(service|socket)$" header "^\[Unit\]$" color cyan "^(Accept|After|Alias|AllowIsolate|Also|ANSI_COLOR|_AUDIT_LOGINUID|_AUDIT_SESSION|Backlog|Before|BindIPv6Only|BindsTo|BindToDevice|BlockIOReadBandwidth|BlockIOWeight|BlockIOWriteBandwidth|_BOOT_ID|Broadcast|BUG_REPORT_URL|BusName|Capabilities|CapabilityBoundingSet|CHASSIS|cipher|class|_CMDLINE|CODE_FILE|CODE_FUNC|CODE_LINE|_COMM|Compress|ConditionACPower|ConditionCapability|ConditionDirectoryNotEmpty|ConditionFileIsExecutable|ConditionFileNotEmpty|ConditionHost|ConditionKernelCommandLine|ConditionNull|ConditionPathExists|ConditionPathExistsGlob|ConditionPathIsDirectory|ConditionPathIsMountPoint|ConditionPathIsReadWrite|ConditionPathIsSymbolicLink|ConditionSecurity|ConditionVirtualization|Conflicts|ControlGroup|ControlGroupAttribute|ControlGroupModify|ControlGroupPersistent|controllers|Controllers|CPE_NAME|CPUAffinity|CPUSchedulingPolicy|CPUSchedulingPriority|CPUSchedulingResetOnFork|CPUShares|CrashChVT|CrashShell|__CURSOR|debug|DefaultControllers|DefaultDependencies|DefaultLimitAS|DefaultLimitCORE|DefaultLimitCPU|DefaultLimitDATA|DefaultLimitFSIZE|DefaultLimitLOCKS|DefaultLimitMEMLOCK|DefaultLimitMSGQUEUE|DefaultLimitNICE|DefaultLimitNOFILE|DefaultLimitNPROC|DefaultLimitRSS|DefaultLimitRTPRIO|DefaultLimitRTTIME|DefaultLimitSIGPENDING|DefaultLimitSTACK|DefaultStandardError|DefaultStandardOutput|Description|DeviceAllow|DeviceDeny|DirectoryMode|DirectoryNotEmpty|Documentation|DumpCore|entropy|Environment|EnvironmentFile|ERRNO|event_timeout|_EXE|ExecReload|ExecStart|ExecStartPost|ExecStartPre|ExecStop|ExecStopPost|ExecStopPre|filter|FONT|FONT_MAP|FONT_UNIMAP|ForwardToConsole|ForwardToKMsg|ForwardToSyslog|FreeBind|freq|FsckPassNo|fstab|_GID|Group|GuessMainPID|HandleHibernateKey|HandleLidSwitch|HandlePowerKey|HandleSuspendKey|hash|HibernateKeyIgnoreInhibited|HOME_URL|_HOSTNAME|ICON_NAME|ID|IdleAction|IdleActionSec|ID_LIKE|ID_MODEL|ID_MODEL_FROM_DATABASE|IgnoreOnIsolate|IgnoreOnSnapshot|IgnoreSIGPIPE|InaccessibleDirectories|InhibitDelayMaxSec|init|IOSchedulingClass|IOSchedulingPriority|IPTOS|IPTTL|JobTimeoutSec|JoinControllers|KeepAlive|KEYMAP|KEYMAP_TOGGLE|KillExcludeUsers|KillMode|KillOnlyUsers|KillSignal|KillUserProcesses|LidSwitchIgnoreInhibited|LimitAS|LimitCORE|LimitCPU|LimitDATA|LimitFSIZE|LimitLOCKS|LimitMEMLOCK|LimitMSGQUEUE|LimitNICE|LimitNOFILE|LimitNPROC|LimitRSS|LimitRTPRIO|LimitRTTIME|LimitSIGPENDING|LimitSTACK|link_priority|valueListenDatagram|ListenFIFO|ListenMessageQueue|ListenNetlink|ListenSequentialPacket|ListenSpecial|ListenStream|LogColor|LogLevel|LogLocation|LogTarget|luks|_MACHINE_ID|MakeDirectory|Mark|MaxConnections|MaxFileSec|MaxLevelConsole|MaxLevelKMsg|MaxLevelStore|MaxLevelSyslog|MaxRetentionSec|MemoryLimit|MemorySoftLimit|MESSAGE|MESSAGE_ID|MessageQueueMaxMessages|MessageQueueMessageSize|__MONOTONIC_TIMESTAMP|MountFlags|NAME|NAutoVTs|Nice|NonBlocking|NoNewPrivileges|NotifyAccess|OnActiveSec|OnBootSec|OnCalendar|OnFailure|OnFailureIsolate|OnStartupSec|OnUnitActiveSec|OnUnitInactiveSec|OOMScoreAdjust|Options|output|PAMName|PartOf|PassCredentials|PassSecurity|PathChanged|PathExists|PathExistsGlob|PathModified|PermissionsStartOnly|_PID|PIDFile|PipeSize|PowerKeyIgnoreInhibited|PRETTY_HOSTNAME|PRETTY_NAME|Priority|PRIORITY|PrivateNetwork|PrivateTmp|PropagatesReloadTo|pss|RateLimitBurst|RateLimitInterval|ReadOnlyDirectories|ReadWriteDirectories|__REALTIME_TIMESTAMP|ReceiveBuffer|RefuseManualStart|RefuseManualStop|rel|ReloadPropagatedFrom|RemainAfterExit|RequiredBy|Requires|RequiresMountsFor|RequiresOverridable|Requisite|RequisiteOverridable|ReserveVT|ResetControllers|Restart|RestartPreventExitStatus|RestartSec|RootDirectory|RootDirectoryStartOnly|RuntimeKeepFree|RuntimeMaxFileSize|RuntimeMaxUse|RuntimeWatchdogSec|samples|scale_x|scale_y|Seal|SecureBits|_SELINUX_CONTEXT|SendBuffer|SendSIGKILL|Service|ShowStatus|ShutdownWatchdogSec|size|SmackLabel|SmackLabelIPIn|SmackLabelIPOut|SocketMode|Sockets|SourcePath|_SOURCE_REALTIME_TIMESTAMP|SplitMode|StandardError|StandardInput|StandardOutput|StartLimitAction|StartLimitBurst|StartLimitInterval|static_node|StopWhenUnneeded|Storage|string_escape|none|replaceSuccessExitStatus|SupplementaryGroups|SUPPORT_URL|SuspendKeyIgnoreInhibited|SyslogFacility|SYSLOG_FACILITY|SyslogIdentifier|SYSLOG_IDENTIFIER|SyslogLevel|SyslogLevelPrefix|SYSLOG_PID|SystemCallFilter|SYSTEMD_ALIAS|_SYSTEMD_CGROUP|_SYSTEMD_OWNER_UID|SYSTEMD_READY|_SYSTEMD_SESSION|_SYSTEMD_UNIT|_SYSTEMD_USER_UNIT|SYSTEMD_WANTS|SystemKeepFree|SystemMaxFileSize|SystemMaxUse|SysVStartPriority|TCPCongestion|TCPWrapName|timeout|TimeoutSec|TimeoutStartSec|TimeoutStopSec|TimerSlackNSec|Transparent|_TRANSPORT|tries|TTYPath|TTYReset|TTYVHangup|TTYVTDisallocate|Type|_UID|UMask|Unit|User|UtmpIdentifier|VERSION|VERSION_ID|WantedBy|Wants|WatchdogSec|What|Where|WorkingDirectory)=" -color brightblue "^\.include\b" +color brightblue "^\.include\>" color red "=" color brightmagenta "^\[(Unit|Install|Service|Socket)\]" color brightyellow "\$MAINPID" -color brightcyan "\b(true|false)\b" +color brightcyan "\<(true|false)\>" color brightblack "(^|[[:space:]])#([^{].*)?$" color ,green "[[:space:]]+$" color ,red " + +| + +" diff --git a/runtime/syntax/tcl.micro b/runtime/syntax/tcl.micro index b5eb735b..e06d4973 100644 --- a/runtime/syntax/tcl.micro +++ b/runtime/syntax/tcl.micro @@ -2,22 +2,22 @@ syntax "TCL" "\.tcl$" header "^#!.*/(env +)?tclsh( |$)" ## Standard Tcl [info commands] -color cyan "\b(after|append|array|auto_execok|auto_import|auto_load|auto_load_index|auto_qualify|binary|break|case|catch|cd|clock|close|concat|continue|else|encoding|eof|error|eval|exec|exit|expr|fblocked|fconfigure|fcopy|file|fileevent|flush|for|foreach|format|gets|glob|global|history|if|incr|info|interp|join|lappend|lindex|linsert|list|llength|load|lrange|lreplace|lsearch|lset|lsort|namespace|open|package|pid|puts|pwd|read|regexp|regsub|rename|return|scan|seek|set|socket|source|split|string|subst|switch|tclLog|tell|time|trace|unknown|unset|update|uplevel|upvar|variable|vwait|while)\b" +color cyan "\<(after|append|array|auto_execok|auto_import|auto_load|auto_load_index|auto_qualify|binary|break|case|catch|cd|clock|close|concat|continue|else|encoding|eof|error|eval|exec|exit|expr|fblocked|fconfigure|fcopy|file|fileevent|flush|for|foreach|format|gets|glob|global|history|if|incr|info|interp|join|lappend|lindex|linsert|list|llength|load|lrange|lreplace|lsearch|lset|lsort|namespace|open|package|pid|puts|pwd|read|regexp|regsub|rename|return|scan|seek|set|socket|source|split|string|subst|switch|tclLog|tell|time|trace|unknown|unset|update|uplevel|upvar|variable|vwait|while)\>" ## Basic Tcl sub commands -color cyan "\b(array anymore|array donesearch|array exists|array get|array names|array nextelement|array set|array size|array startsearch|array statistics|array unset)\b" -color cyan "\b(string bytelength|string compare|string equal|string first|string index|string is|string last|string length|string map|string match|string range|string repeat|string replace|string to|string tolower|string totitle|string toupper|string trim|string trimleft|string trimright|string will|string wordend|string wordstart)\b" +color cyan "\<(array anymore|array donesearch|array exists|array get|array names|array nextelement|array set|array size|array startsearch|array statistics|array unset)\>" +color cyan "\<(string bytelength|string compare|string equal|string first|string index|string is|string last|string length|string map|string match|string range|string repeat|string replace|string to|string tolower|string totitle|string toupper|string trim|string trimleft|string trimright|string will|string wordend|string wordstart)\>" ## Extended TclX [info commands] -color cyan "\b(alarm|auto_load_pkg|bsearch|catclose|catgets|catopen|ccollate|cconcat|cequal|chgrp|chmod|chown|chroot|cindex|clength|cmdtrace|commandloop|crange|csubstr|ctoken|ctype|dup|echo|execl|fcntl|flock|fork|fstat|ftruncate|funlock|host_info|id|infox|keyldel|keylget|keylkeys|keylset|kill|lassign|lcontain|lempty|lgets|link|lmatch|loadlibindex|loop|lvarcat|lvarpop|lvarpush|max|min|nice|pipe|profile|random|readdir|replicate|scancontext|scanfile|scanmatch|select|server_accept|server_create|signal|sleep|sync|system|tclx_findinit|tclx_fork|tclx_load_tndxs|tclx_sleep|tclx_system|tclx_wait|times|translit|try_eval|umask|wait)\b" +color cyan "\<(alarm|auto_load_pkg|bsearch|catclose|catgets|catopen|ccollate|cconcat|cequal|chgrp|chmod|chown|chroot|cindex|clength|cmdtrace|commandloop|crange|csubstr|ctoken|ctype|dup|echo|execl|fcntl|flock|fork|fstat|ftruncate|funlock|host_info|id|infox|keyldel|keylget|keylkeys|keylset|kill|lassign|lcontain|lempty|lgets|link|lmatch|loadlibindex|loop|lvarcat|lvarpop|lvarpush|max|min|nice|pipe|profile|random|readdir|replicate|scancontext|scanfile|scanmatch|select|server_accept|server_create|signal|sleep|sync|system|tclx_findinit|tclx_fork|tclx_load_tndxs|tclx_sleep|tclx_system|tclx_wait|times|translit|try_eval|umask|wait)\>" ## Function declaration color brightblue "proc[[:space:]]" "(\{|\})" ## Syntax color green "(\(|\)|\;|`|\\|\$|<|>|!|=|&|\|)" ## Numbers -color brightyellow "\b[0-9]+(\.[0-9]+)?\b" +color brightyellow "\<[0-9]+(\.[0-9]+)?\>" ## Strings color yellow ""(\\.|[^"])*"" "'(\\.|[^'])*'" ## Variables -color brightred (i) "\$\{?[0-9A-Z_!@#$*?-]+\}?" +brightred (i) "\$\{?[0-9A-Z_!@#$*?-]+\}?" ## Comments color magenta "(^|;)[[:space:]]*#.*" ## Trailing whitespace diff --git a/runtime/syntax/tex.micro b/runtime/syntax/tex.micro index 3c82b513..bd3a8038 100644 --- a/runtime/syntax/tex.micro +++ b/runtime/syntax/tex.micro @@ -2,8 +2,7 @@ ## syntax "TeX" "\.tex$" "bib" "\.bib$" "cls" "\.cls$" color yellow "\$[^$]*\$" -color green (i) "\\.|\\[A-Z]*" +green (i) "\\.|\\[A-Z]*" color magenta "[{}]" color blue "%.*" -color blue (s) "\\begin\{brightblack\}.*?\\end\{brightblack\}" - +color blue start="\\begin\{comment\}" end="\\end\{comment\}" diff --git a/runtime/syntax/vala.micro b/runtime/syntax/vala.micro index 135bd99c..52f58b96 100644 --- a/runtime/syntax/vala.micro +++ b/runtime/syntax/vala.micro @@ -1,18 +1,18 @@ syntax "Vala" "\.vala$" -color green "\b(float|double|bool|char|int|uint|short|long|void|(un)?signed)\b" +color green "\<(float|double|bool|char|int|uint|short|long|void|(un)?signed)\>" color brightblue "[A-Za-z_][A-Za-z0-9_]*[[:space:]]*[()]" -color cyan "\b(for|if|while|do|else|case|default|switch|try|throw|catch)\b" -color cyan "\b(inline|typedef|struct|enum|union|extern|static|const)\b" -color cyan "\b(operator|new|delete|return|null)\b" -color cyan "\b(class|override|private|public|signal|this|weak)\b" -color brightred "\b(goto|break|continue)\b" -color brightcyan "\b(true|false)\b" -color blue "\b([0-9]+)\b" +color cyan "\<(for|if|while|do|else|case|default|switch|try|throw|catch)\>" +color cyan "\<(inline|typedef|struct|enum|union|extern|static|const)\>" +color cyan "\<(operator|new|delete|return|null)\>" +color cyan "\<(class|override|private|public|signal|this|weak)\>" +color brightred "\<(goto|break|continue)\>" +color brightcyan "\<(true|false)\>" +color blue "\<([0-9]+)\>" color red "[-+/*=<>?:!~%&|]" "->" color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" color brightblack "(^|[[:space:]])//.*" -color brightblack (s) "/\*.*?\*/" +color brightblack start="/\*" end="\*/" color brightwhite,cyan "TODO:?" color ,green "[[:space:]]+$" color ,red " + +| + +" diff --git a/runtime/syntax/xml.micro b/runtime/syntax/xml.micro index 25c533a1..47542c6d 100644 --- a/runtime/syntax/xml.micro +++ b/runtime/syntax/xml.micro @@ -3,10 +3,9 @@ syntax "XML" ".*\.([jrs]?html?|xml|sgml?|rng)$" color white "^.+$" -color green (s) "<.*?>" +color green start="<" end=">" color cyan "<[^> ]+" color cyan ">" -color yellow (s) "" -color yellow (s) "" +color yellow start="" +color yellow start="" color red "&[^;]*;" - diff --git a/runtime/syntax/xresources.micro b/runtime/syntax/xresources.micro index 7e5c8b9e..7773642c 100644 --- a/runtime/syntax/xresources.micro +++ b/runtime/syntax/xresources.micro @@ -2,9 +2,9 @@ syntax "Xresources" "X(defaults|resources)$" color green "^[[:alnum:]]+\*" color brightyellow "\*[[:alnum:]]+\:" -color blue "\b[0-9]+\b" +color blue "\<[0-9]+\>" color red "[*:=]" -color brightcyan "\b(true|false)\b" +color brightcyan "\<(true|false)\>" color brightblack "(^|[[:space:]])#([^{].*)?$" color ,green "[[:space:]]+$" color ,red " + +| + +" diff --git a/runtime/syntax/yaml.micro b/runtime/syntax/yaml.micro index 8e6b70ba..1e187204 100644 --- a/runtime/syntax/yaml.micro +++ b/runtime/syntax/yaml.micro @@ -2,8 +2,8 @@ syntax "YAML" "\.ya?ml$" header "^---" "%YAML" color green "(^| )!!(binary|bool|float|int|map|null|omap|seq|set|str) " -color brightcyan "\b(YES|yes|Y|y|ON|on|NO|no|N|n|OFF|off)\b" -color brightcyan "\b(true|false)\b" +color brightcyan "\<(YES|yes|Y|y|ON|on|NO|no|N|n|OFF|off)\>" +color brightcyan "\<(true|false)\>" color red ":[[:space:]]" "\[" "\]" ":[[:space:]]+[|>]" "^[[:space:]]*- " color brightyellow "[[:space:]][\*&][A-Za-z0-9]+" color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'" diff --git a/runtime/syntax/zsh.micro b/runtime/syntax/zsh.micro index aa8c7576..a68c96ef 100644 --- a/runtime/syntax/zsh.micro +++ b/runtime/syntax/zsh.micro @@ -6,29 +6,29 @@ header "^#!.*/(env +)?zsh( |$)" color brightyellow "\b[0-9]+\b" ## Conditionals and control flow -color green "\b(always|break|bye|case|continue|disown|do|done|elif|else|esac|exit|fi|for|function|if|in|local|read|return|select|shift|then|time|until|while)\b" +color green "\<(always|break|bye|case|continue|disown|do|done|elif|else|esac|exit|fi|for|function|if|in|local|read|return|select|shift|then|time|until|while)\>" color green "(\{|\}|\(|\)|\;|\]|\[|`|\\|\$|<|>|!|=|&|\|)" ## Conditional flags -color green "-[Ldefgruwx]\b" -color green "-(eq|ne|gt|lt|ge|le|s|n|z)\b" +color green "-[Ldefgruwx]\>" +color green "-(eq|ne|gt|lt|ge|le|s|n|z)\>" ## Bash-inherited -color brightblue "\b((un)?alias|bindkey|builtin|cd|declare|eval|exec|export|jobs|let|popd|pushd|set|source|typeset|umask|unset)\b" +color brightblue "\<((un)?alias|bindkey|builtin|cd|declare|eval|exec|export|jobs|let|popd|pushd|set|source|typeset|umask|unset)\>" ## ZSH-specific -color brightblue "\b(add-zsh-hook|autoload|chdir|compinit|dirs|(dis|en)able|echotc|emulate|print|prompt(init)?|(un)?setopt|zle|zmodload|zstyle|whence)\b" +color brightblue "\<(add-zsh-hook|autoload|chdir|compinit|dirs|(dis|en)able|echotc|emulate|print|prompt(init)?|(un)?setopt|zle|zmodload|zstyle|whence)\>" ## Common linux commands -color brightmagenta "\b((g|ig)?awk|find|\w{0,4}grep|kill|killall|\w{0,4}less|make|pkill|sed|tar)\b" +color brightmagenta "\<((g|ig)?awk|find|\w{0,4}grep|kill|killall|\w{0,4}less|make|pkill|sed|tar)\>" ## Coreutils commands -color brightmagenta "\b(base64|basename|cat|chcon|chgrp|chmod|chown|chroot|cksum|comm|cp|csplit|cut|date|dd|df|dir|dircolors|dirname|du|echo|env|expand|expr|factor|false|fmt|fold|head|hostid|id|install|join|link|ln|logname|ls|md5sum|mkdir|mkfifo|mknod|mktemp|mv|nice|nl|nohup|nproc|numfmt|od|paste|pathchk|pinky|pr|printenv|printf|ptx|pwd|readlink|realpath|rm|rmdir|runcon|seq|(sha1|sha224|sha256|sha384|sha512)sum|shred|shuf|sleep|sort|split|stat|stdbuf|stty|sum|sync|tac|tail|tee|test|timeout|touch|tr|true|truncate|tsort|tty|uname|unexpand|uniq|unlink|users|vdir|wc|who|whoami|yes)\b" +color brightmagenta "\<(base64|basename|cat|chcon|chgrp|chmod|chown|chroot|cksum|comm|cp|csplit|cut|date|dd|df|dir|dircolors|dirname|du|echo|env|expand|expr|factor|false|fmt|fold|head|hostid|id|install|join|link|ln|logname|ls|md5sum|mkdir|mkfifo|mknod|mktemp|mv|nice|nl|nohup|nproc|numfmt|od|paste|pathchk|pinky|pr|printenv|printf|ptx|pwd|readlink|realpath|rm|rmdir|runcon|seq|(sha1|sha224|sha256|sha384|sha512)sum|shred|shuf|sleep|sort|split|stat|stdbuf|stty|sum|sync|tac|tail|tee|test|timeout|touch|tr|true|truncate|tsort|tty|uname|unexpand|uniq|unlink|users|vdir|wc|who|whoami|yes)\>" ## Function definition -color brightgreen (i) "^\s+(function\s+)[0-9A-Z_]+\s+\(\)" +brightgreen (i) "^\s+(function\s+)[0-9A-Z_]+\s+\(\)" ## Variables -color brightred (i) "\$\{?[0-9A-Z_!@#$*?-]+\}?" +brightred (i) "\$\{?[0-9A-Z_!@#$*?-]+\}?" ## Strings color yellow ""(\\.|[^"])*"" diff --git a/src/highlighter.go b/src/highlighter.go index 964c35c9..5fb6dcbb 100644 --- a/src/highlighter.go +++ b/src/highlighter.go @@ -72,7 +72,7 @@ func LoadSyntaxFilesFromDir(dir string) { headerParser := regexp.MustCompile(`header "(.*)"`) ruleParser := regexp.MustCompile(`color (.*?)\s+(?:\((.*?)\)\s+)?"(.*)"`) - ruleStartEndParser := regexp.MustCompile(`color (.*?)\s+(?:\((.*?)\)\s+)?start="(.*?)"\s+end="(.*?)"`) + ruleStartEndParser := regexp.MustCompile(`color (.*?)\s+(?:\((.*?)\)\s+)?start="(.*)"\s+end="(.*)"`) var syntaxRegex *regexp.Regexp var headerRegex *regexp.Regexp @@ -158,7 +158,7 @@ func LoadSyntaxFilesFromDir(dir string) { flags := "ms" if len(submatch) == 5 { color = string(submatch[1]) - flags = string(submatch[2]) + flags += string(submatch[2]) start = string(submatch[3]) end = string(submatch[4]) } else if len(submatch) == 4 {