aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/fzcd
diff options
context:
space:
mode:
authorGravatar Vidar Holen <vidar@vidarholen.net>2019-11-26 04:36:31 -0800
committerGravatar Mischievous Meerkat <engineerarun@gmail.com>2019-11-26 18:06:31 +0530
commit1bf49c80e734d7fdefda0686d81f95a1ce619b10 (patch)
treeadb7b70347495d4994916a130edd963d88f76f6a /plugins/fzcd
parente81efdb5e6b7689f7e34c0c15e605aeaa6f8b424 (diff)
downloadnnn-1bf49c80e734d7fdefda0686d81f95a1ce619b10.tar.gz
Some of the shell script fixes as per discussion (#389)
* Improved completion support for files with spaces Filenames with spaces, both generally and for session names, will now complete as expected. * Misc shell script improvements See discussion on: https://github.com/jarun/nnn/commit/1cca9e4b72b106374f203890b266f18609deefe3
Diffstat (limited to 'plugins/fzcd')
-rwxr-xr-xplugins/fzcd15
1 files changed, 7 insertions, 8 deletions
diff --git a/plugins/fzcd b/plugins/fzcd
index 3633e64..6ee67d6 100755
--- a/plugins/fzcd
+++ b/plugins/fzcd
@@ -18,18 +18,17 @@ if [ "$(cmd_exists fzy)" -eq "0" ]; then
sel=$($fd | fzy)
elif [ "$(cmd_exists fzf)" -eq "0" ]; then
- sel=$(fzf --print0)
+ sel=$(fzf)
else
exit 1
fi
-if ! [ -z "$sel" ]; then
- case "$(file -bi "$sel")" in
- *directory*) ;;
- *) sel=$(dirname "$sel") ;;
- esac
+if [ -n "$sel" ]; then
+ if ! [ -d "$sel" ]; then
+ sel=$(dirname "$sel")
+ fi
- # Remove "./" prefix
- sel="$(echo "$sel" | cut -c 3-)"
+ # Remove "./" prefix if it exists
+ sel="${sel#./}"
nnn_cd "$PWD/$sel"
fi