diff --git a/format/htmlparser.go b/format/htmlparser.go index b4b1b9a4..e5f92896 100644 --- a/format/htmlparser.go +++ b/format/htmlparser.go @@ -13,6 +13,7 @@ import ( "strconv" "strings" + "go.mau.fi/util/exstrings" "golang.org/x/net/html" "maunium.net/go/mautrix/event" @@ -371,7 +372,7 @@ func (parser *HTMLParser) singleNodeToString(node *html.Node, ctx Context) Tagge switch node.Type { case html.TextNode: if !ctx.PreserveWhitespace { - node.Data = strings.Replace(node.Data, "\n", "", -1) + node.Data = exstrings.CollapseSpaces(strings.ReplaceAll(node.Data, "\n", "")) } if parser.TextConverter != nil { node.Data = parser.TextConverter(node.Data, ctx) diff --git a/go.mod b/go.mod index a8c1f26d..c109af31 100644 --- a/go.mod +++ b/go.mod @@ -17,7 +17,7 @@ require ( github.com/tidwall/gjson v1.18.0 github.com/tidwall/sjson v1.2.5 github.com/yuin/goldmark v1.7.12 - go.mau.fi/util v0.8.9-0.20250808135321-09699c48d2fa + go.mau.fi/util v0.8.9-0.20250810202017-1d053aac320a go.mau.fi/zeroconfig v0.1.3 golang.org/x/crypto v0.40.0 golang.org/x/exp v0.0.0-20250718183923-645b1fa84792 diff --git a/go.sum b/go.sum index 4f9bfaeb..dae44df7 100644 --- a/go.sum +++ b/go.sum @@ -51,8 +51,8 @@ github.com/tidwall/sjson v1.2.5 h1:kLy8mja+1c9jlljvWTlSazM7cKDRfJuR/bOJhcY5NcY= github.com/tidwall/sjson v1.2.5/go.mod h1:Fvgq9kS/6ociJEDnK0Fk1cpYF4FIW6ZF7LAe+6jwd28= github.com/yuin/goldmark v1.7.12 h1:YwGP/rrea2/CnCtUHgjuolG/PnMxdQtPMO5PvaE2/nY= github.com/yuin/goldmark v1.7.12/go.mod h1:ip/1k0VRfGynBgxOz0yCqHrbZXhcjxyuS66Brc7iBKg= -go.mau.fi/util v0.8.9-0.20250808135321-09699c48d2fa h1:xVnyD0gaIvK+7xA5lWSqWJf5EB2URW2Y0R4ABisAHD0= -go.mau.fi/util v0.8.9-0.20250808135321-09699c48d2fa/go.mod h1:GZZp5f9r2MgEu4GDvtB0XxCF7i6Z7Z8fM0w9a5oZH3Y= +go.mau.fi/util v0.8.9-0.20250810202017-1d053aac320a h1:AviXwC+XRYNvlmLieSQxBjj5/K5JUIjBgduYNVSrPTo= +go.mau.fi/util v0.8.9-0.20250810202017-1d053aac320a/go.mod h1:GZZp5f9r2MgEu4GDvtB0XxCF7i6Z7Z8fM0w9a5oZH3Y= go.mau.fi/zeroconfig v0.1.3 h1:As9wYDKmktjmNZW5i1vn8zvJlmGKHeVxHVIBMXsm4kM= go.mau.fi/zeroconfig v0.1.3/go.mod h1:NcSJkf180JT+1IId76PcMuLTNa1CzsFFZ0nBygIQM70= golang.org/x/crypto v0.40.0 h1:r4x+VvoG5Fm+eJcxMaY8CQM7Lb0l1lsmjGBQ6s8BfKM=