diff options
| author | Mitja Felicijan <mitja.felicijan@gmail.com> | 2024-10-25 00:47:47 +0200 |
|---|---|---|
| committer | Mitja Felicijan <mitja.felicijan@gmail.com> | 2024-10-25 00:47:47 +0200 |
| commit | c6cc0108ca7738023b45e0eeac0fa2390532dd93 (patch) | |
| tree | 36890e6cd3091bbab8efbe686cc56f467f645bfd /vendor/github.com/alecthomas/chroma/v2/lexers/embedded/awk.xml | |
| parent | 0130404a1dc663d4aa68d780c9bcb23a4243e68d (diff) | |
| download | jbmafp-master.tar.gz | |
Diffstat (limited to 'vendor/github.com/alecthomas/chroma/v2/lexers/embedded/awk.xml')
| -rw-r--r-- | vendor/github.com/alecthomas/chroma/v2/lexers/embedded/awk.xml | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/vendor/github.com/alecthomas/chroma/v2/lexers/embedded/awk.xml b/vendor/github.com/alecthomas/chroma/v2/lexers/embedded/awk.xml new file mode 100644 index 0000000..07476ff --- /dev/null +++ b/vendor/github.com/alecthomas/chroma/v2/lexers/embedded/awk.xml @@ -0,0 +1,95 @@ +<lexer> + <config> + <name>Awk</name> + <alias>awk</alias> + <alias>gawk</alias> + <alias>mawk</alias> + <alias>nawk</alias> + <filename>*.awk</filename> + <mime_type>application/x-awk</mime_type> + </config> + <rules> + <state name="root"> + <rule pattern="^(?=\s|/)"> + <token type="Text"/> + <push state="slashstartsregex"/> + </rule> + <rule> + <include state="commentsandwhitespace"/> + </rule> + <rule pattern="\+\+|--|\|\||&&|in\b|\$|!?~|\|&|(\*\*|[-<>+*%\^/!=|])=?"> + <token type="Operator"/> + <push state="slashstartsregex"/> + </rule> + <rule pattern="[{(\[;,]"> + <token type="Punctuation"/> + <push state="slashstartsregex"/> + </rule> + <rule pattern="[})\].]"> + <token type="Punctuation"/> + </rule> + <rule pattern="(break|continue|do|while|exit|for|if|else|return|switch|case|default)\b"> + <token type="Keyword"/> + <push state="slashstartsregex"/> + </rule> + <rule pattern="function\b"> + <token type="KeywordDeclaration"/> + <push state="slashstartsregex"/> + </rule> + <rule pattern="(atan2|cos|exp|int|log|rand|sin|sqrt|srand|gensub|gsub|index|length|match|split|patsplit|sprintf|sub|substr|tolower|toupper|close|fflush|getline|next(file)|print|printf|strftime|systime|mktime|delete|system|strtonum|and|compl|lshift|or|rshift|asorti?|isarray|bindtextdomain|dcn?gettext|@(include|load|namespace))\b"> + <token type="KeywordReserved"/> + </rule> + <rule pattern="(ARGC|ARGIND|ARGV|BEGIN(FILE)?|BINMODE|CONVFMT|ENVIRON|END(FILE)?|ERRNO|FIELDWIDTHS|FILENAME|FNR|FPAT|FS|IGNORECASE|LINT|NF|NR|OFMT|OFS|ORS|PROCINFO|RLENGTH|RS|RSTART|RT|SUBSEP|TEXTDOMAIN)\b"> + <token type="NameBuiltin"/> + </rule> + <rule pattern="[@$a-zA-Z_]\w*"> + <token type="NameOther"/> + </rule> + <rule pattern="[0-9][0-9]*\.[0-9]+([eE][0-9]+)?[fd]?"> + <token type="LiteralNumberFloat"/> + </rule> + <rule pattern="0x[0-9a-fA-F]+"> + <token type="LiteralNumberHex"/> + </rule> + <rule pattern="[0-9]+"> + <token type="LiteralNumberInteger"/> + </rule> + <rule pattern=""(\\\\|\\"|[^"])*""> + <token type="LiteralStringDouble"/> + </rule> + <rule pattern="'(\\\\|\\'|[^'])*'"> + <token type="LiteralStringSingle"/> + </rule> + </state> + <state name="commentsandwhitespace"> + <rule pattern="\s+"> + <token type="Text"/> + </rule> + <rule pattern="#.*$"> + <token type="CommentSingle"/> + </rule> + </state> + <state name="slashstartsregex"> + <rule> + <include state="commentsandwhitespace"/> + </rule> + <rule pattern="/(\\.|[^[/\\\n]|\[(\\.|[^\]\\\n])*])+/\B"> + <token type="LiteralStringRegex"/> + <pop depth="1"/> + </rule> + <rule pattern="(?=/)"> + <token type="Text"/> + <push state="#pop" state="badregex"/> + </rule> + <rule> + <pop depth="1"/> + </rule> + </state> + <state name="badregex"> + <rule pattern="\n"> + <token type="Text"/> + <pop depth="1"/> + </rule> + </state> + </rules> +</lexer>
\ No newline at end of file |
