source: projects/proc-rpmnew/trunk/proc-rpmnew.in @ 4541

Revision 4541, 878 bytes checked in by yasumichi, 13 years ago (diff)

add interactive merge mode.

Line 
1#!/bin/sh
2
3prefix=@prefix@
4datadir=@datadir@
5
6eval source $datadir/proc-rpmnew.$LANG
7
8for file in `find /etc 2>/dev/null | @EGREP@ "rpm(new|save)$"`
9do
10        dir=`dirname $file`
11        sav=`basename $file`
12        cur=`basename $file .rpmnew`
13        if [ $cur = $sav ]
14        then
15                cur=`basename $file .rpmsave`
16        fi
17        if [ -e $cur ]
18        then
19                continue
20        fi
21        echo $file $detect_msg
22        ok=0
23        while [ $ok -eq 0 ]
24        do
25                for i in 1 2 3 4 5 6
26                do
27                        eval echo \$menu$i
28                done
29                echo -n $quest
30                read command
31                echo
32                case "$command" in
33                        s)      diff --side-by-side $dir/$cur $dir/$sav;;       # --suppress-common-lines
34
35                        e)      vim +r$dir/$cur -d $dir/$cur.new $dir/$sav
36                                mv $dir/$cur.new $dir/$cur ;;
37
38                        i)      sdiff -o $dir/$cur.new $dir/$cur $dir/$sav
39                                mv $dir/$cur.new $dir/$cur ;;
40
41                        r)      mv $dir/$sav $dir/$cur
42                                ok=1;;
43
44                        p)      rm $dir/$sav
45                                ok=1;;
46
47                        n)      ok=1;;
48
49                        *)      echo $wrong_msg
50                                echo;;
51                esac
52        done
53done
Note: See TracBrowser for help on using the repository browser.