请在 2024 年 Clojure 状态调查中分享您的想法!

欢迎!有关如何使用此功能的更多信息,请参阅关于页面。

0
打印

当使用 print-table 将 ASCII 表格打印到 stdout 时,如果任何值是包含任何换行符的字符串,则表格显示将断裂。例如

`
user=> (print-table [{:a "test" :b "test\ntest2"}])

| :a | :b |
|------+------------|
| test | test
test2 |
nil
`

我期望输出看起来像这样

`
user=> (print-table [{:a "test" :b "test\ntest2"}])

| :a | :b |
|------+------------|
| test | test +
| | test2 |
nil
`

右侧边框上的 + 符号表示行继续换行。这与 PostgreSQL psql 工具显示多行行的表类似

`
user=# select 'test' col1, E'test\ntest2\ntest3' col2;
col1 | col2
------+-------
test | test +

  | test2+
  | test3

(1 row)

时间:0.776 毫秒
`

3 个答案

0

评论由:[email protected] 发布

JIRA 破坏了我的格式,看起来我无法编辑它来修复。这是我真正想要说的话

当使用 print-table 将 ASCII 表格打印到 stdout 时,如果任何值是包含任何换行符的字符串,则表格显示将断裂。例如

`
user=> (print-table [{:a "test" :b "test\ntest2"}])

| :a | :b |
|------+------------|
| test | test
test2 |
`

我期望输出看起来像这样

user=> (print-table [{:a "test" :b "test\ntest2"}]) | :a | :b | |------+------------| | test | test + | | test2 |

右侧边框上的 + 符号表示行继续换行。这与 PostgreSQL psql 工具显示多行行的表类似

`
labtrack=# select 'test' col1, E'test\ntest2' col2;
col1 | col2
------+-------
test | test +

  | test2

(1 row)
`

0

评论由:jafingerhut 发布

我对这一点没有直接的了解,但我猜测 Clojure 团队可能将此视为增强请求,而不是缺陷。

您可能可以通过编写自己的print-table版本以您希望的方式工作,或者查看这些项目是否已经按照预期行为,或者作者是否愿意改进它们来更快地获得您想要的东西:[https://github.com/cldwalker/table](https://github.com/cldwalker/table) 或 [https://github.com/joegallo/doric](https://github.com/joegallo/doric)

0
参考:[https://clojure.atlassian.net/browse/CLJ-1230](https://clojure.atlassian.net/browse/CLJ-1230)(由 alex+import 报告)
...