summaryrefslogtreecommitdiff
path: root/runtime/syntax/haskell.vim
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2017-12-17 17:17:07 +0100
committerBram Moolenaar <Bram@vim.org>2017-12-17 17:17:07 +0100
commitf0b03c4e98f8a7184d8b4a5d702cbcd602426923 (patch)
tree2ef116f952de9f85631e5a1ca6a1b617e65a9d7d /runtime/syntax/haskell.vim
parent8ee2d36e216756e712a3a9122ce1e1203378a9c8 (diff)
downloadvim-git-f0b03c4e98f8a7184d8b4a5d702cbcd602426923.tar.gz
Update runtime files
Diffstat (limited to 'runtime/syntax/haskell.vim')
-rw-r--r--runtime/syntax/haskell.vim6
1 files changed, 3 insertions, 3 deletions
diff --git a/runtime/syntax/haskell.vim b/runtime/syntax/haskell.vim
index e398085ba..1adb7ab78 100644
--- a/runtime/syntax/haskell.vim
+++ b/runtime/syntax/haskell.vim
@@ -1,7 +1,7 @@
" Vim syntax file
" Language: Haskell
" Maintainer: Haskell Cafe mailinglist <haskell-cafe@haskell.org>
-" Last Change: 2017 Jun 04
+" Last Change: 2017 Dec 16
" Original Author: John Williams <jrw@pobox.com>
"
" Thanks to Ryan Crumley for suggestions and John Meacham for
@@ -59,8 +59,8 @@ syn match hsSpecialCharError contained "\\&\|'''\+"
syn region hsString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=hsSpecialChar
syn match hsCharacter "[^a-zA-Z0-9_']'\([^\\]\|\\[^']\+\|\\'\)'"lc=1 contains=hsSpecialChar,hsSpecialCharError
syn match hsCharacter "^'\([^\\]\|\\[^']\+\|\\'\)'" contains=hsSpecialChar,hsSpecialCharError
-syn match hsNumber "\<[0-9]\+\>\|\<0[xX][0-9a-fA-F]\+\>\|\<0[oO][0-7]\+\>"
-syn match hsFloat "\<[0-9]\+\.[0-9]\+\([eE][-+]\=[0-9]\+\)\=\>"
+syn match hsNumber "\v<[0-9]%(_*[0-9])*>|<0[xX]_*[0-9a-fA-F]%(_*[0-9a-fA-F])*>|<0[oO]_*%(_*[0-7])*>|<0[bB]_*[01]%(_*[01])*>"
+syn match hsFloat "\v<[0-9]%(_*[0-9])*\.[0-9]%(_*[0-9])*%(_*[eE][-+]?[0-9]%(_*[0-9])*)?>|<[0-9]%(_*[0-9])*_*[eE][-+]?[0-9]%(_*[0-9])*>|<0[xX]_*[0-9a-fA-F]%(_*[0-9a-fA-F])*\.[0-9a-fA-F]%(_*[0-9a-fA-F])*%(_*[pP][-+]?[0-9]%(_*[0-9])*)?>|<0[xX]_*[0-9a-fA-F]%(_*[0-9a-fA-F])*_*[pP][-+]?[0-9]%(_*[0-9])*>"
" Keyword definitions. These must be patterns instead of keywords
" because otherwise they would match as keywords at the start of a