summaryrefslogtreecommitdiffstats
path: root/runtime/syntax/config.vim
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2015-01-14 19:42:21 +0100
committerBram Moolenaar <Bram@vim.org>2015-01-14 19:42:21 +0100
commit83caecf31437c1e1af342186514f2a073ee1427e (patch)
treedbafd7f8242016c1d3337de12419e8632038468b /runtime/syntax/config.vim
parentd574ea2f80b271aff4bac7dc7fa83b292f0ac486 (diff)
Updated runtime files.
Diffstat (limited to 'runtime/syntax/config.vim')
-rw-r--r--runtime/syntax/config.vim20
1 files changed, 14 insertions, 6 deletions
diff --git a/runtime/syntax/config.vim b/runtime/syntax/config.vim
index 20ca19ced0..cd83b24352 100644
--- a/runtime/syntax/config.vim
+++ b/runtime/syntax/config.vim
@@ -1,11 +1,13 @@
" Vim syntax file
" Language: configure.in script: M4 with sh
" Maintainer: Christian Hammesr <ch@lathspell.westend.com>
-" Last Change: 2008 Sep 03
+" Last Change: 2015 Jan 14
+" (patch from Yngve Inntjore Levinsen to detect AC_MSG)
+" (patch from Khym Chanur to add @Spell)
" Well, I actually even do not know much about m4. This explains why there
" is probably very much missing here, yet !
-" But I missed a good hilighting when editing my GNU autoconf/automake
+" But I missed good highlighting when editing my GNU autoconf/automake
" script, so I wrote this quick and dirty patch.
@@ -20,14 +22,19 @@ endif
" define the config syntax
syn match configdelimiter "[()\[\];,]"
syn match configoperator "[=|&\*\+\<\>]"
-syn match configcomment "\(dnl.*\)\|\(#.*\)"
+syn match configcomment "\(dnl.*\)\|\(#.*\)" contains=configDnl,@Spell
syn match configfunction "\<[A-Z_][A-Z0-9_]*\>"
syn match confignumber "[-+]\=\<\d\+\(\.\d*\)\=\>"
+syn keyword configDnl dnl contained
syn keyword configkeyword if then else fi test for in do done
syn keyword configspecial cat rm eval
-syn region configstring start=+"+ skip=+\\"+ end=+"+
-syn region configstring start=+'+ skip=+\\'+ end=+'+
-syn region configstring start=+`+ skip=+\\'+ end=+`+
+
+" This shortens the script, see syn-ext-match..
+syn region configstring start=+\z(["'`]\)+ skip=+\\\z1+ end=+\z1+ contains=@Spell
+
+" Anything inside AC_MSG_TYPE([...]) and AC_MSG_TYPE(...) is a string.
+syn region configstring matchgroup=configfunction start="AC_MSG_[A-Z]*\ze(\[" matchgroup=configdelimiter end="\])" contains=configdelimiter,@Spell
+syn region configstring matchgroup=configfunction start="AC_MSG_[A-Z]*\ze([^[]" matchgroup=configdelimiter end=")" contains=configdelimiter,@Spell
" Define the default highlighting.
" For version 5.7 and earlier: only when not done already
@@ -43,6 +50,7 @@ if version >= 508 || !exists("did_config_syntax_inits")
HiLink configdelimiter Delimiter
HiLink configoperator Operator
HiLink configcomment Comment
+ HiLink configDnl Comment
HiLink configfunction Function
HiLink confignumber Number
HiLink configkeyword Keyword