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>
This commit is contained in:
Yan Lin 2025-07-26 22:38:23 +02:00
parent 539ba9fef7
commit af7b855faf
7 changed files with 260 additions and 3 deletions

View file

@ -32,8 +32,15 @@ home-manager switch --flake github:Logan-Lin/nix-config#yanlin
│ ├── nvim.nix # Neovim configuration with plugins and keymaps
│ ├── tmux.nix # Tmux setup with vim-like navigation
│ └── zsh.nix # Zsh with Powerlevel10k and modern CLI tools
└── config/ # Configuration files
└── p10k.zsh # Powerlevel10k theme configuration
├── config/ # Configuration files
│ ├── p10k.zsh # Powerlevel10k theme configuration
│ └── projects.nix # Project shortcuts configuration
└── scripts/ # Utility scripts
├── project-launcher.sh # Universal project launcher
└── templates/ # Tmux session templates
├── basic.sh # Basic development template
├── content.sh # Content workflow template
└── research.sh # Research workflow template
```
## 🛠️ Software Configurations
@ -155,6 +162,32 @@ hm # home-manager shortcut
hms # Quick home-manager switch
```
### 🚀 Project Shortcuts
**Configuration**: `config/projects.nix`
**Purpose**: Quick access to project workspaces with tmux sessions
#### Available Projects:
- **`blog`**: Personal blog with code + content workflow
- **`mdshortcut`**: Material Design Shortcut research project (code + paper)
- **`nix-config`**: Nix configuration with basic development workflow
#### Usage:
```bash
proj # List all available projects
blog # Launch blog project tmux session
mdshortcut # Launch MDShortcut project tmux session
nix-config # Launch nix-config project tmux session
```
#### Template Types:
- **Basic**: Single directory (nvim + ai + git + shell)
- **Content**: Code directory + separate content directory
- **Research**: Code directory + separate paper directory
#### Adding New Projects:
Edit `config/projects.nix` and run `hms` to rebuild configuration.
### 🌟 Git Visualization
**Tool**: gitui