xref: /vim-8.2.3635/runtime/syntax/cfg.vim (revision 6c391a74)
1071d4279SBram Moolenaar" Vim syntax file
2071d4279SBram Moolenaar" Language:	Good old CFG files
3071d4279SBram Moolenaar" Maintainer:	Igor N. Prischepoff ([email protected], [email protected])
49b451250SBram Moolenaar" Last change:	2012 Aug 11
5071d4279SBram Moolenaar
689bcfda6SBram Moolenaar" quit when a syntax file was already loaded
789bcfda6SBram Moolenaarif exists ("b:current_syntax")
8071d4279SBram Moolenaar    finish
9071d4279SBram Moolenaarendif
10071d4279SBram Moolenaar
11071d4279SBram Moolenaar" case off
12071d4279SBram Moolenaarsyn case ignore
13071d4279SBram Moolenaarsyn keyword CfgOnOff  ON OFF YES NO TRUE FALSE  contained
14071d4279SBram Moolenaarsyn match UncPath "\\\\\p*" contained
15071d4279SBram Moolenaar"Dos Drive:\Path
16071d4279SBram Moolenaarsyn match CfgDirectory "[a-zA-Z]:\\\p*" contained
17071d4279SBram Moolenaar"Parameters
189b451250SBram Moolenaarsyn match   CfgParams    ".\{0}="me=e-1 contains=CfgComment
19071d4279SBram Moolenaar"... and their values (don't want to highlight '=' sign)
20071d4279SBram Moolenaarsyn match   CfgValues    "=.*"hs=s+1 contains=CfgDirectory,UncPath,CfgComment,CfgString,CfgOnOff
21071d4279SBram Moolenaar
22071d4279SBram Moolenaar" Sections
23071d4279SBram Moolenaarsyn match CfgSection	    "\[.*\]"
24071d4279SBram Moolenaarsyn match CfgSection	    "{.*}"
25071d4279SBram Moolenaar
26071d4279SBram Moolenaar" String
27071d4279SBram Moolenaarsyn match  CfgString	"\".*\"" contained
28071d4279SBram Moolenaarsyn match  CfgString    "'.*'"   contained
29071d4279SBram Moolenaar
30071d4279SBram Moolenaar" Comments (Everything before '#' or '//' or ';')
31071d4279SBram Moolenaarsyn match  CfgComment	"#.*"
32071d4279SBram Moolenaarsyn match  CfgComment	";.*"
33071d4279SBram Moolenaarsyn match  CfgComment	"\/\/.*"
34071d4279SBram Moolenaar
35*6c391a74SBram Moolenaar" Define the default highlighting.
3689bcfda6SBram Moolenaar" Only when an item doesn't have highlighting yet
37f37506f6SBram Moolenaarhi def link CfgOnOff     Label
38f37506f6SBram Moolenaarhi def link CfgComment	Comment
39f37506f6SBram Moolenaarhi def link CfgSection	Type
40f37506f6SBram Moolenaarhi def link CfgString	String
41f37506f6SBram Moolenaarhi def link CfgParams    Keyword
42f37506f6SBram Moolenaarhi def link CfgValues    Constant
43f37506f6SBram Moolenaarhi def link CfgDirectory Directory
44f37506f6SBram Moolenaarhi def link UncPath      Directory
45071d4279SBram Moolenaar
4689bcfda6SBram Moolenaar
47071d4279SBram Moolenaarlet b:current_syntax = "cfg"
48071d4279SBram Moolenaar" vim:ts=8
49