Documentation
¶
Overview ¶
Package slug generate slug from unicode string, URL-friendly slugify with multiple languages support.
Example:
package main import( "github.com/gosimple/slug" "fmt" ) func main () { text := slug.Make("Hellö Wörld хелло ворлд") fmt.Println(text) // Will print hello-world-khello-vorld someText := slug.Make("影師") fmt.Println(someText) // Will print: ying-shi enText := slug.MakeLang("This & that", "en") fmt.Println(enText) // Will print 'this-and-that' deText := slug.MakeLang("Diese & Dass", "de") fmt.Println(deText) // Will print 'diese-und-dass' slug.CustomSub = map[string]string{ "water": "sand", } textSub := slug.Make("water is hot") fmt.Println(textSub) // Will print 'sand-is-hot' }
Requests or bugs?
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( // CustomSub stores custom substitution map CustomSub map[string]string // CustomRuneSub stores custom rune substitution map CustomRuneSub map[rune]string // MaxLength stores maximum slug length. // It's smart so it will cat slug after full word. // By default slugs aren't shortened. // If MaxLength is smaller than length of the first word, then returned // slug will contain only substring from the first word truncated // after MaxLength. MaxLength int )
Functions ¶
func IsSlug ¶ added in v1.1.0
IsSlug returns True if provided text does not contain white characters, punctuation, all letters are lower case and only from ASCII range. It could contain `-` and `_`. All output from slug.Make(text) should pass this test.
func Make ¶
Make returns slug generated from provided string. Will use "en" as language substitution.
func MakeLang ¶
MakeLang returns slug generated from provided string and will use provided language for chars substitution.
func Substitute ¶
Substitute returns string with superseded all substrings from provided substitution map. Substitution map will be applied in alphabetic order. Many passes, on one substitution another one could apply.
Types ¶
This section is empty.