Skip to content

Commit

Permalink
Fix escaping in message IDs from notmuch
Browse files Browse the repository at this point in the history
`+` was properly escaped but only once. `$` was not escaped at all.
This would result in messages with message IDs containing more than one
`+` or at least on `$` to not be shown after limiting.
`$` itself has to be escaped presumably for the shell. This results in
three prepended backslashes in the limit string and six in the config
file, as there backslashes themselves have to be escaped.
  • Loading branch information
burbschat committed Nov 24, 2023
1 parent a8863a7 commit 0cb1713
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion share/mutt-wizard.muttrc
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,7 @@ macro index \eh "<pipe-message>$prefix/libexec/gpg-wks-client --receive | msmtp
macro index,pager a "<enter-command>set my_pipe_decode=\$pipe_decode pipe_decode<return><pipe-message>abook --add-email<return><enter-command>set pipe_decode=\$my_pipe_decode; unset my_pipe_decode<return>" "add the sender address to abook"
macro index \Cr "T~U<enter><tag-prefix><clear-flag>N<untag-pattern>.<enter>" "mark all messages as read"
macro index O "<shell-escape>mailsync<enter>" "run mailsync to sync all mail"
macro index \Cf "<enter-command>unset wait_key<enter><shell-escape>printf 'Enter a search term to find with notmuch: '; read x; echo \$x >~/.cache/mutt_terms<enter><limit>~i \"\`notmuch search --output=messages \$(cat ~/.cache/mutt_terms) | head -n 600 | perl -le '@a=<>;s/\^id:// for@a;$,=\"|\";print@a' | perl -le '@a=<>; chomp@a; s/\\+/\\\\+/ for@a;print@a' \`\"<enter>" "show only messages matching a notmuch pattern"
macro index \Cf "<enter-command>unset wait_key<enter><shell-escape>printf 'Enter a search term to find with notmuch: '; read x; echo \$x >~/.cache/mutt_terms<enter><limit>~i \"\`notmuch search --output=messages \$(cat ~/.cache/mutt_terms) | head -n 600 | perl -le '@a=<>;s/\^id:// for@a;$,=\"|\";print@a' | perl -le '@a=<>; chomp@a; s/\\+/\\\\+/g for@a; s/\\$/\\\\\\$/g for@a;print@a' \`\"<enter>" "show only messages matching a notmuch pattern"
macro index A "<limit>all\n" "show all messages (undo limit)"

# Sidebar mappings
Expand Down

0 comments on commit 0cb1713

Please sign in to comment.