mirror of
https://github.com/irmen/prog8.git
synced 2024-11-26 11:49:22 +00:00
67 lines
1.4 KiB
Plaintext
67 lines
1.4 KiB
Plaintext
## Prog8 syntax
|
|
|
|
## Created by Adiee5
|
|
## If issues encountered, make an issue on prog8 github page and ping @Adiee5
|
|
## Licensed under GPL v3
|
|
|
|
syntax prog8 "\.p8$"
|
|
comment ";"
|
|
|
|
# Index thing and Array literals
|
|
##color teal "\[[^]]*\]" ## nword
|
|
color teal "\]"
|
|
color teal "\["
|
|
|
|
# Scope Parents
|
|
color lightblack "[[:alpha:]][[:alnum:]_]*\."
|
|
|
|
# function
|
|
color brightyellow "[[:alpha:]][[:alnum:]_]*[[:blank:]]*\("
|
|
|
|
# Key Words
|
|
color lightgreen "\<(true|if_cs|if_eq|if_mi|if_vs|if_z|if_neg)\>"
|
|
color lightred "\<(false|if_cc|if_ne|if_pl|if_vc|if_nz|if_pos)\>"
|
|
color red "\<if(\>|_)"
|
|
color red "\<(sub|(inline[[:space:]]+)?asmsub|romsub|else|void|not|and|x?or|for|in|(down)?to|return|while|repeat|break|continue|step|goto|when|as|const|do|until|unroll)\>"
|
|
|
|
# Labels
|
|
color sky "^[[:alpha:]][[:alnum:]_]*:"
|
|
|
|
# Data Types
|
|
color crimson "\<(u?byte|u?word|str|bool|float)\>"
|
|
|
|
# Brackets
|
|
color yellow "[()]"
|
|
|
|
# @
|
|
color brightmagenta "@[[:blank:]]*[[:alnum:]_]*"
|
|
|
|
# &
|
|
color brick "&"
|
|
|
|
# Arrows
|
|
color lagoon "->"
|
|
|
|
# Encoding
|
|
color cyan "[[:alnum:]_]+:["']"
|
|
|
|
# char literal
|
|
color brightcyan "'([^\\]|\\([^ux]|u[0-9A-Fa-f]{4}|x[[:alnum:]]{2}))'"
|
|
|
|
# %asm handling
|
|
color normal start="%[Aa][Ss][Mm]" end="}}"
|
|
color magenta "%[Aa][Sm][Mm]"
|
|
|
|
# Directives
|
|
color magenta "^[[:space:]]*%[[:alpha:]]+"
|
|
|
|
# Strings
|
|
color brightblue ""([^"]|\\")*""
|
|
|
|
# Comments
|
|
color green ";.*"
|
|
color green start="/\*" end="\*/"
|
|
|
|
# Trailing Whitespace
|
|
color ,green "[[:space:]]+$"
|