aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--hatask.ha13
1 files changed, 12 insertions, 1 deletions
diff --git a/hatask.ha b/hatask.ha
index 9ecd37e..d15007f 100644
--- a/hatask.ha
+++ b/hatask.ha
@@ -123,6 +123,7 @@ fn sortname(a: const *opaque, b: const *opaque) int = {
export fn main() void = {
const cmd = getopt::parse(os::args,
"tasklist",
+ ('f', "path", "tasks directory"),
("filter", ["filter tasks", "id"]: []getopt::help),
("f", ["filter tasks", "id"]: []getopt::help),
("show", ["show task details", "id"]: []getopt::help),
@@ -136,8 +137,18 @@ export fn main() void = {
);
defer getopt::finish(&cmd);
+ let tasksdir: str = "tasks";
+ for (let opt .. cmd.opts) {
+ switch (opt.0) {
+ case 'f' =>
+ tasksdir = opt.1;
+ case =>
+ abort();
+ };
+ };
+
- const tasks = match (listtasks()) {
+ const tasks = match (listtasks(tasksdir)) {
case let e: fs::error =>
fmt::fatal(fs::strerror(e));
case let e: path::error =>