kickstart.nvim/.local/bin/tmux-sessionizer

26 lines
627 B
Bash
Executable File

#!/usr/bin/env bash
if [[ $# -eq 1 ]]; then
selected=$1
else
selected=$(find ~/.config ~/Development ~/Development/* -mindepth 1 -maxdepth 4 -type d -prune -a ! -name "node_modules" | fzf)
fi
if [[ -z $selected ]]; then
exit 0
fi
selected_name=$(echo "$selected" | rev | cut -d'/' -f-3 | rev | tr . _)
tmux_running=$(pgrep tmux)
if [[ -z $TMUX ]] && [[ -z $tmux_running ]]; 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"