diff --git a/markup/goldmark/autoid.go b/markup/goldmark/autoid.go index 72cb79f71..1ca1ba5e0 100644 --- a/markup/goldmark/autoid.go +++ b/markup/goldmark/autoid.go @@ -54,6 +54,8 @@ func sanitizeAnchorNameWithHook(b []byte, idType string, hook func(buf *bytes.Bu b = text.RemoveAccents(b) } + b = bytes.TrimSpace(b) + for len(b) > 0 { r, size := utf8.DecodeRune(b) switch { diff --git a/markup/goldmark/autoid_test.go b/markup/goldmark/autoid_test.go index 0ddf5e886..7acae9f47 100644 --- a/markup/goldmark/autoid_test.go +++ b/markup/goldmark/autoid_test.go @@ -66,6 +66,9 @@ tabspace testlines, expectlines := strings.Split(tests, "\n"), strings.Split(expect, "\n") + testlines = append(testlines, "Trailing Space ") + expectlines = append(expectlines, "trailing-space") + if len(testlines) != len(expectlines) { panic("test setup failed") }