#!/bin/bash

set -euo pipefail

# remove self from path
PATH_save="$PATH"
PATH=$( \
	echo "$PATH" \
	| tr ':' '\n' \
	| grep -vE "$(sed 's/\//\\\//g' <<<"$HOME")"'\/\.?bin' \
	| paste -sd ':' - \
)
export PATH

path-of() {
  command -v "$1"
}

editor() {
  path-of "nvim" \
    || path-of "vim" \
    || path-of "vi"
}

export PATH="$PATH_save"
exec "$(editor)" "$@"

