[PATCH 0/5] notmuch search --output=addresses
Michal Sojka
sojkam1 at fel.cvut.cz
Mon Sep 22 02:37:54 PDT 2014
Hello all,
this patch series adds support for --output=addresses and similar
arguments in notmuch search. It is a reworked and extended version of
id:1410021689-15901-1-git-send-email-jani at nikula.org.
Compared to Jani's patches, I do not use keyword-flag command line
parser for the --output option, because this would not be useful for
most but one combination of keywords. Instead, this one combination is
explicitely mentioned as another keyword.
The flag command-line parser is introduced later, with (IMHO) better
syntax: --flags=one,two,... This feature is used to control address
deduplication via the --unique option.
Other extensions are added documentation, tests and shell completions.
The whole test suite passes with these patches.
The functionality presented here will be useful for improving Emacs
address completion (id:1411150602-21892-1-git-send-email-sojkam1 at fel.cvut.cz).
Another nice use case is sending patched with git:
git send-email --cc-cmd='nmsenders id:xxxx' ...
where nmsenders script contains:
notmuch search --output=sender $(notmuch search --output=threads $1)
Michal Sojka (5):
cli: Refactor option passing in the search command
cli: Extend the search command for --output=addresses and similar
cli: Add support for parsing command line "flag" options
cli: Add configurable address deduplication for --output=addresses
cli: Add tests for 'search --output=addresses' and similar
command-line-arguments.c | 40 +++++
command-line-arguments.h | 1 +
completion/notmuch-completion.bash | 8 +-
completion/notmuch-completion.zsh | 4 +-
doc/man1/notmuch-search.rst | 55 ++++++-
notmuch-search.c | 311 +++++++++++++++++++++++++++++--------
test/Makefile.local | 2 +-
test/T090-search-output.sh | 59 +++++++
test/T095-search-unique.sh | 63 ++++++++
test/T410-argument-parsing.sh | 3 +-
test/arg-test.c | 8 +
11 files changed, 482 insertions(+), 72 deletions(-)
create mode 100755 test/T095-search-unique.sh
--
2.1.0
More information about the notmuch
mailing list