From f2cdda7278e01b548f8aff6567376ae2f15c1803 Mon Sep 17 00:00:00 2001 From: Duco van Amstel Date: Mon, 22 Oct 2018 10:48:29 -0700 Subject: Update Blackfriday dependency (closes #522) (#532) - Fixup Telegram bridge implementation to support updated dependency. --- .../shurcooL/sanitized_anchor_name/main.go | 29 ++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 vendor/github.com/shurcooL/sanitized_anchor_name/main.go (limited to 'vendor/github.com/shurcooL/sanitized_anchor_name/main.go') diff --git a/vendor/github.com/shurcooL/sanitized_anchor_name/main.go b/vendor/github.com/shurcooL/sanitized_anchor_name/main.go new file mode 100644 index 00000000..6a77d124 --- /dev/null +++ b/vendor/github.com/shurcooL/sanitized_anchor_name/main.go @@ -0,0 +1,29 @@ +// Package sanitized_anchor_name provides a func to create sanitized anchor names. +// +// Its logic can be reused by multiple packages to create interoperable anchor names +// and links to those anchors. +// +// At this time, it does not try to ensure that generated anchor names +// are unique, that responsibility falls on the caller. +package sanitized_anchor_name // import "github.com/shurcooL/sanitized_anchor_name" + +import "unicode" + +// Create returns a sanitized anchor name for the given text. +func Create(text string) string { + var anchorName []rune + var futureDash = false + for _, r := range text { + switch { + case unicode.IsLetter(r) || unicode.IsNumber(r): + if futureDash && len(anchorName) > 0 { + anchorName = append(anchorName, '-') + } + futureDash = false + anchorName = append(anchorName, unicode.ToLower(r)) + default: + futureDash = true + } + } + return string(anchorName) +} -- cgit v1.2.3