From 510346e10839934217cc0885cf724642f831212f Mon Sep 17 00:00:00 2001 From: Ibrahim Muftee Date: Fri, 22 Aug 2025 14:06:08 -0500 Subject: feat(tmux): add tmux --- .../bin/executable_tmux-session-dispensary.sh | 30 ++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 private_dot_local/bin/executable_tmux-session-dispensary.sh (limited to 'private_dot_local/bin') diff --git a/private_dot_local/bin/executable_tmux-session-dispensary.sh b/private_dot_local/bin/executable_tmux-session-dispensary.sh new file mode 100644 index 0000000..ccbdbaf --- /dev/null +++ b/private_dot_local/bin/executable_tmux-session-dispensary.sh @@ -0,0 +1,30 @@ +#!/bin/bash + +DIRS=( + "$HOME" + "$HOME/.config" + "$HOME/.local" + "$HOME/.local/share" + "$HOME/Documents" + "$HOME/Documents/Code" +) + +if [[ $# -eq 1 ]]; then + selected=$1 +else + selected=$(fd "${DIRS[@]}" --type=dir --max-depth=1 --full-path \ + | sed "s|^$HOME/||" \ + | sk -m) + [[ $selected ]] && selected="$HOME/$selected" +fi + +[[ ! $selected ]] && exit 0 + +selected_name=$(basename "$selected" | tr . _) +if ! tmux has-session -t "$selected_name"; then + tmux new-session -ds "$selected_name" -c "$selected" + tmux select-window -t "$selected_name:1" +fi + +connect_cmd=$([[ -z $TMUX ]] && echo "attach" || echo "switch-client") +tmux "$connect_cmd" -t "$selected_name" -- cgit v1.2.3