comparison runtime/syntax/cabal.vim @ 2152:b9e314fe473f

Updated runtime files.
author Bram Moolenaar <bram@zimbu.org>
date Fri, 14 May 2010 23:24:24 +0200
parents
children a8afba7027ae
comparison
equal deleted inserted replaced
2151:ae22c450546c 2152:b9e314fe473f
1 " Vim syntax file
2 " Language: Haskell Cabal Build file
3 " Maintainer: Vincent Berthoux <twinside@gmail.com>
4 " File Types: .cabal
5 " v1.3: Updated to the last version of cabal
6 " Added more highlighting for cabal function, true/false
7 " and version number. Also added missing comment highlighting.
8 " Cabal known compiler are highlighted too.
9 "
10 " V1.2: Added cpp-options which was missing. Feature implemented
11 " by GHC, found with a GHC warning, but undocumented.
12 " Whatever...
13 "
14 " v1.1: Fixed operator problems and added ftdetect file
15 " (thanks to Sebastian Schwarz)
16 "
17 " v1.0: Cabal syntax in vimball format
18 " (thanks to Magnus Therning)
19
20 " For version 5.x: Clear all syntax items
21 " For version 6.x: Quit when a syntax file was already loaded
22 if version < 600
23 syntax clear
24 elseif exists("b:current_syntax")
25 finish
26 endif
27
28 syn keyword cabalCategory Library library Executable executable Flag flag
29 syn keyword cabalCategory source-repository Source-Repository
30
31 syn keyword cabalConditional if else
32 syn match cabalOperator "&&\|||\|!\|==\|>=\|<="
33 syn keyword cabalFunction os arche impl flag
34 syn match cabalComment /--.*$/
35 syn match cabalVersion "\d\+\(.\(\d\)\+\)\+"
36
37 syn match cabalTruth "\ctrue"
38 syn match cabalTruth "\cfalse"
39
40 syn match cabalCompiler "\cghc"
41 syn match cabalCompiler "\cnhc"
42 syn match cabalCompiler "\cyhc"
43 syn match cabalCompiler "\chugs"
44 syn match cabalCompiler "\chbc"
45 syn match cabalCompiler "\chelium"
46 syn match cabalCompiler "\cjhc"
47 syn match cabalCompiler "\clhc"
48
49
50 syn match cabalStatement "\cauthor"
51 syn match cabalStatement "\cbranch"
52 syn match cabalStatement "\cbug-reports"
53 syn match cabalStatement "\cbuild-depends"
54 syn match cabalStatement "\cbuild-tools"
55 syn match cabalStatement "\cbuild-type"
56 syn match cabalStatement "\cbuildable"
57 syn match cabalStatement "\cc-sources"
58 syn match cabalStatement "\ccabal-version"
59 syn match cabalStatement "\ccategory"
60 syn match cabalStatement "\ccc-options"
61 syn match cabalStatement "\ccopyright"
62 syn match cabalStatement "\ccpp-options"
63 syn match cabalStatement "\cdata-dir"
64 syn match cabalStatement "\cdata-files"
65 syn match cabalStatement "\cdefault"
66 syn match cabalStatement "\cdescription"
67 syn match cabalStatement "\cexecutable"
68 syn match cabalStatement "\cexposed-modules"
69 syn match cabalStatement "\cexposed"
70 syn match cabalStatement "\cextensions"
71 syn match cabalStatement "\cextra-lib-dirs"
72 syn match cabalStatement "\cextra-libraries"
73 syn match cabalStatement "\cextra-source-files"
74 syn match cabalStatement "\cextra-tmp-files"
75 syn match cabalStatement "\cfor example"
76 syn match cabalStatement "\cframeworks"
77 syn match cabalStatement "\cghc-options"
78 syn match cabalStatement "\cghc-prof-options"
79 syn match cabalStatement "\cghc-shared-options"
80 syn match cabalStatement "\chomepage"
81 syn match cabalStatement "\chs-source-dirs"
82 syn match cabalStatement "\chugs-options"
83 syn match cabalStatement "\cinclude-dirs"
84 syn match cabalStatement "\cincludes"
85 syn match cabalStatement "\cinstall-includes"
86 syn match cabalStatement "\cld-options"
87 syn match cabalStatement "\clicense-file"
88 syn match cabalStatement "\clicense"
89 syn match cabalStatement "\clocation"
90 syn match cabalStatement "\cmain-is"
91 syn match cabalStatement "\cmaintainer"
92 syn match cabalStatement "\cmodule"
93 syn match cabalStatement "\cname"
94 syn match cabalStatement "\cnhc98-options"
95 syn match cabalStatement "\cother-modules"
96 syn match cabalStatement "\cpackage-url"
97 syn match cabalStatement "\cpkgconfig-depends"
98 syn match cabalStatement "\cstability"
99 syn match cabalStatement "\csubdir"
100 syn match cabalStatement "\csynopsis"
101 syn match cabalStatement "\ctag"
102 syn match cabalStatement "\ctested-with"
103 syn match cabalStatement "\ctype"
104 syn match cabalStatement "\cversion"
105
106 " Define the default highlighting.
107 " For version 5.7 and earlier: only when not done already
108 " For version 5.8 and later: only when an item doesn't have highlighting yet
109 if version >= 508 || !exists("did_cabal_syn_inits")
110 if version < 508
111 let did_cabal_syn_inits = 1
112 command -nargs=+ HiLink hi link <args>
113 else
114 command -nargs=+ HiLink hi def link <args>
115 endif
116
117 HiLink cabalVersion Number
118 HiLink cabalTruth Boolean
119 HiLink cabalComment Comment
120 HiLink cabalStatement Statement
121 HiLink cabalCategory Type
122 HiLink cabalFunction Function
123 HiLink cabalConditional Conditional
124 HiLink cabalOperator Operator
125 HiLink cabalCompiler Constant
126 delcommand HiLink
127 endif
128
129 let b:current_syntax = "cabal"
130
131 " vim: ts=8