Added tmux session handling
This commit is contained in:
parent
1dfac456f1
commit
0bc29fea6b
3 changed files with 25 additions and 1 deletions
23
.local/bin/e
Executable file
23
.local/bin/e
Executable file
|
|
@ -0,0 +1,23 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
create_session() {
|
||||
tmux new -ds "$1"
|
||||
|
||||
tmux send-keys -t "$1" 'nvim' Enter
|
||||
}
|
||||
|
||||
# Use Git repo root as dir if we're in one
|
||||
dir=`git rev-parse --show-toplevel 2> /dev/null || pwd`
|
||||
dir_hash=`echo "$dir" | shasum | grep -o '^[^ ]\+'`
|
||||
dir_name=`basename "$dir" | sed 's/[^a-zA-Z0-9]/_/g'`
|
||||
session_name="${dir_name}-${dir_hash}"
|
||||
|
||||
tmux has -t "$session_name" 2> /dev/null || \
|
||||
create_session "$session_name"
|
||||
|
||||
# Attach to the session
|
||||
if [ -n "$TMUX" ]; then
|
||||
tmux switch-client -t "$session_name"
|
||||
else
|
||||
tmux attach -t "$session_name"
|
||||
fi
|
||||
Loading…
Add table
Add a link
Reference in a new issue