forked from colonelpanic/dotfiles
33 lines
832 B
Bash
Executable File
33 lines
832 B
Bash
Executable File
#!/usr/bin/env sh
|
|
|
|
function codex_tmux_resume {
|
|
base=$(basename "$PWD")
|
|
target=$(tmux list-sessions -F '#S' 2>/dev/null | awk -v base="$base" '
|
|
$0 == base { print; found=1; exit }
|
|
{
|
|
prefix = base "-"
|
|
if (substr($0, 1, length(prefix)) == prefix) {
|
|
rest = substr($0, length(prefix) + 1)
|
|
if (rest ~ /^[0-9]+$/) {
|
|
n = rest + 0
|
|
if (n > max) { max = n; best = $0 }
|
|
}
|
|
}
|
|
}
|
|
END { if (found != 1 && best != "") print best }
|
|
')
|
|
|
|
if [ -n "$target" ]; then
|
|
if [ -n "$TMUX" ]; then
|
|
tmux switch-client -t "$target"
|
|
else
|
|
tmux attach-session -t "$target"
|
|
fi
|
|
return 0
|
|
fi
|
|
|
|
codex_tmux "$@"
|
|
}
|
|
|
|
codex_tmux_resume "$@"
|