[ { "A BB" "CC D" } ] [ { { "A" "BB" } { "CC" "D" } } format-table ] unit-test
-[ { "A C" "B " "D E" } ] [ { { "A\nB" "C" } { "D" "E" } } format-table ] unit-test
\ No newline at end of file
+[ { "A C" "B " "D E" } ] [ { { "A\nB" "C" } { "D" "E" } } format-table ] unit-test
+
+[ { "A B" " C" "D E" } ] [ { { "A" "B\nC" } { "D" "E" } } format-table ] unit-test
+
+[ { "A B" "C D" " E" } ] [ { { "A" "B" } { "C" "D\nE" } } format-table ] unit-test
\ No newline at end of file
: max-length ( seq -- n )
[ length ] [ max ] map-reduce ;
-: format-row ( seq ? -- seq )
- [
- dup max-length
- '[ _ "" pad-tail ] map
- ] unless ;
+: format-row ( seq -- seq )
+ dup max-length
+ '[ _ "" pad-tail ] map ;
: format-column ( seq ? -- seq )
[
PRIVATE>
: format-table ( table -- seq )
- [ [ [ string-lines ] map ] dip format-row flip ] map-last concat
+ [ [ string-lines ] map format-row flip ] map concat
flip [ format-column ] map-last flip [ " " join ] map ;
\ No newline at end of file