Add rule to preserve unread tag when run with --remove-all.
This commit is contained in:
parent
fbe7dade54
commit
7bfef154d9
@ -155,12 +155,8 @@ fn notmuch_from_rules<W: Write>(mut w: W, rules: &[Rule]) -> anyhow::Result<()>
|
|||||||
eprintln!("rule has unknown match {:?}", r);
|
eprintln!("rule has unknown match {:?}", r);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
lines.push(format!(
|
|
||||||
// TODO(wathiede): this assumes `notmuch new` is configured to add
|
let rule = match m.match_type {
|
||||||
// `tag:unprocessed` to all new mail.
|
|
||||||
r#"-unprocessed +{} -- tag:unprocessed {}"{}""#,
|
|
||||||
t,
|
|
||||||
match m.match_type {
|
|
||||||
MatchType::From => "from:",
|
MatchType::From => "from:",
|
||||||
// TODO(wathiede): something more specific?
|
// TODO(wathiede): something more specific?
|
||||||
MatchType::Sender => "from:",
|
MatchType::Sender => "from:",
|
||||||
@ -176,8 +172,17 @@ fn notmuch_from_rules<W: Write>(mut w: W, rules: &[Rule]) -> anyhow::Result<()>
|
|||||||
| MatchType::XOriginalTo
|
| MatchType::XOriginalTo
|
||||||
| MatchType::XSpam => continue,
|
| MatchType::XSpam => continue,
|
||||||
MatchType::Unknown => unreachable!(),
|
MatchType::Unknown => unreachable!(),
|
||||||
},
|
};
|
||||||
m.needle
|
// Preserve unread status if run with --remove-all
|
||||||
|
lines.push(format!(
|
||||||
|
r#"-unprocessed +{} +unread -- is:unread tag:unprocessed {}"{}""#,
|
||||||
|
t, rule, m.needle
|
||||||
|
));
|
||||||
|
lines.push(format!(
|
||||||
|
// TODO(wathiede): this assumes `notmuch new` is configured to add
|
||||||
|
// `tag:unprocessed` to all new mail.
|
||||||
|
r#"-unprocessed +{} -- tag:unprocessed {}"{}""#,
|
||||||
|
t, rule, m.needle
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user