From 13165d7c4421b689c5ec1fc84f4b1573f5e9c400 Mon Sep 17 00:00:00 2001 From: Christian Neukirchen Date: Wed, 20 Jul 2016 16:25:18 +0200 Subject: [PATCH] mcomp: first code to compose a mail --- mcomp | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100755 mcomp diff --git a/mcomp b/mcomp new file mode 100755 index 0000000..f4ce30c --- /dev/null +++ b/mcomp @@ -0,0 +1,51 @@ +#!/bin/sh +# mcomp [TO] - compose mail + +i=0 +while [ -f "snd.$i" ]; do + i=$((i+1)) +done +draft="snd.$i" + +{ + echo -n "To: $1" + [ "$#" -gt 1 ] && shift + for rcpt; do + echo -n ", $rcpt" + done + echo + echo "Cc: " + echo "Bcc: " + echo "Subject: " + cat ~/.santoku/headers 2>/dev/null + echo + echo + if [ -f ~/.signature ]; then + printf '%s\n' '-- ' + cat ~/.signature + fi +} >$draft + +c=e +while :; do + case "$c" in + s|send) + sendmail -t <$draft && rm $draft + exit $? + ;; + c|cancel) + echo "mcomp: cancelled draft $draft" + exit 1 + ;; + e|edit) + c= + if ! ${EDITOR:-vi} $draft; then + c=q + fi + ;; + *) + echo -n "What now? ([s]end, [c]ancel, [e]dit) " + read -r c + ;; + esac +done