view runtime/syntax/hastepreproc.vim @ 6999:dc1b678f0e4e v7.4.817

patch 7.4.817 Problem: Invalid memory access in file_pat_to_reg_pat(). Solution: Use vim_isspace() instead of checking for a space only. (Dominique Pelle)
author Bram Moolenaar <bram@vim.org>
date Tue, 11 Aug 2015 16:20:05 +0200
parents 0b796e045c42
children 43efa4f5a8ea
line wrap: on
line source

" Vim syntax file
" Language:	Haste preprocessor files 
" Maintainer:	M. Tranchero - maurizio.tranchero@gmail.com
" Credits:	some parts have been taken from vhdl, verilog, and C syntax
"		files
" Version:	0.5

" HASTE
if exists("b:current_syntax")
    finish
endif
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
if version < 600
  syntax clear
elseif exists("b:current_syntax")
  finish
endif
" Read the C syntax to start with
if version < 600
    so <sfile>:p:h/haste.vim
else
    runtime! syntax/haste.vim
    unlet b:current_syntax
endif

" case is significant
syn case match

" C pre-processor directives
syn match  hastepreprocVar 	display "\$[[:alnum:]_]*"
syn region hastepreprocVar	start="\${" end="}" contains=hastepreprocVar
"
"syn region hastepreproc		start="#\[\s*tg[:alnum:]*" end="]#" contains=hastepreprocVar,hastepreproc,hastepreprocError,@Spell
syn region hastepreproc		start="#\[\s*\(\|tgfor\|tgif\)" end="$" contains=hastepreprocVar,hastepreproc,@Spell
syn region hastepreproc		start="}\s\(else\)\s{" end="$" contains=hastepreprocVar,hastepreproc,@Spell
syn region hastepreproc		start="^\s*#\s*\(ifndef\|ifdef\|else\|endif\)\>" end="$" contains=@hastepreprocGroup,@Spell
syn region hastepreproc		start="\s*##\s*\(define\|undef\)\>" end="$" contains=@hastepreprocGroup,@Spell
syn match hastepreproc		"}\{0,1}\s*]#"

" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link hastepreproc	Preproc
hi def link hastepreprocVar	Special
hi def link hastepreprocError	Error

let b:current_syntax = "hastepreproc"

" vim: ts=8