@@ -9,14 +9,18 @@ import (
99)
1010
1111func StringSliceOr (val interface {}) (text.Colors , string , error ) {
12- return formatStringSlice (val , "or" )
12+ return formatStringSlice (val , "or" , false )
1313}
1414
1515func StringSliceAnd (val interface {}) (text.Colors , string , error ) {
16- return formatStringSlice (val , "and" )
16+ return formatStringSlice (val , "and" , false )
1717}
1818
19- func formatStringSlice (val interface {}, andOrOr string ) (text.Colors , string , error ) {
19+ func StringSliceSingleLineAnd (val interface {}) (text.Colors , string , error ) {
20+ return formatStringSlice (val , "and" , true )
21+ }
22+
23+ func formatStringSlice (val interface {}, andOrOr string , singleLine bool ) (text.Colors , string , error ) {
2024 if val == nil {
2125 return nil , "" , nil
2226 }
@@ -26,7 +30,7 @@ func formatStringSlice(val interface{}, andOrOr string) (text.Colors, string, er
2630 }
2731
2832 if ifaceSliceVal , ok := toIfaceSlice (val ); ok {
29- return nil , stringSliceString (ifaceSliceVal , andOrOr ), nil
33+ return nil , stringSliceString (ifaceSliceVal , andOrOr , singleLine ), nil
3034 }
3135
3236 return nil , fmt .Sprintf ("%+v" , val ), nil
@@ -54,7 +58,7 @@ func maxStringLen(strings []string) int {
5458 return max
5559}
5660
57- func stringSliceString (values []interface {}, andOrOr string ) string {
61+ func stringSliceString (values []interface {}, andOrOr string , singleLine bool ) string {
5862 if len (values ) == 0 {
5963 return ""
6064 }
@@ -69,7 +73,7 @@ func stringSliceString(values []interface{}, andOrOr string) string {
6973 }
7074
7175 whitespace := " "
72- if maxStringLen (strs ) > 15 || len (strs ) > 3 {
76+ if ! singleLine && ( maxStringLen (strs ) > 15 || len (strs ) > 3 ) {
7377 whitespace = "\n "
7478 }
7579
0 commit comments