diff src/gogemo/main.go @ 27:3d6709f41037

gogemo.
author pyon@macmini
date Sun, 03 Feb 2019 20:31:02 +0900
parents
children 8e3f320396b8
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/gogemo/main.go	Sun Feb 03 20:31:02 2019 +0900
@@ -0,0 +1,50 @@
+/*
+ Gogemo: Command-line Migemo program by go.
+ Last Change: 2019-02-03 Sun 19:45:42.
+
+ Written by T.Mutoh
+*/
+package main
+
+import (
+    "flag"
+    "fmt"
+    "os"
+
+    "./gogemo"
+)
+
+const ver string = "1.0"
+
+func main() {
+    inv  := flag.Bool("v", false, "inverse")
+    wfn  := flag.Bool("f", false, "with filename")
+    look := flag.Bool("l", false, "lookup dictionary")
+    // 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:
+        fmt.Fprint( os.Stderr, "[ gogemo v" + ver + " ]\n")
+        flag.PrintDefaults()
+        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()
+}
+