Mercurial > mercurial > hgweb_golang.cgi
comparison 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 | 
   comparison
  equal
  deleted
  inserted
  replaced
| 28:8e3f320396b8 | 29:0f05c342fde1 | 
|---|---|
| 1 /* | 1 /* | 
| 2 Gogemo: Command-line Migemo program by go. | 2 Gogemo: Command-line Migemo program by go. | 
| 3 Last Change: 2019-02-09 Sat 15:46:37. | 3 Last Change: 2019-02-23 Sat 15:43:49. | 
| 4 | 4 | 
| 5 Written by T.Mutoh | 5 Written by T.Mutoh | 
| 6 */ | 6 */ | 
| 7 package main | 7 package main | 
| 8 | 8 | 
| 12 "os" | 12 "os" | 
| 13 | 13 | 
| 14 "./gogemo" | 14 "./gogemo" | 
| 15 ) | 15 ) | 
| 16 | 16 | 
| 17 const ver string = "1.1" | 17 const ver string = "1.2" | 
| 18 | 18 | 
| 19 func main() { | 19 func main() { | 
| 20 inv := flag.Bool("v", false, "inverse (not implement)") | 20 inv := flag.Bool("v", false, "inverse (not implement)") | 
| 21 wfn := flag.Bool("f", false, "with filename") | 21 wfn := flag.Bool("f", false, "print with filename") | 
| 22 look := flag.Bool("l", false, "lookup dictionary") | 22 look := flag.Bool("l", false, "lookup dictionary") | 
| 23 dout := flag.Bool("d", false, "dump dictionary (all words)") | |
| 23 // cnt := flag.Bool("c", false, "count matched") | 24 // cnt := flag.Bool("c", false, "count matched") | 
| 24 // iu := flag.Bool("w", false, "input encoding: utf-8") | 25 // iu := flag.Bool("w", false, "input encoding: utf-8") | 
| 25 // ou := flag.Bool("W", false, "output encoding: utf-8") | 26 // ou := flag.Bool("W", false, "output encoding: utf-8") | 
| 26 // is := flag.Bool("s", false, "output encoding: shift-jis") | 27 // is := flag.Bool("s", false, "output encoding: shift-jis") | 
| 27 // os := flag.Bool("S", false, "output encoding: shift-jis") | 28 // os := flag.Bool("S", false, "output encoding: shift-jis") | 
| 30 var g gogemo.Gogemo | 31 var g gogemo.Gogemo | 
| 31 g.SetOptions(*inv, *wfn) | 32 g.SetOptions(*inv, *wfn) | 
| 32 | 33 | 
| 33 switch flag.NArg() { | 34 switch flag.NArg() { | 
| 34 case 0: | 35 case 0: | 
| 35 fmt.Fprint(os.Stderr, "[ gogemo v" + ver + " ]\n") | 36 if *dout { | 
| 36 flag.PrintDefaults() | 37 g.PrintDictionary() | 
| 37 fmt.Fprint(os.Stderr, "\n") | 38 os.Exit(0) | 
| 38 fmt.Fprint(os.Stderr, "> gogemo roma file1 file2...\n") | 39 } | 
| 39 fmt.Fprint(os.Stderr, "> cat file | gogemo roma\n") | 40 print_help() | 
| 40 fmt.Fprint(os.Stderr, "> gogemo -l roma\n") | |
| 41 os.Exit(0) | 41 os.Exit(0) | 
| 42 case 1: // from stdin or look dict | 42 case 1: // from stdin or look dict | 
| 43 g.Prepare(flag.Arg(0), nil) | 43 g.Prepare(flag.Arg(0), nil) | 
| 44 if *look { | 44 if *look { | 
| 45 g.Look() | 45 g.Look() | 
| 50 } | 50 } | 
| 51 | 51 | 
| 52 g.Search() | 52 g.Search() | 
| 53 } | 53 } | 
| 54 | 54 | 
| 55 func print_help() { | |
| 56 fmt.Fprint(os.Stderr, "[ gogemo v" + ver + " ]\n") | |
| 57 flag.PrintDefaults() | |
| 58 fmt.Fprint(os.Stderr, "\n") | |
| 59 fmt.Fprint(os.Stderr, " $ gogemo roma file\n") | |
| 60 fmt.Fprint(os.Stderr, " $ cat file1 file2 | gogemo roma\n") | |
| 61 fmt.Fprint(os.Stderr, " $ gogemo -f roma file1 file2...\n") | |
| 62 fmt.Fprint(os.Stderr, " $ gogemo -l roma\n") | |
| 63 fmt.Fprint(os.Stderr, " $ gogemo -d > dict.csv\n") | |
| 64 } | |
| 65 | 
