gpt4 book ai didi

haskell - wl-pprint 包中 vcat 中的额外空行

转载 作者:行者123 更新时间:2023-12-02 02:47:08 25 4
gpt4 key购买 nike

我用 wl-pprint包,因为标准的 PrettyPrinter 缺乏功能。一切都很好,除了 vcat 中的空文档函数(与 <$> 组合器相同)。

正确行为:

import Text.PrettyPrint
> vcat[text "a", empty, text "b"]
a
b

wl-pprint 显示一个额外的空行:
import Text.PrettyPrint.Leijen
> vcat[text "a", empty, text "b"]
a

b

那我能做什么?过滤 vcat 列表是不可能的,因为没有 Eq Doc 的实例.

最佳答案

因为没有更好的想法,所以在源码中做了如下改动

(<$$>) :: Doc -> Doc -> Doc
x <$$> Empty = x -- <<< added
Empty <$$> y = y -- <<< added
x <$$> y = x <> linebreak <> y

关于haskell - wl-pprint 包中 vcat 中的额外空行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11084019/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com