examples/03-selective.ps1
|
#Requires -Version 7.0 # DotForge selective profile # ───────────────────────────────────────────────────────────────────────────── # Register only specific tool groups rather than everything at once. # Good for: keeping startup lean, staging tools by group, or troubleshooting. $DFConfig = @{ PackageManagerOrder = @('scoop', 'winget', 'choco') } Import-Module DotForge Initialize-DFEnvironment # ── Prompt (must register before zoxide) ────────────────────────────────────── # oh-my-posh wraps function:prompt; zoxide must wrap it afterwards. # psreadline must come before PSFzf (PSFzf depends on it for key-binding setup). # Terminal-Icons has no ordering constraint. Register-DFTool -Name psreadline, Terminal-Icons, oh-my-posh Register-DFTool -Name PSFzf # ── Group 1: Core file tools ─────────────────────────────────────────────────── # Registers: ls/ll/la/tree aliases (eza), cat alias (bat), ff picker (eza+bat), # ffd picker (fd), frg picker (ripgrep), fzo directory picker + cd/cdi (zoxide) Register-DFTool -Name eza, bat, fd, ripgrep, fzf, zoxide # ── Group 2: Git stack ──────────────────────────────────────────────────────── # Registers: git diff pager (delta), lazygit/lg alias, fco/flog/fga/fstash pickers (posh-git) Register-DFTool -Name delta, lazygit, posh-git # ── Group 3: Dev tools ──────────────────────────────────────────────────────── # Registers: gh/fpr/fgi (GitHub CLI), npm/nls/fns, uv/fvenv Register-DFTool -Name gh, npm, uv, chezmoi |