Replace gitui with lazygit for better git TUI experience

- Replace gitui package with lazygit in flake.nix
- Update all project templates to launch lazygit instead of gitui
- Update README documentation with lazygit features and capabilities
- Maintain same tmux workflow and window layouts

Benefits of lazygit:
- More intuitive and user-friendly interface
- Better performance and responsiveness
- Enhanced file tree navigation with git status
- Comprehensive keyboard shortcuts and help system
- Active development with regular feature updates

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

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Yan Lin 2025-07-28 16:18:49 +02:00
parent 7f21c83caf
commit a6162712e3
5 changed files with 13 additions and 12 deletions

View file

@ -287,14 +287,15 @@ Edit `config/projects.nix` and run `hms` to rebuild configuration.
### 🌟 Git Visualization ### 🌟 Git Visualization
**Tool**: gitui **Tool**: lazygit
**Purpose**: Beautiful, interactive TUI for git operations **Purpose**: Simple terminal UI for git commands with intuitive interface
Launch with `gitui` in any git repository for: Launch with `lazygit` in any git repository for:
- Interactive commit graph visualization - Interactive commit graph and branch visualization
- Diff viewing and staging - Streamlined staging, committing, and diff viewing
- Branch management - Easy branch management and merging
- Vim-like navigation (j/k for movement, h/l for tabs) - File tree navigation with git status
- Intuitive keyboard shortcuts and help system
## 📦 Included Packages ## 📦 Included Packages

View file

@ -66,7 +66,7 @@
claude-code.packages.aarch64-darwin.claude-code claude-code.packages.aarch64-darwin.claude-code
nerd-fonts.fira-code nerd-fonts.fira-code
nerd-fonts.jetbrains-mono nerd-fonts.jetbrains-mono
gitui lazygit
ncdu ncdu
git-credential-oauth git-credential-oauth
]; ];

View file

@ -25,7 +25,7 @@ tmux split-window -t $SESSION_NAME:2 -h -c "$CODE_PATH"
tmux split-window -t $SESSION_NAME:2.2 -v -c "$CODE_PATH" tmux split-window -t $SESSION_NAME:2.2 -v -c "$CODE_PATH"
tmux select-pane -t $SESSION_NAME:2.1 tmux select-pane -t $SESSION_NAME:2.1
tmux new-window -t $SESSION_NAME:3 -n "git" -c "$CODE_PATH" tmux new-window -t $SESSION_NAME:3 -n "git" -c "$CODE_PATH"
tmux send-keys -t $SESSION_NAME:3 "gitui" C-m tmux send-keys -t $SESSION_NAME:3 "lazygit" C-m
tmux new-window -t $SESSION_NAME:4 -n "shell" -c "$CODE_PATH" tmux new-window -t $SESSION_NAME:4 -n "shell" -c "$CODE_PATH"
tmux select-window -t $SESSION_NAME:1 tmux select-window -t $SESSION_NAME:1

View file

@ -27,7 +27,7 @@ tmux split-window -t $SESSION_NAME:2 -h -c "$CODE_PATH"
tmux split-window -t $SESSION_NAME:2.2 -v -c "$CODE_PATH" tmux split-window -t $SESSION_NAME:2.2 -v -c "$CODE_PATH"
tmux select-pane -t $SESSION_NAME:2.1 tmux select-pane -t $SESSION_NAME:2.1
tmux new-window -t $SESSION_NAME:3 -n "git" -c "$CODE_PATH" tmux new-window -t $SESSION_NAME:3 -n "git" -c "$CODE_PATH"
tmux send-keys -t $SESSION_NAME:3 "gitui" C-m tmux send-keys -t $SESSION_NAME:3 "lazygit" C-m
# Create windows for content # Create windows for content
tmux new-window -t $SESSION_NAME:4 -n "content-ai" -c "$CONTENT_PATH" tmux new-window -t $SESSION_NAME:4 -n "content-ai" -c "$CONTENT_PATH"

View file

@ -29,7 +29,7 @@ tmux split-window -t $SESSION_NAME:2 -h -c "$CODE_PATH"
tmux split-window -t $SESSION_NAME:2.2 -v -c "$CODE_PATH" tmux split-window -t $SESSION_NAME:2.2 -v -c "$CODE_PATH"
tmux select-pane -t $SESSION_NAME:2.1 tmux select-pane -t $SESSION_NAME:2.1
tmux new-window -t $SESSION_NAME:3 -n "code-git" -c "$CODE_PATH" tmux new-window -t $SESSION_NAME:3 -n "code-git" -c "$CODE_PATH"
tmux send-keys -t $SESSION_NAME:3 "gitui" C-m tmux send-keys -t $SESSION_NAME:3 "lazygit" C-m
# Create windows for paper # Create windows for paper
tmux new-window -t $SESSION_NAME:4 -n "paper" -c "$PAPER_PATH" tmux new-window -t $SESSION_NAME:4 -n "paper" -c "$PAPER_PATH"
@ -41,7 +41,7 @@ tmux split-window -t $SESSION_NAME:5 -h -c "$PAPER_PATH"
tmux split-window -t $SESSION_NAME:5.2 -v -c "$PAPER_PATH" tmux split-window -t $SESSION_NAME:5.2 -v -c "$PAPER_PATH"
tmux select-pane -t $SESSION_NAME:5.1 tmux select-pane -t $SESSION_NAME:5.1
tmux new-window -t $SESSION_NAME:6 -n "paper-git" -c "$PAPER_PATH" tmux new-window -t $SESSION_NAME:6 -n "paper-git" -c "$PAPER_PATH"
tmux send-keys -t $SESSION_NAME:6 "gitui" C-m tmux send-keys -t $SESSION_NAME:6 "lazygit" C-m
# Create remote server window if server details are provided # Create remote server window if server details are provided
if [ -n "$SERVER" ] && [ -n "$REMOTE_DIR" ]; then if [ -n "$SERVER" ] && [ -n "$REMOTE_DIR" ]; then