3 files changed,
14 insertions(+),
13 deletions(-)
Author:
Oleksandr Smirnov
olexsmir@gmail.com
Committed at:
2026-02-09 18:04:17 +0200
Change ID:
zpwxmntuusnvnqlvummksrrkzxrmlpnm
Parent:
2435b5e
jump to
| M | scripts/helpers.sh |
| M | scripts/pick.sh |
| M | scripts/sessions.sh |
M
scripts/helpers.sh
@@ -33,7 +33,7 @@ echo "$dir"
} # === spiner -# TODO: use one of those briael fonts +# TODO: use one of those briael fonts new_spinner() { local current=0 local -r chars="/-\|"@@ -53,11 +53,3 @@ stop_spinner() {
kill "$SPINNER_PID" tmux display-message "$1" } - -get_current_session_name() { - if [ "$(tmux display-message -p "#{session_grouped}")" = 0 ]; then - tmux display-message -p "#{session_name}" 2>/dev/null || true - else - tmux display-message -p "#{session_group}" 2>/dev/null || true - fi -}
M
scripts/pick.sh
@@ -4,7 +4,7 @@ source "$CURRENT_DIR/helpers.sh"
source "$CURRENT_DIR/sessions.sh" get_all_sessions() { - local current_session="$1" + local current_session="$(get_current_session_name)" local save_dir="$(get_opt_dir)" local -A seen@@ -40,7 +40,7 @@ echo "$name"
} pick() { - local selected=$(get_all_sessions "$(get_current_session_name)" | fzf \ + local selected=$(get_all_sessions | fzf \ --footer="C-x: unload/kill | C-r: rename | C-o: new" \ --bind "ctrl-x:execute($0 unload {})+reload($0 list)" \ --bind "ctrl-r:execute($0 rename {})+reload($0 list)" \@@ -73,7 +73,7 @@ local save_dir="$(get_opt_dir)"
local session_file="$save_dir/${session_name}_last" local result - result=$(printf "Delete\nCancel" | fzf --header="Delete saved session '$session_name'?") + result=$(printf "Cancel\nDelete" | fzf --header="Delete saved session '$session_name'?") if [[ "$result" == "Delete" ]]; then rm -f "$session_file" fi@@ -105,7 +105,7 @@ "") pick ;;
unload) unload_or_kill "$2" ;; rename) rename "$2" ;; new) new_session ;; - list) get_all_sessions "$(get_current_session_name)" ;; + list) get_all_sessions ;; esac } main "$@"
M
scripts/sessions.sh
@@ -4,6 +4,15 @@ source "$CURRENT_DIR/helpers.sh"
declare S=$'\t' +# === common +get_current_session_name() { + if [ "$(tmux display-message -p "#{session_grouped}")" = 0 ]; then + tmux display-message -p "#{session_name}" 2>/dev/null || true + else + tmux display-message -p "#{session_group}" 2>/dev/null || true + fi +} + rename_session() { local old="$1" local new="$2"