blob: 14f6f5911b72eaf65e3a5cc376323649c09cad9f (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
" Attempt to add haddock highlighting for haskell comments
" It should be placed in ~/.vim/after/syntax/haskell.vim
" Brad Bowman <haddock.vim@bereft.net>
syn match hsHdocStart "\([$^|]\|\*\+\)" contained
syn region hsHdocAnchor start="#" skip="\\#" end="#" contained oneline
syn match hsHdocChunk "$\i\+" contained
syn match hsHdocMod /"\(\i\|[.]\)\+"/ contained
syn match hsHdocLink "'\(\i\|[.#]\)\+'" contained
syn region hsHdocEm start="/" skip="\\/" end="/" contained oneline
syn region hsHdocURL start="<" end=">" contained oneline
syn region hsHdocCode start="@" skip="\\@" end="@" contained oneline
syn region hsHdocCodeBlock start="^@" end="^@" contained
syn match hsHdocBHeading "^\s*\*\+" contained
syn match hsHdocLHeading "\(^\s*--\s*\)\@<=\*\+" contained
syn match hsHdocBTracks "^\s*>" contained
" match only the > using a look-behind
syn match hsHdocLTracks "\(^\s*--\s*\)\@<=>" contained
syn cluster hsHdocSpecial
\ contains=hsHdocMod,hsHdocLink,hsHdocEm,hsHdocCode,hsHdocURL,
\ hsHdocCodeBlock,hsHdocAnchor,hsHdocChunk
syn region hsHdocDef start="^\s*\(--\)\?\s*\[" end="\]" contained contains=hsHdocSpecial
syn region hsHdocLines start="--\s*\([$\^|]\|\*\+\)"
\ skip="^\s*\(--.*\)$"
\ end="^\s*\(\$\|--\)\@!"
\ contains=@hsHdocSpecial,hsHdocLTracks,hsHdocLHeading
syn region hsHdocBlock start="{-\s*\([$\^|]\|\*\+\)" end="-}"
\ contains=@hsHdocSpecial,hsHdocBTracks,hsHdocBHeading
syn sync minlines=10
if version >= 508 || !exists("did_haddock_syntax_inits")
if version < 508
let did_haddock_syntax_inits = 1
command -nargs=+ HiLink hi link <args>
else
command -nargs=+ HiLink hi def link <args>
endif
HiLink hsHdocLines hsHdoc
HiLink hsHdocBlock hsHdoc
HiLink hsHdoc PreProc
HiLink hsHdocAnchor Special
HiLink hsHdocChunk Special
HiLink hsHdocMod Special
HiLink hsHdocLink Special
HiLink hsHdocEm Special
HiLink hsHdocURL Special
HiLink hsHdocCode Special
HiLink hsHdocLHeading Special
HiLink hsHdocBHeading Special
HiLink hsHdocLTracks Special
HiLink hsHdocBTracks Special
HiLink hsHdocCodeBlock Special
HiLink hsHdocSpecial Special
delcommand HiLink
endif
" Options for vi: sw=2 sts=2 nowrap ft=vim
|