commit
7f06a0cd82
2 changed files with 79 additions and 0 deletions
@ -0,0 +1,62 @@ |
|||||||
|
# Globalias plugin |
||||||
|
|
||||||
|
Expands all glob expressions, subcommands and aliases (including global). |
||||||
|
|
||||||
|
Idea from: http://blog.patshead.com/2012/11/automatically-expaning-zsh-global-aliases---simplified.html. |
||||||
|
|
||||||
|
## Usage |
||||||
|
|
||||||
|
Add `globalias` to the plugins array in your zshrc file: |
||||||
|
|
||||||
|
```zsh |
||||||
|
plugins=(... globalias) |
||||||
|
``` |
||||||
|
|
||||||
|
Then just press `SPACE` to trigger the expansion of a command you've written. |
||||||
|
|
||||||
|
If you only want to insert a space without expanding the command line, press |
||||||
|
`CTRL`+`SPACE`. |
||||||
|
|
||||||
|
## Examples |
||||||
|
|
||||||
|
#### Glob expressions |
||||||
|
|
||||||
|
``` |
||||||
|
$ touch {1..10}<space> |
||||||
|
# expands to |
||||||
|
$ touch 1 2 3 4 5 6 7 8 9 10 |
||||||
|
|
||||||
|
$ ls **/*.json<space> |
||||||
|
# expands to |
||||||
|
$ ls folder/file.json anotherfolder/another.json |
||||||
|
``` |
||||||
|
|
||||||
|
#### Subcommands |
||||||
|
|
||||||
|
``` |
||||||
|
$ mkdir "`date -R`" |
||||||
|
# expands to |
||||||
|
$ mkdir Tue,\ 04\ Oct\ 2016\ 13:54:03\ +0300 |
||||||
|
|
||||||
|
``` |
||||||
|
|
||||||
|
#### Aliases |
||||||
|
|
||||||
|
``` |
||||||
|
# .zshrc: |
||||||
|
alias -g G="| grep --color=auto -P" |
||||||
|
alias l='ls --color=auto -lah' |
||||||
|
|
||||||
|
$ l<space>G<space> |
||||||
|
# expands to |
||||||
|
$ ls --color=auto -lah | grep --color=auto -P |
||||||
|
``` |
||||||
|
|
||||||
|
``` |
||||||
|
# .zsrc: |
||||||
|
alias S="sudo systemctl" |
||||||
|
|
||||||
|
$ S<space> |
||||||
|
# expands to: |
||||||
|
$ sudo systemctl |
||||||
|
``` |
||||||
@ -0,0 +1,17 @@ |
|||||||
|
globalias() { |
||||||
|
zle _expand_alias |
||||||
|
zle expand-word |
||||||
|
zle self-insert |
||||||
|
} |
||||||
|
zle -N globalias |
||||||
|
|
||||||
|
# space expands all aliases, including global |
||||||
|
bindkey -M emacs " " globalias |
||||||
|
bindkey -M viins " " globalias |
||||||
|
|
||||||
|
# control-space to make a normal space |
||||||
|
bindkey -M emacs "^ " magic-space |
||||||
|
bindkey -M viins "^ " magic-space |
||||||
|
|
||||||
|
# normal space during searches |
||||||
|
bindkey -M isearch " " magic-space |
||||||
Loading…
Reference in new issue