#!/usr/bin/env bash
set -e

# 1. Install fzf via apt-get
echo "==> Installing fzf..."
sudo apt-get update -y
sudo apt-get install -y fzf

BASHRC="$HOME/.bashrc"

# 2. Check if key-bindings.bash is already in .bashrc
if grep -qs "key-bindings.bash" "$BASHRC"; then
    echo "==> fzf keybindings are already configured in $BASHRC"
else
    # 3. Detect key-bindings.bash location
    KEYBINDINGS_PATH=""

    if [ -f "/usr/share/doc/fzf/examples/key-bindings.bash" ]; then
        KEYBINDINGS_PATH="/usr/share/doc/fzf/examples/key-bindings.bash"
    elif [ -f "/usr/share/fzf/key-bindings.bash" ]; then
        KEYBINDINGS_PATH="/usr/share/fzf/key-bindings.bash"
    elif [ -f "/usr/share/doc/fzf/key-bindings.bash" ]; then
        KEYBINDINGS_PATH="/usr/share/doc/fzf/key-bindings.bash"
    fi

    if [ -z "$KEYBINDINGS_PATH" ]; then
        echo "Error: Could not locate key-bindings.bash file on this system." >&2
        exit 1
    fi

    echo "==> Adding fzf keybindings to $BASHRC..."
    echo "" >> "$BASHRC"
    echo "# Enable fzf keybindings (Ctrl+R, Ctrl+T, Alt+C)" >> "$BASHRC"
    echo "source $KEYBINDINGS_PATH" >> "$BASHRC"
    echo "Done!"
fi

echo "==> Setup complete! Run 'source ~/.bashrc' or open a new terminal to start using fzf."