24 lines
741 B
Bash
Executable File
24 lines
741 B
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
# Default projects directory
|
|
PROJECTS_DIR="$HOME/projects"
|
|
PROJECT_NAME=`ls $PROJECTS_DIR | fzf`
|
|
if [ -z "$PROJECT_NAME" ]; then
|
|
echo "No project selected. Exiting."
|
|
exit 1
|
|
fi
|
|
tmux has-session -t $PROJECT_NAME &> /dev/null
|
|
if [ $? != 0 ]; then
|
|
cd "$PROJECTS_DIR/$PROJECT_NAME"
|
|
tmux new -session -s $PROJECT_NAME -n nvim -d
|
|
tmux new-window -t $PROJECT_NAME: -n terminal
|
|
if [ -d "venv" ]; then
|
|
tmux send-keys -t "$PROJECT_NAME:nvim" "source venv/bin/activate" C-m
|
|
tmux send-keys -t "$PROJECT_NAME:terminal" "source venv/bin/activate" C-m
|
|
fi
|
|
tmux send-keys -t "$PROJECT_NAME:nvim" "nvim ." C-m
|
|
tmux attach -t "$PROJECT_NAME:nvim"
|
|
else
|
|
tmux attach -t $PROJECT_NAME
|
|
fi
|