#!/bin/sh
execvim () {
    vim=$1
    shift
    exec "$vim" -X -u NONE -c "command! LRC :source $vimrc | :LoadPlugins" -c "set nocompatible|set backspace=indent,eol,start|set autoindent" "$@"
}

quiet_which () {
    command -v "$1" > /dev/null 2>&1
}

if quiet_which vim; then
    vimrc="${DOTDIR:-$HOME}/.vimrc"
    execvim vim "$@"
else
    TERM=$(echo "$TERM" | sed -e 's/-it//' -e 's/-256color//')
    export TERM
    if quiet_which vi && vi --version 2> /dev/null | head -n 1 | grep -Fq VIM; then
        # ^ vi is actually vim
        execvim vi "$@"
    elif quiet_which vile; then
        exec vile "$@"
    elif quiet_which elvis; then
        exec elvis "$@"
    elif quiet_which nvi; then
        exec nvi "$@"
    elif quiet_which e3vi; then
        exec e3vi "$@"
    elif quiet_which vi; then
        exec vi "$@"
    else
        echo "No vi-like editor found."
        exit 255
    fi
fi
