dotfiles/.local/bin/fuz

33 lines
1.4 KiB
Plaintext
Raw Normal View History

2024-05-17 12:38:17 +02:00
#!/usr/bin/env bash
2024-05-30 09:32:00 +02:00
# Populated by fuz-cache script through xprofile at startup
CACHE_DIR="/tmp/fuz_cache"
h_padding=$(printf '%*s' 20 ' ')
h_gap=$(printf '%*s' 4 ' ')
2024-05-17 12:38:17 +02:00
2024-05-30 09:32:00 +02:00
# Define the header using the escape sequences
HEADER="${h_padding}\
 Prefix:Alt${h_gap}\
 1:All/Folders/Git${h_gap}\
 2:Documents${h_gap}\
 3:Images${h_gap}\
 4:Videos"
2024-05-25 17:48:42 +02:00
OPENER="fuz-opener"
PREVIEWER="fuz-preview"
2024-05-30 09:32:00 +02:00
cat $CACHE_DIR/all | fzf --ansi --prompt " All  " \
--bind "alt-1:transform:(
([[ \$FZF_PROMPT =~ All ]] && echo 'change-prompt( Folders  )+reload(cat $CACHE_DIR/folders)') ||
([[ \$FZF_PROMPT =~ Folders ]] && echo 'change-prompt( Git  )+reload(cat $CACHE_DIR/git)') ||
echo 'change-prompt( All  )+reload(cat $CACHE_DIR/all)')" \
--bind "alt-2:change-prompt( Documents  )+reload(cat $CACHE_DIR/documents)" \
--bind "alt-3:change-prompt( Images  )+reload(cat $CACHE_DIR/images)" \
--bind "alt-4:change-prompt( Videos  )+reload(cat $CACHE_DIR/videos)" \
--header "$HEADER" \
--height=100% --pointer=" " --ellipsis= --header-first --scheme=path --algo=v2 --color="16" \
--preview-window "bottom,60%,border-top" --border=none --margin=5%,10%,5%,10% --info=inline-right \
--preview "$PREVIEWER {}" \
--bind "enter:execute:$OPENER {}"