#!/usr/bin/env bash set -euo pipefail nss="fd --color=always --exclude=_ -t f . \"${CODEROOT:?}\" | sed \"s,${CODEROOT:?}/*,,g\"" keybindings=$(cat < ' -s':' -t <<< \"$keybindings\")" --bind "alt-n:execute(touch {q})+reload($nss)" --bind "alt-space:execute(bild {} ; read -p [fin])" --bind "tab:execute($EDITOR {})" --bind "alt-c:execute(lint -f {} ; read -p [fin])" --bind "enter:execute(repl.sh {})" --bind "alt-enter:execute(repl.sh --bash {})" --bind "ctrl-space:execute(ship.sh {} ; read -p [fin])" --bind "alt-t:execute(bild {} ; run.sh {} test ; read -p [fin])" --bind "ctrl-/:change-preview-window(right,88|right,70%|hidden|)" --bind "alt-0:change-preview(bat -p --color=always {})" --bind "alt-1:change-preview(git log --color=always --date=relative --abbrev-commit --pretty=format:'%Cred%h%Creset %s / %an %Creset%C(yellow)%d%Creset%Cgreen(%cr)%Creset' -- {})" --bind "alt-2:change-preview(git log --color=always {})" --bind "alt-3:change-preview(git log --color=always -p {})" --bind "alt-4:change-preview(git blame -c --date=short {})" --bind "alt-5:change-preview(git log --pretty=short {} | git shortlog -nse)" --bind "alt-6:change-preview(git log --pretty=short {} | git shortlog)" --bind "backward-eof:abort" --bind "pgup:preview-page-up" --bind "pgdn:preview-page-down" --header-first --header="? for keybindings" --border=top --border-label="$(lolcat -f <<< "hack a namespace")" --color=label:italic --preview-window="bottom,80%" --preview "bat -p --color=always {}" ) sh -c "$nss" | fzf "${fzf_flags[@]}"