diff options
author | Wim <wim@42.be> | 2017-01-17 23:57:47 +0100 |
---|---|---|
committer | Wim <wim@42.be> | 2017-01-18 00:02:37 +0100 |
commit | f8a6e65bfdeb89a7ec340442060c6c053b7d8083 (patch) | |
tree | 8d33c8376c21812e133a497027d9880da07fad25 /vendor/github.com/shurcooL | |
parent | 6df6c5d615181e91006ac3ceb72a2e09f29d1bb9 (diff) | |
download | matterbridge-msglm-f8a6e65bfdeb89a7ec340442060c6c053b7d8083.tar.gz matterbridge-msglm-f8a6e65bfdeb89a7ec340442060c6c053b7d8083.tar.bz2 matterbridge-msglm-f8a6e65bfdeb89a7ec340442060c6c053b7d8083.zip |
Release v0.9.1v0.9.1
Diffstat (limited to 'vendor/github.com/shurcooL')
-rw-r--r-- | vendor/github.com/shurcooL/sanitized_anchor_name/LICENSE | 19 | ||||
-rw-r--r-- | vendor/github.com/shurcooL/sanitized_anchor_name/main.go | 29 |
2 files changed, 48 insertions, 0 deletions
diff --git a/vendor/github.com/shurcooL/sanitized_anchor_name/LICENSE b/vendor/github.com/shurcooL/sanitized_anchor_name/LICENSE new file mode 100644 index 00000000..5f4e3ed5 --- /dev/null +++ b/vendor/github.com/shurcooL/sanitized_anchor_name/LICENSE @@ -0,0 +1,19 @@ +Copyright (c) 2015 Dmitri Shuralyov + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. 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..72a87535 --- /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 []rune(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) +} |