diff options
author | Duco van Amstel <duco.vanamstel@gmail.com> | 2018-10-22 10:48:29 -0700 |
---|---|---|
committer | Wim <wim@42.be> | 2018-10-22 19:48:29 +0200 |
commit | f2cdda7278e01b548f8aff6567376ae2f15c1803 (patch) | |
tree | ce6edbde50dc721b366e97e43c2726df808b59f8 /vendor/github.com/shurcooL/sanitized_anchor_name/main.go | |
parent | 6911458d15f548070da870cc7f68c2a882f1c674 (diff) | |
download | matterbridge-msglm-f2cdda7278e01b548f8aff6567376ae2f15c1803.tar.gz matterbridge-msglm-f2cdda7278e01b548f8aff6567376ae2f15c1803.tar.bz2 matterbridge-msglm-f2cdda7278e01b548f8aff6567376ae2f15c1803.zip |
Update Blackfriday dependency (closes #522) (#532)
- Fixup Telegram bridge implementation to support updated dependency.
Diffstat (limited to 'vendor/github.com/shurcooL/sanitized_anchor_name/main.go')
-rw-r--r-- | vendor/github.com/shurcooL/sanitized_anchor_name/main.go | 29 |
1 files changed, 29 insertions, 0 deletions
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) +} |