diff options
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 27 |
1 files changed, 21 insertions, 6 deletions
@@ -177,20 +177,35 @@ zsh widgets ----------- ```sh -# CTRL-T - Paste the selected file path into the command line +# CTRL-T - Paste the selected file(s) path into the command line fzf-file-widget() { - LBUFFER+=$( - find * -path '*/\.*' -prune \ - -o -type f -print \ - -o -type l -print 2> /dev/null | fzf) + local FILES + local IFS=" +" + FILES=($( + find * -path '*/\.*' -prune \ + -o -type f -print \ + -o -type l -print 2> /dev/null | fzf -m)) + unset IFS + FILES=$FILES:q + LBUFFER="${LBUFFER%% #} $FILES" zle redisplay } zle -N fzf-file-widget bindkey '^T' fzf-file-widget +# ALT-C - cd into the selected directory +fzf-cd-widget() { + cd "${$(find * -path '*/\.*' -prune \ + -o -type d -print 2> /dev/null | fzf):-.}" + zle reset-prompt +} +zle -N fzf-cd-widget +bindkey '\ec' fzf-cd-widget + # CTRL-R - Paste the selected command from history into the command line fzf-history-widget() { - LBUFFER+=$(history | fzf +s | sed "s/ *[0-9]* *//") + LBUFFER=$(history | fzf +s | sed "s/ *[0-9]* *//") zle redisplay } zle -N fzf-history-widget |