Browse Source

globalias: allow filtering values not to be expanded (#9331)

VectorW 3 years ago
parent
commit
82856bfbd8
2 changed files with 22 additions and 3 deletions
  1. 18 1
      plugins/globalias/README.md
  2. 4 2
      plugins/globalias/globalias.plugin.zsh

+ 18 - 1
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<space>
 # expands to:
 $ sudo systemctl
 ```
+
+#### Filtered values
+
+```
+# .zshrc
+alias l='ls -lh'
+alias la='ls --color=auto -lah'
+GLOBALIAS_FILTER_VALUES=(l)
+
+$ l<space>
+# does not expand
+$ la<space>
+# expands to:
+$ ls --color=auto -lah
+```

+ 4 - 2
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