Snippets
powershellpowershell-$profile
Copy code
# ~/.config/powershell/Microsoft.PowerShell_profile.ps1 or $PROFILE

# terminal aliases
Set-Alias ll Get-ChildItem
Set-Alias la "Get-ChildItem -Force"
Set-Alias gs git status
Set-Alias gc git commit
Set-Alias gp git push
Set-Alias .. Set-Location ..

# functions as short commands
function nd { npm run dev }
function serve { python -m http.server }

# environment variables
$env:EDITOR = "nvim"
$env:GOPATH = "$HOME/go"
$env:PATH += ";$HOME/go/bin;$HOME/.cargo/bin;$HOME/.local/bin"

# node version manager (nvm)
$env:NVM_HOME = "$HOME/AppData/Roaming/nvm"
$env:NVM_SYMLINK = "$HOME/AppData/Roaming/nodejs"
$env:PATH += ";$env:NVM_HOME;$env:NVM_SYMLINK"

# python venvwrapper-like behavior
function workon {
    param($envName)
    $venvPath = "$HOME\.virtualenvs\$envName\Scripts\Activate.ps1"
    if (Test-Path $venvPath) {
        & $venvPath
    } else {
        Write-Host "Virtualenv '$envName' not found."
    }
}

# prompt customization
function Prompt {
    "$PWD> "
}