From 82856bfbd86ac77f0f28ab741a399a04495ed3bc Mon Sep 17 00:00:00 2001 From: VectorW <15570764+VectorWpl@users.noreply.github.com> Date: Sun, 11 Oct 2020 21:23:21 +0200 Subject: [PATCH] globalias: allow filtering values not to be expanded (#9331) --- plugins/globalias/README.md | 19 ++++++++++++++++++- plugins/globalias/globalias.plugin.zsh | 6 ++++-- 2 files changed, 22 insertions(+), 3 deletions(-) diff --git a/plugins/globalias/README.md b/plugins/globalias/README.md index 0b064105d..cd7fc3cb2 100644 --- a/plugins/globalias/README.md +++ b/plugins/globalias/README.md @@ -17,6 +17,9 @@ 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`. +if you would like to filter out any values from expanding set `GLOBALIAS_FILTER_VALUES` to +an array of said values. See [Filtered values](#filtered-values). + ## Examples #### Glob expressions @@ -37,7 +40,6 @@ $ ls folder/file.json anotherfolder/another.json $ mkdir "`date -R`" # expands to $ mkdir Tue,\ 04\ Oct\ 2016\ 13:54:03\ +0300 - ``` #### Aliases @@ -60,3 +62,18 @@ $ S # expands to: $ sudo systemctl ``` + +#### Filtered values + +``` +# .zshrc +alias l='ls -lh' +alias la='ls --color=auto -lah' +GLOBALIAS_FILTER_VALUES=(l) + +$ l +# does not expand +$ la +# expands to: +$ ls --color=auto -lah +``` diff --git a/plugins/globalias/globalias.plugin.zsh b/plugins/globalias/globalias.plugin.zsh index 9602a9606..f8c07ce43 100644 --- a/plugins/globalias/globalias.plugin.zsh +++ b/plugins/globalias/globalias.plugin.zsh @@ -1,6 +1,8 @@ globalias() { - zle _expand_alias - zle expand-word + if [[ $GLOBALIAS_FILTER_VALUES[(Ie)$LBUFFER] -eq 0 ]]; then + zle _expand_alias + zle expand-word + fi zle self-insert } zle -N globalias