Date: Sun, 13 Oct 2002 19:28:27 -0700 (PDT) From: Matthew Dillon <dillon@apollo.backplane.com> To: "Crist J. Clark" <crist.clark@attbi.com>, Trish Lynch <trish@bsdunix.net>, Adrian Wontroba <aw1@stade.co.uk>, chris scott <c.scott@uk.tiscali.com>, freebsd-stable@FreeBSD.ORG Subject: Patch #2 (Re: Ifconfig config of gif tunnels) Message-ID: <200210140228.g9E2SRlA058696@apollo.backplane.com> References: <20021013172810.A19177@titus.hanley.stade.co.uk> <20021013130138.G523-100000@femme.sapphite.org> <20021013214642.GB90169@blossom.cjclark.org> <200210132154.g9DLsUmc057065@apollo.backplane.com> <20021013225509.GA90575@blossom.cjclark.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Here's a new patch. I attempt to pull out terminal
parameters via stty.
I'm still not sure how to deal with the terminal
history / clear issue, but since we kinda know
how many rows there are it would be possible to
scroll the data off before clearing.
-Matt
Index: mergemaster.sh
===================================================================
RCS file: /home/ncvs/src/usr.sbin/mergemaster/mergemaster.sh,v
retrieving revision 1.6.2.14
diff -u -r1.6.2.14 mergemaster.sh
--- mergemaster.sh 30 Jun 2002 19:01:35 -0000 1.6.2.14
+++ mergemaster.sh 14 Oct 2002 02:25:53 -0000
@@ -12,6 +12,20 @@
PATH=/bin:/usr/bin:/usr/sbin
+# XXX set to number of rows on terminal minus 8
+DIFFROWS=`stty size | awk '{ print $1; }'`
+DIFFCOLS=`stty size | awk '{ print $2; }'`
+if [ -z "$DIFFCOLS" ]; then
+ DIFFCOLS=80
+fi
+if [ -z "$DIFFROWS" ]; then
+ DIFFROWS=24
+fi
+if [ $DIFFROWS -le 0 ]; then
+ DIFFROWS=24
+fi
+DIFFROWS=$(($DIFFROWS - 8))
+DIFFCOLS=$(($DIFFCOLS - 1))
display_usage () {
VERSION_NUMBER=`grep "[$]FreeBSD:" $0 | cut -d ' ' -f 4`
echo "mergemaster version ${VERSION_NUMBER}"
@@ -106,24 +120,34 @@
diff_loop () {
HANDLE_COMPFILE=v
+ FIRST_TIME=y
while [ "${HANDLE_COMPFILE}" = "v" -o "${HANDLE_COMPFILE}" = "V" -o \
"${HANDLE_COMPFILE}" = "NOT V" ]; do
if [ -f "${DESTDIR}${COMPFILE#.}" -a -f "${COMPFILE}" ]; then
if [ "${HANDLE_COMPFILE}" = "v" -o "${HANDLE_COMPFILE}" = "V" ]; then
+ if [ "$FIRST_TIME" = "y" ]; then
+ clear
+ (
+ echo " *** Displaying differences between ${COMPFILE} and installed version:"
+ echo ''
+ diff "${DIFF_FLAG}" "${DESTDIR}${COMPFILE#.}" "${COMPFILE}"
+ ) | cut -b 1-${DIFFCOLS} | head -${DIFFROWS}
+ echo '...'
+ else
+ clear
+ (
+ echo " *** Displaying differences between ${COMPFILE} and installed version:"
+ echo ''
+ diff "${DIFF_FLAG}" "${DESTDIR}${COMPFILE#.}" "${COMPFILE}"
+ ) | ${PAGER}
+ echo '...'
+ fi
echo ''
- echo ' ====================================================================== '
- echo ''
- (
- echo ''
- echo " *** Displaying differences between ${COMPFILE} and installed version:"
- echo ''
- diff "${DIFF_FLAG}" "${DESTDIR}${COMPFILE#.}" "${COMPFILE}"
- ) | ${PAGER}
- echo ''
+ FIRST_TIME=n
fi
else
- echo ''
+ clear
echo " *** There is no installed version of ${COMPFILE}"
echo ''
case "${AUTO_INSTALL}" in
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200210140228.g9E2SRlA058696>
