summaryrefslogtreecommitdiffstats
path: root/syntax/haskell.vim
diff options
context:
space:
mode:
Diffstat (limited to 'syntax/haskell.vim')
-rw-r--r--syntax/haskell.vim6
1 files changed, 5 insertions, 1 deletions
diff --git a/syntax/haskell.vim b/syntax/haskell.vim
index 048a40ea..9ca4d89e 100644
--- a/syntax/haskell.vim
+++ b/syntax/haskell.vim
@@ -38,7 +38,8 @@ syn match haskellTypeSig
\ haskellParens
syn keyword haskellWhere where
syn keyword haskellLet let
-syn keyword haskellDeclKeyword module class instance newtype deriving in
+syn match HaskellDerive "\<deriving\>\(\s\+\<\(anyclass\|instance\|newtype\|stock\)\>\)\?"
+syn keyword haskellDeclKeyword module class instance newtype in
syn match haskellDecl "\<\(type\|data\)\>\s\+\(\<family\>\)\?"
syn keyword haskellDefault default
syn keyword haskellImportKeywords import qualified safe as hiding contained
@@ -57,6 +58,7 @@ syn match haskellImport "^\s*\<import\>\s\+\(\<safe\>\s\+\)\?\(\<qualified\>\s\+
\ haskellType,
\ haskellLineComment,
\ haskellBlockComment,
+ \ haskellString,
\ haskellPragma
syn keyword haskellKeyword do case of
if get(g:, 'haskell_enable_static_pointers', 0)
@@ -161,11 +163,13 @@ highlight def link haskellType Type
highlight def link haskellImportKeywords Include
if get(g:, 'haskell_classic_highlighting', 0)
highlight def link haskellDeclKeyword Keyword
+ highlight def link HaskellDerive Keyword
highlight def link haskellDecl Keyword
highlight def link haskellWhere Keyword
highlight def link haskellLet Keyword
else
highlight def link haskellDeclKeyword Structure
+ highlight def link HaskellDerive Structure
highlight def link haskellDecl Structure
highlight def link haskellWhere Structure
highlight def link haskellLet Structure