NetBSD/usr.bin/nvi/recover/virecover
christos fb5e0a80e2 Add docs back the best way we can:
1. Don't add changelog and other implementation specific nvi files because
   this have changed from 1.79 and are probably not relevant in 1.81
2. Put back virecover.
3. Descend regularly to subdirs instead of Makefile hacks
4. Use USD.doc stuff from the 1.81 docs except for vi.ref which has
   unfortunately been converted to texinfo. For that, we preserve
   the original documents because we want to still be able to make
   section 13 (building texinfo is not acceptable because it will not
   have the same look and feel as the rest of the book)
5. Since the texinfo reference is probably better maintained, build
   that too as a texinfo document.
2008-09-02 09:25:39 +00:00

50 lines
1.2 KiB
Bash

#!/bin/sh -
#
# $NetBSD: virecover,v 1.1 2008/09/02 09:25:39 christos Exp $
#
# @(#)recover.in 8.8 (Berkeley) 10/10/96
#
# Script to recover nvi edit sessions.
RECDIR="/var/tmp/vi.recover"
SENDMAIL="/usr/sbin/sendmail"
# Check editor backup files.
vibackup=`echo $RECDIR/vi.*`
if [ "$vibackup" != "$RECDIR/vi.*" ]; then
for i in $vibackup; do
# Only test files that are readable.
if test ! -f $i || test ! -r $i; then
continue
fi
# Unmodified nvi editor backup files either have the
# execute bit set or are zero length. Delete them.
if test -x $i -o ! -s $i; then
rm $i
fi
done
fi
# It is possible to get incomplete recovery files, if the editor crashes
# at the right time.
virecovery=`echo $RECDIR/recover.*`
if [ "$virecovery" != "$RECDIR/recover.*" ]; then
for i in $virecovery; do
# Only test files that are readable.
if test ! -r $i; then
continue
fi
# Delete any recovery files that are zero length, corrupted,
# or that have no corresponding backup file. Else send mail
# to the user.
recfile=`awk '/^X-vi-recover-path:/{print $2}' < $i`
if test -n "$recfile" -a -s "$recfile"; then
$SENDMAIL -t < $i
else
rm $i
fi
done
fi