Mercurial > vim
view runtime/syntax/m4.vim @ 8657:c70eea7a7677 v7.4.1618
commit https://github.com/vim/vim/commit/a4f6ca717b4483eb82c6c71f71a5a5cf70e55d80
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Mar 20 17:28:35 2016 +0100
patch 7.4.1618
Problem: Starting job with output to buffer changes options in the current
buffer.
Solution: Set "curbuf" earlier. (Yasuhiro Matsumoto)
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sun, 20 Mar 2016 17:30:05 +0100 |
parents | b6632d553df3 |
children | 43efa4f5a8ea |
line wrap: on
line source
" Vim syntax file " Language: M4 " Maintainer: Claudio Fleiner (claudio@fleiner.com) " URL: http://www.fleiner.com/vim/syntax/m4.vim " Last Change: 2005 Jan 15 " This file will highlight user function calls if they use only " capital letters and have at least one argument (i.e. the '(' " must be there). Let me know if this is a problem. " For version 5.x: Clear all syntax items " For version 6.x: Quit when a syntax file was already loaded if !exists("main_syntax") if version < 600 syntax clear elseif exists("b:current_syntax") finish endif " we define it here so that included files can test for it let main_syntax='m4' endif " define the m4 syntax syn match m4Variable contained "\$\d\+" syn match m4Special contained "$[@*#]" syn match m4Comment "\<\(m4_\)\=dnl\>.*" contains=SpellErrors syn match m4Constants "\<\(m4_\)\=__file__" syn match m4Constants "\<\(m4_\)\=__line__" syn keyword m4Constants divnum sysval m4_divnum m4_sysval syn region m4Paren matchgroup=m4Delimiter start="(" end=")" contained contains=@m4Top syn region m4Command matchgroup=m4Function start="\<\(m4_\)\=\(define\|defn\|pushdef\)(" end=")" contains=@m4Top syn region m4Command matchgroup=m4Preproc start="\<\(m4_\)\=\(include\|sinclude\)("he=e-1 end=")" contains=@m4Top syn region m4Command matchgroup=m4Statement start="\<\(m4_\)\=\(syscmd\|esyscmd\|ifdef\|ifelse\|indir\|builtin\|shift\|errprint\|m4exit\|changecom\|changequote\|changeword\|m4wrap\|debugfile\|divert\|undivert\)("he=e-1 end=")" contains=@m4Top syn region m4Command matchgroup=m4builtin start="\<\(m4_\)\=\(len\|index\|regexp\|substr\|translit\|patsubst\|format\|incr\|decr\|eval\|maketemp\)("he=e-1 end=")" contains=@m4Top syn keyword m4Statement divert undivert syn region m4Command matchgroup=m4Type start="\<\(m4_\)\=\(undefine\|popdef\)("he=e-1 end=")" contains=@m4Top syn region m4Function matchgroup=m4Type start="\<[_A-Z][_A-Z0-9]*("he=e-1 end=")" contains=@m4Top syn region m4String start="`" end="'" contained contains=@m4Top,@m4StringContents,SpellErrors syn cluster m4Top contains=m4Comment,m4Constants,m4Special,m4Variable,m4String,m4Paren,m4Command,m4Statement,m4Function " Define the default highlighting. " For version 5.7 and earlier: only when not done already " For version 5.8 and later: only when an item doesn't have highlighting yet if version >= 508 || !exists("did_m4_syn_inits") if version < 508 let did_m4_syn_inits = 1 command -nargs=+ HiLink hi link <args> else command -nargs=+ HiLink hi def link <args> endif HiLink m4Delimiter Delimiter HiLink m4Comment Comment HiLink m4Function Function HiLink m4Keyword Keyword HiLink m4Special Special HiLink m4String String HiLink m4Statement Statement HiLink m4Preproc PreProc HiLink m4Type Type HiLink m4Special Special HiLink m4Variable Special HiLink m4Constants Constant HiLink m4Builtin Statement delcommand HiLink endif let b:current_syntax = "m4" if main_syntax == 'm4' unlet main_syntax endif " vim: ts=4