aboutsummaryrefslogtreecommitdiff
path: root/sh/shrc.d/ed.sh
blob: d7d3fa2f4b25e80bad9bdd6266cd14dd53723ef2 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# Define function proper
ed() {

    # Don't mess with original call if input not a terminal
    if ! [ -t 0 ] ; then
        command ed "$@"
        return
    fi

    # Add --verbose to explain errors
    [ -e "$HOME"/.cache/ed/verbose ] &&
        set -- --verbose "$@"

    # Add an asterisk prompt (POSIX feature)
    set -- -p\* "$@"

    # Run in rlwrap(1) if available
    set -- ed "$@"
    command -v rlwrap >/dev/null 2>&1 &&
        set -- rlwrap --history-filename=/dev/null "$@"

    # Run determined command
    command "$@"
}