if version < 600 syntax clear elseif exists("b:current_syntax") finish endif syn match asmDirective "\W\.[a-z][a-z]\+\>" " storage types syn match asmType "\W\.long" syn match asmType "\W\.ascii" syn match asmType "\W\.asciz" syn match asmType "\W\.byte" syn match asmType "\W\.double" syn match asmType "\W\.float" syn match asmType "\W\.hword" syn match asmType "\W\.int" syn match asmType "\W\.octa" syn match asmType "\W\.quad" syn match asmType "\W\.short" syn match asmType "\W\.single" syn match asmType "\W\.space" syn match asmType "\W\.string" syn match asmType "\W\.word" syn match decNumber "\<[1-9]\d*\>" syn match octNumber "\<0[0-7]*\>" syn match hexNumber "\<0[x][0-9a-f]*\>" syn match binNumber "\<0[b][0-1]*\>" syn match asmLabel "^[a-z0-9_]*:"he=e-1 syn match asmIdentifier "^\s\+[a-z_][a-z0-9_]*" syn match asmIdentifier "^[0-9]:\s\+[a-z_][a-z0-9_]*"lc=2 syn match asmComment "#.*"hs=s+1 syn match asmInclude "\W\.include" syn match asmCond "\W\.if\>" syn match asmCond "\W\.else\>" syn match asmCond "\W\.elseif" syn match asmCond "\W\.endif" syn match asmMacro "\W\.macro" syn match asmMacro "\W\.endm" syn case match " 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_asm_syntax_inits") if version < 508 let did_asm_syntax_inits = 1 command -nargs=+ HiLink hi link else command -nargs=+ HiLink hi def link endif " The default methods for highlighting. Can be overridden later HiLink asmSection Special HiLink asmLabel Label HiLink asmComment Comment HiLink asmDirective Statement HiLink asmInclude Include HiLink asmCond PreCondit HiLink asmMacro Macro HiLink hexNumber Number HiLink decNumber Number HiLink octNumber Number HiLink binNumber Number HiLink asmSpecialComment Comment HiLink asmIdentifier Identifier HiLink asmType Type hi asmComment ctermfg=red delcommand HiLink endif let b:current_syntax = "asm" " vim: ts=8