File tree Expand file tree Collapse file tree 1 file changed +17
-9
lines changed
Expand file tree Collapse file tree 1 file changed +17
-9
lines changed Original file line number Diff line number Diff line change @@ -51,21 +51,29 @@ func FitArray(a []string, width int) string {
5151
5252 for _ , s := range a {
5353 partLen := len (s )
54- if len (parts ) > 0 {
54+ partsLen := len (parts )
55+
56+ if partsLen > 0 {
5557 partLen ++ // count space if not the first
5658 }
5759
58- if partLen > remaining {
60+ if partLen < remaining {
61+ parts = append (parts , s )
62+ remaining -= partLen
63+ } else if partLen > remaining {
5964 parts = append (parts , "…" )
60- remaining -= 2 // …
65+ remaining -= 1
6166 break
67+ } else {
68+ if partsLen < len (a )- 1 {
69+ parts = append (parts , "…" )
70+ remaining -= 1
71+ break
72+ } else {
73+ parts = append (parts , s )
74+ remaining -= partLen
75+ }
6276 }
63-
64- if len (parts ) > 0 {
65- remaining -- //space
66- }
67- parts = append (parts , s )
68- remaining -= len (s )
6977 }
7078
7179 return "[" + strings .Join (parts , " " ) + "]" + strings .Repeat (" " , remaining )
You can’t perform that action at this time.
0 commit comments