Mercurial > mercurial > hgweb_golang.cgi
view src/gogemo/main.go @ 29:0f05c342fde1
gogemo v1.2 ( compress by bzip2 & English dictionary )
author | pyon@macmini |
---|---|
date | Sat, 23 Feb 2019 15:53:53 +0900 |
parents | 8e3f320396b8 |
children | a273d4792e48 |
line wrap: on
line source
/* Gogemo: Command-line Migemo program by go. Last Change: 2019-02-23 Sat 15:43:49. Written by T.Mutoh */ package main import ( "flag" "fmt" "os" "./gogemo" ) const ver string = "1.2" func main() { inv := flag.Bool("v", false, "inverse (not implement)") wfn := flag.Bool("f", false, "print with filename") look := flag.Bool("l", false, "lookup dictionary") dout := flag.Bool("d", false, "dump dictionary (all words)") // cnt := flag.Bool("c", false, "count matched") // iu := flag.Bool("w", false, "input encoding: utf-8") // ou := flag.Bool("W", false, "output encoding: utf-8") // is := flag.Bool("s", false, "output encoding: shift-jis") // os := flag.Bool("S", false, "output encoding: shift-jis") flag.Parse() var g gogemo.Gogemo g.SetOptions(*inv, *wfn) switch flag.NArg() { case 0: if *dout { g.PrintDictionary() os.Exit(0) } print_help() os.Exit(0) case 1: // from stdin or look dict g.Prepare(flag.Arg(0), nil) if *look { g.Look() os.Exit(0) } default: g.Prepare(flag.Arg(0), flag.Args()[1:]) } g.Search() } func print_help() { fmt.Fprint(os.Stderr, "[ gogemo v" + ver + " ]\n") flag.PrintDefaults() fmt.Fprint(os.Stderr, "\n") fmt.Fprint(os.Stderr, " $ gogemo roma file\n") fmt.Fprint(os.Stderr, " $ cat file1 file2 | gogemo roma\n") fmt.Fprint(os.Stderr, " $ gogemo -f roma file1 file2...\n") fmt.Fprint(os.Stderr, " $ gogemo -l roma\n") fmt.Fprint(os.Stderr, " $ gogemo -d > dict.csv\n") }