mirror of
https://github.com/elkowar/dots-of-war.git
synced 2024-12-27 06:32:23 +00:00
22 lines
709 B
Bash
Executable file
22 lines
709 B
Bash
Executable file
#!/bin/bash
|
|
menu_name="$1"
|
|
if [ -n "$menu_name" ]; then
|
|
last_selection=$(cat "/tmp/fzfopen_$menu_name" 2>/dev/null)
|
|
fi
|
|
|
|
options_list=$(</dev/stdin)
|
|
|
|
option_count=$((2+$(echo -e "$options_list" | wc -l)))
|
|
|
|
options=$(echo -e "$options_list" | awk '{print $1}')
|
|
|
|
if [ -n "$last_selection" ]; then
|
|
options="$last_selection\n$(echo -e "$options" | grep -v "$last_selection")"
|
|
fi
|
|
|
|
selected=$(echo -e "$options" | fzf --history=/tmp/conf-open-history --cycle --reverse --height "$option_count")
|
|
[[ -z "$selected" ]] && exit 1
|
|
[[ -n "$menu_name" ]] && echo "$selected" > "/tmp/fzfopen_$menu_name"
|
|
|
|
selected_value=$(echo -e "$options_list" | grep "$selected" | sed -r 's/^\w*\s+(.*)$/\1/g')
|
|
echo "$selected_value"
|