@@ -23,6 +23,7 @@ alias la = eza -la --icons --git --group-directories-first
2323alias cat = bat -- paging=never
2424alias k = kubectl
2525alias code = code-insiders
26+ alias g = git
2627
2728def --env cd-dev [] { cd ~/Developer }
2829def --env cd-down [] { cd ~/Downloads }
@@ -49,6 +50,7 @@ alias gco = git checkout
4950alias gcb = git checkout - b
5051alias gcl = git clone
5152alias gc = git commit
53+ alias gcm = git commit - m
5254alias gca = git commit -- amend
5355alias gcan = git commit -- amend -- no-edit
5456alias gf = git fetch
@@ -67,6 +69,86 @@ alias gsta = git stash
6769alias gstp = git stash pop
6870alias glo = git log -- oneline -- decorate -- color
6971
72+ # Additional read-only and common Git shortcuts from Oh My Zsh's git plugin
73+ # and Fish's plugin-git. Destructive plugin aliases are intentionally omitted.
74+ alias gapa = git add -- patch
75+ alias gau = git add -- update
76+ alias gav = git add -- verbose
77+ alias gba = git branch -- all
78+ alias gbl = git blame - w
79+ alias gbs = git bisect
80+ alias gbsb = git bisect bad
81+ alias gbsg = git bisect good
82+ alias gbsr = git bisect reset
83+ alias gbss = git bisect start
84+ alias gcmsg = git commit -- message
85+ alias gcam = git commit -- all -- message
86+ alias gcf = git config -- list
87+ alias gcp = git cherry-pick
88+ alias gcpa = git cherry-pick -- abort
89+ alias gcpc = git cherry-pick -- continue
90+ alias gd = git diff
91+ alias gdca = git diff -- cached
92+ alias gdw = git diff -- word-diff
93+ alias gfo = git fetch origin
94+ alias glg = git log -- stat
95+ alias glgg = git log -- graph
96+ alias glgga = git log -- graph -- decorate -- all
97+ alias glog = git log -- oneline -- decorate -- graph
98+ alias gloga = git log -- oneline -- decorate -- graph -- all
99+ alias gm = git merge
100+ alias gma = git merge -- abort
101+ alias gmff = git merge -- ff-only
102+ alias gpr = git pull -- rebase
103+ alias gpra = git pull -- rebase -- autostash
104+ alias gpv = git push -- verbose
105+ alias grb = git rebase
106+ alias grba = git rebase -- abort
107+ alias grbc = git rebase -- continue
108+ alias grbi = git rebase -- interactive
109+ alias grbs = git rebase -- skip
110+ alias grev = git revert
111+ alias grmv = git remote rename
112+ alias grrm = git remote remove
113+ alias grset = git remote set-url
114+ alias grup = git remote update
115+ alias grv = git remote -- verbose
116+ alias grst = git restore -- staged
117+ alias gsb = git status -- short -- branch
118+ alias gsh = git show
119+ alias gstd = git stash drop
120+ alias gstl = git stash list
121+ alias gsts = git stash show -- patch
122+ alias gstall = git stash -- all
123+ alias gsu = git submodule update
124+ alias gsur = git submodule update -- recursive
125+ alias gsuri = git submodule update -- recursive -- init
126+ alias gsw = git switch
127+ alias gswc = git switch -- create
128+ alias gtv = git tag
129+ alias gwt = git worktree
130+ alias gwta = git worktree add
131+ alias gwtls = git worktree list
132+ alias gwtrm = git worktree remove
133+ alias gup = git pull -- rebase
134+
135+ # Dynamic Git helpers need the current branch or repository root at invocation time.
136+ def --env grt [] {
137+ let root = (do { git rev-parse -- show-toplevel } | complete )
138+ if $root.exit_code != 0 {
139+ error make { msg : " grt must run inside a Git worktree" }
140+ }
141+ cd ($root.stdout | str trim )
142+ }
143+
144+ def gpsup [] {
145+ let branch = (git branch -- show-current | str trim )
146+ if ($branch | is-empty ) {
147+ error make { msg : " gpsup requires a named Git branch" }
148+ }
149+ git push -- set-upstream origin $branch
150+ }
151+
70152def git-clean [] {
71153 let worktree = (do { git rev-parse -- is-inside-work-tree } | complete )
72154 if $worktree.exit_code != 0 {
@@ -112,6 +194,102 @@ def git-clean [] {
112194 }
113195}
114196
197+ # Docker aliases from Oh My Zsh's docker plugin. They assume the Docker CLI
198+ # is connected to the intended Colima context.
199+ alias dbl = docker build
200+ alias dcin = docker container inspect
201+ alias dcls = docker container ls
202+ alias dclsa = docker container ls -- all
203+ alias dib = docker image build
204+ alias dii = docker image inspect
205+ alias dils = docker image ls
206+ alias dlo = docker container logs
207+ alias dnc = docker network create
208+ alias dnls = docker network ls
209+ alias dpo = docker container port
210+ alias dps = docker ps
211+ alias dpsa = docker ps -- all
212+ alias dpu = docker pull
213+ alias dr = docker container run
214+ alias drit = docker container run -- interactive -- tty
215+ alias drm = docker container rm
216+ alias dst = docker container start
217+ alias drs = docker container restart
218+ alias dstp = docker container stop
219+ alias dsts = docker stats
220+ alias dtop = docker top
221+ alias dvi = docker volume inspect
222+ alias dvls = docker volume ls
223+ alias dxc = docker container exec
224+ alias dxcit = docker container exec -- interactive -- tty
225+
226+ # Kubernetes aliases from Oh My Zsh's kubectl plugin. Context-changing and
227+ # destructive delete/restart aliases stay explicit for safety.
228+ alias kaf = kubectl apply -- filename
229+ alias kapk = kubectl apply -- kustomize
230+ alias keti = kubectl exec -- tty -- stdin
231+ alias kccc = kubectl config current-context
232+ alias kcgc = kubectl config get-contexts
233+ alias kcuc = kubectl config use-context
234+ alias kge = kubectl get events -- sort-by= " .lastTimestamp"
235+ alias kgp = kubectl get pods
236+ alias kgpa = kubectl get pods -- all-namespaces
237+ alias kgpw = kubectl get pods -- watch
238+ alias kgpwide = kubectl get pods -- output wide
239+ alias kgs = kubectl get services
240+ alias kgsa = kubectl get services -- all-namespaces
241+ alias kgsw = kubectl get services -- watch
242+ alias kgns = kubectl get namespaces
243+ alias kgd = kubectl get deployments
244+ alias kgda = kubectl get deployments -- all-namespaces
245+ alias kgdw = kubectl get deployments -- watch
246+ alias kgdwide = kubectl get deployments -- output wide
247+ alias kgno = kubectl get nodes
248+ alias kga = kubectl get all
249+ alias kgaa = kubectl get all -- all-namespaces
250+ alias kl = kubectl logs
251+ alias klf = kubectl logs -- follow
252+ alias kcp = kubectl cp
253+ alias kpf = kubectl port-forward
254+
255+ # Helm aliases from Oh My Zsh's helm plugin.
256+ alias h = helm
257+ alias hin = helm install
258+ alias hun = helm uninstall
259+ alias hse = helm search
260+ alias hup = helm upgrade
261+
262+ # Terraform-plugin aliases backed by the toolchain this repo installs. The
263+ # wrapper prefers OpenTofu but falls back to Terraform when that is present.
264+ def tf [... args ] {
265+ if (which tofu | is-empty ) {
266+ ^ terraform ... $args
267+ } else {
268+ ^ tofu ... $args
269+ }
270+ }
271+
272+ def tfi [... args ] { tf init ... $args }
273+ def tfir [... args ] { tf init -- reconfigure ... $args }
274+ def tfiu [... args ] { tf init -- upgrade ... $args }
275+ def tff [... args ] { tf fmt ... $args }
276+ def tffr [... args ] { tf fmt -- recursive ... $args }
277+ def tfp [... args ] { tf plan ... $args }
278+ def tfpo [... args ] { tf plan -- out tfplan ... $args }
279+ def tfa [... args ] { tf apply ... $args }
280+ def tfv [... args ] { tf validate ... $args }
281+ def tfo [... args ] { tf output ... $args }
282+ def tfsh [... args ] { tf show ... $args }
283+ def tft [... args ] { tf test ... $args }
284+ def tfw [... args ] { tf workspace ... $args }
285+ def tfwl [... args ] { tf workspace list ... $args }
286+ def tfws [... args ] { tf workspace select ... $args }
287+
288+ # Small AWS helpers; Fish/OMZ provide richer profile-switching functions, but
289+ # profile changes are environment mutations and remain explicit in Nu.
290+ alias awsp = aws configure list-profiles
291+ alias awswho = aws sts get-caller-identity
292+
115293if (($nu .default-config-dir | path join " .api-keys.nu" ) | path exists ) {
116294 source-env ($nu .default-config-dir | path join " .api-keys.nu" )
117295}
0 commit comments