diff --git a/pttodoest/src/main.rs b/pttodoest/src/main.rs index fede449..e701077 100755 --- a/pttodoest/src/main.rs +++ b/pttodoest/src/main.rs @@ -15,8 +15,15 @@ fn main() { } if let Some(add) = flags.add { - let task = Task(serde_yaml::Value::String(add)); - panic!("TODO flags.add_schedule"); + let task = match flags.add_schedule { + None => Task(serde_yaml::Value::String(add)), + Some(add_schedule) => { + let mut m = serde_yaml::Mapping::new(); + m.insert("schedule".into(), add_schedule.into()); + m.insert("todo".into(), add.into()); + Task(serde_yaml::Value::Mapping(m)) + } + }; files.files[0] .append(Delta::add(task)) .expect("failed to add");