annotate runtime/syntax/perl.vim @ 2531:c9022997af9e vim73

Runtime file updates.
author Bram Moolenaar <bram@vim.org>
date Mon, 09 Aug 2010 22:33:06 +0200
parents b9e314fe473f
children 0bb74f626ba7
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
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
2 " Language: Perl 5
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
3 " Maintainer: Andy Lester <andy@petdance.com>
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
4 " URL: http://github.com/petdance/vim-perl/tree/master
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
5 " Last Change: 2009-09-2
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
6 " Contributors: Andy Lester <andy@petdance.com>
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
7 " Hinrik Örn Sigurðsson <hinrik.sig@gmail.com>
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
8 " Lukas Mai <l.mai.web.de>
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
9 " Nick Hibma <nick@van-laarhoven.org>
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
10 " Sonia Heimann <niania@netsurf.org>
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
11 " and many others.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
12 "
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
13 " Please download most recent version first before mailing
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
14 " any comments.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
15 "
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
16 " The following parameters are available for tuning the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
17 " perl syntax highlighting, with defaults given:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
18 "
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
19 " unlet perl_include_pod
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
20 " unlet perl_no_scope_in_variables
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
21 " unlet perl_no_extended_vars
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
22 " unlet perl_string_as_statement
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
23 " unlet perl_no_sync_on_sub
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
24 " unlet perl_no_sync_on_global_var
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
25 " let perl_sync_dist = 100
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
26 " unlet perl_fold
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
27 " unlet perl_fold_blocks
1118
2b8ff9e3c520 updated for version 7.1a
vimboss
parents: 557
diff changeset
28 " let perl_nofold_packages = 1
2b8ff9e3c520 updated for version 7.1a
vimboss
parents: 557
diff changeset
29 " let perl_nofold_subs = 1
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
30
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
31 if version < 600
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
32 echoerr ">=vim-6.0 is required to run perl.vim"
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
33 finish
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
34 elseif exists("b:current_syntax")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
35 finish
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
36 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
37
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
38 "
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
39 " Folding
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
40
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
41 if exists("perl_fold")
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
42 " Note: this bit must come before the actual highlighting of the "package"
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
43 " keyword, otherwise this will screw up Pod lines that match /^package/
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
44 if !exists("perl_nofold_packages")
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
45 syn region perlPackageFold start="^package \S\+;\s*\%(#.*\)\=$" end="^1;\=\s*\%(#.*\)\=$" end="\n\+package"me=s-1 transparent fold keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
46 endif
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
47 if !exists("perl_nofold_subs")
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
48 syn region perlSubFold start="^\z(\s*\)\<sub\>.*[^};]$" end="^\z1}\s*\%(#.*\)\=$" transparent fold keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
49 syn region perlSubFold start="^\z(\s*\)\<\%(BEGIN\|END\|CHECK\|INIT\|UNITCHECK\)\>.*[^};]$" end="^\z1}\s*$" transparent fold keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
50 endif
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
51
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
52 if exists("perl_fold_blocks")
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
53 syn region perlBlockFold start="^\z(\s*\)\%(if\|elsif\|unless\|for\|while\|until\|given\)\s*(.*)\%(\s*{\)\=\s*\%(#.*\)\=$" start="^\z(\s*\)foreach\s*\%(\%(my\|our\)\=\s*\S\+\s*\)\=(.*)\%(\s*{\)\=\s*\%(#.*\)\=$" end="^\z1}\s*;\=\%(#.*\)\=$" transparent fold keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
54 syn region perlBlockFold start="^\z(\s*\)\%(do\|else\)\%(\s*{\)\=\s*\%(#.*\)\=$" end="^\z1}\s*while" end="^\z1}\s*;\=\%(#.*\)\=$" transparent fold keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
55 endif
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
56
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
57 setlocal foldmethod=syntax
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
58 syn sync fromstart
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
59 else
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
60 " fromstart above seems to set minlines even if perl_fold is not set.
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
61 syn sync minlines=0
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
62 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
63
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
64
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
65 " POD starts with ^=<word> and ends with ^=cut
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
66
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
67 if exists("perl_include_pod")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
68 " Include a while extra syntax file
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
69 syn include @Pod syntax/pod.vim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
70 unlet b:current_syntax
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
71 if exists("perl_fold")
557
862863033fdd updated for version 7.0158
vimboss
parents: 548
diff changeset
72 syn region perlPOD start="^=[a-z]" end="^=cut" contains=@Pod,@Spell,perlTodo keepend fold
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
73 syn region perlPOD start="^=cut" end="^=cut" contains=perlTodo keepend fold
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
74 else
557
862863033fdd updated for version 7.0158
vimboss
parents: 548
diff changeset
75 syn region perlPOD start="^=[a-z]" end="^=cut" contains=@Pod,@Spell,perlTodo keepend
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
76 syn region perlPOD start="^=cut" end="^=cut" contains=perlTodo keepend
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
77 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
78 else
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
79 " Use only the bare minimum of rules
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
80 if exists("perl_fold")
1118
2b8ff9e3c520 updated for version 7.1a
vimboss
parents: 557
diff changeset
81 syn region perlPOD start="^=[a-z]" end="^=cut" fold
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
82 else
1118
2b8ff9e3c520 updated for version 7.1a
vimboss
parents: 557
diff changeset
83 syn region perlPOD start="^=[a-z]" end="^=cut"
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
84 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
85 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
86
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
87
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
88 syn cluster perlTop contains=TOP
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
89 syn region perlGenericBlock matchgroup=perlGenericBlock start="{" end="}" contained transparent
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
90
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
91
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
92 " All keywords
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
93 "
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
94 syn match perlConditional "\<\%(if\|elsif\|unless\|given\|when\|default\)\>"
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
95 syn match perlConditional "\<else\>" nextgroup=perlElseIfError skipwhite skipnl skipempty
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
96 syn match perlRepeat "\<\%(while\|for\%(each\)\=\|do\|until\|continue\)\>"
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
97 syn match perlOperator "\<\%(defined\|undef\|eq\|ne\|[gl][et]\|cmp\|not\|and\|or\|xor\|not\|bless\|ref\|do\)\>"
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
98 syn match perlControl "\<\%(BEGIN\|CHECK\|INIT\|END\|UNITCHECK\)\>"
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
99
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
100 syn match perlStatementStorage "\<\%(my\|our\|local\|state\)\>"
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
101 syn match perlStatementControl "\<\%(return\|last\|next\|redo\|goto\|break\)\>"
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
102 syn match perlStatementScalar "\<\%(chom\=p\|chr\|crypt\|r\=index\|lc\%(first\)\=\|length\|ord\|pack\|sprintf\|substr\|uc\%(first\)\=\)\>"
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
103 syn match perlStatementRegexp "\<\%(pos\|quotemeta\|split\|study\)\>"
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
104 syn match perlStatementNumeric "\<\%(abs\|atan2\|cos\|exp\|hex\|int\|log\|oct\|rand\|sin\|sqrt\|srand\)\>"
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
105 syn match perlStatementList "\<\%(splice\|unshift\|shift\|push\|pop\|join\|reverse\|grep\|map\|sort\|unpack\)\>"
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
106 syn match perlStatementHash "\<\%(delete\|each\|exists\|keys\|values\)\>"
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
107 syn match perlStatementIOfunc "\<\%(syscall\|dbmopen\|dbmclose\)\>"
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
108 syn match perlStatementFiledesc "\<\%(binmode\|close\%(dir\)\=\|eof\|fileno\|getc\|lstat\|printf\=\|read\%(dir\|line\|pipe\)\|rewinddir\|say\|select\|stat\|tell\%(dir\)\=\|write\)\>" nextgroup=perlFiledescStatementNocomma skipwhite
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
109 syn match perlStatementFiledesc "\<\%(fcntl\|flock\|ioctl\|open\%(dir\)\=\|read\|seek\%(dir\)\=\|sys\%(open\|read\|seek\|write\)\|truncate\)\>" nextgroup=perlFiledescStatementComma skipwhite
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
110 syn match perlStatementVector "\<vec\>"
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
111 syn match perlStatementFiles "\<\%(ch\%(dir\|mod\|own\|root\)\|glob\|link\|mkdir\|readlink\|rename\|rmdir\|symlink\|umask\|unlink\|utime\)\>"
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
112 syn match perlStatementFiles "-[rwxoRWXOezsfdlpSbctugkTBMAC]\>"
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
113 syn match perlStatementFlow "\<\%(caller\|die\|dump\|eval\|exit\|wantarray\)\>"
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
114 syn match perlStatementInclude "\<require\>"
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
115 syn match perlStatementInclude "\<\%(use\|no\)\s\+\%(\%(attributes\|attrs\|autouse\|parent\|base\|big\%(int\|num\|rat\)\|blib\|bytes\|charnames\|constant\|diagnostics\|encoding\%(::warnings\)\=\|feature\|fields\|filetest\|if\|integer\|less\|lib\|locale\|mro\|open\|ops\|overload\|re\|sigtrap\|sort\|strict\|subs\|threads\%(::shared\)\=\|utf8\|vars\|version\|vmsish\|warnings\%(::register\)\=\)\>\)\="
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
116 syn match perlStatementProc "\<\%(alarm\|exec\|fork\|get\%(pgrp\|ppid\|priority\)\|kill\|pipe\|set\%(pgrp\|priority\)\|sleep\|system\|times\|wait\%(pid\)\=\)\>"
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
117 syn match perlStatementSocket "\<\%(acept\|bind\|connect\|get\%(peername\|sock\%(name\|opt\)\)\|listen\|recv\|send\|setsockopt\|shutdown\|socket\%(pair\)\=\)\>"
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
118 syn match perlStatementIPC "\<\%(msg\%(ctl\|get\|rcv\|snd\)\|sem\%(ctl\|get\|op\)\|shm\%(ctl\|get\|read\|write\)\)\>"
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
119 syn match perlStatementNetwork "\<\%(\%(end\|[gs]et\)\%(host\|net\|proto\|serv\)ent\|get\%(\%(host\|net\)by\%(addr\|name\)\|protoby\%(name\|number\)\|servby\%(name\|port\)\)\)\>"
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
120 syn match perlStatementPword "\<\%(get\%(pw\%(uid\|nam\)\|gr\%(gid\|nam\)\|login\)\)\|\%(end\|[gs]et\)\%(pw\|gr\)ent\>"
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
121 syn match perlStatementTime "\<\%(gmtime\|localtime\|time\)\>"
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
122
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
123 syn match perlStatementMisc "\<\%(warn\|formline\|reset\|scalar\|prototype\|lock\|tied\=\|untie\)\>"
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
124
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
125 syn keyword perlTodo TODO TBD FIXME XXX NOTE contained
1118
2b8ff9e3c520 updated for version 7.1a
vimboss
parents: 557
diff changeset
126
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
127 syn region perlStatementIndirObjWrap matchgroup=perlStatementIndirObj start="\<\%(map\|grep\|sort\|print\|system\|exec\)\>\s*{" end="}" contains=@perlTop,perlGenericBlock
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
128
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
129 syn match perlLabel "^\s*\h\w*\s*::\@!\%(\<v\d\+\s*:\)\@<!"
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
130
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
131 " Perl Identifiers.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
132 "
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
133 " Should be cleaned up to better handle identifiers in particular situations
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
134 " (in hash keys for example)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
135 "
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
136 " Plain identifiers: $foo, @foo, $#foo, %foo, &foo and dereferences $$foo, @$foo, etc.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
137 " We do not process complex things such as @{${"foo"}}. Too complicated, and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
138 " too slow. And what is after the -> is *not* considered as part of the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
139 " variable - there again, too complicated and too slow.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
140
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
141 " Special variables first ($^A, ...) and ($|, $', ...)
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
142 syn match perlVarPlain "$^[ACDEFHILMNOPRSTVWX]\="
1118
2b8ff9e3c520 updated for version 7.1a
vimboss
parents: 557
diff changeset
143 syn match perlVarPlain "$[\\\"\[\]'&`+*.,;=%~!?@#$<>(-]"
2531
c9022997af9e Runtime file updates.
Bram Moolenaar <bram@vim.org>
parents: 2152
diff changeset
144 syn match perlVarPlain "%+"
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
145 syn match perlVarPlain "$\%(0\|[1-9]\d*\)"
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
146 " Same as above, but avoids confusion in $::foo (equivalent to $main::foo)
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
147 syn match perlVarPlain "$::\@!"
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
148 " These variables are not recognized within matches.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
149 syn match perlVarNotInMatches "$[|)]"
1118
2b8ff9e3c520 updated for version 7.1a
vimboss
parents: 557
diff changeset
150 " This variable is not recognized within matches delimited by m//.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
151 syn match perlVarSlash "$/"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
152
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
153 " And plain identifiers
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
154 syn match perlPackageRef "[$@#%*&]\%(\%(::\|'\)\=\I\i*\%(\%(::\|'\)\I\i*\)*\)\=\%(::\|'\)\I"ms=s+1,me=e-1 contained
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
155
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
156 " To not highlight packages in variables as a scope reference - i.e. in
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
157 " $pack::var, pack:: is a scope, just set "perl_no_scope_in_variables"
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
158 " If you don't want complex things like @{${"foo"}} to be processed,
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
159 " just set the variable "perl_no_extended_vars"...
1118
2b8ff9e3c520 updated for version 7.1a
vimboss
parents: 557
diff changeset
160
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
161 if !exists("perl_no_scope_in_variables")
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
162 syn match perlVarPlain "\%([@$]\|\$#\)\$*\%(\I\i*\)\=\%(\%(::\|'\)\I\i*\)*\%(::\|\i\@<=\)" contains=perlPackageRef nextgroup=perlVarMember,perlVarSimpleMember,perlMethod
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
163 syn match perlVarPlain2 "%\$*\%(\I\i*\)\=\%(\%(::\|'\)\I\i*\)*\%(::\|\i\@<=\)" contains=perlPackageRef
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
164 syn match perlFunctionName "&\$*\%(\I\i*\)\=\%(\%(::\|'\)\I\i*\)*\%(::\|\i\@<=\)" contains=perlPackageRef nextgroup=perlVarMember,perlVarSimpleMember,perlMethod
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
165 else
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
166 syn match perlVarPlain "\%([@$]\|\$#\)\$*\%(\I\i*\)\=\%(\%(::\|'\)\I\i*\)*\%(::\|\i\@<=\)" nextgroup=perlVarMember,perlVarSimpleMember,perlMethod
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
167 syn match perlVarPlain2 "%\$*\%(\I\i*\)\=\%(\%(::\|'\)\I\i*\)*\%(::\|\i\@<=\)"
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
168 syn match perlFunctionName "&\$*\%(\I\i*\)\=\%(\%(::\|'\)\I\i*\)*\%(::\|\i\@<=\)" nextgroup=perlVarMember,perlVarSimpleMember,perlMethod
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
169 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
170
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
171 if !exists("perl_no_extended_vars")
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
172 syn cluster perlExpr contains=perlStatementIndirObjWrap,perlStatementScalar,perlStatementRegexp,perlStatementNumeric,perlStatementList,perlStatementHash,perlStatementFiles,perlStatementTime,perlStatementMisc,perlVarPlain,perlVarPlain2,perlVarNotInMatches,perlVarSlash,perlVarBlock,perlVarBlock2,perlShellCommand,perlFloat,perlNumber,perlStringUnexpanded,perlString,perlQQ,perlArrow,perlGenericBlock
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
173 syn region perlArrow matchgroup=perlArrow start="->\s*(" end=")" contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod contained
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
174 syn region perlArrow matchgroup=perlArrow start="->\s*\[" end="\]" contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod contained
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
175 syn region perlArrow matchgroup=perlArrow start="->\s*{" end="}" contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod contained
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
176 syn match perlArrow "->\s*{\s*\I\i*\s*}" contains=perlVarSimpleMemberName nextgroup=perlVarMember,perlVarSimpleMember,perlMethod contained
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
177 syn region perlArrow matchgroup=perlArrow start="->\s*\$*\I\i*\s*(" end=")" contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod contained
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
178 syn region perlVarBlock matchgroup=perlVarPlain start="\%($#\|[$@]\)\$*{" skip="\\}" end="}" contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
179 syn region perlVarBlock2 matchgroup=perlVarPlain start="[%&*]\$*{" skip="\\}" end="}" contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
180 syn match perlVarPlain2 "[%&*]\$*{\I\i*}" nextgroup=perlVarMember,perlVarSimpleMember,perlMethod
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
181 syn match perlVarPlain "\%(\$#\|[@$]\)\$*{\I\i*}" nextgroup=perlVarMember,perlVarSimpleMember,perlMethod
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
182 syn region perlVarMember matchgroup=perlVarPlain start="\%(->\)\={" skip="\\}" end="}" contained contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
183 syn match perlVarSimpleMember "\%(->\)\={\s*\I\i*\s*}" nextgroup=perlVarMember,perlVarSimpleMember,perlMethod contains=perlVarSimpleMemberName contained
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
184 syn match perlVarSimpleMemberName "\I\i*" contained
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
185 syn region perlVarMember matchgroup=perlVarPlain start="\%(->\)\=\[" skip="\\]" end="]" contained contains=@perlExpr nextgroup=perlVarMember,perlVarSimpleMember,perlMethod
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
186 syn match perlPackageConst "__PACKAGE__" nextgroup=perlMethod
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
187 syn match perlMethod "->\$*\I\i*" contained nextgroup=perlVarSimpleMember,perlVarMember,perlMethod
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
188 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
189
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
190 " File Descriptors
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
191 syn match perlFiledescRead "<\h\w*>"
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
192
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
193 syn match perlFiledescStatementComma "(\=\s*\u\w*\s*,"me=e-1 transparent contained contains=perlFiledescStatement
1118
2b8ff9e3c520 updated for version 7.1a
vimboss
parents: 557
diff changeset
194 syn match perlFiledescStatementNocomma "(\=\s*\u\w*\s*[^, \t]"me=e-1 transparent contained contains=perlFiledescStatement
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
195
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
196 syn match perlFiledescStatement "\u\w*" contained
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
197
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
198 " Special characters in strings and matches
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
199 syn match perlSpecialString "\\\%(\o\{1,3}\|x\%({\x\+}\|\x\{1,2}\)\|c.\|[^cx]\)" contained extend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
200 syn match perlSpecialStringU2 "\\." extend contained transparent contains=NONE
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
201 syn match perlSpecialStringU "\\\\" contained
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
202 syn match perlSpecialMatch "\\[1-9]" contained extend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
203 syn match perlSpecialMatch "\\g\%(\d\+\|{\%(-\=\d\+\|\h\w*\)}\)" contained
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
204 syn match perlSpecialMatch "\\k\%(<\h\w*>\|'\h\w*'\)" contained
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
205 syn match perlSpecialMatch "{\d\+\%(,\%(\d\+\)\=\)\=}" contained
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
206 syn match perlSpecialMatch "\[[]-]\=[^\[\]]*[]-]\=\]" contained
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
207 syn match perlSpecialMatch "[+*()?.]" contained
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
208 syn match perlSpecialMatch "(?[#:=!]" contained
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
209 syn match perlSpecialMatch "(?[impsx]*\%(-[imsx]\+\)\=)" contained
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
210 syn match perlSpecialMatch "(?\%([-+]\=\d\+\|R\))" contained
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
211 syn match perlSpecialMatch "(?\%(&\|P[>=]\)\h\w*)" contained
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
212 syn match perlSpecialMatch "(\*\%(\%(PRUNE\|SKIP\|THEN\)\%(:[^)]*\)\=\|\%(MARK\|\):[^)]*\|COMMIT\|F\%(AIL\)\=\|ACCEPT\))" contained
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
213
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
214 " Possible errors
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
215 "
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
216 " Highlight lines with only whitespace (only in blank delimited here documents) as errors
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
217 syn match perlNotEmptyLine "^\s\+$" contained
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
218 " Highlight '} else if (...) {', it should be '} else { if (...) { ' or
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
219 " '} elsif (...) {'.
2531
c9022997af9e Runtime file updates.
Bram Moolenaar <bram@vim.org>
parents: 2152
diff changeset
220 syn match perlElseIfError "\s\+if" contained
c9022997af9e Runtime file updates.
Bram Moolenaar <bram@vim.org>
parents: 2152
diff changeset
221 syn keyword perlElseIfError elseif
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
222
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
223 " Variable interpolation
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
224 "
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
225 " These items are interpolated inside "" strings and similar constructs.
1118
2b8ff9e3c520 updated for version 7.1a
vimboss
parents: 557
diff changeset
226 syn cluster perlInterpDQ contains=perlSpecialString,perlVarPlain,perlVarNotInMatches,perlVarSlash,perlVarBlock
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
227 " These items are interpolated inside '' strings and similar constructs.
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
228 syn cluster perlInterpSQ contains=perlSpecialStringU,perlSpecialStringU2
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
229 " These items are interpolated inside m// matches and s/// substitutions.
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
230 syn cluster perlInterpSlash contains=perlSpecialString,perlSpecialMatch,perlVarPlain,perlVarBlock
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
231 " These items are interpolated inside m## matches and s### substitutions.
1118
2b8ff9e3c520 updated for version 7.1a
vimboss
parents: 557
diff changeset
232 syn cluster perlInterpMatch contains=@perlInterpSlash,perlVarSlash
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
233
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
234 " Shell commands
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
235 syn region perlShellCommand matchgroup=perlMatchStartEnd start="`" end="`" contains=@perlInterpDQ keepend
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
236
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
237 " Constants
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
238 "
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
239 " Numbers
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
240 syn match perlNumber "\<\%(0\%(x\x[[:xdigit:]_]*\|b[01][01_]*\|\o[0-7_]*\|\)\|[1-9][[:digit:]_]*\)\>"
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
241 syn match perlFloat "\<\d[[:digit:]_]*[eE][\-+]\=\d\+"
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
242 syn match perlFloat "\<\d[[:digit:]_]*\.[[:digit:]_]*\%([eE][\-+]\=\d\+\)\="
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
243 syn match perlFloat "\.[[:digit:]_]\+\%([eE][\-+]\=\d\+\)\="
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
244
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
245 syn match perlString "\<\%(v\d\+\%(\.\d\+\)*\|\d\+\%(\.\d\+\)\{2,}\)\>" contains=perlVStringV
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
246 syn match perlVStringV "\<v" contained
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
247
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
248
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
249 syn region perlParensSQ start=+(+ end=+)+ extend contained transparent contains=perlParensSQ,@perlInterpSQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
250 syn region perlBracketsSQ start=+\[+ end=+\]+ extend contained transparent contains=perlBracketsSQ,@perlInterpSQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
251 syn region perlBracesSQ start=+{+ end=+}+ extend contained transparent contains=perlBracesSQ,@perlInterpSQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
252 syn region perlAnglesSQ start=+<+ end=+>+ extend contained transparent contains=perlAnglesSQ,@perlInterpSQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
253
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
254 syn region perlParensDQ start=+(+ end=+)+ extend contained transparent contains=perlParensDQ,@perlInterpDQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
255 syn region perlBracketsDQ start=+\[+ end=+\]+ extend contained transparent contains=perlBracketsDQ,@perlInterpDQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
256 syn region perlBracesDQ start=+{+ end=+}+ extend contained transparent contains=perlBracesDQ,@perlInterpDQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
257 syn region perlAnglesDQ start=+<+ end=+>+ extend contained transparent contains=perlAnglesDQ,@perlInterpDQ keepend
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
258
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
259
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
260 " Simple version of searches and matches
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
261 syn region perlMatch matchgroup=perlMatchStartEnd start=+\<\%(::\|'\|->\)\@<!m\>\s*\z([^[:space:]'([{<#]\)+ end=+\z1[cgimopsx]*+ contains=@perlInterpMatch keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
262 syn region perlMatch matchgroup=perlMatchStartEnd start=+\<\%(::\|'\|->\)\@<!m#+ end=+#[cgimopsx]*+ contains=@perlInterpMatch keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
263 syn region perlMatch matchgroup=perlMatchStartEnd start=+\<\%(::\|'\|->\)\@<!m\s*'+ end=+'[cgimopsx]*+ contains=@perlInterpSQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
264 syn region perlMatch matchgroup=perlMatchStartEnd start=+\<\%(::\|'\|->\)\@<!m\s*/+ end=+/[cgimopsx]*+ contains=@perlInterpSlash keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
265 syn region perlMatch matchgroup=perlMatchStartEnd start=+\<\%(::\|'\|->\)\@<!m\s*(+ end=+)[cgimopsx]*+ contains=@perlInterpMatch,perlParensDQ keepend
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
266
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
267 " A special case for m{}, m<> and m[] which allows for comments and extra whitespace in the pattern
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
268 syn region perlMatch matchgroup=perlMatchStartEnd start=+\<\%(::\|'\|->\)\@<!m\s*{+ end=+}[cgimopsx]*+ contains=@perlInterpMatch,perlComment,perlBracesDQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
269 syn region perlMatch matchgroup=perlMatchStartEnd start=+\<\%(::\|'\|->\)\@<!m\s*<+ end=+>[cgimopsx]*+ contains=@perlInterpMatch,perlAnglesDQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
270 syn region perlMatch matchgroup=perlMatchStartEnd start=+\<\%(::\|'\|->\)\@<!m\s*\[+ end=+\][cgimopsx]*+ contains=@perlInterpMatch,perlComment,perlBracketsDQ keepend
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
271
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
272 " Below some hacks to recognise the // variant. This is virtually impossible to catch in all
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
273 " cases as the / is used in so many other ways, but these should be the most obvious ones.
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
274 syn region perlMatch matchgroup=perlMatchStartEnd start="\%([$@%&*]\@<!\%(\<split\|\<while\|\<if\|\<unless\|\.\.\|[-+*!~(\[{=]\)\s*\)\@<=/\%(/=\)\@!" start=+^/\%(/=\)\@!+ start=+\s\@<=/\%(/=\)\@![^[:space:][:digit:]$@%=]\@=\%(/\_s*\%([([{$@%&*[:digit:]"'`]\|\_s\w\|[[:upper:]_abd-fhjklnqrt-wyz]\)\)\@!+ skip=+\\/+ end=+/[cgimopsx]*+ contains=@perlInterpSlash
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
275
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
276
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
277 " Substitutions
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
278 " perlMatch is the first part, perlSubstitution* is the substitution part
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
279 syn region perlMatch matchgroup=perlMatchStartEnd start=+\<\%(::\|'\|->\)\@<!s\>\s*\z([^[:space:]'([{<#]\)+ end=+\z1+me=e-1 contains=@perlInterpMatch nextgroup=perlSubstitutionGQQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
280 syn region perlMatch matchgroup=perlMatchStartEnd start=+\<\%(::\|'\|->\)\@<!s\s*'+ end=+'+me=e-1 contains=@perlInterpSQ nextgroup=perlSubstitutionSQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
281 syn region perlMatch matchgroup=perlMatchStartEnd start=+\<\%(::\|'\|->\)\@<!s\s*/+ end=+/+me=e-1 contains=@perlInterpSlash nextgroup=perlSubstitutionGQQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
282 syn region perlMatch matchgroup=perlMatchStartEnd start=+\<\%(::\|'\|->\)\@<!s#+ end=+#+me=e-1 contains=@perlInterpMatch nextgroup=perlSubstitutionGQQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
283 syn region perlMatch matchgroup=perlMatchStartEnd start=+\<\%(::\|'\|->\)\@<!s\s*(+ end=+)+ contains=@perlInterpMatch,perlParensDQ nextgroup=perlSubstitutionGQQ skipwhite skipempty skipnl keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
284 syn region perlMatch matchgroup=perlMatchStartEnd start=+\<\%(::\|'\|->\)\@<!s\s*<+ end=+>+ contains=@perlInterpMatch,perlAnglesDQ nextgroup=perlSubstitutionGQQ skipwhite skipempty skipnl keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
285 syn region perlMatch matchgroup=perlMatchStartEnd start=+\<\%(::\|'\|->\)\@<!s\s*\[+ end=+\]+ contains=@perlInterpMatch,perlBracketsDQ nextgroup=perlSubstitutionGQQ skipwhite skipempty skipnl keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
286 syn region perlMatch matchgroup=perlMatchStartEnd start=+\<\%(::\|'\|->\)\@<!s\s*{+ end=+}+ contains=@perlInterpMatch,perlBracesDQ nextgroup=perlSubstitutionGQQ skipwhite skipempty skipnl keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
287 syn region perlSubstitutionGQQ matchgroup=perlMatchStartEnd start=+\z([^[:space:]'([{<]\)+ end=+\z1[ecgimopsx]*+ keepend contained contains=@perlInterpDQ
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
288 syn region perlSubstitutionGQQ matchgroup=perlMatchStartEnd start=+(+ end=+)[ecgimopsx]*+ contained contains=@perlInterpDQ,perlParensDQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
289 syn region perlSubstitutionGQQ matchgroup=perlMatchStartEnd start=+\[+ end=+\][ecgimopsx]*+ contained contains=@perlInterpDQ,perlBracketsDQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
290 syn region perlSubstitutionGQQ matchgroup=perlMatchStartEnd start=+{+ end=+}[ecgimopsx]*+ contained contains=@perlInterpDQ,perlBracesDQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
291 syn region perlSubstitutionGQQ matchgroup=perlMatchStartEnd start=+<+ end=+>[ecgimopsx]*+ contained contains=@perlInterpDQ,perlAnglesDQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
292 syn region perlSubstitutionSQ matchgroup=perlMatchStartEnd start=+'+ end=+'[ecgimopsx]*+ contained contains=@perlInterpSQ keepend
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
293
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
294 " Translations
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
295 " perlMatch is the first part, perlTranslation* is the second, translator part.
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
296 syn region perlMatch matchgroup=perlMatchStartEnd start=+\<\%(::\|'\|->\)\@<!\%(tr\|y\)\>\s*\z([^[:space:]([{<#]\)+ end=+\z1+me=e-1 contains=@perlInterpSQ nextgroup=perlTranslationGQ
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
297 syn region perlMatch matchgroup=perlMatchStartEnd start=+\<\%(::\|'\|->\)\@<!\%(tr\|y\)#+ end=+#+me=e-1 contains=@perlInterpSQ nextgroup=perlTranslationGQ
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
298 syn region perlMatch matchgroup=perlMatchStartEnd start=+\<\%(::\|'\|->\)\@<!\%(tr\|y\)\s*\[+ end=+\]+ contains=@perlInterpSQ,perlBracketsSQ nextgroup=perlTranslationGQ skipwhite skipempty skipnl
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
299 syn region perlMatch matchgroup=perlMatchStartEnd start=+\<\%(::\|'\|->\)\@<!\%(tr\|y\)\s*(+ end=+)+ contains=@perlInterpSQ,perlParensSQ nextgroup=perlTranslationGQ skipwhite skipempty skipnl
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
300 syn region perlMatch matchgroup=perlMatchStartEnd start=+\<\%(::\|'\|->\)\@<!\%(tr\|y\)\s*<+ end=+>+ contains=@perlInterpSQ,perlAnglesSQ nextgroup=perlTranslationGQ skipwhite skipempty skipnl
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
301 syn region perlMatch matchgroup=perlMatchStartEnd start=+\<\%(::\|'\|->\)\@<!\%(tr\|y\)\s*{+ end=+}+ contains=@perlInterpSQ,perlBracesSQ nextgroup=perlTranslationGQ skipwhite skipempty skipnl
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
302 syn region perlTranslationGQ matchgroup=perlMatchStartEnd start=+\z([^[:space:]([{<]\)+ end=+\z1[cds]*+ contained
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
303 syn region perlTranslationGQ matchgroup=perlMatchStartEnd start=+(+ end=+)[cds]*+ contains=perlParensSQ contained
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
304 syn region perlTranslationGQ matchgroup=perlMatchStartEnd start=+\[+ end=+\][cds]*+ contains=perlBracketsSQ contained
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
305 syn region perlTranslationGQ matchgroup=perlMatchStartEnd start=+{+ end=+}[cds]*+ contains=perlBracesSQ contained
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
306 syn region perlTranslationGQ matchgroup=perlMatchStartEnd start=+<+ end=+>[cds]*+ contains=perlAnglesSQ contained
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
307
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
308
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
309 " Strings and q, qq, qw and qr expressions
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
310
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
311 syn region perlStringUnexpanded matchgroup=perlStringStartEnd start="'" end="'" contains=@perlInterpSQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
312 syn region perlString matchgroup=perlStringStartEnd start=+"+ end=+"+ contains=@perlInterpDQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
313 syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@<!q\>\s*\z([^[:space:]#([{<]\)+ end=+\z1+ contains=@perlInterpSQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
314 syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@<!q#+ end=+#+ contains=@perlInterpSQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
315 syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@<!q\s*(+ end=+)+ contains=@perlInterpSQ,perlParensSQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
316 syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@<!q\s*\[+ end=+\]+ contains=@perlInterpSQ,perlBracketsSQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
317 syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@<!q\s*{+ end=+}+ contains=@perlInterpSQ,perlBracesSQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
318 syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@<!q\s*<+ end=+>+ contains=@perlInterpSQ,perlAnglesSQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
319
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
320 syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@<!q[qx]\>\s*\z([^[:space:]#([{<]\)+ end=+\z1+ contains=@perlInterpDQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
321 syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@<!q[qx]#+ end=+#+ contains=@perlInterpDQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
322 syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@<!q[qx]\s*(+ end=+)+ contains=@perlInterpDQ,perlParensDQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
323 syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@<!q[qx]\s*\[+ end=+\]+ contains=@perlInterpDQ,perlBracketsDQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
324 syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@<!q[qx]\s*{+ end=+}+ contains=@perlInterpDQ,perlBracesDQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
325 syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@<!q[qx]\s*<+ end=+>+ contains=@perlInterpDQ,perlAnglesDQ keepend
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
326
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
327 syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@<!qw\s*\z([^[:space:]#([{<]\)+ end=+\z1+ contains=@perlInterpSQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
328 syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@<!qw#+ end=+#+ contains=@perlInterpSQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
329 syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@<!qw\s*(+ end=+)+ contains=@perlInterpSQ,perlParensSQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
330 syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@<!qw\s*\[+ end=+\]+ contains=@perlInterpSQ,perlBracketsSQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
331 syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@<!qw\s*{+ end=+}+ contains=@perlInterpSQ,perlBracesSQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
332 syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@<!qw\s*<+ end=+>+ contains=@perlInterpSQ,perlAnglesSQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
333
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
334 syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@<!qr\>\s*\z([^[:space:]#([{<'/]\)+ end=+\z1[imosx]*+ contains=@perlInterpMatch keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
335 syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@<!qr\s*/+ end=+/[imosx]*+ contains=@perlInterpSlash keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
336 syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@<!qr#+ end=+#[imosx]*+ contains=@perlInterpMatch keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
337 syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@<!qr\s*'+ end=+'[imosx]*+ contains=@perlInterpSQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
338 syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@<!qr\s*(+ end=+)[imosx]*+ contains=@perlInterpMatch,perlParensDQ keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
339
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
340 " A special case for qr{}, qr<> and qr[] which allows for comments and extra whitespace in the pattern
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
341 syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@<!qr\s*{+ end=+}[imosx]*+ contains=@perlInterpMatch,perlBracesDQ,perlComment keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
342 syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@<!qr\s*<+ end=+>[imosx]*+ contains=@perlInterpMatch,perlAnglesDQ,perlComment keepend
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
343 syn region perlQQ matchgroup=perlStringStartEnd start=+\<\%(::\|'\|->\)\@<!qr\s*\[+ end=+\][imosx]*+ contains=@perlInterpMatch,perlBracketsDQ,perlComment keepend
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
344
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
345 " Constructs such as print <<EOF [...] EOF, 'here' documents
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
346 "
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
347 " XXX Any statements after the identifier are in perlString colour (i.e.
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
348 " 'if $a' in 'print <<EOF if $a'). This is almost impossible to get right it
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
349 " seems due to the 'auto-extending nature' of regions.
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
350 if exists("perl_fold")
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
351 syn region perlHereDoc matchgroup=perlStringStartEnd start=+<<\z(\I\i*\).*+ end=+^\z1$+ contains=@perlInterpDQ fold
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
352 syn region perlHereDoc matchgroup=perlStringStartEnd start=+<<\s*"\z([^\\"]*\%(\\.[^\\"]*\)*\)"+ end=+^\z1$+ contains=@perlInterpDQ fold
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
353 syn region perlHereDoc matchgroup=perlStringStartEnd start=+<<\s*'\z([^\\']*\%(\\.[^\\']*\)*\)'+ end=+^\z1$+ contains=@perlInterpSQ fold
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
354 syn region perlHereDoc matchgroup=perlStringStartEnd start=+<<\s*""+ end=+^$+ contains=@perlInterpDQ,perlNotEmptyLine fold
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
355 syn region perlHereDoc matchgroup=perlStringStartEnd start=+<<\s*''+ end=+^$+ contains=@perlInterpSQ,perlNotEmptyLine fold
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
356 syn region perlAutoload matchgroup=perlStringStartEnd start=+<<\s*\(['"]\=\)\z(END_\%(SUB\|OF_FUNC\|OF_AUTOLOAD\)\)\1+ end=+^\z1$+ contains=ALL fold
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
357 else
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
358 syn region perlHereDoc matchgroup=perlStringStartEnd start=+<<\z(\I\i*\)+ end=+^\z1$+ contains=@perlInterpDQ
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
359 syn region perlHereDoc matchgroup=perlStringStartEnd start=+<<\s*"\z([^\\"]*\%(\\.[^\\"]*\)*\)"+ end=+^\z1$+ contains=@perlInterpDQ
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
360 syn region perlHereDoc matchgroup=perlStringStartEnd start=+<<\s*'\z([^\\']*\%(\\.[^\\']*\)*\)'+ end=+^\z1$+ contains=@perlInterpSQ
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
361 syn region perlHereDoc matchgroup=perlStringStartEnd start=+<<\s*""+ end=+^$+ contains=@perlInterpDQ,perlNotEmptyLine
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
362 syn region perlHereDoc matchgroup=perlStringStartEnd start=+<<\s*''+ end=+^$+ contains=@perlInterpSQ,perlNotEmptyLine
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
363 syn region perlAutoload matchgroup=perlStringStartEnd start=+<<\s*\(['"]\=\)\z(END_\%(SUB\|OF_FUNC\|OF_AUTOLOAD\)\)\1+ end=+^\z1$+ contains=ALL
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
364 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
365
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
366
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
367 " Class declarations
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
368 "
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
369 syn match perlPackageDecl "\<package\s\+\%(\h\|::\)\%(\w\|::\)*" contains=perlStatementPackage
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
370 syn keyword perlStatementPackage package contained
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
371
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
372 " Functions
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
373 " sub [name] [(prototype)] {
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
374 "
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
375 syn match perlSubError "[^[:space:];{#]" contained
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
376 if v:version == 701 && !has('patch221') " XXX I hope that's the right one
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
377 syn match perlSubAttributes ":" contained
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
378 else
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
379 syn match perlSubAttributesCont "\h\w*\_s*\%(:\_s*\)\=" nextgroup=@perlSubAttrMaybe contained
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
380 syn region perlSubAttributesCont matchgroup=perlSubAttributesCont start="\h\w*(" end=")\_s*\%(:\_s*\)\=" nextgroup=@perlSubAttrMaybe contained contains=@perlInterpSQ,perlParensSQ
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
381 syn cluster perlSubAttrMaybe contains=perlSubAttributesCont,perlSubError
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
382 syn match perlSubAttributes "" contained nextgroup=perlSubError
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
383 syn match perlSubAttributes ":\_s*" contained nextgroup=@perlSubAttrMaybe
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
384 endif
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
385 syn match perlSubPrototypeError "(\%(\_s*\%(\%(\\\%([$@%&*]\|\[[$@%&*]\+\]\)\|[$&*]\|[@%]\%(\_s*)\)\@=\|;\%(\_s*[)$@%&*\\]\)\@=\|_\%(\_s*[);]\)\@=\)\_s*\)*\)\@>\zs\_[^)]\+" contained
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
386 syn match perlSubPrototype +(\_[^)]*)\_s*\|+ nextgroup=perlSubAttributes contained contains=perlSubPrototypeError
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
387 syn match perlSubName +\%(\h\|::\|'\w\)\%(\w\|::\|'\w\)*\_s*\|+ contained nextgroup=perlSubPrototype
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
388
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
389 syn match perlFunction +\<sub\>\_s*+ nextgroup=perlSubName
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
390
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
391 if !exists("perl_no_scope_in_variables")
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
392 syn match perlFunctionPRef "\h\w*::" contained
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
393 syn match perlFunctionName "\h\w*[^:]" contained
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
394 else
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
395 syn match perlFunctionName "\h[[:alnum:]_:]*" contained
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
396 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
397
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
398 " The => operator forces a bareword to the left of it to be interpreted as
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
399 " a string
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
400 syn match perlString "\I\@<!-\?\I\i*\%(\s*=>\)\@="
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
401
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
402 " All other # are comments, except ^#!
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
403 syn match perlComment "#.*" contains=perlTodo,@Spell
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
404 syn match perlSharpBang "^#!.*"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
405
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
406 " Formats
1118
2b8ff9e3c520 updated for version 7.1a
vimboss
parents: 557
diff changeset
407 syn region perlFormat matchgroup=perlStatementIOFunc start="^\s*\<format\s\+\k\+\s*=\s*$"rs=s+6 end="^\s*\.\s*$" contains=perlFormatName,perlFormatField,perlVarPlain,perlVarPlain2
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
408 syn match perlFormatName "format\s\+\k\+\s*="lc=7,me=e-1 contained
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
409 syn match perlFormatField "[@^][|<>~]\+\%(\.\.\.\)\=" contained
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
410 syn match perlFormatField "[@^]#[#.]*" contained
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
411 syn match perlFormatField "@\*" contained
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
412 syn match perlFormatField "@[^A-Za-z_|<>~#*]"me=e-1 contained
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
413 syn match perlFormatField "@$" contained
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
414
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
415 " __END__ and __DATA__ clauses
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
416 if exists("perl_fold")
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
417 syntax region perlDATA start="^__\%(DATA\|END\)__$" skip="." end="." contains=perlPOD,@perlDATA fold
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
418 else
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
419 syntax region perlDATA start="^__\%(DATA\|END\)__$" skip="." end="." contains=perlPOD,@perlDATA
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
420 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
421
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
422 command -nargs=+ HiLink hi def link <args>
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
423
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
424 " The default highlighting.
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
425 HiLink perlSharpBang PreProc
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
426 HiLink perlControl PreProc
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
427 HiLink perlInclude Include
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
428 HiLink perlSpecial Special
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
429 HiLink perlString String
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
430 HiLink perlCharacter Character
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
431 HiLink perlNumber Number
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
432 HiLink perlFloat Float
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
433 HiLink perlType Type
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
434 HiLink perlIdentifier Identifier
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
435 HiLink perlLabel Label
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
436 HiLink perlStatement Statement
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
437 HiLink perlConditional Conditional
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
438 HiLink perlRepeat Repeat
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
439 HiLink perlOperator Operator
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
440 HiLink perlFunction Keyword
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
441 HiLink perlSubName Function
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
442 HiLink perlSubPrototype Type
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
443 HiLink perlSubAttributes PreProc
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
444 HiLink perlSubAttributesCont perlSubAttributes
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
445 HiLink perlComment Comment
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
446 HiLink perlTodo Todo
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
447 if exists("perl_string_as_statement")
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
448 HiLink perlStringStartEnd perlStatement
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
449 else
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
450 HiLink perlStringStartEnd perlString
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
451 endif
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
452 HiLink perlVStringV perlStringStartEnd
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
453 HiLink perlList perlStatement
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
454 HiLink perlMisc perlStatement
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
455 HiLink perlVarPlain perlIdentifier
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
456 HiLink perlVarPlain2 perlIdentifier
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
457 HiLink perlArrow perlIdentifier
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
458 HiLink perlFiledescRead perlIdentifier
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
459 HiLink perlFiledescStatement perlIdentifier
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
460 HiLink perlVarSimpleMember perlIdentifier
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
461 HiLink perlVarSimpleMemberName perlString
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
462 HiLink perlVarNotInMatches perlIdentifier
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
463 HiLink perlVarSlash perlIdentifier
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
464 HiLink perlQQ perlString
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
465 HiLink perlHereDoc perlString
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
466 HiLink perlStringUnexpanded perlString
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
467 HiLink perlSubstitutionSQ perlString
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
468 HiLink perlSubstitutionGQQ perlString
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
469 HiLink perlTranslationGQ perlString
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
470 HiLink perlMatch perlString
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
471 HiLink perlMatchStartEnd perlStatement
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
472 HiLink perlFormatName perlIdentifier
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
473 HiLink perlFormatField perlString
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
474 HiLink perlPackageDecl perlType
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
475 HiLink perlStorageClass perlType
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
476 HiLink perlPackageRef perlType
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
477 HiLink perlStatementPackage perlStatement
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
478 HiLink perlStatementStorage perlStatement
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
479 HiLink perlStatementControl perlStatement
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
480 HiLink perlStatementScalar perlStatement
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
481 HiLink perlStatementRegexp perlStatement
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
482 HiLink perlStatementNumeric perlStatement
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
483 HiLink perlStatementList perlStatement
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
484 HiLink perlStatementHash perlStatement
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
485 HiLink perlStatementIOfunc perlStatement
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
486 HiLink perlStatementFiledesc perlStatement
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
487 HiLink perlStatementVector perlStatement
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
488 HiLink perlStatementFiles perlStatement
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
489 HiLink perlStatementFlow perlStatement
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
490 HiLink perlStatementInclude perlStatement
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
491 HiLink perlStatementProc perlStatement
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
492 HiLink perlStatementSocket perlStatement
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
493 HiLink perlStatementIPC perlStatement
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
494 HiLink perlStatementNetwork perlStatement
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
495 HiLink perlStatementPword perlStatement
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
496 HiLink perlStatementTime perlStatement
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
497 HiLink perlStatementMisc perlStatement
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
498 HiLink perlStatementIndirObj perlStatement
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
499 HiLink perlFunctionName perlIdentifier
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
500 HiLink perlMethod perlIdentifier
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
501 HiLink perlFunctionPRef perlType
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
502 HiLink perlPOD perlComment
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
503 HiLink perlShellCommand perlString
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
504 HiLink perlSpecialAscii perlSpecial
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
505 HiLink perlSpecialDollar perlSpecial
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
506 HiLink perlSpecialString perlSpecial
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
507 HiLink perlSpecialStringU perlSpecial
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
508 HiLink perlSpecialMatch perlSpecial
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
509 HiLink perlDATA perlComment
1118
2b8ff9e3c520 updated for version 7.1a
vimboss
parents: 557
diff changeset
510
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
511 " Possible errors
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
512 HiLink perlNotEmptyLine Error
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
513 HiLink perlElseIfError Error
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
514 HiLink perlSubPrototypeError Error
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
515 HiLink perlSubError Error
1118
2b8ff9e3c520 updated for version 7.1a
vimboss
parents: 557
diff changeset
516
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
517 delcommand HiLink
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
518
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
519 " Syncing to speed up processing
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
520 "
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
521 if !exists("perl_no_sync_on_sub")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
522 syn sync match perlSync grouphere NONE "^\s*\<package\s"
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
523 syn sync match perlSync grouphere NONE "^\s*\<sub\>"
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
524 syn sync match perlSync grouphere NONE "^}"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
525 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
526
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
527 if !exists("perl_no_sync_on_global_var")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
528 syn sync match perlSync grouphere NONE "^$\I[[:alnum:]_:]+\s*=\s*{"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
529 syn sync match perlSync grouphere NONE "^[@%]\I[[:alnum:]_:]+\s*=\s*("
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
530 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
531
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
532 if exists("perl_sync_dist")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
533 execute "syn sync maxlines=" . perl_sync_dist
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
534 else
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
535 syn sync maxlines=100
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
536 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
537
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
538 syn sync match perlSyncPOD grouphere perlPOD "^=pod"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
539 syn sync match perlSyncPOD grouphere perlPOD "^=head"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
540 syn sync match perlSyncPOD grouphere perlPOD "^=item"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
541 syn sync match perlSyncPOD grouphere NONE "^=cut"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
542
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
543 let b:current_syntax = "perl"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
544
2152
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
545 " XXX Change to sts=4:sw=4
b9e314fe473f Updated runtime files.
Bram Moolenaar <bram@zimbu.org>
parents: 1118
diff changeset
546 " vim:ts=8:sts=2:sw=2:expandtab:ft=vim