Added grepm as a template for an output-mbox-to-mutt script.
authorMoritz Barsnick (at dot) <moritzbarsnicknet>
Mon, 22 Jun 2009 11:22:26 +0000 (07:22 -0400)
committerW. Trevor King <wking@drexel.edu>
Mon, 22 Jun 2009 11:22:26 +0000 (07:22 -0400)
The goal is to turn grepm into catmutt, and end up with
  $ be --xml list | be-xml-to-mbox | catmutt
to browse current bugs and comments in mutt.

Moritz has generously donated grepm under GPLv2.  Not GPLv>=2 yet, so
if the project decides to go to GLPv3 for example, this file will have
to stay behind.  Not that I see such a change coming, but I thought it
was worth commenting on, so we don't forget.

xml/grepm [new file with mode: 0644]

diff --git a/xml/grepm b/xml/grepm
new file mode 100644 (file)
index 0000000..cf5472a
--- /dev/null
+++ b/xml/grepm
@@ -0,0 +1,65 @@
+#!/bin/sh
+
+# grepm - a wrapper for grepmail utilizing mutt
+
+# Copyright (C) 1998-1999 Moritz Barsnick <barsnick (at) gmx (dot) net>
+#
+#    This program is free software; you can redistribute it and/or
+#    modify it under the terms of the GNU General Public License
+#    version 2 as published by the Free Software Foundation.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU General Public License for more details.
+#
+#    You should have received a copy of the GNU General Public License
+#    along with this program; if not, write to the Free Software
+#    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+#
+# grepm-0.6
+#
+# written 1998-11-xx by Moritz Barsnick <barsnick (at) gmx (dot) net>
+# updated 1998-12-22:  added "-m" option for grepmail
+#                      added "exit 1" to trap
+# updated 1999-01-04:  added check for empty "mailbox" (don't open mutt)
+#                      added messages
+#                      added umask (to keep others from reading your messages)
+# updated 1999-01-19:  added trap for SIGPIPE (any other suggestions?)
+# updated 1999-07-05:  added $TMPDIR; we're still subject to races ($TMPFILE
+#                          might exist)
+# updated 1999-11-29:  have mutt open the temporary mailbox read-only -
+#                          there's no use in editing it anyway
+
+
+PROGNAME=`basename "$0"`
+TMPDIR=${TMPDIR-/tmp}
+
+umask 077
+
+if [ $# -lt 1 ]; then
+  echo 1>&2 "Usage: ${PROGNAME} arguments"
+  exit 1
+fi
+
+TMPFILE="${TMPDIR}/grepmail-output.$$"
+
+# I _would_ check this with "-e", but not all /bin/sh's understand it
+# so this is just a kludge
+
+if [ -f ${TMPFILE} -o -d ${TMPFILE} -o -w ${TMPFILE} ]; then
+  echo 1>&2 "Temporary file ${TMPFILE} exists for some reason! Aborting."
+  exit 1
+fi
+
+trap "rm -f ${TMPFILE}; exit 1" 1 2 3 13 15
+
+grepmail -m "$@" > "${TMPFILE}"
+if [ `wc -c "${TMPFILE}" | awk '{print $1}'` -gt 0 ]; then
+  echo 1>&2 "Calling mutt on results file (${TMPFILE})."
+  mutt -R -f "${TMPFILE}"
+else
+  echo 1>&2 "No matches."
+fi
+
+rm -f "${TMPFILE}" && echo 1>&2 "Deleted results file (${TMPFILE})."