_评论者:razum2um_
嗨Jérémie、Alex和Luc,
我是aprint的作者,很高兴你们喜欢我的库 :)
以下是我对这个问题的看法
1) 我非常赞同将其推向tools.trace的想法
2) 目前所有 clojure contrib-libs 都与语言本身采取相同的补丁接受策略,这让我感到有些疑惑。有关详情请参考
https://github.com/clojure/clojure/pull/17#issuecomment-53628365。尝试理解,如果一个库依赖另一个库,最后一个库必须与原始库采取相同的策略,但实际上并非如此,因为我对几乎所有的 pull request 都很难拒绝。
3) 如果您无法更改此策略,我认为“内联”是一个不错的选择。
现在来说说关于“将什么内容内联”的问题。
4) 我有点惊讶,人们没有和我一样想将 repl 与之整合,不喜欢颜色,只喜欢布局。因此,我们可以忽略颜色并且取消对 clansi 的依赖。或者,我可以选择内联 clansi(具有 MIT 许可),并文档化一个 :^dynamic 以启用颜色(默认情况下颜色将关闭)。
5) 紧凑布局的代码依赖于 jline,肯定不会将其放入其中 :) 因此,这将继续保持 pptn/*print-right-margin* 的默认值,默认为 72,这在我的观点中并不是最佳选择,但就让它如此吧。(或者您还在使用非常旧的终端?)
6) 我认为没有引入新的 :^dynamic 的必要,我建议依赖 pptn/*print-pretty*,如果它是真的,则使用紧凑布局而不是 pptn 的默认布局。
因此:
- 我可以填写并签署一个 CA
- 准备一个仅包含紧凑布局(如果您喜欢,还可以包含颜色)的依赖者免费补丁,该补丁由 pptn/*print-pretty* 和 pptn/*print-right-margin* 控制