1" Vim syntax file 2" Language: Asterisk voicemail config file 3" Maintainer: Tilghman Lesher (Corydon76) 4" Last Change: 2006 Mar 21 5" version 0.2 6 7" quit when a syntax file was already loaded 8if exists("b:current_syntax") 9 finish 10endif 11 12syn sync clear 13syn sync fromstart 14 15 16syn keyword asteriskvmTodo TODO contained 17syn match asteriskvmComment ";.*" contains=asteriskvmTodo 18syn match asteriskvmContext "\[.\{-}\]" 19 20" ZoneMessages 21syn match asteriskvmZone "^[[:alnum:]]\+\s*=>\?\s*[[:alnum:]/_]\+|.*$" contains=zoneName,zoneDef 22syn match zoneName "=\zs[[:alnum:]/_]\+\ze" contained 23syn match zoneDef "|\zs.*\ze$" contained 24 25syn match asteriskvmSetting "\<\(format\|serveremail\|minmessage\|maxmessage\|maxgreet\|skipms\|maxsilence\|silencethreshold\|maxlogins\)=" 26syn match asteriskvmSetting "\<\(externnotify\|externpass\|directoryintro\|charset\|adsi\(fdn\|sec\|ver\)\|\(pager\)\?fromstring\|email\(subject\|body\|cmd\)\|tz\|cidinternalcontexts\|saydurationm\|dialout\|callback\)=" 27syn match asteriskvmSettingBool "\<\(attach\|pbxskip\|usedirectory\|saycid\|sayduration\|sendvoicemail\|review\|operator\|envelope\|delete\|nextaftercmd\|forcename\|forcegreeting\)=\(yes\|no\|1\|0\|true\|false\|t\|f\)" 28 29" Individual mailbox definitions 30syn match asteriskvmMailbox "^[[:digit:]]\+\s*=>\?\s*[[:digit:]]\+\(,[^,]*\(,[^,]*\(,[^,]*\(,[^,]*\)\?\)\?\)\?\)\?" contains=mailboxEmail,asteriskvmSetting,asteriskvmSettingBool,comma 31syn match mailboxEmail ",\zs[^@=,]*@[[:alnum:]\-\.]\+\.[[:alpha:]]\{2,10}\ze" contains=comma 32syn match comma "[,|]" contained 33 34" Define the default highlighting. 35" Only when an item doesn't have highlighting yet 36 37hi def link asteriskvmComment Comment 38hi def link asteriskvmContext Identifier 39hi def link asteriskvmZone Type 40hi def link zoneName String 41hi def link zoneDef String 42hi def link asteriskvmSetting Type 43hi def link asteriskvmSettingBool Type 44 45hi def link asteriskvmMailbox Statement 46hi def link mailboxEmail String 47 48let b:current_syntax = "asteriskvm" 49 50" vim: ts=8 sw=2 51 52