#
# notmuch-mutt - notmuch (of a) helper for Mutt
#
-# Copyright: © 2011-2015 Stefano Zacchiroli <zack@upsilon.cc>
+# Copyright: © 2011-2015 Stefano Zacchiroli <zack@upsilon.cc>
# License: GNU General Public License (GPL), version 3 or above
#
# See the bottom of this file for more documentation.
use Mail::Header;
use Mail::Box::Maildir;
use Pod::Usage;
-use String::ShellQuote;
use Term::ReadLine;
use Digest::SHA;
empty_maildir($results_dir);
die "notmuch-mutt: cannot find Message-Id, abort.\n";
}
- my $search_cmd = 'notmuch search --output=threads ' . shell_quote("id:$mid");
- my $tid = `$search_cmd`; # get thread id
- chomp($tid);
- search($results_dir, $remove_dups, $tid);
+ $mid =~ s/ //g; # notmuch strips spaces before storing Message-Id
+ $mid =~ s/"/""""/g; # escape all double quote characters twice
+
+ search($results_dir, $remove_dups, qq{thread:"{id:""$mid""}"});
}
sub tag_action(@) {
my $mid = get_message_id();
defined $mid or die "notmuch-mutt: cannot find Message-Id, abort.\n";
- system("notmuch", "tag", @_, "--", "id:$mid");
+ $mid =~ s/ //g; # notmuch strips spaces before storing Message-Id
+ $mid =~ s/"/""/g; # escape all double quote characters
+
+ system("notmuch", "tag", @_, "--", qq{id:"$mid"});
}
sub die_usage() {