nix/scripts/templates/basic.sh
Yan Lin af7b855faf Add comprehensive project shortcuts system
- Create config/projects.nix for project definitions with templates
- Add scripts/templates/ with basic, content, and research workflows
- Create universal project-launcher.sh for template execution
- Integrate project system into zsh with dynamic alias generation
- Generate projects.json config file for shell script consumption
- Update README.md with project shortcuts documentation

Projects supported:
- blog: Personal blog (content workflow)
- mdshortcut: Research project (research workflow)
- nix-config: Nix configuration (basic workflow)

Usage: proj, blog, mdshortcut, nix-config commands

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-26 22:38:23 +02:00

33 lines
No EOL
956 B
Bash
Executable file

#!/bin/bash
# Basic development template - single directory with nvim, ai, git, shell
# Usage: basic.sh SESSION_NAME CODE_PATH
SESSION_NAME="$1"
CODE_PATH="$2"
if [ -z "$SESSION_NAME" ] || [ -z "$CODE_PATH" ]; then
echo "Usage: $0 SESSION_NAME CODE_PATH"
exit 1
fi
if tmux has-session -t $SESSION_NAME 2>/dev/null; then
tmux attach-session -t $SESSION_NAME
exit 0
fi
tmux new-session -d -s $SESSION_NAME -c "$CODE_PATH"
tmux rename-window -t $SESSION_NAME:1 "nvim"
tmux send-keys -t $SESSION_NAME:1 "nvim" C-m
tmux new-window -t $SESSION_NAME:2 -n "ai"
tmux send-keys -t $SESSION_NAME:2 "claude -r" C-m
tmux split-window -t $SESSION_NAME:2 -h
tmux split-window -t $SESSION_NAME:2.2 -v
tmux select-pane -t $SESSION_NAME:2.1
tmux new-window -t $SESSION_NAME:3 -n "git"
tmux send-keys -t $SESSION_NAME:3 "gitui" C-m
tmux new-window -t $SESSION_NAME:4 -n "shell"
tmux select-window -t $SESSION_NAME:1
tmux attach-session -t $SESSION_NAME