1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- " Vim syntax file
- " Language: ELF
- " Maintainer: Christian V. J. Brüssow <cvjb@cvjb.de>
- " Last Change: Son 22 Jun 2003 20:43:14 CEST
- " Filenames: *.ab,*.am
- " URL: http://www.cvjb.de/comp/vim/elf.vim
- " $Id: elf.vim,v 1.1 2004/06/13 19:52:27 vimboss Exp $
- "
- " ELF: Extensible Language Facility
- " This is the Applix Inc., Macro and Builder programming language.
- " It has nothing in common with the binary format called ELF.
- " quit when a syntax file was already loaded
- if exists("b:current_syntax")
- finish
- endif
- " Case does not matter
- syn case ignore
- " Environments
- syn region elfEnvironment transparent matchgroup=Special start="{" matchgroup=Special end="}" contains=ALLBUT,elfBraceError
- " Unmatched braces
- syn match elfBraceError "}"
- " All macros must have at least one of these definitions
- syn keyword elfSpecial endmacro
- syn region elfSpecial transparent matchgroup=Special start="^\(\(macro\)\|\(set\)\) \S\+$" matchgroup=Special end="^\(\(endmacro\)\|\(endset\)\)$" contains=ALLBUT,elfBraceError
- " Preprocessor Commands
- syn keyword elfPPCom define include
- " Some keywords
- syn keyword elfKeyword false true null
- syn keyword elfKeyword var format object function endfunction
- " Conditionals and loops
- syn keyword elfConditional if else case of endcase for to next while until return goto
- " All built-in elf macros end with an '@'
- syn match elfMacro "[0-9_A-Za-z]\+@"
- " Strings and characters
- syn region elfString start=+"+ skip=+\\\\\|\\"+ end=+"+
- " Numbers
- syn match elfNumber "-\=\<[0-9]*\.\=[0-9_]\>"
- " Comments
- syn region elfComment start="/\*" end="\*/"
- syn match elfComment "\'.*$"
- syn sync ccomment elfComment
- " Parenthesis
- syn match elfParens "[\[\]()]"
- " Punctuation
- syn match elfPunct "[,;]"
- " Define the default highlighting.
- " Only when an item doesn't have highlighting yet
- " The default methods for highlighting. Can be overridden later.
- hi def link elfComment Comment
- hi def link elfPPCom Include
- hi def link elfKeyword Keyword
- hi def link elfSpecial Special
- hi def link elfEnvironment Special
- hi def link elfBraceError Error
- hi def link elfConditional Conditional
- hi def link elfMacro Function
- hi def link elfNumber Number
- hi def link elfString String
- hi def link elfParens Delimiter
- hi def link elfPunct Delimiter
- let b:current_syntax = "elf"
- " vim:ts=8:sw=4:nocindent:smartindent:
|