diff options
author | Jeroen Janssens <jeroen.janssens@visualrevenue.com> | 2013-09-06 09:34:27 -0400 |
---|---|---|
committer | Jeroen Janssens <jeroen.janssens@visualrevenue.com> | 2013-09-06 09:34:27 -0400 |
commit | 4517db6acc6e4217a25aa353da37fb8de617bfc4 (patch) | |
tree | f6cbcaabb2958123802739bd274fb6ec5e8b5991 /plugins | |
parent | 9cd1afb871227ee13000274799fe2faadb0530c6 (diff) | |
download | zsh-4517db6acc6e4217a25aa353da37fb8de617bfc4.tar.gz zsh-4517db6acc6e4217a25aa353da37fb8de617bfc4.tar.bz2 zsh-4517db6acc6e4217a25aa353da37fb8de617bfc4.zip |
Add _completemarks function as suggested by pielgrzym in https://github.com/robbyrussell/oh-my-zsh/pull/2045#issuecomment-22826540
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/jump/jump.plugin.zsh | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/plugins/jump/jump.plugin.zsh b/plugins/jump/jump.plugin.zsh index 60eae85ad..1035191ac 100644 --- a/plugins/jump/jump.plugin.zsh +++ b/plugins/jump/jump.plugin.zsh @@ -7,15 +7,19 @@ # marks: lists all marks # export MARKPATH=$HOME/.marks + function jump { cd -P "$MARKPATH/$1" 2>/dev/null || echo "No such mark: $1" } + function mark { mkdir -p "$MARKPATH"; ln -s "$(pwd)" $MARKPATH/$1 } + function unmark { rm -i "$MARKPATH/$1" } + function marks { ls -l "$MARKPATH" | sed 's/ / /g' | cut -d' ' -f9- | sed 's/ -/\t-/g' && echo } @@ -23,6 +27,13 @@ function marks { function _completemarks { reply=($(ls $MARKPATH/**/*(-) | grep : | sed -E 's/(.*)\/([_\da-zA-Z\-]*):$/\2/g')) } - compctl -K _completemarks jump compctl -K _completemarks unmark + +_mark_expansion() { + setopt extendedglob + autoload -U modify-current-argument + modify-current-argument '$(readlink "$MARKPATH/$ARG")' +} +zle -N _mark_expansion +bindkey "^g" _mark_expansion |