[Pkg-haskell-maintainers] Bug#753299: libghc-highlighting-kate-dev: Highlighting Ocaml fails

John MacFarlane jgm at berkeley.edu
Sat Jul 19 15:17:33 UTC 2014

Another solution would be to modify the highlighting-kate code to
avoid using character classes with octal escapes.  (I could simulate
them by just listing all the characters.)  Perhaps that is the best
short-term solution.

+++ John MacFarlane [Jul 19 14 08:14 ]:
>Update:  It seems that pcre-light is no longer being actively maintained
>upstream.  pcre-regex-builtin is not in Debian.  I thought the solution
>might be to add an option to highlighting-kate to use the regex-pcre library
>(in debian as libghc-regex-pcre-dev).  However, this seems to have the same
>Prelude Text.Regex.PCRE.ByteString Data.ByteString.UTF8> Left e <- compile (compUTF8 + compAnchored) 0 (fromString "[\\o{0370}-\\o{0377}")
>Prelude Text.Regex.PCRE.ByteString Data.ByteString.UTF8> e
>(11,"range out of order in character class")
>Is the problem perhaps that the underlying C library pcre has not been
>compiled with UTF8 support?
>+++ John MacFarlane [Jul 18 14 16:53 ]:
>>I'd tested before with pcre-regex-builtin, which worked.
>>I recompiled with pcre-light, and got the failure you report.
>>The problem can be exhibited in pcre-light:
>>Prelude Text.Regex.PCRE.Light Data.ByteString.UTF8> match (compile
>>"[\\o{0370}-\\o{0377}") [utf8,anchored]) (fromString "hi") []
>>*** Exception: Text.Regex.PCRE.Light: Error in regex: range out of order
>>character class
>>The unicode ranges seem to be confusing it, even with 'utf8' set.
>>Submitted an issue upstream:
>>In the mean time, I suggest that debian packagers use pcre-regex-builtin
>>instead (though perhaps there was a reason for using pcre-light?).
>>+++ Samuel Hym [Jul 01 14 18:06 ]:
>>>Hi John,
>>>>Are you certain that the version you are using in GHCI is,
>>>>and not an older version (perhaps from your user database)?
>>>I rechecked, using the same version of the package but on a 
>>>different machine, different arch, just in case. But still with 
>>>debian-built packages, and with the same result.
>>>Here is what ghci has to say, with the full versions of the modules used:
>>>GHCi, version 7.6.3: http://www.haskell.org/ghc/  :? for help
>>>Loading package ghc-prim ... linking ... done.
>>>Loading package integer-gmp ... linking ... done.
>>>Loading package base ... linking ... done.
>>>Prelude> :m +Text.Highlighting.Kate
>>>Prelude Text.Highlighting.Kate> highlightAs "ocaml" "a"
>>>Loading package array- ... linking ... done.
>>>Loading package deepseq- ... linking ... done.
>>>Loading package containers- ... linking ... done.
>>>Loading package bytestring- ... linking ... done.
>>>Loading package transformers- ... linking ... done.
>>>Loading package mtl-2.1.2 ... linking ... done.
>>>Loading package text- ... linking ... done.
>>>Loading package parsec-3.1.3 ... linking ... done.
>>>Loading package blaze-builder- ... linking ... done.
>>>Loading package blaze-markup- ... linking ... done.
>>>Loading package blaze-html- ... linking ... done.
>>>Loading package pcre-light-0.4 ... linking ... done.
>>>Loading package utf8-string-0.3.7 ... linking ... done.
>>>Loading package highlighting-kate- ... linking ... done.
>>>[*** Exception: Text.Regex.PCRE.Light: Error in regex: range out 
>>>of order in character class
>>>You think something else might be to blame in the module stack?
>>>Do you know if there is a way to ask pcre-light to be somewhat 
>>>more informative about the regex producing the issue?
>>>By the way, many thanks for pandoc!
>>>Best regards

More information about the Pkg-haskell-maintainers mailing list