Files
dotfiles/home/dot_config/fish/conf.d/abbr.fish.tmpl
Xevion 005b2ed850 feat: add Fish function wrappers for copilot suggest/explain commands
Replace gh copilot aliases with custom Fish functions that provide better help
text and wrap the copilot CLI with appropriate prompts
2025-12-30 00:26:22 -06:00

124 lines
3.4 KiB
Cheetah

# Fish abbreviations (aliases that expand in place)
# Managed by chezmoi
# System
abbr -a sctl 'systemctl'
abbr -a sctlu 'systemctl --user'
abbr -a jctl 'journalctl'
abbr -a sup 'sudo apt update'
abbr -a sug 'sudo apt upgrade'
abbr -a supg 'sudo apt update && sudo apt upgrade'
abbr -a supgy 'sudo apt update && sudo apt upgrade -y'
abbr -a sai 'sudo apt install'
abbr -a saa 'sudo apt autoremove'
abbr -a sdr 'sudo systemctl daemon-reload'
abbr -a sn 'sudo micro'
abbr -a sv 'sudo nvim'
# Core aliases - lsd (modern ls replacement)
abbr -a ls 'lsd'
abbr -a l 'lsd -l'
abbr -a la 'lsd -a'
abbr -a lla 'lsd -la'
abbr -a lt 'lsd --tree'
abbr -a ll 'lsd -AlFh'
abbr -a nano 'micro'
abbr -a lg 'lazygit'
abbr -a vim 'nvim'
abbr -a chlg 'lazygit --path ~/.local/share/chezmoi'
abbr -a es 'exec fish'
# Chezmoi
abbr -a cha 'chezmoi apply'
abbr -a ch 'chezmoi'
alias cdc='chezmoi cd'
# Remote Management
abbr -a romanlog "ssh roman 'tail -F /var/log/syslog' --lines 100"
# Other aliases
abbr -a oc 'opencode'
abbr -a ocs 'opencode --model anthropic/claude-sonnet-4-5'
abbr -a oco 'opencode --model anthropic/claude-opus-4-5'
abbr -a och 'opencode --model anthropic/claude-haiku-4-5'
abbr -a cl 'claude'
abbr -a cope 'claude --model opus'
abbr -a copes 'claude --model sonnet'
abbr -a copeh 'claude --model haiku'
abbr -a hcope 'claude --model haiku'
abbr -a gpt 'chatgpt'
abbr -a share 'share.ts'
abbr -a copilot 'copilot'
abbr -a spt 'spotify_player'
abbr -a gitalias 'alias | grep "git "'
abbr -a mousefix 'sudo udevadm trigger'
abbr -a bw_login 'set -gx BW_SESSION (bw unlock --raw)'
# Development tools
abbr -a d 'docker'
abbr -a j 'just'
abbr -a cb 'cargo build'
abbr -a cr 'cargo run'
abbr -a ct 'cargo nextest run'
abbr -a cnt 'cargo nextest run'
# GitHub CLI
abbr -a ghpr 'gh pr'
abbr -a ghs 'gh secret'
# Clipboard aliases
{{ if not .wsl -}}
abbr -a copy 'xsel -ib'
abbr -a paste 'xsel -b'
abbr -a cdp 'cd (xsel -b)'
{{- else -}}
abbr -a copy 'clip.exe'
abbr -a paste 'powershell.exe -noprofile Get-Clipboard'
abbr -a cdp 'cd (xsel -b)'
{{- end }}
# Bluetooth device aliases
abbr -a budsOff 'bluetoothctl block 60:3A:AF:75:61:80'
abbr -a budsOn 'bluetoothctl unblock 60:3A:AF:75:61:80 && bluetoothctl connect 60:3A:AF:75:61:80'
abbr -a maestroOff 'bluetoothctl block AC:BF:71:66:FE:B2'
abbr -a maestroOn 'bluetoothctl unblock AC:BF:71:66:FE:B2 && bluetoothctl connect AC:BF:71:66:FE:B2'
# Git Aliases
abbr -a ga 'git add'
abbr -a gaa 'git add .'
abbr -a gaaa 'git add --all'
abbr -a gau 'git add --update'
abbr -a gb 'git branch'
abbr -a gbd 'git branch --delete'
abbr -a gc 'git commit'
abbr -a gcm 'git commit --message'
abbr -a gcf 'git commit --fixup'
abbr -a gco 'git checkout'
abbr -a gcob 'git checkout -b'
abbr -a gcom 'git checkout master'
abbr -a gcos 'git checkout staging'
abbr -a gcod 'git checkout develop'
abbr -a gd 'git diff'
abbr -a gda 'git diff HEAD'
abbr -a glg 'git log --graph --oneline --decorate --all'
abbr -a gld 'git log --pretty=format:"%h %ad %s" --date=short --all'
abbr -a gm 'git merge --no-ff'
abbr -a gma 'git merge --abort'
abbr -a gmc 'git merge --continue'
abbr -a gp 'git pull'
abbr -a gpr 'git pull --rebase'
abbr -a gr 'git rebase'
abbr -a gs 'git status'
abbr -a gss 'git status --short'
abbr -a gst 'git stash'
abbr -a gsta 'git stash apply'
abbr -a gstd 'git stash drop'
abbr -a gstl 'git stash list'
abbr -a gstp 'git stash pop'
abbr -a gsts 'git stash save'
# KiTTY SSH kitten
if test "$TERM" = "xterm-kitty"
abbr -a ssh 'kitty +kitten ssh'
end