Aliases as a feature are meant to save you typing in the first place.
The more you use aliases, the more you save in typing, over time.
If you can't remember a particular alias, that means you have a use for it very rarely (spaced repetition and all that), and the benefit of having it around is very low anyway.
I generally try to prune my bashrc from aliases that turned out not as useful as I thought. I have about 50 atm, and don't feel the need for a helper tool.
Maybe if one's aliases skew towards a particular pattern this tool could be useful, I don't know.
I keep those rarely used ones in there as a useful record of the syntax that I created the alias to get around in the first place. Fish shell's abbreviations are even more useful in this respect as they expand to the full command.
> When you have a lot of aliases it can be difficult to remember how was the one you need named especially if you do not use it very often.
I use tmux and I use this small keybind to launch a place where I can search my aliases:
bind-key a run-shell 'tmux neww -n "aliases" "source ~/.zshrc && alias | fzf"'
I like this workflow because it's quick. I always thought that if I want to shorten something I will just make and learn and alias for it and that's it.
I used to have a lot of aliases, but in the end I pruned most of them because the more you rely on aliases the more time you lose each time you open a terminal on a server. 99% of my usage is `g` for Git, `l` for `ls -lh` and the `autocd` option in Bash.
i am somewhere different in my search for something like this. I'd like this idea for a single command. More like a command builder.
I've started to make one for kubectl. Sure, the standard completion for kubectl is okay, but it could be so much better if not confined to the restrictions and archaic zsh-fuu to make it interesting.
For example, the default completion does not allow completion for a pod in a different namespace, unless you choose the namespace first. Why not tab complete all pods in all namespaces with a fuzzy finder? Why not allow completion for labels? Why not tab complete more complex outputs with custom columns? Etc etc.
Yesterday I was checking out Transient in Emacs and it looked like what you’re describing (Transient is what makes magit possible). But I’m not sure the UX is a boost over expansive tab-completion. It may be interesting to explore, though
That's a fantastic idea! I've made it a bit simpler for myself — basically just `source file`, so that I don't need to press enter to execute it, but also added one cute detail in the loop:
if [[ -f "$target/.exec" ]]; then
zsh "$target/.exec"
fi
I don't know about anyone else, but when transitioning back to a shell, I HAVE to hit a bunch of enters on any prompt to clear the last output away a few lines before I can summon up the powers to enter a new command - blow away the cobwebs and all that. I love the empty enter command line :)
The more you use aliases, the more you save in typing, over time.
If you can't remember a particular alias, that means you have a use for it very rarely (spaced repetition and all that), and the benefit of having it around is very low anyway.
I generally try to prune my bashrc from aliases that turned out not as useful as I thought. I have about 50 atm, and don't feel the need for a helper tool.
Maybe if one's aliases skew towards a particular pattern this tool could be useful, I don't know.
https://fishshell.com/docs/current/cmds/abbr.html#examples
I use tmux and I use this small keybind to launch a place where I can search my aliases: bind-key a run-shell 'tmux neww -n "aliases" "source ~/.zshrc && alias | fzf"'
I like this workflow because it's quick. I always thought that if I want to shorten something I will just make and learn and alias for it and that's it.
I've started to make one for kubectl. Sure, the standard completion for kubectl is okay, but it could be so much better if not confined to the restrictions and archaic zsh-fuu to make it interesting.
For example, the default completion does not allow completion for a pod in a different namespace, unless you choose the namespace first. Why not tab complete all pods in all namespaces with a fuzzy finder? Why not allow completion for labels? Why not tab complete more complex outputs with custom columns? Etc etc.
I already have zsh-magic-dashboard running on empty enter.
bindkey "^M" empty-enter-expander
^E represents Ctrl + E M-e represents Alt + E ...