From 415a6edd4a553d2ecf3b2b26b79ab844473127a3 Mon Sep 17 00:00:00 2001 From: Nick Waywood Date: Thu, 2 Apr 2020 16:24:24 +1100 Subject: Added support for fzy (#505) * Added fzfz plugin * Fixed shellcheck errors * Fixed copy/paste error * Added support for fzy, also renamed plugin since it's not specific to fzf anymore * Refactored code * Clean spillovers (jarun) --- plugins/fzz | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100755 plugins/fzz (limited to 'plugins/fzz') diff --git a/plugins/fzz b/plugins/fzz new file mode 100755 index 0000000..f84a064 --- /dev/null +++ b/plugins/fzz @@ -0,0 +1,27 @@ +#!/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 which fzf >/dev/null 2>&1; then + fuzzy=fzf +elif which fzy >/dev/null 2>&1; then + fuzzy=fzy +else + exit 1 +fi + +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" | "$fuzzy" | 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/fzy pane + # sel=$(awk -F "|" '{printf "%s %s\n", $2, $1}' "$HOME/.z" | "$fuzzy" | sed 's/^[0-9,.]* *//' | awk '{$1=$1};1') +else + exit 1 +fi + +printf "%s" "0$sel" > "$NNN_PIPE" -- cgit v1.2.3-70-g09d2