blob: c015d9585f1dfa91d43fb56963df6d55c7e1385e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
session-or-client() {
{
project="$(cat -)"
if [[ -z $project ]]; then
return
fi
pushd $project
export name=${PWD#$HOME/}
export name=${name//\//-}
export server=kaks@$name
export client=kakc@$name
tmux has-session -t $server || {
tmux new -d -s $server -n $server bash -c "[[ -f .envrc ]] && eval \"$(direnv export bash)\"; { kak -s $name -d & }; tmux wait -S $name; wait"
tmux wait $name
}
if [[ -z $TMUX ]]; then
tmux has-session -t $client || tmux new -d -s $client -n $client kak -c $name
else
tmux new-window -n $client kak -c $name
fi
popd
} </dev/stdin >debug 2>&1
echo $client
}
client="$(fd -d1 "." -t d $HOME $HOME/projects | fzf -1 | session-or-client)"
echo "client: $client"
[[ $client ]] && tmux attach -t "$client"
|