Annotation of 43BSDReno/contrib/isode-beta/quipu/dish/editentry, revision 1.1

1.1     ! root        1: #!/bin/sh
        !             2: #
        !             3: if [ $# != "1" ]; then
        !             4:     echo usage: editentry filename
        !             5:     exit 1
        !             6: fi
        !             7: 
        !             8: F=T
        !             9: while test -z "$EDITOR"
        !            10: do
        !            11:     if [ $F = "T" ]; then
        !            12:        echo 'You do not have the shell variable $EDITOR set.'
        !            13:        F=F
        !            14:     fi
        !            15:     echo ''
        !            16:     echo -n 'Enter the name of an editor: '
        !            17:     read EDITOR rubbish
        !            18: 
        !            19:     if [ ! -x "$EDITOR" ]; then
        !            20:        IFSS="$IFS"
        !            21:        IFS=: F="$EDITOR"
        !            22:        EDITOR=
        !            23:        for D in $PATH; do
        !            24:            if [ -x "$D/$F" ]; then
        !            25:                EDITOR="$D/$F"
        !            26:                break
        !            27:            fi
        !            28:        done
        !            29:        if [ -z "$EDITOR" ]; then
        !            30:            echo "$F not found, please try again..."
        !            31:        fi
        !            32:        IFS="$IFSS"
        !            33:     fi
        !            34: done
        !            35: 
        !            36: cp $1 $1.tmp
        !            37: 
        !            38: E=T
        !            39: while true
        !            40: do
        !            41:     if [ $E = "T" ]; then
        !            42:        if $EDITOR $1; then
        !            43:            if cmp -s $1 $1.tmp; then
        !            44:                mess="No changes to draft entry - shall I continue? "
        !            45:            else
        !            46:                mess="Are you sure you want to make these changes? "
        !            47:            fi  
        !            48:        else
        !            49:            echo 'Edit aborted...'
        !            50:            rm -f $1.tmp
        !            51:            exit 1
        !            52:        fi
        !            53:     fi
        !            54: 
        !            55:     echo -n "$mess"
        !            56:     read YN rubbish
        !            57:     case "$YN" in
        !            58:        y|yes|Y|YES) 
        !            59:            rm -f $1.tmp
        !            60:            exit 0
        !            61:            ;;
        !            62: 
        !            63:        n|no|N|NO)
        !            64:            mv $1.tmp $1
        !            65:            exit 1
        !            66:            ;;
        !            67: 
        !            68:        e|edit|E|EDIT)
        !            69:            cp $1 $1.tmp
        !            70:            if [ ! -z "$rubbish" ]
        !            71:            then
        !            72:                EDITOR="$rubbish"
        !            73:            fi
        !            74:            E=T
        !            75:            ;;
        !            76: 
        !            77:        u|undo|U|UNDO)
        !            78:            cp $1.tmp $1
        !            79:            E=T
        !            80:            ;;
        !            81: 
        !            82:        *)              
        !            83:            case "$YN" in
        !            84:                \?|""|h|help|H|HELP)
        !            85:                    mess='Options are:'
        !            86:                    ;;
        !            87: 
        !            88:                *)
        !            89:                    mess="\"$YN\" not understood -- use one of:"
        !            90:                    ;;
        !            91:            esac
        !            92:            echo "$mess"
        !            93:            echo '     yes - to commit'
        !            94:            echo '      no - to abort'
        !            95:            echo '    edit - to continue editing'
        !            96:            echo '    undo - to undo last edit and edit some more'
        !            97:            mess='Try again: '
        !            98:            E=F
        !            99:            ;;
        !           100:     esac
        !           101: done

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.