blob: b497ba5eaa618dfedf674f056de77a3e624b4ac9 [file] [log] [blame]
Bram Moolenaar9964e462007-05-05 17:54:07 +00001" Language: streaming descriptor file
2" Maintainer: Puria Nafisi Azizi (pna) <pna@netstudent.polito.it>
3" License: This file can be redistribued and/or modified under the same terms
4" as Vim itself.
5" URL: http://netstudent.polito.it/vim_syntax/
Bram Moolenaarb8ff1fb2012-02-04 21:59:01 +01006" Last Change: 2012 Feb 03 by Thilo Six
Bram Moolenaar9964e462007-05-05 17:54:07 +00007
Bram Moolenaar89bcfda2016-08-30 23:26:57 +02008" quit when a syntax file was already loaded
9if exists("b:current_syntax")
Bram Moolenaar9964e462007-05-05 17:54:07 +000010 finish
11endif
12
Bram Moolenaarb8ff1fb2012-02-04 21:59:01 +010013let s:cpo_save = &cpo
14set cpo&vim
15
Bram Moolenaar9964e462007-05-05 17:54:07 +000016" Always ignore case
17syn case ignore
18
19" Comments
20syn match sdComment /\s*[#;].*$/
21
22" IP Adresses
23syn cluster sdIPCluster contains=sdIPError,sdIPSpecial
24syn match sdIPError /\%(\d\{4,}\|25[6-9]\|2[6-9]\d\|[3-9]\d\{2}\)[\.0-9]*/ contained
25syn match sdIPSpecial /\%(127\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}\)/ contained
26syn match sdIP contained /\%(\d\{1,4}\.\)\{3}\d\{1,4}/ contains=@sdIPCluster
27
28" Statements
Bram Moolenaarb8ff1fb2012-02-04 21:59:01 +010029syn keyword sdStatement AGGREGATE AUDIO_CHANNELS
Bram Moolenaar9964e462007-05-05 17:54:07 +000030syn keyword sdStatement BYTE_PER_PCKT BIT_PER_SAMPLE BITRATE
31syn keyword sdStatement CLOCK_RATE CODING_TYPE CREATOR
32syn match sdStatement /^\s*CODING_TYPE\>/ nextgroup=sdCoding skipwhite
33syn match sdStatement /^\s*ENCODING_NAME\>/ nextgroup=sdEncoding skipwhite
34syn keyword sdStatement FILE_NAME FRAME_LEN FRAME_RATE FORCE_FRAME_RATE
Bram Moolenaarb8ff1fb2012-02-04 21:59:01 +010035syn keyword sdStatement LICENSE
Bram Moolenaar9964e462007-05-05 17:54:07 +000036syn match sdStatement /^\s*MEDIA_SOURCE\>/ nextgroup=sdSource skipwhite
37syn match sdStatement /^\s*MULTICAST\>/ nextgroup=sdIP skipwhite
38syn keyword sdStatement PAYLOAD_TYPE PKT_LEN PRIORITY
39syn keyword sdStatement SAMPLE_RATE
40syn keyword sdStatement TITLE TWIN
41syn keyword sdStatement VERIFY
42
43" Known Options
44syn keyword sdEncoding H26L MPV MP2T MP4V-ES
45syn keyword sdCoding FRAME SAMPLE
46syn keyword sdSource STORED LIVE
47
48"Specials
49syn keyword sdSpecial TRUE FALSE NULL
50syn keyword sdDelimiter STREAM STREAM_END
51syn match sdError /^search .\{257,}/
52
Bram Moolenaar9964e462007-05-05 17:54:07 +000053
Bram Moolenaarf37506f2016-08-31 22:22:10 +020054hi def link sdIP Number
55hi def link sdHostname Type
56hi def link sdEncoding Identifier
57hi def link sdCoding Identifier
58hi def link sdSource Identifier
59hi def link sdComment Comment
60hi def link sdIPError Error
61hi def link sdError Error
62hi def link sdStatement Statement
63hi def link sdIPSpecial Special
64hi def link sdSpecial Special
65hi def link sdDelimiter Delimiter
Bram Moolenaar9964e462007-05-05 17:54:07 +000066
Bram Moolenaar9964e462007-05-05 17:54:07 +000067
68let b:current_syntax = "sd"
Bram Moolenaarb8ff1fb2012-02-04 21:59:01 +010069
70let &cpo = s:cpo_save
71unlet s:cpo_save