diff options
Diffstat (limited to 'config.ha')
| -rw-r--r-- | config.ha | 5 |
1 files changed, 5 insertions, 0 deletions
@@ -9,6 +9,7 @@ use io; type config = struct { tasksdir: str, context: str, + tags: []str, }; type cerror = !(fs::error | path::error | ini::error); @@ -23,6 +24,7 @@ fn readconfig() (config | cerror) = { const c = config { tasksdir = strings::dup("tasks"), context = strings::dup("*"), + tags = [], }; for (const en => ini::next(&sc)?) { switch (en.1) { @@ -30,6 +32,8 @@ fn readconfig() (config | cerror) = { c.tasksdir = strings::dup(strings::trim(en.2)); case "context" => c.tasksdir = strings::dup(strings::trim(en.2)); + case "tags" => + c.tags = strings::dupall(strings::split(strings::trim(en.2), ",")); case => void; }; @@ -40,6 +44,7 @@ fn readconfig() (config | cerror) = { fn cfinish(cfg: *config) void = { free(cfg.tasksdir); free(cfg.context); + strings::freeall(cfg.tags); }; fn strcerror(e: cerror) str = { |
