Haddock 似乎错误地重新编码了 UTF-8 编码源文件中文档中的非 ASCII 字符。我经常需要在文档中包含数学公式,如果可以使用一些常见的数学符号,例如求和 (∑),它们的可读性会更高。
但是,通过黑线鳕运行文件后,这些符号变成空白方块。Haddock 有这个选项--use-unicode
,但它只是将函数签名等中的函数箭头转换为 unicode 字符,同时仍然破坏实际文档。
如果这可以控制就更好了cabal haddock
!
我正在使用 Haddock 2.9.4 版。
请注意,Haddock 使用 GHC API 进行解析。GHC < 7.4 无法正确处理注释中的非 ASCII 字符,但似乎使用 GHC 7.4 可以正常工作。
如果不能使用 UTF-8 并且数字字符引用如∑
or ∑
(这些是 n 元求和符号 ∑ 的正确引用)被认为是不可读的,那么恐怕唯一的选择是使用命名引用∑
,如果他们得到传递给 HTML 结果,并受将要使用的浏览器支持。
这是一个很大的“如果”,因为新的 HTML5 实体的支持相当有限,但可能在每个人都使用 Firefox 的内部网中...... HTML5 实体: http: //www.whatwg.org/specs/web-apps/current-工作/多页/命名字符-references.html
(而且大多数引用不像∑
.)