annotate runtime/syntax/awk.vim @ 18478:94223687df0e

Added tag v8.1.2233 for changeset e93cab5d0f0f27fad7882f1f412927df055b090d
author Bram Moolenaar <Bram@vim.org>
date Tue, 29 Oct 2019 04:30:05 +0100
parents b11ceef7116e
children 350e1d3131d8
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1 " Vim syntax file
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2 " Language: awk, nawk, gawk, mawk
3312
b7811ab264bf updated for version 7.3.423
Bram Moolenaar <bram@vim.org>
parents: 216
diff changeset
3 " Maintainer: Antonio Colombo <azc100@gmail.com>
10140
b11ceef7116e commit https://github.com/vim/vim/commit/64d8e25bf6efe5f18b032563521c3ce278c316ab
Christian Brabandt <cb@256bit.org>
parents: 9533
diff changeset
4 " Last Change: 2016 Sep 05
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
5
9533
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
6 " AWK ref. is: Alfred V. Aho, Brian W. Kernighan, Peter J. Weinberger
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
7 " The AWK Programming Language, Addison-Wesley, 1988
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
8
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
9 " GAWK ref. is: Arnold D. Robbins
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
10 " Effective AWK Programming, Third Edition, O'Reilly, 2001
6530
435956324539 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3513
diff changeset
11 " Effective AWK Programming, Fourth Edition, O'Reilly, 2015
9533
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
12 " (also available and updated with the gawk source distribution)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
13
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
14 " MAWK is a "new awk" meaning it implements AWK ref.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
15 " mawk conforms to the Posix 1003.2 (draft 11.3)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
16 " definition of the AWK language which contains a few features
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
17 " not described in the AWK book, and mawk provides a small number of extensions.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
18
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
19 " TODO:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
20 " Dig into the commented out syntax expressions below.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
21
9533
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
22 " Quit when a syntax file was already loaded
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
23 if exists("b:current_syntax")
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
24 finish
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
25 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
26
3312
b7811ab264bf updated for version 7.3.423
Bram Moolenaar <bram@vim.org>
parents: 216
diff changeset
27 let s:cpo_save = &cpo
b7811ab264bf updated for version 7.3.423
Bram Moolenaar <bram@vim.org>
parents: 216
diff changeset
28 set cpo&vim
b7811ab264bf updated for version 7.3.423
Bram Moolenaar <bram@vim.org>
parents: 216
diff changeset
29
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
30 " A bunch of useful Awk keywords
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
31 " AWK ref. p. 188
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
32 syn keyword awkStatement break continue delete exit
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
33 syn keyword awkStatement function getline next
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
34 syn keyword awkStatement print printf return
9533
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
35 " GAWK ref. Chapter 7-9
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
36 syn keyword awkStatement switch nextfile
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
37 syn keyword awkStatement func
6530
435956324539 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3513
diff changeset
38 "
435956324539 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3513
diff changeset
39 " GAWK ref. Chapter 9, Functions
435956324539 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3513
diff changeset
40 " Numeric Functions
9533
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
41 syn keyword awkFunction atan2 cos exp int intdiv log rand sin sqrt srand
6530
435956324539 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3513
diff changeset
42 " String Manipulation Functions
435956324539 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3513
diff changeset
43 syn keyword awkFunction asort asort1 gensub gsub index length match
435956324539 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3513
diff changeset
44 syn keyword awkFunction patsplit split sprintf strtonum sub substr
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
45 syn keyword awkFunction tolower toupper
6530
435956324539 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3513
diff changeset
46 " Input Output Functions
435956324539 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3513
diff changeset
47 syn keyword awkFunction close fflush system
435956324539 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3513
diff changeset
48 " Time Functions
435956324539 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3513
diff changeset
49 syn keyword awkFunction mktime strftime systime
435956324539 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3513
diff changeset
50 " Bit Manipulation Functions
435956324539 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3513
diff changeset
51 syn keyword awkFunction and compl lshift or rshift xor
9533
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
52 " Getting Type Functions
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
53 syn keyword awkFunction isarray typeof
6530
435956324539 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3513
diff changeset
54 " String-Translation Functions
435956324539 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3513
diff changeset
55 syn keyword awkFunction bindtextdomain dcgettext dcngetext
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
56
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
57 syn keyword awkConditional if else
9533
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
58 syn keyword awkRepeat while for do
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
59
9533
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
60 syn keyword awkTodo contained TODO
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
61
9533
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
62 syn keyword awkPatterns BEGIN END BEGINFILE ENDFILE
6530
435956324539 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3513
diff changeset
63
435956324539 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3513
diff changeset
64 " GAWK ref. Chapter 7
435956324539 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3513
diff changeset
65 " Built-in Variables That Control awk
435956324539 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3513
diff changeset
66 syn keyword awkVariables BINMODE CONVFMT FIELDWIDTHS FPAT FS
435956324539 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3513
diff changeset
67 syn keyword awkVariables IGNORECASE LINT OFMT OFS ORS PREC
435956324539 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3513
diff changeset
68 syn keyword awkVariables ROUNDMODE RS SUBSEP TEXTDOMAIN
435956324539 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3513
diff changeset
69 " Built-in Variables That Convey Information
435956324539 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3513
diff changeset
70 syn keyword awkVariables ARGC ARGV ARGIND ENVIRON ERRNO FILENAME
435956324539 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3513
diff changeset
71 syn keyword awkVariables FNR NF FUNCTAB NR PROCINFO RLENGTH RSTART
435956324539 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3513
diff changeset
72 syn keyword awkVariables RT SYMTAB
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
73
10140
b11ceef7116e commit https://github.com/vim/vim/commit/64d8e25bf6efe5f18b032563521c3ce278c316ab
Christian Brabandt <cb@256bit.org>
parents: 9533
diff changeset
74 " Arithmetic operators: +, and - take care of ++, and --
b11ceef7116e commit https://github.com/vim/vim/commit/64d8e25bf6efe5f18b032563521c3ce278c316ab
Christian Brabandt <cb@256bit.org>
parents: 9533
diff changeset
75 syn match awkOperator "+\|-\|\*\|/\|%\|="
b11ceef7116e commit https://github.com/vim/vim/commit/64d8e25bf6efe5f18b032563521c3ce278c316ab
Christian Brabandt <cb@256bit.org>
parents: 9533
diff changeset
76 syn match awkOperator "+=\|-=\|\*=\|/=\|%="
b11ceef7116e commit https://github.com/vim/vim/commit/64d8e25bf6efe5f18b032563521c3ce278c316ab
Christian Brabandt <cb@256bit.org>
parents: 9533
diff changeset
77 syn match awkOperator "\^\|\^="
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
78
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
79 " Octal format character.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
80 syn match awkSpecialCharacter display contained "\\[0-7]\{1,3\}"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
81 " Hex format character.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
82 syn match awkSpecialCharacter display contained "\\x[0-9A-Fa-f]\+"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
83
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
84 syn match awkFieldVars "\$\d\+"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
85
9533
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
86 " catch errors caused by wrong parenthesis
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
87 syn region awkParen transparent start="(" end=")" contains=ALLBUT,awkParenError,awkSpecialCharacter,awkArrayElement,awkArrayArray,awkTodo,awkRegExp,awkBrktRegExp,awkBrackets,awkCharClass,awkComment
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
88 syn match awkParenError display ")"
9533
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
89 "syn match awkInParen display contained "[{}]"
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
90
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
91 " 64 lines for complex &&'s, and ||'s in a big "if"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
92 syn sync ccomment awkParen maxlines=64
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
93
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
94 " Search strings & Regular Expressions therein.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
95 syn region awkSearch oneline start="^[ \t]*/"ms=e start="\(,\|!\=\~\)[ \t]*/"ms=e skip="\\\\\|\\/" end="/" contains=awkBrackets,awkRegExp,awkSpecialCharacter
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
96 syn region awkBrackets contained start="\[\^\]\="ms=s+2 start="\[[^\^]"ms=s+1 end="\]"me=e-1 contains=awkBrktRegExp,awkCharClass
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
97 syn region awkSearch oneline start="[ \t]*/"hs=e skip="\\\\\|\\/" end="/" contains=awkBrackets,awkRegExp,awkSpecialCharacter
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
98
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
99 syn match awkCharClass contained "\[:[^:\]]*:\]"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
100 syn match awkBrktRegExp contained "\\.\|.\-[^]]"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
101 syn match awkRegExp contained "/\^"ms=s+1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
102 syn match awkRegExp contained "\$/"me=e-1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
103 syn match awkRegExp contained "[?.*{}|+]"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
104
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
105 " String and Character constants
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
106 " Highlight special characters (those which have a backslash) differently
3513
1b584a6f446c Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
107 syn region awkString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=@Spell,awkSpecialCharacter,awkSpecialPrintf
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
108 syn match awkSpecialCharacter contained "\\."
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
109
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
110 " Some of these combinations may seem weird, but they work.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
111 syn match awkSpecialPrintf contained "%[-+ #]*\d*\.\=\d*[cdefgiosuxEGX%]"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
112
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
113 " Numbers, allowing signs (both -, and +)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
114 " Integer number.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
115 syn match awkNumber display "[+-]\=\<\d\+\>"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
116 " Floating point number.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
117 syn match awkFloat display "[+-]\=\<\d\+\.\d+\>"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
118 " Floating point number, starting with a dot.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
119 syn match awkFloat display "[+-]\=\<.\d+\>"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
120 syn case ignore
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
121 "floating point number, with dot, optional exponent
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
122 syn match awkFloat display "\<\d\+\.\d*\(e[-+]\=\d\+\)\=\>"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
123 "floating point number, starting with a dot, optional exponent
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
124 syn match awkFloat display "\.\d\+\(e[-+]\=\d\+\)\=\>"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
125 "floating point number, without dot, with exponent
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
126 syn match awkFloat display "\<\d\+e[-+]\=\d\+\>"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
127 syn case match
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
128
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
129 "syn match awkIdentifier "\<[a-zA-Z_][a-zA-Z0-9_]*\>"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
130
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
131 " Comparison expressions.
6530
435956324539 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3513
diff changeset
132 syn match awkExpression "==\|>=\|=>\|<=\|=<\|\!="
435956324539 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3513
diff changeset
133 syn match awkExpression "\~\|\!\~"
435956324539 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3513
diff changeset
134 syn match awkExpression "?\|:"
435956324539 Update runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3513
diff changeset
135 syn keyword awkExpression in
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
136
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
137 " Boolean Logic (OR, AND, NOT)
9533
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
138 syn match awkBoolLogic "||\|&&\|\!"
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
139
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
140 " This is overridden by less-than & greater-than.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
141 " Put this above those to override them.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
142 " Put this in a 'match "\<printf\=\>.*;\="' to make it not override
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
143 " less/greater than (most of the time), but it won't work yet because
3513
1b584a6f446c Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
144 " keywords always have precedence over match & region.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
145 " File I/O: (print foo, bar > "filename") & for nawk (getline < "filename")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
146 "syn match awkFileIO contained ">"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
147 "syn match awkFileIO contained "<"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
148
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
149 " Expression separators: ';' and ','
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
150 syn match awkSemicolon ";"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
151 syn match awkComma ","
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
152
3513
1b584a6f446c Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 3312
diff changeset
153 syn match awkComment "#.*" contains=@Spell,awkTodo
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
154
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
155 syn match awkLineSkip "\\$"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
156
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
157 " Highlight array element's (recursive arrays allowed).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
158 " Keeps nested array names' separate from normal array elements.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
159 " Keeps numbers separate from normal array elements (variables).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
160 syn match awkArrayArray contained "[^][, \t]\+\["me=e-1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
161 syn match awkArrayElement contained "[^][, \t]\+"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
162 syn region awkArray transparent start="\[" end="\]" contains=awkArray,awkArrayElement,awkArrayArray,awkNumber,awkFloat
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
163
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
164 " 10 should be enough.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
165 " (for the few instances where it would be more than "oneline")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
166 syn sync ccomment awkArray maxlines=10
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
167
9533
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
168 " Define the default highlighting.
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
169 hi def link awkConditional Conditional
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
170 hi def link awkFunction Function
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
171 hi def link awkRepeat Repeat
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
172 hi def link awkStatement Statement
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
173 hi def link awkString String
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
174 hi def link awkSpecialPrintf Special
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
175 hi def link awkSpecialCharacter Special
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
176 hi def link awkSearch String
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
177 hi def link awkBrackets awkRegExp
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
178 hi def link awkBrktRegExp awkNestRegExp
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
179 hi def link awkCharClass awkNestRegExp
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
180 hi def link awkNestRegExp Keyword
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
181 hi def link awkRegExp Special
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
182 hi def link awkNumber Number
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
183 hi def link awkFloat Float
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
184 hi def link awkFileIO Special
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
185 hi def link awkOperator Special
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
186 hi def link awkExpression Special
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
187 hi def link awkBoolLogic Special
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
188 hi def link awkPatterns Special
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
189 hi def link awkVariables Special
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
190 hi def link awkFieldVars Special
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
191 hi def link awkLineSkip Special
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
192 hi def link awkSemicolon Special
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
193 hi def link awkComma Special
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
194 hi def link awkIdentifier Identifier
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
195 hi def link awkComment Comment
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
196 hi def link awkTodo Todo
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
197 " Change this if you want nested array names to be highlighted.
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
198 hi def link awkArrayArray awkArray
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
199 hi def link awkArrayElement Special
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
200 hi def link awkParenError awkError
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
201 hi def link awkInParen awkError
9f921133ee90 commit https://github.com/vim/vim/commit/269f595f9eef584937e7eae70fde68cdd7da5bcf
Christian Brabandt <cb@256bit.org>
parents: 6530
diff changeset
202 hi def link awkError Error
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
203
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
204 let b:current_syntax = "awk"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
205
3312
b7811ab264bf updated for version 7.3.423
Bram Moolenaar <bram@vim.org>
parents: 216
diff changeset
206 let &cpo = s:cpo_save
b7811ab264bf updated for version 7.3.423
Bram Moolenaar <bram@vim.org>
parents: 216
diff changeset
207 unlet s:cpo_save
b7811ab264bf updated for version 7.3.423
Bram Moolenaar <bram@vim.org>
parents: 216
diff changeset
208
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
209 " vim: ts=8