From: martin f. krafft Date: Sun, 26 Aug 2007 18:29:23 +0000 (+0200) Subject: Merge branch 'master' of ssh://git.madduck.net/srv/git/git.madduck.net/pub/etc/mutt X-Git-Url: https://git.madduck.net/etc/mutt.git/commitdiff_plain/2b7d2604255995c5479b5ec1d106cf238d6f92c6?hp=dabc17380103fdd091610d3e47e2b3df8b95341f Merge branch 'master' of ssh://git.madduck.net/srv/git/git.madduck.net/pub/etc/mutt --- diff --git a/add-tickle-stamp b/add-tickle-stamp new file mode 100755 index 0000000..c712f61 --- /dev/null +++ b/add-tickle-stamp @@ -0,0 +1,46 @@ +#!/bin/sh +set -eu + +file=/dev/stdin +if [ -r "${1:-}" ] && [ -w "${1:-}" ]; then + file="$1" + shift +fi + +date= +arg="${1:-}" +args="$*" +if [ -z "$arg" ]; then + read -p 'When should I tickle you about this message? ' args + arg="${args%% *}" +fi + +if [ "$arg" = '-d' ] || [ $# -gt 1 ]; then + shift + date="$args" +else + case "$arg" in + *[0-9]w) date="now + ${arg%w} weeks 00:00";; + *[0-9]m) date="now + ${arg%m} months 00:00";; + *[0-9]h) date="now + ${arg%h} hours";; + *[0-9]d) date="now + ${arg%d} days 00:00";; + *' '*) date="$args";; + *[!0-9]*) + echo "E: invalid argument: $arg" >&2 + exit 1 + ;; + *) date="now + $arg days 00:00";; + esac +fi + +tickle=$(date +'%s (%c)' -d "$date") + +TMPFILE="$(tempfile -d /tmp -p tickle)" +trap "rm -f $TMPFILE" 0 1 2 3 4 5 6 7 8 10 11 12 13 14 15 + +formail -i "X-Tickle: $tickle" < $file > $TMPFILE + +[ -w "$file" ] && mv $TMPFILE $file + +rm -f $TMPFILE +trap - 0 1 2 3 4 5 6 7 8 10 11 12 13 14 15 diff --git a/headers b/headers index c0e146e..892048f 100644 --- a/headers +++ b/headers @@ -13,6 +13,7 @@ hdr_order x-trained-as x-crm114-autotrain hdr_order user-agent x-mailer x-newsreader hdr_order x-justme hdr_order x-autoreplied +hdr_order x-tickle ignore * unignore date @@ -29,5 +30,6 @@ unignore x-spam: #unignore user-agent x-mailer x-newsreader unignore x-justme unignore x-autoreplied +unignore x-tickle # vim:ft=muttrc diff --git a/keybindings b/keybindings index 65da4b1..418734b 100644 --- a/keybindings +++ b/keybindings @@ -20,7 +20,7 @@ bind pager,index previous-unread ##macro index L "=store" macro index,pager S "=store" "save message to store" -macro index,pager E "=tickle/" "save message to tickler" +macro index,pager E ':set my_editor="$editor":set editor=/tmp/add-tickle-stamp=tickler:set editor="$my_editor"' "schedule message with tickler" macro index,pager \eS "=store" "go to store folder" @@ -30,10 +30,10 @@ macro compose \eR ":source $my_confdir/muttrc" "reload muttrc" macro index,pager X "=retrain/spam" "retrain message as spam" macro index,pager Z "=retrain/ham" "retrain message as ham" -macro index,pager \Cb "/usr/bin/urlview" "invoke urlview" +macro index,pager \Cb ':set my_pipe_decode="$pipe_decode":set pipe_decode/usr/bin/urlview:set pipe_decode="$my_pipe_decode"' "invoke urlview" #TODO this is a hack until switch-profile does not readd headers. -#macro compose e ":set my_editor='$editor':set editor=sensible-editor:set editor='$my_editor'" "invoke normal editor to edit message" -#macro index,pager e ":set my_editor='$editor':set editor=sensible-editor:set editor='$my_editor'" "invoke normal editor to edit message" +macro compose e ':set my_editor="$editor":set editor=sensible-editor:set editor="$my_editor"' "invoke normal editor to edit message" +macro index,pager e ':set my_editor="$editor":set editor=sensible-editor:set editor="$my_editor"' "invoke normal editor to edit message" # vim:sw=12:noet:sts=12:ts=12:ft=muttrc