From 1f21b6069c68e7a5a7b3036f80fc6ceee9d473c5 Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Sun, 20 May 2018 01:33:46 +0200 Subject: ... --- main.go | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/main.go b/main.go index a957ea3..3f5efd6 100644 --- a/main.go +++ b/main.go @@ -16,8 +16,7 @@ type random interface { } type generator struct { - minWords int - minLength int + words int separator string titleWords bool addNumber bool @@ -47,23 +46,18 @@ func (g generator) pick(rnd random) string { func (g generator) generate(rnd random) string { var v []string - for i := 0; i < g.minWords; i++ { + for i := 0; i < g.words; i++ { v = append(v, g.pick(rnd)) } if g.addNumber { v = append(v, strconv.Itoa(rnd.Intn(10))) } - pw := strings.Join(v, g.separator) - if len(pw) < g.minLength { - return g.generate(rnd) - } - return pw + return strings.Join(v, g.separator) } func main() { var g generator - flag.IntVar(&g.minWords, "words", 6, "min words") - flag.IntVar(&g.minLength, "length", 30, "min lenght") + flag.IntVar(&g.words, "words", 6, "min words") flag.StringVar(&g.separator, "separator", "-", "word separator") flag.BoolVar(&g.titleWords, "title", false, "make first letter uppercase") flag.BoolVar(&g.addNumber, "number", false, "append random number to the end (0 - 9)") @@ -71,6 +65,5 @@ func main() { if err := g.loadWords("data/wordlist.txt"); err != nil { log.Fatal(err) } - pw := g.generate(rand.New(cryptoSource{})) - fmt.Println(pw) + fmt.Println(g.generate(rand.New(cryptoSource{}))) } -- cgit v1.2.3