_由 razum2um_ 发布的评论
嗨 Jérémie,Alex和Luc,
我是aprint的作者,关于你喜欢我的库真的很高兴 :)
以下是关于此事的看法
1) 我真的很欣赏将`aprint`推入`tools.trace`的想法
2) 目前,所有clojure contrib-libs都有与语言相同的补丁接受政策,这我已经想到了
https://github.com/clojure/clojure/pull/17#issuecomment-53628365 尝试理解,如果库依赖于另一个库,最后一个库必须与原始库有相同的政策,这并不是这种情况,因为我几乎停止接受pull requests。
3) 如果您不能改变这项政策,我认为"内联"是最佳选择。
现在关于“要内联什么?”这个问题,我有一些看法
4) 我有点惊讶,人们不介意与我分享将此与repl整合的想法,就像这样
https://github.com/greglook/whidbey, 他们不喜欢颜色,他们只喜欢布局。因此,我们可以放弃着色,并消除对clansi的依赖。或者我可以在行内使用clansi(具有MIT许可证),记录一个: ^dynamic来打开颜色(默认关闭)
5) 适用于紧凑布局的代码依赖于jline,它肯定不会进入内部 :) 因此,它将保持pprint/*print-right-margin*的默认值,默认为72,这在我的看法中并不是最佳选择,但我们就让它这样吧。(或者你还在运行非常旧的终端上的clojure吗?)
6) 我认为引入一个新的: ^dynamic来处理它没有意义,我建议依靠pprint/*print-pretty*,如果是真的,则使用紧凑布局而不是pprint的默认布局
因此
- 我可以填写并签署一个CA
- 准备一个依赖项免补丁,只有紧凑布局(以及如果您需要则着色)受pprint/*print-pretty*和pprint/*print-right-margin*控制