#!/bin/bash
foreground=false
for arg in "$@"; do
    if [[ $arg == -- ]]; then
        break
    fi
    if [[ $arg == -f ]]; then
        foreground=true
        break
    fi
done

vim=vim
command -v vimx &>/dev/null && vim=vimx
command -v nvim &>/dev/null && vim=nvim

if [[ $X_TERMINAL_EMULATOR ]]; then
    command='"$X_TERMINAL_EMULATOR" -e vim "$@"'
elif command -v gnome-terminal &>/dev/null; then
    command='gnome-terminal --quiet --hide-menubar --name=xvim --title="xvim $*" -- $vim "$@"'
elif command -v urxvt &>/dev/null; then
    command='urxvt +sb -T "xvim $*" -e $vim "$@"'
elif command -v xterm &>/dev/null; then
    command='xterm +sb -T "xvim $*" -e $vim "$@"'
else
    echo "Couldn't find an xterm."
    exit 1
fi

if $foreground; then
    eval exec $command
else
    eval exec $command &
fi
