elf.vim (2349B)
1 " Vim syntax file 2 " Language: ELF 3 " Maintainer: Christian V. J. Brüssow <cvjb@cvjb.de> 4 " Last Change: Son 22 Jun 2003 20:43:14 CEST 5 " Filenames: *.ab,*.am 6 " URL: http://www.cvjb.de/comp/vim/elf.vim 7 " $Id: elf.vim,v 1.1 2004/06/13 19:52:27 vimboss Exp $ 8 " 9 " ELF: Extensible Language Facility 10 " This is the Applix Inc., Macro and Builder programming language. 11 " It has nothing in common with the binary format called ELF. 12 13 " quit when a syntax file was already loaded 14 if exists("b:current_syntax") 15 finish 16 endif 17 18 " Case does not matter 19 syn case ignore 20 21 " Environments 22 syn region elfEnvironment transparent matchgroup=Special start="{" matchgroup=Special end="}" contains=ALLBUT,elfBraceError 23 24 " Unmatched braces 25 syn match elfBraceError "}" 26 27 " All macros must have at least one of these definitions 28 syn keyword elfSpecial endmacro 29 syn region elfSpecial transparent matchgroup=Special start="^\(\(macro\)\|\(set\)\) \S\+$" matchgroup=Special end="^\(\(endmacro\)\|\(endset\)\)$" contains=ALLBUT,elfBraceError 30 31 " Preprocessor Commands 32 syn keyword elfPPCom define include 33 34 " Some keywords 35 syn keyword elfKeyword false true null 36 syn keyword elfKeyword var format object function endfunction 37 38 " Conditionals and loops 39 syn keyword elfConditional if else case of endcase for to next while until return goto 40 41 " All built-in elf macros end with an '@' 42 syn match elfMacro "[0-9_A-Za-z]\+@" 43 44 " Strings and characters 45 syn region elfString start=+"+ skip=+\\\\\|\\"+ end=+"+ 46 47 " Numbers 48 syn match elfNumber "-\=\<[0-9]*\.\=[0-9_]\>" 49 50 " Comments 51 syn region elfComment start="/\*" end="\*/" 52 syn match elfComment "\'.*$" 53 54 syn sync ccomment elfComment 55 56 " Parenthesis 57 syn match elfParens "[\[\]()]" 58 59 " Punctuation 60 syn match elfPunct "[,;]" 61 62 " Define the default highlighting. 63 " Only when an item doesn't have highlighting yet 64 65 " The default methods for highlighting. Can be overridden later. 66 hi def link elfComment Comment 67 hi def link elfPPCom Include 68 hi def link elfKeyword Keyword 69 hi def link elfSpecial Special 70 hi def link elfEnvironment Special 71 hi def link elfBraceError Error 72 hi def link elfConditional Conditional 73 hi def link elfMacro Function 74 hi def link elfNumber Number 75 hi def link elfString String 76 hi def link elfParens Delimiter 77 hi def link elfPunct Delimiter 78 79 80 let b:current_syntax = "elf" 81 82 " vim:ts=8:sw=4:nocindent:smartindent: