blob: 48518d7416779bacd5f4f5fb3a6a8fd6338cc804 [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001" Vim syntax file
2" Language: Microsoft Module-Definition (.def) File
Bram Moolenaar446cb832008-06-24 21:56:24 +00003" Orig Author: Rob Brady <robb@datatone.com>
4" Maintainer: Wu Yongwei <wuyongwei@gmail.com>
Bram Moolenaar071d4272004-06-13 20:20:40 +00005" Last Change: $Date$
Bram Moolenaar071d4272004-06-13 20:20:40 +00006" $Revision$
7
8" For version 5.x: Clear all syntax items
9" For version 6.x: Quit when a syntax file was already loaded
10if version < 600
11 syntax clear
12elseif exists("b:current_syntax")
13 finish
14endif
15
16syn case ignore
17
18syn match defComment ";.*"
19
20syn keyword defKeyword LIBRARY STUB EXETYPE DESCRIPTION CODE WINDOWS DOS
21syn keyword defKeyword RESIDENTNAME PRIVATE EXPORTS IMPORTS SEGMENTS
22syn keyword defKeyword HEAPSIZE DATA
23syn keyword defStorage LOADONCALL MOVEABLE DISCARDABLE SINGLE
24syn keyword defStorage FIXED PRELOAD
25
Bram Moolenaar446cb832008-06-24 21:56:24 +000026syn match defOrdinal "\s\+@\d\+"
Bram Moolenaar071d4272004-06-13 20:20:40 +000027
28syn region defString start=+'+ end=+'+
29
30syn match defNumber "\d+"
31syn match defNumber "0x\x\+"
32
33
34" Define the default highlighting.
35" For version 5.7 and earlier: only when not done already
36" For version 5.8 and later: only when an item doesn't have highlighting yet
37if version >= 508 || !exists("did_def_syntax_inits")
38 if version < 508
39 let did_def_syntax_inits = 1
40 command -nargs=+ HiLink hi link <args>
41 else
42 command -nargs=+ HiLink hi def link <args>
43 endif
44
45 HiLink defComment Comment
46 HiLink defKeyword Keyword
47 HiLink defStorage StorageClass
48 HiLink defString String
49 HiLink defNumber Number
50 HiLink defOrdinal Operator
51
52 delcommand HiLink
53endif
54
55let b:current_syntax = "def"
56
57" vim: ts=8