home *** CD-ROM | disk | FTP | other *** search
/ vim.ftp.fu-berlin.de / 2015-02-03.vim.ftp.fu-berlin.de.tar / vim.ftp.fu-berlin.de / runtime / syntax / cdrtoc.vim < prev    next >
Encoding:
Text File  |  2010-08-14  |  22.2 KB  |  538 lines

  1. " Vim syntax file
  2. " Language:         cdrdao(1) TOC file
  3. " Maintainer:       Nikolai Weibull <now@bitwi.se>
  4. " Latest Revision:  2007-05-10
  5.  
  6. if exists("b:current_syntax")
  7.   finish
  8. endif
  9.  
  10. let s:cpo_save = &cpo
  11. set cpo&vim
  12.  
  13. syn keyword cdrtocTodo
  14.       \ contained
  15.       \ TODO
  16.       \ FIXME
  17.       \ XXX
  18.       \ NOTE
  19.  
  20. syn cluster cdrtocCommentContents
  21.       \ contains=
  22.       \   cdrtocTodo,
  23.       \   @Spell
  24.  
  25. syn cluster cdrtocHeaderFollowsInitial
  26.       \ contains=
  27.       \   cdrtocHeaderCommentInitial,
  28.       \   cdrtocHeaderCatalog,
  29.       \   cdrtocHeaderTOCType,
  30.       \   cdrtocHeaderCDText,
  31.       \   cdrtocTrack
  32.  
  33. syn match   cdrtocHeaderBegin
  34.       \ nextgroup=@cdrtocHeaderFollowsInitial
  35.       \ skipwhite skipempty
  36.       \ '\%^'
  37.  
  38. let s:mmssff_pattern = '\%([0-5]\d\|\d\):\%([0-5]\d\|\d\):\%([0-6]\d\|7[0-5]\|\d\)\>'
  39. let s:byte_pattern = '\<\%([01]\=\d\{1,2}\|2\%([0-4]\d\|5[0-5]\)\)\>'
  40. let s:length_pattern = '\%(\%([0-5]\d\|\d\):\%([0-5]\d\|\d\):\%([0-6]\d\|7[0-5]\|\d\)\|\d\+\)\>'
  41.  
  42. function s:def_comment(name, nextgroup)
  43.   execute 'syn match' a:name
  44.         \ 'nextgroup=' . a:nextgroup . ',' . a:name
  45.         \ 'skipwhite skipempty'
  46.         \ 'contains=@cdrtocCommentContents'
  47.         \ 'contained'
  48.         \ "'//.*$'"
  49.   execute 'hi def link' a:name 'cdrtocComment'
  50. endfunction
  51.  
  52. function s:def_keywords(name, nextgroup, keywords)
  53.   let comment_group = a:name . 'FollowComment'
  54.   execute 'syn keyword' a:name
  55.         \ 'nextgroup=' . a:nextgroup . ',' . comment_group
  56.         \ 'skipwhite skipempty'
  57.         \ 'contained'
  58.         \ join(a:keywords)
  59.  
  60.   call s:def_comment(comment_group, a:nextgroup)
  61. endfunction
  62.  
  63. function s:def_keyword(name, nextgroup, keyword)
  64.   call s:def_keywords(a:name, a:nextgroup, [a:keyword])
  65. endfunction
  66.  
  67. " NOTE: Pattern needs to escape any ΓÇ£@ΓÇ¥s.
  68. function s:def_match(name, nextgroup, pattern)
  69.   let comment_group = a:name . 'FollowComment'
  70.   execute 'syn match' a:name
  71.         \ 'nextgroup=' . a:nextgroup . ',' . comment_group
  72.         \ 'skipwhite skipempty'
  73.         \ 'contained'
  74.         \ '@' . a:pattern . '@'
  75.  
  76.   call s:def_comment(comment_group, a:nextgroup)
  77. endfunction
  78.  
  79. function s:def_region(name, nextgroup, start, skip, end, matchgroup, contains)
  80.   let comment_group = a:name . 'FollowComment'
  81.   execute 'syn region' a:name
  82.         \ 'nextgroup=' . a:nextgroup . ',' . comment_group
  83.         \ 'skipwhite skipempty'
  84.         \ 'contained'
  85.         \ 'matchgroup=' . a:matchgroup
  86.         \ 'contains=' . a:contains
  87.         \ 'start=@' . a:start . '@'
  88.         \ (a:skip != "" ? ('skip=@' . a:skip . '@') : "")
  89.         \ 'end=@' . a:end . '@'
  90.  
  91.   call s:def_comment(comment_group, a:nextgroup)
  92. endfunction
  93.  
  94. call s:def_comment('cdrtocHeaderCommentInitial', '@cdrtocHeaderFollowsInitial')
  95.  
  96. call s:def_keyword('cdrtocHeaderCatalog', 'cdrtocHeaderCatalogNumber', 'CATALOG')
  97.  
  98. call s:def_match('cdrtocHeaderCatalogNumber', '@cdrtocHeaderFollowsInitial', '"\d\{13\}"')
  99.  
  100. call s:def_keywords('cdrtocHeaderTOCType', '@cdrtocHeaderFollowsInitial', ['CD_DA', 'CD_ROM', 'CD_ROM_XA'])
  101.  
  102. call s:def_keyword('cdrtocHeaderCDText', 'cdrtocHeaderCDTextStart', 'CD_TEXT')
  103.  
  104. " TODO: Actually, language maps arenΓÇÖt required by TocParser.g, but letΓÇÖs keep
  105. " things simple (and in agreement with what the manual page says).
  106. call s:def_match('cdrtocHeaderCDTextStart', 'cdrtocHeaderCDTextLanguageMap', '{')
  107.  
  108. call s:def_keyword('cdrtocHeaderCDTextLanguageMap', 'cdrtocHeaderLanguageMapStart', 'LANGUAGE_MAP')
  109.  
  110. call s:def_match('cdrtocHeaderLanguageMapStart', 'cdrtocHeaderLanguageMapLanguageNumber', '{')
  111.  
  112. call s:def_match('cdrtocHeaderLanguageMapLanguageNumber', 'cdrtocHeaderLanguageMapColon', '\<[0-7]\>')
  113.  
  114. call s:def_match('cdrtocHeaderLanguageMapColon', 'cdrtocHeaderLanguageMapCountryCode,cdrtocHeaderLanguageMapCountryCodeName', ':')
  115.  
  116. syn cluster cdrtocHeaderLanguageMapCountryCodeFollow
  117.       \ contains=
  118.       \   cdrtocHeaderLanguageMapLanguageNumber,
  119.       \   cdrtocHeaderLanguageMapEnd
  120.  
  121. call s:def_match('cdrtocHeaderLanguageMapCountryCode',
  122.                \ '@cdrtocHeaderLanguageMapCountryCodeFollow',
  123.                \ s:byte_pattern)
  124.  
  125. call s:def_keyword('cdrtocHeaderLanguageMapCountryCodeName',
  126.                  \ '@cdrtocHeaderLanguageMapCountryCodeFollow',
  127.                  \ 'EN')
  128.  
  129. call s:def_match('cdrtocHeaderLanguageMapEnd',
  130.                \ 'cdrtocHeaderLanguage,cdrtocHeaderCDTextEnd',
  131.                \ '}')
  132.  
  133. call s:def_keyword('cdrtocHeaderLanguage', 'cdrtocHeaderLanguageNumber', 'LANGUAGE')
  134.  
  135. call s:def_match('cdrtocHeaderLanguageNumber', 'cdrtocHeaderLanguageStart', '\<[0-7]\>')
  136.  
  137. call s:def_match('cdrtocHeaderLanguageStart',
  138.                \ 'cdrtocHeaderCDTextItem,cdrtocHeaderLanguageEnd',
  139.                \ '{')
  140.  
  141. syn cluster cdrtocHeaderCDTextData
  142.       \ contains=
  143.       \   cdrtocHeaderCDTextDataString,
  144.       \   cdrtocHeaderCDTextDataBinaryStart
  145.  
  146. call s:def_keywords('cdrtocHeaderCDTextItem',
  147.                   \ '@cdrtocHeaderCDTextData',
  148.                   \ ['TITLE', 'PERFORMER', 'SONGWRITER', 'COMPOSER',
  149.                   \  'ARRANGER', 'MESSAGE', 'DISC_ID', 'GENRE', 'TOC_INFO1',
  150.                   \  'TOC_INFO2', 'UPC_EAN', 'ISRC', 'SIZE_INFO'])
  151.  
  152. call s:def_region('cdrtocHeaderCDTextDataString',
  153.                 \ 'cdrtocHeaderCDTextItem,cdrtocHeaderLanguageEnd',
  154.                 \ '"',
  155.                 \ '\\\\\|\\"',
  156.                 \ '"',
  157.                 \ 'cdrtocHeaderCDTextDataStringDelimiters',
  158.                 \ 'cdrtocHeaderCDTextDataStringSpecialChar')
  159.  
  160. syn match   cdrtocHeaderCDTextDataStringSpecialChar
  161.       \ contained
  162.       \ display
  163.       \ '\\\%(\o\o\o\|["\\]\)'
  164.  
  165. call s:def_match('cdrtocHeaderCDTextDataBinaryStart',
  166.                \ 'cdrtocHeaderCDTextDataBinaryInteger',
  167.                \ '{')
  168.  
  169. call s:def_match('cdrtocHeaderCDTextDataBinaryInteger',
  170.                \ 'cdrtocHeaderCDTextDataBinarySeparator,cdrtocHeaderCDTextDataBinaryEnd',
  171.                \ s:byte_pattern)
  172.  
  173. call s:def_match('cdrtocHeaderCDTextDataBinarySeparator',
  174.                \ 'cdrtocHeaderCDTextDataBinaryInteger',
  175.                \ ',')
  176.  
  177. call s:def_match('cdrtocHeaderCDTextDataBinaryEnd',
  178.                \ 'cdrtocHeaderCDTextItem,cdrtocHeaderLanguageEnd',
  179.                \ '}')
  180.  
  181. call s:def_match('cdrtocHeaderLanguageEnd',
  182.                \ 'cdrtocHeaderLanguage,cdrtocHeaderCDTextEnd',
  183.                \ '}')
  184.  
  185. call s:def_match('cdrtocHeaderCDTextEnd',
  186.                \ 'cdrtocTrack',
  187.                \ '}')
  188.  
  189. syn cluster cdrtocTrackFollow
  190.       \ contains=
  191.       \   @cdrtocTrackFlags,
  192.       \   cdrtocTrackCDText,
  193.       \   cdrtocTrackPregap,
  194.       \   @cdrtocTrackContents
  195.  
  196. call s:def_keyword('cdrtocTrack', 'cdrtocTrackMode', 'TRACK')
  197.  
  198. call s:def_keywords('cdrtocTrackMode',
  199.                   \ 'cdrtocTrackSubChannelMode,@cdrtocTrackFollow',
  200.                   \ ['AUDIO', 'MODE1', 'MODE1_RAW', 'MODE2', 'MODE2_FORM1',
  201.                   \  'MODE2_FORM2', 'MODE2_FORM_MIX', 'MODE2_RAW'])
  202.  
  203. call s:def_keywords('cdrtocTrackSubChannelMode',
  204.                   \ '@cdrtocTrackFollow',
  205.                   \ ['RW', 'RW_RAW'])
  206.  
  207. syn cluster cdrtocTrackFlags
  208.       \ contains=
  209.       \   cdrtocTrackFlagNo,
  210.       \   cdrtocTrackFlagCopy,
  211.       \   cdrtocTrackFlagPreEmphasis,
  212.       \   cdrtocTrackFlag
  213.  
  214. call s:def_keyword('cdrtocTrackFlagNo',
  215.                  \ 'cdrtocTrackFlagCopy,cdrtocTrackFlagPreEmphasis',
  216.                  \ 'NO')
  217.  
  218. call s:def_keyword('cdrtocTrackFlagCopy', '@cdrtocTrackFollow', 'COPY')
  219.  
  220. call s:def_keyword('cdrtocTrackFlagPreEmphasis', '@cdrtocTrackFollow', 'PRE_EMPHASIS')
  221.  
  222. call s:def_keywords('cdrtocTrackFlag',
  223.                   \ '@cdrtocTrackFollow',
  224.                   \ ['TWO_CHANNEL_AUDIO', 'FOUR_CHANNEL_AUDIO'])
  225.  
  226. call s:def_keyword('cdrtocTrackFlag', 'cdrtocTrackISRC', 'ISRC')
  227.  
  228. call s:def_match('cdrtocTrackISRC',
  229.                \ '@cdrtocTrackFollow',
  230.                \ '"[[:upper:][:digit:]]\{5}\d\{7}"')
  231.  
  232. call s:def_keyword('cdrtocTrackCDText', 'cdrtocTrackCDTextStart', 'CD_TEXT')
  233.  
  234. call s:def_match('cdrtocTrackCDTextStart', 'cdrtocTrackCDTextLanguage', '{')
  235.  
  236. call s:def_keyword('cdrtocTrackCDTextLanguage', 'cdrtocTrackCDTextLanguageNumber', 'LANGUAGE')
  237.  
  238. call s:def_match('cdrtocTrackCDTextLanguageNumber', 'cdrtocTrackCDTextLanguageStart', '\<[0-7]\>')
  239.  
  240. call s:def_match('cdrtocTrackCDTextLanguageStart',
  241.                \ 'cdrtocTrackCDTextItem,cdrtocTrackCDTextLanguageEnd',
  242.                \ '{')
  243.  
  244. syn cluster cdrtocTrackCDTextData
  245.       \ contains=
  246.       \   cdrtocTrackCDTextDataString,
  247.       \   cdrtocTrackCDTextDataBinaryStart
  248.  
  249. call s:def_keywords('cdrtocTrackCDTextItem',
  250.                   \ '@cdrtocTrackCDTextData',
  251.                   \ ['TITLE', 'PERFORMER', 'SONGWRITER', 'COMPOSER', 'ARRANGER',
  252.                   \  'MESSAGE', 'ISRC'])
  253.  
  254. call s:def_region('cdrtocTrackCDTextDataString',
  255.                 \ 'cdrtocTrackCDTextItem,cdrtocTrackCDTextLanguageEnd',
  256.                 \ '"',
  257.                 \ '\\\\\|\\"',
  258.                 \ '"',
  259.                 \ 'cdrtocTrackCDTextDataStringDelimiters',
  260.                 \ 'cdrtocTrackCDTextDataStringSpecialChar')
  261.  
  262. syn match   cdrtocTrackCDTextDataStringSpecialChar
  263.       \ contained
  264.       \ display
  265.       \ '\\\%(\o\o\o\|["\\]\)'
  266.  
  267. call s:def_match('cdrtocTrackCDTextDataBinaryStart',
  268.                \ 'cdrtocTrackCDTextDataBinaryInteger',
  269.                \ '{')
  270.  
  271. call s:def_match('cdrtocTrackCDTextDataBinaryInteger',
  272.                \ 'cdrtocTrackCDTextDataBinarySeparator,cdrtocTrackCDTextDataBinaryEnd',
  273.                \ s:byte_pattern)
  274.  
  275. call s:def_match('cdrtocTrackCDTextDataBinarySeparator',
  276.                \ 'cdrtocTrackCDTextDataBinaryInteger',
  277.                \ ',')
  278.  
  279. call s:def_match('cdrtocTrackCDTextDataBinaryEnd',
  280.                \ 'cdrtocTrackCDTextItem,cdrtocTrackCDTextLanguageEnd',
  281.                \ '}')
  282.  
  283. call s:def_match('cdrtocTrackCDTextLanguageEnd',
  284.                \ 'cdrtocTrackCDTextLanguage,cdrtocTrackCDTextEnd',
  285.                \ '}')
  286.  
  287. call s:def_match('cdrtocTrackCDTextEnd',
  288.                \ 'cdrtocTrackPregap,@cdrtocTrackContents',
  289.                \ '}')
  290.  
  291. call s:def_keyword('cdrtocTrackPregap', 'cdrtocTrackPregapMMSSFF', 'PREGAP')
  292.  
  293. call s:def_match('cdrtocTrackPregapMMSSFF',
  294.                \ '@cdrtocTrackContents',
  295.                \ s:mmssff_pattern)
  296.  
  297. syn cluster cdrtocTrackContents
  298.       \ contains=
  299.       \   cdrtocTrackSubTrack,
  300.       \   cdrtocTrackMarker
  301.  
  302. syn cluster cdrtocTrackContentsFollow
  303.       \ contains=
  304.       \   @cdrtocTrackContents,
  305.       \   cdrtocTrackIndex,
  306.       \   cdrtocTrack
  307.  
  308. call s:def_keywords('cdrtocTrackSubTrack',
  309.                   \ 'cdrtocTrackSubTrackFileFilename',
  310.                   \ ['FILE', 'AUDIOFILE'])
  311.  
  312. call s:def_region('cdrtocTrackSubTrackFileFilename',
  313.                 \ 'cdrtocTrackSubTrackFileStart',
  314.                 \ '"',
  315.                 \ '\\\\\|\\"',
  316.                 \ '"',
  317.                 \ 'cdrtocTrackSubTrackFileFilenameDelimiters',
  318.                 \ 'cdrtocTrackSubTrackFileFilenameSpecialChar')
  319.  
  320. syn match   cdrtocTrackSubTrackFileFilenameSpecialChar
  321.       \ contained
  322.       \ display
  323.       \ '\\\%(\o\o\o\|["\\]\)'
  324.  
  325. call s:def_match('cdrtocTrackSubTrackFileStart',
  326.                \ 'cdrtocTrackSubTrackFileLength,@cdrtocTrackContentsFollow',
  327.                \ s:length_pattern)
  328.  
  329. call s:def_match('cdrtocTrackSubTrackFileLength',
  330.                \ '@cdrtocTrackContentsFollow',
  331.                \ s:length_pattern)
  332.  
  333. call s:def_keyword('cdrtocTrackSubTrack', 'cdrtocTrackContentDatafileFilename', 'DATAFILE')
  334.  
  335. call s:def_region('cdrtocTrackSubTrackDatafileFilename',
  336.                 \ 'cdrtocTrackSubTrackDatafileLength',
  337.                 \ '"',
  338.                 \ '\\\\\|\\"',
  339.                 \ '"',
  340.                 \ 'cdrtocTrackSubTrackDatafileFilenameDelimiters',
  341.                 \ 'cdrtocTrackSubTrackDatafileFilenameSpecialChar')
  342.  
  343. syn match   cdrtocTrackSubTrackdatafileFilenameSpecialChar
  344.       \ contained
  345.       \ display
  346.       \ '\\\%(\o\o\o\|["\\]\)'
  347.  
  348. call s:def_match('cdrtocTrackDatafileLength',
  349.                \ '@cdrtocTrackContentsFollow',
  350.                \ s:length_pattern)
  351.  
  352. call s:def_keyword('cdrtocTrackSubTrack', 'cdrtocTrackContentFifoFilename', 'DATAFILE')
  353.  
  354. call s:def_region('cdrtocTrackSubTrackFifoFilename',
  355.                 \ 'cdrtocTrackSubTrackFifoLength',
  356.                 \ '"',
  357.                 \ '\\\\\|\\"',
  358.                 \ '"',
  359.                 \ 'cdrtocTrackSubTrackFifoFilenameDelimiters',
  360.                 \ 'cdrtocTrackSubTrackFifoFilenameSpecialChar')
  361.  
  362. syn match   cdrtocTrackSubTrackdatafileFilenameSpecialChar
  363.       \ contained
  364.       \ display
  365.       \ '\\\%(\o\o\o\|["\\]\)'
  366.  
  367. call s:def_match('cdrtocTrackFifoLength',
  368.                \ '@cdrtocTrackContentsFollow',
  369.                \ s:length_pattern)
  370.  
  371. call s:def_keyword('cdrtocTrackSubTrack', 'cdrtocTrackSilenceLength', 'SILENCE')
  372.  
  373. call s:def_match('cdrtocTrackSilenceLength',
  374.                \ '@cdrtocTrackContentsFollow',
  375.                \ s:length_pattern)
  376.  
  377. call s:def_keyword('cdrtocTrackSubTrack',
  378.                  \ 'cdrtocTrackSubTrackZeroDataMode,' .
  379.                  \ 'cdrtocTrackSubTrackZeroDataSubChannelMode,' .
  380.                  \ 'cdrtocTrackSubTrackZeroDataLength',
  381.                  \ 'ZERO')
  382.  
  383. call s:def_keywords('cdrtocTrackSubTrackZeroDataMode',
  384.                   \ 'cdrtocTrackSubTrackZeroSubChannelMode,cdrtocTrackSubTrackZeroDataLength',
  385.                   \ ['AUDIO', 'MODE1', 'MODE1_RAW', 'MODE2', 'MODE2_FORM1',
  386.                   \  'MODE2_FORM2', 'MODE2_FORM_MIX', 'MODE2_RAW'])
  387.  
  388. call s:def_keywords('cdrtocTrackSubTrackZeroDataSubChannelMode',
  389.                   \ 'cdrtocTrackSubTrackZeroDataLength',
  390.                   \ ['RW', 'RW_RAW'])
  391.  
  392. call s:def_match('cdrtocTrackSubTrackZeroDataLength',
  393.                \ '@cdrtocTrackContentsFollow',
  394.                \ s:length_pattern)
  395.  
  396. call s:def_keyword('cdrtocTrackMarker',
  397.                  \ '@cdrtocTrackContentsFollow,cdrtocTrackMarkerStartMMSSFF',
  398.                  \ 'START')
  399.  
  400. call s:def_match('cdrtocTrackMarkerStartMMSSFF',
  401.                \ '@cdrtocTrackContentsFollow',
  402.                \ s:mmssff_pattern)
  403.  
  404. call s:def_keyword('cdrtocTrackMarker',
  405.                  \ '@cdrtocTrackContentsFollow,cdrtocTrackMarkerEndMMSSFF',
  406.                  \ 'END')
  407.  
  408. call s:def_match('cdrtocTrackMarkerEndMMSSFF',
  409.                \ '@cdrtocTrackContentsFollow',
  410.                \ s:mmssff_pattern)
  411.  
  412. call s:def_keyword('cdrtocTrackIndex', 'cdrtocTrackIndexMMSSFF', 'INDEX')
  413.  
  414. call s:def_match('cdrtocTrackIndexMMSSFF',
  415.                \ 'cdrtocTrackIndex,cdrtocTrack',
  416.                \ s:mmssff_pattern)
  417.  
  418. delfunction s:def_region
  419. delfunction s:def_match
  420. delfunction s:def_keyword
  421. delfunction s:def_keywords
  422. delfunction s:def_comment
  423.  
  424. syn sync fromstart
  425.  
  426. hi def link cdrtocKeyword                                  Keyword
  427. hi def link cdrtocHeaderKeyword                            cdrtocKeyword
  428. hi def link cdrtocHeaderCDText                             cdrtocHeaderKeyword
  429. hi def link cdrtocDelimiter                                Delimiter
  430. hi def link cdrtocCDTextDataBinaryEnd                      cdrtocDelimiter
  431. hi def link cdrtocHeaderCDTextDataBinaryEnd                cdrtocHeaderCDTextDataBinaryEnd
  432. hi def link cdrtocNumber                                   Number
  433. hi def link cdrtocCDTextDataBinaryInteger                  cdrtocNumber
  434. hi def link cdrtocHeaderCDTextDataBinaryInteger            cdrtocCDTextDataBinaryInteger
  435. hi def link cdrtocCDTextDataBinarySeparator                cdrtocDelimiter
  436. hi def link cdrtocHeaderCDTextDataBinarySeparator          cdrtocCDTextDataBinarySeparator
  437. hi def link cdrtocCDTextDataBinaryStart                    cdrtocDelimiter
  438. hi def link cdrtocHeaderCDTextDataBinaryStart              cdrtocCDTextDataBinaryStart
  439. hi def link cdrtocString                                   String
  440. hi def link cdrtocCDTextDataString                         cdrtocString
  441. hi def link cdrtocHeaderCDTextDataString                   cdrtocCDTextDataString
  442. hi def link cdrtocCDTextDataStringDelimiters               cdrtocDelimiter
  443. hi def link cdrtocHeaderCDTextDataStringDelimiters         cdrtocCDTextDataStringDelimiters
  444. hi def link cdrtocCDTextDataStringSpecialChar              SpecialChar
  445. hi def link cdrtocHeaderCDTextDataStringSpecialChar        cdrtocCDTextDataStringSpecialChar
  446. hi def link cdrtocCDTextEnd                                cdrtocDelimiter
  447. hi def link cdrtocHeaderCDTextEnd                          cdrtocCDTextEnd
  448. hi def link cdrtocType                                     Type
  449. hi def link cdrtocCDTextItem                               cdrtocType
  450. hi def link cdrtocHeaderCDTextItem                         cdrtocCDTextItem
  451. hi def link cdrtocHeaderCDTextLanguageMap                  cdrtocHeaderKeyword
  452. hi def link cdrtocCDTextStart                              cdrtocDelimiter
  453. hi def link cdrtocHeaderCDTextStart                        cdrtocCDTextStart
  454. hi def link cdrtocHeaderCatalog                            cdrtocHeaderKeyword
  455. hi def link cdrtocHeaderCatalogNumber                      cdrtocString
  456. hi def link cdrtocComment                                  Comment
  457. hi def link cdrtocHeaderCommentInitial                     cdrtocComment
  458. hi def link cdrtocHeaderLanguage                           cdrtocKeyword
  459. hi def link cdrtocLanguageEnd                              cdrtocDelimiter
  460. hi def link cdrtocHeaderLanguageEnd                        cdrtocLanguageEnd
  461. hi def link cdrtocHeaderLanguageMapColon                   cdrtocDelimiter
  462. hi def link cdrtocIdentifier                               Identifier
  463. hi def link cdrtocHeaderLanguageMapCountryCode             cdrtocNumber
  464. hi def link cdrtocHeaderLanguageMapCountryCodeName         cdrtocIdentifier
  465. hi def link cdrtocHeaderLanguageMapEnd                     cdrtocDelimiter
  466. hi def link cdrtocHeaderLanguageMapLanguageNumber          cdrtocNumber
  467. hi def link cdrtocHeaderLanguageMapStart                   cdrtocDelimiter
  468. hi def link cdrtocLanguageNumber                           cdrtocNumber
  469. hi def link cdrtocHeaderLanguageNumber                     cdrtocLanguageNumber
  470. hi def link cdrtocLanguageStart                            cdrtocDelimiter
  471. hi def link cdrtocHeaderLanguageStart                      cdrtocLanguageStart
  472. hi def link cdrtocHeaderTOCType                            cdrtocType
  473. hi def link cdrtocTodo                                     Todo
  474. hi def link cdrtocTrackKeyword                             cdrtocKeyword
  475. hi def link cdrtocTrack                                    cdrtocTrackKeyword
  476. hi def link cdrtocTrackCDText                              cdrtocTrackKeyword
  477. hi def link cdrtocTrackCDTextDataBinaryEnd                 cdrtocHeaderCDTextDataBinaryEnd
  478. hi def link cdrtocTrackCDTextDataBinaryInteger             cdrtocHeaderCDTextDataBinaryInteger
  479. hi def link cdrtocTrackCDTextDataBinarySeparator           cdrtocHeaderCDTextDataBinarySeparator
  480. hi def link cdrtocTrackCDTextDataBinaryStart               cdrtocHeaderCDTextDataBinaryStart
  481. hi def link cdrtocTrackCDTextDataString                    cdrtocHeaderCDTextDataString
  482. hi def link cdrtocTrackCDTextDataStringDelimiters          cdrtocCDTextDataStringDelimiters
  483. hi def link cdrtocTrackCDTextDataStringSpecialChar         cdrtocCDTextDataStringSpecialChar
  484. hi def link cdrtocTrackCDTextEnd                           cdrtocCDTextEnd
  485. hi def link cdrtocTrackCDTextItem                          cdrtocCDTextItem
  486. hi def link cdrtocTrackCDTextStart                         cdrtocCDTextStart
  487. hi def link cdrtocLength                                   cdrtocNumber
  488. hi def link cdrtocTrackDatafileLength                      cdrtocLength
  489. hi def link cdrtocTrackFifoLength                          cdrtocLength
  490. hi def link cdrtocPreProc                                  PreProc
  491. hi def link cdrtocTrackFlag                                cdrtocPreProc
  492. hi def link cdrtocTrackFlagCopy                            cdrtocTrackFlag
  493. hi def link cdrtocSpecial                                  Special
  494. hi def link cdrtocTrackFlagNo                              cdrtocSpecial
  495. hi def link cdrtocTrackFlagPreEmphasis                     cdrtocTrackFlag
  496. hi def link cdrtocTrackISRC                                cdrtocTrackFlag
  497. hi def link cdrtocTrackIndex                               cdrtocTrackKeyword
  498. hi def link cdrtocMMSSFF                                   cdrtocLength
  499. hi def link cdrtocTrackIndexMMSSFF                         cdrtocMMSSFF
  500. hi def link cdrtocTrackCDTextLanguage                      cdrtocTrackKeyword
  501. hi def link cdrtocTrackCDTextLanguageEnd                   cdrtocLanguageEnd
  502. hi def link cdrtocTrackCDTextLanguageNumber                cdrtocLanguageNumber
  503. hi def link cdrtocTrackCDTextLanguageStart                 cdrtocLanguageStart
  504. hi def link cdrtocTrackContents                            StorageClass
  505. hi def link cdrtocTrackMarker                              cdrtocTrackContents
  506. hi def link cdrtocTrackMarkerEndMMSSFF                     cdrtocMMSSFF
  507. hi def link cdrtocTrackMarkerStartMMSSFF                   cdrtocMMSSFF
  508. hi def link cdrtocTrackMode                                Type
  509. hi def link cdrtocTrackPregap                              cdrtocTrackContents
  510. hi def link cdrtocTrackPregapMMSSFF                        cdrtocMMSSFF
  511. hi def link cdrtocTrackSilenceLength                       cdrtocLength
  512. hi def link cdrtocTrackSubChannelMode                      cdrtocPreProc
  513. hi def link cdrtocTrackSubTrack                            cdrtocTrackContents
  514. hi def link cdrtocFilename                                 cdrtocString
  515. hi def link cdrtocTrackSubTrackDatafileFilename            cdrtocFilename
  516. hi def link cdrtocTrackSubTrackDatafileFilenameDelimiters  cdrtocTrackSubTrackDatafileFilename
  517. hi def link cdrtocSpecialChar                              SpecialChar
  518. hi def link cdrtocTrackSubTrackDatafileFilenameSpecialChar cdrtocSpecialChar
  519. hi def link cdrtocTrackSubTrackDatafileLength              cdrtocLength
  520. hi def link cdrtocTrackSubTrackFifoFilename                cdrtocFilename
  521. hi def link cdrtocTrackSubTrackFifoFilenameDelimiters      cdrtocTrackSubTrackFifoFilename
  522. hi def link cdrtocTrackSubTrackFifoFilenameSpecialChar     cdrtocSpecialChar
  523. hi def link cdrtocTrackSubTrackFifoLength                  cdrtocLength
  524. hi def link cdrtocTrackSubTrackFileFilename                cdrtocFilename
  525. hi def link cdrtocTrackSubTrackFileFilenameDelimiters      cdrtocTrackSubTrackFileFilename
  526. hi def link cdrtocTrackSubTrackFileFilenameSpecialChar     cdrtocSpecialChar
  527. hi def link cdrtocTrackSubTrackFileLength                  cdrtocLength
  528. hi def link cdrtocTrackSubTrackFileStart                   cdrtocLength
  529. hi def link cdrtocTrackSubTrackZeroDataLength              cdrtocLength
  530. hi def link cdrtocTrackSubTrackZeroDataMode                Type
  531. hi def link cdrtocTrackSubTrackZeroDataSubChannelMode      cdrtocPreProc
  532. hi def link cdrtocTrackSubTrackdatafileFilenameSpecialChar cdrtocSpecialChar
  533.  
  534. let b:current_syntax = "cdrtoc"
  535.  
  536. let &cpo = s:cpo_save
  537. unlet s:cpo_save
  538.