added Jarmo Petermans expand-aliases plugin

This commit is contained in:
Daniel Menet 2016-11-01 16:57:06 +01:00
commit 6a67c11930
2 changed files with 47 additions and 0 deletions

View file

@ -0,0 +1,25 @@
# expand-aliases
**Maintainer:** [Jarmo Pertman](https://github.com/jarmo)
This plugin expands aliases while typing them in terminal.
For example:
```zsh
alias foo="bar baz"
$ foo
# pressing space will expand that alias to... surprise, surprise
$ bar baz
```
To **skip** expansion, use `control-space` instead of just `space`.
## Installation
Just add it to `oh-my-zsh` plugins list in `~/.zshrc`, but make sure it is added last (or not
last if you prefer some aliases not to be expanded).
`
plugins=(... expand-aliases)
`

View file

@ -0,0 +1,22 @@
# Expand aliases when typing
#
# Read README.md for setup instructions.
#
# Initially inspired by Gautam Iyer (https://wiki.math.cmu.edu/iki/wiki/tips/20140625-zsh-expand-alias.html)
typeset -a ealiases
ealiases=(`alias | sed -e 's/=.*//'`)
_expand-ealias() {
if [[ $LBUFFER =~ "(^|[;|&])\s*(${(j:|:)ealiases})\$" ]]; then
zle _expand_alias
zle expand-word
fi
zle magic-space
}
zle -N _expand-ealias
bindkey ' ' _expand-ealias
bindkey '^ ' magic-space # control-space to bypass completion
bindkey -M isearch " " magic-space # normal space during searches