codekingpro/portable-devtools
114k
1" Vim syntax file2" Language: Asterisk config file3" Maintainer: Jean Aunis <jean.aunis@yahoo.fr>4" Previous Maintainer: brc0075" Updated for 1.2 by Tilghman Lesher (Corydon76)6" Last Change: 2015 Feb 277" version 0.48 9" quit when a syntax file was already loaded10if exists("b:current_syntax")11 finish12endif13 14syn sync clear15syn sync fromstart16 17syn keyword asteriskTodo TODO contained18syn match asteriskComment ";.*" contains=asteriskTodo19syn match asteriskContext "\[.\{-}\]"20syn match asteriskExten "^\s*\zsexten\s*=>\?\s*[^,]\+\ze," contains=asteriskPattern nextgroup=asteriskPriority21syn match asteriskExten "^\s*\zssame\s*=>\?\s*\ze" nextgroup=asteriskPriority22syn match asteriskExten "^\s*\(register\|channel\|ignorepat\|include\|l\?e\?switch\|\(no\)\?load\)\s*=>\?"23syn match asteriskPattern "_\(\[[[:alnum:]#*\-]\+\]\|[[:alnum:]#*]\)*\.\?" contained24syn match asteriskPattern "[^A-Za-z0-9,]\zs[[:alnum:]#*]\+\ze" contained25syn match asteriskApp ",\zs[a-zA-Z]\+\ze$"26syn match asteriskApp ",\zs[a-zA-Z]\+\ze("27" Digits plus oldlabel (newlabel)28syn match asteriskPriority "\zs[[:digit:]]\+\(+[[:alpha:]][[:alnum:]_]*\)\?\(([[:alpha:]][[:alnum:]_]*)\)\?\ze," contains=asteriskLabel29" oldlabel plus digits (newlabel)30syn match asteriskPriority "\zs[[:alpha:]][[:alnum:]_]*+[[:digit:]]\+\(([[:alpha:]][[:alnum:]_]*)\)\?\ze," contains=asteriskLabel31" s or n plus digits (newlabel)32syn match asteriskPriority "\zs[sn]\(+[[:digit:]]\+\)\?\(([[:alpha:]][[:alnum:]_]*)\)\?\ze," contains=asteriskLabel33syn match asteriskLabel "(\zs[[:alpha:]][[:alnum:]]*\ze)" contained34syn match asteriskError "^\s*#\s*[[:alnum:]]*"35syn match asteriskInclude "^\s*#\s*\(include\|exec\)\s.*"36syn match asteriskVar "\${_\{0,2}[[:alpha:]][[:alnum:]_]*\(:-\?[[:digit:]]\+\(:[[:digit:]]\+\)\?\)\?}"37syn match asteriskVar "_\{0,2}[[:alpha:]][[:alnum:]_]*\ze="38syn match asteriskVarLen "\${_\{0,2}[[:alpha:]][[:alnum:]_]*(.*)}" contains=asteriskVar,asteriskVarLen,asteriskExp39syn match asteriskVarLen "(\zs[[:alpha:]][[:alnum:]_]*(.\{-})\ze=" contains=asteriskVar,asteriskVarLen,asteriskExp40syn match asteriskExp "\$\[.\{-}\]" contains=asteriskVar,asteriskVarLen,asteriskExp41syn match asteriskCodecsPermit "^\s*\(allow\|disallow\)\s*=\s*.*$" contains=asteriskCodecs42syn match asteriskCodecs "\(vp9\|vp8\|h264\|h263p\|h263\|h261\|jpeg\|opus\|g722\|g723\|gsm\|ulaw\|alaw\|g719\|g726\|g726aal2\|siren7\|siren14\|adpcm\|slin\|lpc10\|g729\|speex\|ilbc\|wav\|all\s*$\)"43syn match asteriskError "^\(type\|auth\|permit\|deny\|bindaddr\|host\)\s*=.*$"44syn match asteriskType "^\zstype=\ze\<\(peer\|user\|friend\)\>$" contains=asteriskTypeType45syn match asteriskTypeType "\<\(peer\|user\|friend\)\>" contained46syn match asteriskAuth "^\zsauth\s*=\ze\s*\<\(md5\|rsa\|plaintext\)\>$" contains=asteriskAuthType47syn match asteriskAuthType "\<\(md5\|rsa\|plaintext\)\>"48syn match asteriskAuth "^\zs\(secret\|inkeys\|outkey\)\s*=\ze.*$"49syn match asteriskAuth "^\(permit\|deny\)\s*=\s*\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}/\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}\s*$" contains=asteriskIPRange50syn match asteriskIPRange "\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}/\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}" contained51syn match asteriskIP "\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}" contained52syn match asteriskHostname "[[:alnum:]][[:alnum:]\-\.]*\.[[:alpha:]]{2,10}" contained53syn match asteriskPort "\d\{1,5}" contained54syn match asteriskSetting "^bindaddr\s*=\s*\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}$" contains=asteriskIP55syn match asteriskSetting "^port\s*=\s*\d\{1,5}\s*$" contains=asteriskPort56syn match asteriskSetting "^host\s*=\s*\(dynamic\|\(\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}\)\|\([[:alnum:]][[:alnum:]\-\.]*\.[[:alpha:]]{2,10}\)\)" contains=asteriskIP,asteriskHostname57 58" Define the default highlighting.59" Only when an item doesn't have highlighting yet60 61hi def link asteriskComment Comment62hi def link asteriskExten String63hi def link asteriskContext Preproc64hi def link asteriskPattern Type65hi def link asteriskApp Statement66hi def link asteriskInclude Preproc67hi def link asteriskIncludeBad Error68hi def link asteriskPriority Preproc69hi def link asteriskLabel Type70hi def link asteriskVar String71hi def link asteriskVarLen Function72hi def link asteriskExp Type73hi def link asteriskCodecsPermit Preproc74hi def link asteriskCodecs String75hi def link asteriskType Statement76hi def link asteriskTypeType Type77hi def link asteriskAuth String78hi def link asteriskAuthType Type79hi def link asteriskIPRange Identifier80hi def link asteriskIP Identifier81hi def link asteriskPort Identifier82hi def link asteriskHostname Identifier83hi def link asteriskSetting Statement84hi def link asteriskError Error85 86let b:current_syntax = "asterisk" 87" vim: ts=8 sw=288 89 