diff options
Diffstat (limited to 'plugins/fzfz')
-rwxr-xr-x | plugins/fzfz | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/plugins/fzfz b/plugins/fzfz new file mode 100755 index 0000000..cb5e08a --- /dev/null +++ b/plugins/fzfz @@ -0,0 +1,23 @@ +#!/usr/bin/env sh + +# Description: cd to any dir in the z database using an fzf pane +# +# Shell: POSIX compliant +# Author: Nick Waywood + +. "$(dirname "$0")"/.nnn-plugin-helper + +if [ "$(cmd_exists fzf)" -eq "0" ]; then + if [ -f "$HOME/.z" ]; then + # I read the data from z's file instead of calling the z command so that the data doesn't need to be processed twice + sel=$(awk -F "|" '{print $1}' "$HOME/.z" | fzf | awk '{$1=$1};1') + # NOTE: Uncomment this line and comment out the line above if you want to see the weightings of the dir's in the fzf pane + # sel=$(awk -F "|" '{printf "%s %s\n", $2, $1}' "$HOME/.z" | fzf | sed 's/^[0-9,.]* *//' | awk '{$1=$1};1') + else + exit 1 + fi +else + exit 1 +fi + +printf "%s" "0$sel" > "$NNN_PIPE" |