aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMoritz Barsnick (at dot) <moritzbarsnicknet>2009-06-22 07:22:26 -0400
committerW. Trevor King <wking@drexel.edu>2009-06-22 07:22:26 -0400
commit2553cc43edd5a792c2f12d10ea1ab4f8cd771cc1 (patch)
tree5fac209cb38b288a3d7c4eeed8e1bf0722c0e2f7
parent331be32ec51360389fe729e5a946020429e1cf95 (diff)
downloadbugseverywhere-2553cc43edd5a792c2f12d10ea1ab4f8cd771cc1.tar.gz
Added grepm as a template for an output-mbox-to-mutt script.
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.
-rw-r--r--xml/grepm65
1 files changed, 65 insertions, 0 deletions
diff --git a/xml/grepm b/xml/grepm
new file mode 100644
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})."