From 4edf92e034e16e0330b12fd7be0fed60104217f6 Mon Sep 17 00:00:00 2001 From: Michael Housh Date: Sun, 5 Oct 2025 11:05:05 -0400 Subject: [PATCH] feat: Adds previews to utils-launcher, sources catppuccin colors file in zshrc so that fzf options are setup. --- env/.config/utils-launcher/config.json | 2 +- env/.config/zsh/.zshrc | 1 + env/.local/scripts/hypr/utils-launcher | 21 ++++++++++++++++++++- 3 files changed, 22 insertions(+), 2 deletions(-) diff --git a/env/.config/utils-launcher/config.json b/env/.config/utils-launcher/config.json index aa3601b..57669d9 100644 --- a/env/.config/utils-launcher/config.json +++ b/env/.config/utils-launcher/config.json @@ -16,7 +16,7 @@ "exec": "$SCRIPTS/hypr/waybarctl --restart" }, { - "name": "Waybar -- toggle", + "name": "Waybar - toggle", "exec": "$SCRIPTS/hypr/waybarctl --toggle" }, { diff --git a/env/.config/zsh/.zshrc b/env/.config/zsh/.zshrc index 7b7f6f4..306d399 100755 --- a/env/.config/zsh/.zshrc +++ b/env/.config/zsh/.zshrc @@ -219,6 +219,7 @@ source <(fzf --zsh) # I tried sourcing them in the the `.zshenv` files, but did not work. _source_if "$ZDOTDIR/.zshrc-local" _source_if "$LOCAL_ENV" +_source_if "$SCRIPTS/catppuccin-colors" # pnpm export PNPM_HOME="$XDG_DATA_HOME/pnpm" diff --git a/env/.local/scripts/hypr/utils-launcher b/env/.local/scripts/hypr/utils-launcher index 17e701b..80b2447 100755 --- a/env/.local/scripts/hypr/utils-launcher +++ b/env/.local/scripts/hypr/utils-launcher @@ -25,6 +25,7 @@ window_padding_x="2" config_file="" launch_flag="0" +rows=() XDG_CONFIG_HOME=${XDG_CONFIG_HOME} SCRIPTS=${SCRIPTS} @@ -61,6 +62,15 @@ footer() { EOF } +generate_rows() { + readarray -t names <<<"$(echo "$1" | jq -r '.[] | .name')" + readarray -t execs <<<"$(echo "$1" | jq -r '.[] | .exec')" + + for i in "${!names[@]}"; do + rows+=("${execs[i]}|${names[i]}") + done +} + ################################################################################ # MAIN ################################################################################ @@ -89,7 +99,16 @@ file_data=$(cat $config_file) # Setup colors before calling fzf. [[ -f $SCRIPTS/catppuccin-colors ]] && source $SCRIPTS/catppuccin-colors -sel=$(echo "$file_data" | jq -r '.[] | .name' | fzf --style=full --footer="$(footer)") + +generate_rows "$file_data" +# sel=$(echo "$file_data" | jq -r '.[] | .name' | fzf --style=full --footer="$(footer)") +echo "ROWS: ${rows[@]}" +sel=$( + printf "%s\n" "${rows[@]}" | + fzf --style=full --footer="$(footer)" --with-nth=2 --delimiter='|' \ + --preview-label='[ Command ]' \ + --preview='printf "\nName: {2}\nExec: {1}"' +) echo "Selection: $sel"