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"
|
|
|
|
|
|
2024-06-25 13:52:46 +02:00
|
|
|
|
h_padding=$(printf '%*s' 14 ' ')
|
2024-06-08 06:14:08 +02:00
|
|
|
|
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}\
|
2024-06-08 06:14:08 +02:00
|
|
|
|
[1;34m Prefix[1;90m:[0mAlt${h_gap}\
|
|
|
|
|
[1;34m 1[1;90m:[0mAll/Folders/Git${h_gap}\
|
|
|
|
|
[1;34m 2[1;90m:[0mDocuments${h_gap}\
|
|
|
|
|
[1;34m 3[1;90m:[0mImages${h_gap}\
|
2024-06-25 13:52:46 +02:00
|
|
|
|
[1;34m 4[1;90m:[0mVideos${h_gap}\
|
|
|
|
|
[1;34m f[1;90m:[0mlf"
|
2024-05-25 17:48:42 +02:00
|
|
|
|
|
2024-06-13 12:04:48 +02:00
|
|
|
|
OPENER="fuz-opener"
|
|
|
|
|
PREVIEWER="fuz-preview"
|
2024-05-30 09:32:00 +02:00
|
|
|
|
|
2024-06-13 12:04:48 +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 {}" \
|
2024-06-25 13:52:46 +02:00
|
|
|
|
--bind "enter:execute:$OPENER {}" \
|
|
|
|
|
--bind "alt-f:execute:lf {}"
|