view runtime/syntax/cdrdaoconf.vim @ 24458:1d126cb683c1 v8.2.2769

patch 8.2.2769: Modula-3 config files are not recognized Commit: https://github.com/vim/vim/commit/6bc00699c5049c40761d212bef1b490e2af7944c Author: Bram Moolenaar <Bram@vim.org> Date: Thu Apr 15 14:29:17 2021 +0200 patch 8.2.2769: Modula-3 config files are not recognized Problem: Modula-3 config files are not recognized. Solution: Add filetype patterns. (Doug Kearns)
author Bram Moolenaar <Bram@vim.org>
date Thu, 15 Apr 2021 14:30:04 +0200
parents 1218c5353e2b
children
line wrap: on
line source

" Vim syntax file
" Language:             cdrdao(1) configuration file
" Previous Maintainer:  Nikolai Weibull <now@bitwi.se>
" Latest Revision:      2007-09-02

if exists("b:current_syntax")
  finish
endif

let s:cpo_save = &cpo
set cpo&vim

syn keyword cdrdaoconfTodo
      \ TODO FIXME XXX NOTE

syn match   cdrdaoconfBegin
      \ display
      \ nextgroup=@cdrdaoconfKeyword,cdrdaoconfComment
      \ '^'

syn cluster cdrdaoconfKeyword
      \ contains=cdrdaoconfIntegerKeyword,
      \          cdrdaoconfDriverKeyword,
      \          cdrdaoconfDeviceKeyword,
      \          cdrdaoconfPathKeyword

syn keyword cdrdaoconfIntegerKeyword
      \ contained
      \ nextgroup=cdrdaoconfIntegerDelimiter
      \ write_speed
      \ write_buffers
      \ user_capacity
      \ full_burn
      \ read_speed
      \ cddb_timeout

syn keyword cdrdaoconfIntegerKeyword
      \ contained
      \ nextgroup=cdrdaoconfParanoiaModeDelimiter
      \ read_paranoia_mode

syn keyword cdrdaoconfDriverKeyword
      \ contained
      \ nextgroup=cdrdaoconfDriverDelimiter
      \ write_driver
      \ read_driver

syn keyword cdrdaoconfDeviceKeyword
      \ contained
      \ nextgroup=cdrdaoconfDeviceDelimiter
      \ write_device
      \ read_device

syn keyword cdrdaoconfPathKeyword
      \ contained
      \ nextgroup=cdrdaoconfPathDelimiter
      \ cddb_directory
      \ tmp_file_dir

syn match   cdrdaoconfIntegerDelimiter
      \ contained
      \ nextgroup=cdrdaoconfInteger
      \ skipwhite
      \ ':'

syn match   cdrdaoconfParanoiaModeDelimiter
      \ contained
      \ nextgroup=cdrdaoconfParanoiaMode
      \ skipwhite
      \ ':'

syn match   cdrdaoconfDriverDelimiter
      \ contained
      \ nextgroup=cdrdaoconfDriver
      \ skipwhite
      \ ':'

syn match   cdrdaoconfDeviceDelimiter
      \ contained
      \ nextgroup=cdrdaoconfDevice
      \ skipwhite
      \ ':'

syn match   cdrdaoconfPathDelimiter
      \ contained
      \ nextgroup=cdrdaoconfPath
      \ skipwhite
      \ ':'

syn match   cdrdaoconfInteger
      \ contained
      \ '\<\d\+\>'

syn match   cdrdaoParanoiaMode
      \ contained
      \ '[0123]'

syn match   cdrdaoconfDriver
      \ contained
      \ '\<\(cdd2600\|generic-mmc\%(-raw\)\=\|plextor\%(-scan\)\|ricoh-mp6200\|sony-cdu9\%(20\|48\)\|taiyo-yuden\|teac-cdr55\|toshiba\|yamaha-cdr10x\)\>'

syn region  cdrdaoconfDevice
      \ contained
      \ matchgroup=cdrdaoconfDevice
      \ start=+"+
      \ end=+"+

syn region  cdrdaoconfPath
      \ contained
      \ matchgroup=cdrdaoconfPath
      \ start=+"+
      \ end=+"+

syn match   cdrdaoconfComment
      \ contains=cdrdaoconfTodo,@Spell
      \ '^.*#.*$'

hi def link cdrdaoconfTodo              Todo
hi def link cdrdaoconfComment           Comment
hi def link cdrdaoconfKeyword           Keyword
hi def link cdrdaoconfIntegerKeyword    cdrdaoconfKeyword
hi def link cdrdaoconfDriverKeyword     cdrdaoconfKeyword
hi def link cdrdaoconfDeviceKeyword     cdrdaoconfKeyword
hi def link cdrdaoconfPathKeyword       cdrdaoconfKeyword
hi def link cdrdaoconfDelimiter         Delimiter
hi def link cdrdaoconfIntegerDelimiter  cdrdaoconfDelimiter
hi def link cdrdaoconfDriverDelimiter   cdrdaoconfDelimiter
hi def link cdrdaoconfDeviceDelimiter   cdrdaoconfDelimiter
hi def link cdrdaoconfPathDelimiter     cdrdaoconfDelimiter
hi def link cdrdaoconfInteger           Number
hi def link cdrdaoconfParanoiaMode      Number
hi def link cdrdaoconfDriver            Identifier
hi def link cdrdaoconfDevice            cdrdaoconfPath
hi def link cdrdaoconfPath              String

let b:current_syntax = "cdrdaoconf"

let &cpo = s:cpo_save
unlet s:cpo_save