#!/usr/bin/env bash if [[ $# -eq 1 ]]; then selected=$1 else selected=$(ggman ls \ | fzf \ --border-label "tmux-sessionizer" \ ) fi if [[ -z $selected ]]; then exit 0 fi selected_name="$(echo "$selected" | shasum -a 256 | head -c 4)_$(basename "$selected" | tr . _ | head -c 10)" if [[ -z $TMUX ]] && ! tmux list-sessions 2>/dev/null; then tmux new-session -s "$selected_name" -c "$selected" exit 0 fi if ! tmux has-session -t="$selected_name" 2>/dev/null; then tmux new-session -ds "$selected_name" -c "$selected" fi tmux switch-client -t "$selected_name"