#!/usr/bin/env bash if [[ $# -eq 1 ]]; then selected=$1 if [[ ! -d $selected ]]; then echo "Invalid directory: $selected" exit 1 fi else selected=$(fd --min-depth 1 --max-depth 5 --type d . "$HOME" | fzf) fi if [[ -z $selected ]]; then echo "No directory selected. Exiting." exit 0 fi selected_name=$(basename "$selected" | 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 -d -s "$selected_name" -c "$selected" fi tmux switch-client -t "$selected_name"