ref: 1ad684ce6fd54c822abe63014e31b18b19d4aa6a
parent: 472f09590bc0436c405234efc6d9a2b704ebeff8
author: Michael Misch <michaelmisch1985@gmail.com>
date: Sat Oct 26 05:20:52 PDT 2019
Make sure we call the function correctly
--- a/command.go
+++ b/command.go
@@ -1,6 +1,7 @@
package main
import (
+ "errors"
"flag"
"fmt"
"os"
@@ -41,7 +42,7 @@
func (c command) setTask(arg string) error {
switch arg {
//case "help":
- //c.runner = help
+ //c.runner = help
case "init":
c.runner = initFile
case "list":
@@ -51,13 +52,13 @@
case "dot":
c.runner = dot
case "rm":
- if flag.NArg < 2 {
+ if flag.NArg() < 2 {
return errors.New("No arguments supplied to rm")
}
c.args = flag.Args()[1:]
c.runner = rm
case "add":
- if flag.NArg < 2 {
+ if flag.NArg() < 2 {
return errors.New("No arguments supplied to add")
}
c.args = flag.Args()[1:]
@@ -84,8 +85,8 @@
return nil
}
-// Broken out from main because there may be more busywork as things progress
-func (c *command) runCmd() {
+// As above, broken out for posterity
+func (c *command) run() {
if c.runner != nil {
c.runner(c)
}
--- a/task.go
+++ b/task.go
@@ -1,6 +1,21 @@
package main
+import "fmt"
+
func task(c *command) error {
- switch c.args[1]
+ // Open file
+ // Parse in
+ // Add/rm/etc
+ // Write out
+ switch c.args[1] {
+ case "add":
+
+ case "rm":
+ case "do":
+ case "undo":
+ case "toggle":
+ default:
+ return fmt.Errorf("Command not supported: %v", c.args[1])
+ }
return nil
}
--- a/todo.go
+++ b/todo.go
@@ -20,5 +20,5 @@
if err != nil {
log.Fatal(err)
}
- cmd.runCmd()
+ cmd.run()
}