xref: /vim-8.2.3635/runtime/syntax/sd.vim (revision 89bcfda6)
1" Language: streaming descriptor file
2" Maintainer: Puria Nafisi Azizi (pna) <[email protected]>
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/
6" Last Change: 2012 Feb 03 by Thilo Six
7
8" quit when a syntax file was already loaded
9if exists("b:current_syntax")
10        finish
11endif
12
13let s:cpo_save = &cpo
14set cpo&vim
15
16" 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
29syn keyword sdStatement AGGREGATE AUDIO_CHANNELS
30syn 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
35syn keyword sdStatement LICENSE
36syn 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
53command! -nargs=+ HiLink hi def link <args>
54
55HiLink sdIP Number
56HiLink sdHostname Type
57HiLink sdEncoding Identifier
58HiLink sdCoding Identifier
59HiLink sdSource Identifier
60HiLink sdComment Comment
61HiLink sdIPError Error
62HiLink sdError Error
63HiLink sdStatement Statement
64HiLink sdIPSpecial Special
65HiLink sdSpecial Special
66HiLink sdDelimiter Delimiter
67
68delcommand HiLink
69
70let b:current_syntax = "sd"
71
72let &cpo = s:cpo_save
73unlet s:cpo_save
74