_评论者:razum2um_
嗨,Jérémie,Alex和Luc,
我是aprint的作者,很高兴你们喜欢我的库 :)
以下是我对此事的看法
1) 我真的喜欢将其推入tools.trace的想法
2) 目前,clojure的所有contrib-libs都遵循与语言相同的补丁接受策略,我已经对此表示疑虑
https://github.com/clojure/clojure/pull/17#issuecomment-53628365 尝试理解,如果一个库依赖于另一个库,最后一个库必须与原始库分享相同的策略,这不是案件,因为我几乎没有停下来接受pull请求。
3) 如果您不能更改此策略,我将“内联”视为最佳选择。
现在,关于“将内联什么?”这个问题,我有以下几点看法
4) 我有点惊讶,人们似乎并不像我想的这样分享与我使用 repl 集成的方式一样:不关心颜色,他们只是喜欢布局。因此,我们可以放弃颜色,去除对 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* 控制