1" Vim syntax file
2" Language:		configure.in script: M4 with sh
3" Maintainer:	Christian Hammesr <ch@lathspell.westend.com>
4" Last Change:	2008 Sep 03
5
6" Well, I actually even do not know much about m4. This explains why there
7" is probably very much missing here, yet !
8" But I missed a good hilighting when editing my GNU autoconf/automake
9" script, so I wrote this quick and dirty patch.
10
11
12" For version 5.x: Clear all syntax items
13" For version 6.x: Quit when a syntax file was already loaded
14if version < 600
15  syntax clear
16elseif exists("b:current_syntax")
17  finish
18endif
19
20" define the config syntax
21syn match   configdelimiter "[()\[\];,]"
22syn match   configoperator  "[=|&\*\+\<\>]"
23syn match   configcomment   "\(dnl.*\)\|\(#.*\)"
24syn match   configfunction  "\<[A-Z_][A-Z0-9_]*\>"
25syn match   confignumber    "[-+]\=\<\d\+\(\.\d*\)\=\>"
26syn keyword configkeyword   if then else fi test for in do done
27syn keyword configspecial   cat rm eval
28syn region  configstring    start=+"+ skip=+\\"+ end=+"+
29syn region  configstring    start=+'+ skip=+\\'+ end=+'+
30syn region  configstring    start=+`+ skip=+\\'+ end=+`+
31
32" Define the default highlighting.
33" For version 5.7 and earlier: only when not done already
34" For version 5.8 and later: only when an item doesn't have highlighting yet
35if version >= 508 || !exists("did_config_syntax_inits")
36  if version < 508
37    let did_config_syntax_inits = 1
38    command -nargs=+ HiLink hi link <args>
39  else
40    command -nargs=+ HiLink hi def link <args>
41  endif
42
43  HiLink configdelimiter Delimiter
44  HiLink configoperator  Operator
45  HiLink configcomment   Comment
46  HiLink configfunction  Function
47  HiLink confignumber    Number
48  HiLink configkeyword   Keyword
49  HiLink configspecial   Special
50  HiLink configstring    String
51
52  delcommand HiLink
53endif
54
55let b:current_syntax = "config"
56
57" vim: ts=4
58