From 008f17419a0decbb82985a74a730a8b60ed07e5d Mon Sep 17 00:00:00 2001 From: ah8ad3 Date: Sun, 4 Aug 2024 10:02:17 +0330 Subject: [PATCH] realign line breaks in kubectl exaplin wrap method --- staging/src/k8s.io/kubectl/pkg/explain/v2/funcs.go | 3 +++ staging/src/k8s.io/kubectl/pkg/explain/v2/funcs_test.go | 7 +++++++ 2 files changed, 10 insertions(+) diff --git a/staging/src/k8s.io/kubectl/pkg/explain/v2/funcs.go b/staging/src/k8s.io/kubectl/pkg/explain/v2/funcs.go index 4c5e1c62be5..e12244f97b7 100644 --- a/staging/src/k8s.io/kubectl/pkg/explain/v2/funcs.go +++ b/staging/src/k8s.io/kubectl/pkg/explain/v2/funcs.go @@ -56,6 +56,9 @@ func WithBuiltinTemplateFuncs(tmpl *template.Template) *template.Template { return "", errors.New(message) }, "wrap": func(l int, s string) (string, error) { + // realign all line breaks + s = strings.ReplaceAll(s, "\n", "") + buf := bytes.NewBuffer(nil) writer := term.NewWordWrapWriter(buf, uint(l)) _, err := writer.Write([]byte(s)) diff --git a/staging/src/k8s.io/kubectl/pkg/explain/v2/funcs_test.go b/staging/src/k8s.io/kubectl/pkg/explain/v2/funcs_test.go index e505ca64f60..d0cd1cacb01 100644 --- a/staging/src/k8s.io/kubectl/pkg/explain/v2/funcs_test.go +++ b/staging/src/k8s.io/kubectl/pkg/explain/v2/funcs_test.go @@ -56,6 +56,13 @@ func TestFuncs(t *testing.T) { Context: "this/is/a/slash/separated/thing", Expect: "[this is a slash separated thing]", }, + { + Name: "realign line breaks", + FuncName: "wrap", + Source: `{{wrap 76 .}}`, + Context: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus pulvinar in libero id sagittis. \nAliquam sem enim, vehicula et urna ac, vehicula ullamcorper sem. Morbi turpis arcu, aliquet at \neros quis, sodales dignissim eros. \nQuisque ut lectus quis magna maximus elementum a nec felis. \nNulla ultricies pulvinar quam, id tincidunt.", + Expect: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus pulvinar in\nlibero id sagittis. Aliquam sem enim, vehicula et urna ac, vehicula\nullamcorper sem. Morbi turpis arcu, aliquet at eros quis, sodales dignissim\neros. Quisque ut lectus quis magna maximus elementum a nec felis. Nulla\nultricies pulvinar quam, id tincidunt.", + }, { Name: "basic", FuncName: "join",