mirror of
https://github.com/gohugoio/hugo.git
synced 2025-04-26 13:40:38 +03:00
Fix Plainify edge cases
This commit replaces the main part of `helpers.StripHTML` with Go's implementation in its html/template package. It's a little slower, but correctness is more important: ```bash BenchmarkStripHTMLOld-10 680316 1764 ns/op 728 B/op 4 allocs/op BenchmarkStripHTMLNew-10 384520 3099 ns/op 2089 B/op 10 allocs/op ``` Fixes #9199 Fixes #9909 Closes #9410
This commit is contained in:
parent
cd0112a05a
commit
3854a6fa6c
10 changed files with 103 additions and 85 deletions
|
@ -22,6 +22,7 @@ import (
|
|||
"github.com/gohugoio/hugo/cache/namedmemcache"
|
||||
"github.com/gohugoio/hugo/markup/converter/hooks"
|
||||
"github.com/gohugoio/hugo/markup/highlight"
|
||||
"github.com/gohugoio/hugo/tpl"
|
||||
|
||||
"github.com/gohugoio/hugo/deps"
|
||||
"github.com/gohugoio/hugo/helpers"
|
||||
|
@ -141,7 +142,7 @@ func (ns *Namespace) Plainify(s any) (string, error) {
|
|||
return "", err
|
||||
}
|
||||
|
||||
return helpers.StripHTML(ss), nil
|
||||
return tpl.StripHTML(ss), nil
|
||||
}
|
||||
|
||||
// For internal use.
|
||||
|
|
|
@ -237,6 +237,7 @@ func TestPlainify(t *testing.T) {
|
|||
expect any
|
||||
}{
|
||||
{"<em>Note:</em> blah <b>blah</b>", "Note: blah blah"},
|
||||
{"<div data-action='click->my-controller#doThing'>qwe</div>", "qwe"},
|
||||
// errors
|
||||
{tstNoStringer{}, false},
|
||||
} {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue